/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/* === 123B Footer E-E-A-T SEO 2026 === */
/* Replaces legacy footer widgets. Site-wide.                     */
/* See /wp-content/themes/flatsome-child/functions.php for hook. */

.123b-footer-eeat {
  font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: linear-gradient(180deg, #0f172a 0%, #0a0f1f 100%);
  border-top: 4px solid #d4af37;
  color: #fff;
}
.123b-footer-eeat a { color: #d4af37; text-decoration: none; transition: color .2s ease; }
.123b-footer-eeat a:hover { color: #fff; text-decoration: underline; }
.123b-footer-eeat h4 { color: #d4af37; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; margin-bottom: 15px; }
.123b-footer-eeat h4.123b-footer-brand { font-size: 28px; color: #fff; }

/* Force logo image to a fixed pixel width PX (don't let Flatsome's
   inline width="200%" override it as percentage).                    */
.123b-footer-eeat .img-inner img {
  width: 220px !important;
  max-width: 220px !important;
  height: auto !important;
  display: inline-block !important;
}
.123b-footer-eeat .img-inner {
  width: 220px !important;
  max-width: 100% !important;
}
/* High-specificity override — beats Flatsome's `#image_xxx { width: 220% }` */
.123b-footer-eeat .img[id^="image_"],
.123b-footer-eeat .img-inner img[fetchpriority],
.123b-footer-eeat img[id^="image_"] {
  width: 220px !important;
  max-width: 220px !important;
  height: auto !important;
}
/* Belt-and-braces: nuke any % width on the footer logo container. */
.123b-footer-eeat .img[id^="image_"] {
  min-width: 0 !important;
  max-width: 220px !important;
}

.123b-footer-col .col-inner { padding: 0 15px; }

.123b-footer-menu { font-size: 14px; line-height: 2; }
.123b-footer-menu a { padding: 6px 0; display: block; color: #cbd5e1 !important; }
.123b-footer-menu a:hover { color: #d4af37 !important; padding-left: 5px; }

.123b-footer-contact, .123b-footer-cert { margin-bottom: 8px; font-size: 14px; line-height: 1.8; }
.123b-footer-contact strong { color: #d4af37; }

.123b-footer-cta .button { margin: 8px 4px; }

.123b-footer-bottom-text { line-height: 1.8; color: #94a3b8; }

@media (max-width: 549px) {
  .123b-footer-eeat h4 { font-size: 14px; }
  .123b-footer-eeat h4.123b-footer-brand { font-size: 22px; }
  .123b-footer-col { margin-bottom: 25px; }
  .123b-footer-cta .button { display: block; margin: 8px 0; width: 100%; }
}

/* === HIDE OLD FOOTER LEGACY ELEMENTS (79KING-era) === */
/* These targeted selectors override any leftover widgets, links,*/
/* or absolute-footer credit text that pre-dated the 123B brand.*/

/* Hide the WordPress block widgets in sidebar-footer-1 (block-5, block-6) */
#text-2,
#block-5,
#block-6,
.widget_block.widget_archive,
.widget_block.widget_categories,
.widget_pages,
.widget_archive,
.widget_categories,
.absolute-footer .footer-primary,
.absolute-footer .copyright,
.absolute-footer a[href*="79king"],
.absolute-footer a[href*="79KING"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Defensive: hide the legacy eeat-authority-footer block (already disabled in PHP). */
.eeat-authority-footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Force absolute-footer to be minimal & brand-consistent */
.absolute-footer { font-size: 12px; opacity: .85; padding: 8px 0; background: #050a14; }
.absolute-footer .container { padding: 6px 0; }
.absolute-footer a { color: #d4af37 !important; }
.absolute-footer .copyright-footer,
.absolute-footer .footer-text { color: #cbd5e1 !important; }

/* Social row styling */
.123b-footer-social .follow-icons a {
  background: #d4af37 !important;
  color: #0f172a !important;
  border: none !important;
  width: 36px !important;
  height: 36px !important;
  line-height: 36px !important;
  margin: 0 4px !important;
  border-radius: 50% !important;
  transition: all 0.2s ease;
}
.123b-footer-social .follow-icons a:hover {
  background: #fff !important;
  color: #d4af37 !important;
  transform: translateY(-2px);
}

/* Responsive footer stack */
@media (max-width: 549px) {
  .123b-footer-mid .col,
  .123b-footer-cta .col { text-align: center; }
}

/* ================================================================== */
/* === 123B HEADER PROFESSIONAL DESIGN (TOKEN LANDING STYLE) === */
/* ================================================================== */
/* See /wp-content/themes/flatsome-child/functions.php for menu + mods. */

/* 1. Top bar - dark gold accent */
.header-top {
  background: linear-gradient(90deg, #050a14 0%, #0f172a 50%, #050a14 100%) !important;
  border-bottom: 1px solid rgba(212, 175, 55, 0.2) !important;
  font-size: 13px !important;
  color: #d4af37 !important;
  letter-spacing: 0.3px;
  min-height: 40px !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}
.header-top .nav {
  display: flex !important;
  align-items: center !important;
  visibility: visible !important;
}
.header-top .html_topbar_left,
.header-top .html_topbar_right {
  color: #d4af37 !important;
  font-weight: 500;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  line-height: 40px !important;
  white-space: nowrap !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}
.header-top .html_topbar_left .123b-topbar-tag,
.header-top .html_topbar_left .123b-topbar-since,
.header-top .html_topbar_left .123b-topbar-lic,
.header-top .html_topbar_left .123b-topbar-divider,
.header-top .html_topbar_right .123b-topbar-link,
.header-top .html_topbar_right .123b-topbar-social {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #d4af37 !important;
  font-size: 13px !important;
  white-space: nowrap !important;
  line-height: 40px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}
.header-top .html_topbar_left a,
.header-top .html_topbar_right a {
  color: #fff !important;
  text-decoration: none;
  transition: color .2s ease;
}
.header-top .html_topbar_left a:hover,
.header-top .html_topbar_right a:hover {
  color: #d4af37 !important;
}
.header-top .header-newsletter-item a,
.header-top .follow-icons a {
  color: #d4af37 !important;
}
.header-top .follow-icons a:hover {
  color: #fff !important;
}

/* 2. Main header - dark professional background */
.header-main {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important;
  border-bottom: 2px solid #d4af37 !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
  position: relative;
}
.header-main::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #d4af37 50%, transparent 100%);
}

/* Sticky header - keep dark + shadow */
.header.has-sticky .sticky-add-to-cart--active,
.header.stuck {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%) !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3) !important;
  border-bottom: 2px solid #d4af37 !important;
  animation: 123b-header-slide-down 0.3s ease-out;
}
@keyframes 123b-header-slide-down {
  from { transform: translateY(-100%); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

/* 3. Logo - clean, sharp, brand-aligned */
#logo img {
  width: 200px !important;
  max-width: 200px !important;
  height: auto !important;
  transition: transform .25s ease, filter .25s ease;
  filter: drop-shadow(0 2px 4px rgba(212, 175, 55, 0.2));
}
#logo img:hover {
  transform: scale(1.03);
  filter: drop-shadow(0 4px 8px rgba(212, 175, 55, 0.4));
}
#logo a {
  display: inline-block;
  padding: 5px 0;
}

/* 4. Main nav - professional uppercase */
.header-nav-main > li > a.nav-top-link {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 0 15px !important;
  line-height: 80px !important;
  position: relative;
  transition: color .2s ease, background .2s ease;
}
.header-nav-main > li > a.nav-top-link:hover,
.header-nav-main > li:hover > a.nav-top-link {
  color: #d4af37 !important;
  background: rgba(212, 175, 55, 0.08) !important;
}
/* Underline effect on hover */
.header-nav-main > li > a.nav-top-link::after {
  content: '';
  position: absolute;
  bottom: 22px;
  left: 50%;
  width: 0;
  height: 2px;
  background: #d4af37;
  transition: all .25s ease;
  transform: translateX(-50%);
}
.header-nav-main > li > a.nav-top-link:hover::after,
.header-nav-main > li.active > a.nav-top-link::after {
  width: 60%;
}
.header-nav-main > li.active > a.nav-top-link {
  color: #d4af37 !important;
  background: rgba(212, 175, 55, 0.08) !important;
}

/* 5. Dropdown - sub nav shadows + gold accent */
.nav-dropdown {
  background: #fff !important;
  border: 1px solid rgba(212, 175, 55, 0.3) !important;
  border-top: 3px solid #d4af37 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15) !important;
  border-radius: 0 0 6px 6px !important;
  overflow: hidden;
}
.nav-dropdown li > a {
  color: #333 !important;
  padding: 10px 20px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
  transition: all .2s ease;
}
.nav-dropdown li:last-child > a {
  border-bottom: none !important;
}
.nav-dropdown li > a:hover {
  background: linear-gradient(90deg, rgba(212, 175, 55, 0.1) 0%, transparent 100%) !important;
  color: #0f172a !important;
  padding-left: 25px !important;
}

/* 6. Action buttons (CTA) - gold */
.header-button-1 a.button,
.header-button-1 a.is-form,
.header-button-1 button {
  background: linear-gradient(135deg, #d4af37 0%, #f4c842 100%) !important;
  color: #0f172a !important;
  border: none !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 8px 18px !important;
  border-radius: 6px !important;
  box-shadow: 0 2px 8px rgba(212, 175, 55, 0.3) !important;
  transition: all .25s ease !important;
}
.header-button-1 a.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(212, 175, 55, 0.5) !important;
  background: linear-gradient(135deg, #f4c842 0%, #d4af37 100%) !important;
}
.header-button-2 a.button,
.header-button-2 a.is-form,
.header-button-2 button {
  background: transparent !important;
  color: #d4af37 !important;
  border: 1.5px solid #d4af37 !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 7px 18px !important;
  border-radius: 6px !important;
  transition: all .25s ease !important;
}
.header-button-2 a.button:hover {
  background: #d4af37 !important;
  color: #0f172a !important;
  transform: translateY(-2px);
}

/* 7. Search box - clean inline */
.header-search a {
  color: #fff !important;
  font-size: 16px !important;
  transition: color .2s ease;
}
.header-search a:hover {
  color: #d4af37 !important;
}

/* 8. Account / login icon */
.header-account a,
.header-cart a {
  color: #fff !important;
}
.header-account a:hover,
.header-cart a:hover {
  color: #d4af37 !important;
}

/* 9. Bottom header - sub nav strip */
.header-bottom {
  background: #050a14 !important;
  border-top: 1px solid rgba(212, 175, 55, 0.15) !important;
  border-bottom: 1px solid rgba(212, 175, 55, 0.15) !important;
}
.header-bottom .nav a {
  color: #cbd5e1 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  padding: 0 12px !important;
  line-height: 42px !important;
  transition: color .2s ease;
}
.header-bottom .nav a:hover {
  color: #d4af37 !important;
}

/* 10. Mobile menu trigger */
.mobile-nav .nav-icon > a {
  color: #fff !important;
  font-size: 22px !important;
}

/* 11. Mobile responsive */
@media (max-width: 549px) {
  #logo img {
    width: 140px !important;
    max-width: 140px !important;
  }
  .header-button-1,
  .header-button-2 {
    display: none !important;
  }
  .header-nav-main > li > a.nav-top-link {
    font-size: 12px !important;
    padding: 0 8px !important;
  }
  .header-top {
    font-size: 11px !important;
  }
}

/* 12. Special highlight for active menu item */
.current-menu-item > a.nav-top-link,
.current-menu-ancestor > a.nav-top-link {
  color: #d4af37 !important;
}
.current-menu-item > a.nav-top-link::after,
.current-menu-ancestor > a.nav-top-link::after {
  width: 60% !important;
}

/* 13. Brand-mark gradient under logo */
#logo {
  position: relative;
}
#logo::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 50%;
  transform: translateX(-50%);
  width: 60%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #d4af37, transparent);
  opacity: 0.8;
}

/* 14. Search button + account icon alignment */
.header-nav-right > .header-search,
.header-nav-right > .header-account,
.header-nav-right > .header-cart {
  align-self: center;
}
.header-search .header-search-form-wrapper {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(212, 175, 55, 0.3) !important;
  border-radius: 6px !important;
}
.header-search .search-field {
  color: #fff !important;
  background: transparent !important;
  border: none !important;
  font-size: 13px !important;
}
.header-search .icon-search {
  color: #d4af37 !important;
}

/* 14b. Header background colors - force dark navy for non-transparent */
.header-bg-color {
  background-color: #0f172a !important;
  background: #0f172a !important;
}
.header-bg-image {
  background-image: none !important;
}
.header-wrapper {
  background: linear-gradient(180deg, #0f172a 0%, #1e293b 100%) !important;
  background-color: #0f172a !important;
}
.header#header {
  background: #0f172a !important;
}
.header.transparent .header-bg-color { display: none !important; }

/* 15. Hide old placeholder "Add anything here..." - only when li has no nested span */
.header-top .html_topbar_left > strong:only-child:not(.123b-topbar-tag),
.header-top .html_topbar_left > span:empty:not(.123b-topbar-tag) {
  display: none !important;
}

/* 16. Newsletter popup button - less aggressive */
.header-newsletter-item .lightbox-by-id {
  font-size: 12px;
}

/* 17. Mobile menu styling */
#main-menu .nav-sidebar {
  background: #0f172a !important;
}
#main-menu .nav-sidebar > li > a {
  color: #fff !important;
  border-bottom: 1px solid rgba(212, 175, 55, 0.15) !important;
}
#main-menu .nav-sidebar > li > a:hover {
  color: #d4af37 !important;
  background: rgba(212, 175, 55, 0.08) !important;
}

/* 18. Z-index above all content */
.header#header {
  z-index: 1000 !important;
}

/* 19. FORCE sub-nav horizontal layout (Flatsome's nav-left is vertical by default). */
#wide-nav .nav > li.html {
  display: block !important;
  width: 100% !important;
  float: none !important;
  visibility: visible !important;
}
#wide-nav ul.123b-header-bottom-menu {
  list-style: none !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  visibility: visible !important;
  opacity: 1 !important;
}
#wide-nav ul.123b-header-bottom-menu > li {
  display: inline-block !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#wide-nav .123b-quick-link {
  display: inline-block !important;
  color: #cbd5e1 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  padding: 12px 14px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color .2s ease, background .2s ease;
  border-radius: 4px;
}
#wide-nav .123b-quick-link:hover {
  color: #d4af37 !important;
  background: rgba(212, 175, 55, 0.1);
}
#wide-nav .123b-quick-cta {
  color: #d4af37 !important;
  font-weight: 700 !important;
  background: rgba(212, 175, 55, 0.08);
  border: 1px solid rgba(212, 175, 55, 0.3);
  margin-right: 8px !important;
}
#wide-nav .123b-quick-cta:hover {
  background: rgba(212, 175, 55, 0.2) !important;
  color: #fff !important;
}

/* 20. Logo dedup — Flatsome renders BOTH .header-logo and .header-logo-dark.
       For "light" header color, only .header-logo shows. Hide .header-logo-dark. */
.header-logo-dark {
  display: none !important;
}
.header-logo-sticky {
  display: none !important;
}
.header-logo {
  display: inline-block !important;
  max-width: 200px !important;
  height: auto !important;
  width: 200px !important;
}

/* 21. Top bar - ensure brand text is visible on both main + sticky. */
.header-top .html_topbar_left,
.header-top .html_topbar_right {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #d4af37 !important;
  font-size: 12px !important;
  line-height: 38px !important;
  font-weight: 500 !important;
  white-space: normal !important;
  height: auto !important;
  width: auto !important;
  text-indent: 0 !important;
  clip: auto !important;
  position: relative !important;
}
.header-top .html_topbar_left > a,
.header-top .html_topbar_right > a { color: #cbd5e1 !important; }
.header-top .html_topbar_left > a:hover,
.header-top .html_topbar_right > a:hover { color: #d4af37 !important; }
.header-top .123b-topbar-tag,
.header-top .123b-topbar-since,
.header-top .123b-topbar-lic,
.header-top .123b-topbar-divider {
  display: inline-block !important;
  color: #d4af37 !important;
  font-size: 12px !important;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap !important;
}
.header-top .123b-topbar-divider {
  color: rgba(212, 175, 55, 0.3) !important;
  margin: 0 6px !important;
}
.header-top .123b-topbar-tag strong,
.header-top .123b-topbar-since strong,
.header-top .123b-topbar-lic strong { color: #fff !important; font-weight: 700 !important; }
.header-top .html_topbar_left strong:only-child { display: inline !important; } /* Override buggy rule */

/* 22. Hide on sticky (when scrolling) - top bar is hidden per Flatsome default. */
.header.show-on-scroll .hide-for-sticky,
.stuck .hide-for-sticky { display: none !important; }

/* 23. Min-height for top bar so it always has space. */
.header-top {
  min-height: 38px !important;
}
