/* AvAm Theme Studio runtime — loaded last, maps the full UI to saved tokens. */
:root { color-scheme: light; }
html, body { background-color: var(--theme-background) !important; color: var(--theme-text) !important; }
body { background-image: radial-gradient(circle at 10% 0,color-mix(in srgb,var(--theme-success) 10%,transparent),transparent 28%),radial-gradient(circle at 88% 3%,color-mix(in srgb,var(--theme-accent) 12%,transparent),transparent 30%),linear-gradient(180deg,var(--theme-background-alt),var(--theme-background)) !important; }
body::before { background-image: linear-gradient(color-mix(in srgb,var(--theme-border) 42%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--theme-border) 42%,transparent) 1px,transparent 1px) !important; }
h1,h2,h3,h4,h5,h6,.section-title,.page-title { color: var(--theme-text) !important; }
p,.lead,.muted,.section-copy { color: var(--theme-muted) !important; }
.kicker,.eyebrow,.pc-link,.fp-link,.crumb-sep { color: var(--theme-accent) !important; }
.reading-progress-bar { background: linear-gradient(90deg,var(--theme-accent),var(--theme-success)) !important; }
html { background: var(--theme-background) !important; }
.section-title,h1,h2,h3 { color: var(--theme-text) !important; }
.muted,.section-copy,.breadcrumb-row,.breadcrumb-row .crumb { color: var(--theme-muted) !important; }
.breadcrumb-row .crumb-active { color: var(--theme-text) !important; }

/* Header/navigation */
.site-header .nav-shell { background: linear-gradient(135deg,color-mix(in srgb,var(--theme-primary) 94%,transparent),color-mix(in srgb,var(--theme-primary-alt) 92%,transparent)) !important; border-color: color-mix(in srgb,var(--theme-accent) 34%,transparent) !important; border-radius: var(--theme-radius) !important; }
.site-header .nav-menu>li>a,.site-header .nav-item-row>a,.site-header .brand-copy strong { color: #fff !important; }
.site-header .brand-copy span { color: color-mix(in srgb,#fff 68%,var(--theme-accent)) !important; }
.site-header .nav-menu a[aria-current="page"],.site-header .nav-menu>li>a:hover { color: var(--theme-accent-alt) !important; }
.site-header .services-menu,.site-header .products-menu { background: color-mix(in srgb,var(--theme-surface) 94%,transparent) !important; border-color: color-mix(in srgb,var(--theme-accent) 38%,var(--theme-border)) !important; border-top-color: var(--theme-accent) !important; border-radius: var(--theme-radius) !important; }
.site-header .services-menu a,.site-header .products-menu a { color: var(--theme-muted) !important; }
.site-header .services-menu-title { color: var(--theme-text) !important; }
.site-header .services-menu a:hover,.site-header .products-menu a:hover { color: var(--theme-accent) !important; background: color-mix(in srgb,var(--theme-accent) 9%,var(--theme-surface)) !important; }
.site-header .services-menu-all { color: var(--theme-accent) !important; border-color: var(--theme-border) !important; }

/* Buttons and controls */
.btn-primary,.form-submit,.cta-submit { color: var(--theme-primary) !important; background: linear-gradient(135deg,var(--theme-accent-alt),var(--theme-accent)) !important; border-color: color-mix(in srgb,var(--theme-accent) 65%,transparent) !important; }
.btn-primary:hover,.form-submit:hover,.cta-submit:hover { color: var(--theme-primary) !important; background: linear-gradient(135deg,color-mix(in srgb,var(--theme-accent-alt) 82%,white),color-mix(in srgb,var(--theme-accent) 86%,white)) !important; }
.btn-soft,.btn-ghost,.chip { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-surface) 78%,var(--theme-background)) !important; border-color: var(--theme-border) !important; }
.btn,.chip,input,select,textarea,.search-modal-box { border-radius: max(10px,calc(var(--theme-radius) - 8px)) !important; }
input,select,textarea { color: var(--theme-text) !important; background: var(--theme-surface) !important; border-color: var(--theme-border) !important; }
input:focus,select:focus,textarea:focus { border-color: var(--theme-accent) !important; box-shadow: 0 0 0 4px color-mix(in srgb,var(--theme-accent) 14%,transparent) !important; }

/* Surfaces/cards */
.glass,.panel:not(.dark),.product-card,.fp-card,.partner-card,.service-card,.service-tree-group,.service-category-card,.resource-card,.faq-item,.contact-form-card,.admin-card,.category-product-card,.category-empty-showcase,.about-final-founder,.about-final-mission,.about-final-values,.service-exact-card { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-surface) var(--theme-glass-percent),transparent) !important; border-color: var(--theme-border) !important; border-radius: var(--theme-radius) !important; box-shadow: 0 20px 54px color-mix(in srgb,var(--theme-primary) 10%,transparent) !important; }
.product-card h3,.fp-card h3,.partner-card h3,.service-card h3,.service-tree-group h2,.service-tree-group strong,.service-category-card h2,.category-product-card h3,.about-final-founder h2 { color: var(--theme-text) !important; }
.product-card p,.fp-card p,.partner-card p,.service-card p,.service-tree-group p,.service-category-card p,.category-product-card p,.about-final-founder p { color: var(--theme-muted) !important; }
.pc-img,.fp-img,.category-product-media { background: color-mix(in srgb,var(--theme-background) 82%,var(--theme-primary) 18%) !important; }
.product-card-icon,.category-product-meta span,.fp-cat-badge { color: var(--theme-accent) !important; background: color-mix(in srgb,var(--theme-accent) 13%,var(--theme-surface)) !important; border-color: color-mix(in srgb,var(--theme-accent) 30%,var(--theme-border)) !important; }

/* Dark/brand sections */
.panel.dark,.home-mission-values .panel.dark,.service-tree-group.is-dark,.about-final-label,.page-home .partnership-board-v19 .partnership-right,.cta-request,.page-home .home-final-cta,.product-entry-overview { color: #fff !important; background: linear-gradient(145deg,var(--theme-primary),var(--theme-primary-alt)) !important; border-color: color-mix(in srgb,var(--theme-accent) 42%,transparent) !important; }
.panel.dark h2,.panel.dark h3,.panel.dark strong,.service-tree-group.is-dark h2,.service-tree-group.is-dark strong,.cta-request h2,.product-entry-overview h2 { color: #fff !important; }
.panel.dark p,.panel.dark li,.service-tree-group.is-dark p,.cta-request p,.product-entry-overview li { color: color-mix(in srgb,#fff 82%,var(--theme-background)) !important; }
.panel.dark li::before,.value-list li::before { background: var(--theme-accent) !important; }
.home-final-cta::before { background: radial-gradient(circle at 88% 20%,color-mix(in srgb,var(--theme-accent) 20%,transparent),transparent 28%) !important; }

/* Home */
.page-home .home-services-overview { background: linear-gradient(135deg,var(--theme-primary),var(--theme-primary-alt)) !important; }
.page-home .home-services-intro .kicker { color: var(--theme-accent-alt) !important; }
.page-home .home-services-intro .section-title { color: #fff !important; }
.page-home .home-services-intro .section-copy { color: color-mix(in srgb,#fff 82%,var(--theme-background)) !important; }
.page-home .home-service-group-card { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-surface) 96%,transparent) !important; border-color: color-mix(in srgb,var(--theme-accent) 32%,var(--theme-border)) !important; border-top-color: var(--theme-accent) !important; border-radius: var(--theme-radius) !important; box-shadow: 0 24px 60px color-mix(in srgb,var(--theme-primary) 24%,transparent) !important; }
.page-home .home-service-group-card h3,.product-card .pc-body h3 { color: var(--theme-text) !important; }
.page-home .home-service-group-card p,.product-card .pc-body p { color: var(--theme-muted) !important; }
.page-home .home-service-group-code { color: var(--theme-accent-alt) !important; background: var(--theme-primary) !important; }
.page-home .home-service-links a { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-background) 82%,var(--theme-surface)) !important; border-color: var(--theme-border) !important; }
.page-home .home-service-links a:hover { color: var(--theme-accent) !important; background: color-mix(in srgb,var(--theme-accent) 9%,var(--theme-surface)) !important; border-color: color-mix(in srgb,var(--theme-accent) 42%,var(--theme-border)) !important; }
.product-card .pc-link { color: var(--theme-accent) !important; }
.page-home .partnership-board-v19 .partnership-left { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-surface) 94%,transparent) !important; border-color: var(--theme-border) !important; border-radius: var(--theme-radius) !important; }
.page-home .partnership-board-v19 .partnership-right { background: linear-gradient(145deg,var(--theme-primary),var(--theme-primary-alt)) !important; border-color: color-mix(in srgb,var(--theme-accent) 38%,transparent) !important; border-radius: var(--theme-radius) !important; }
.page-home .partnership-board-v19 .partnership-right h3 { color: var(--theme-accent-alt) !important; }
.page-home .partnership-board-v19 .partnership-right p,.page-home .partnership-board-v19 .partnership-right li { color: color-mix(in srgb,#fff 82%,var(--theme-background)) !important; }
.page-home .partnership-board-v19 .partnership-right li::before { background: var(--theme-accent-alt) !important; }
.page-home .partnership-board-v19 .center-medal { background: var(--theme-surface) !important; border-color: var(--theme-accent-alt) !important; }

/* Page-specific structures */
.page-hero { background: linear-gradient(125deg,var(--theme-primary) 0%,var(--theme-primary-alt) 72%,color-mix(in srgb,var(--theme-primary-alt) 82%,var(--theme-success))) !important; }
.page-hero h1,.page-hero .service-breadcrumb,.page-hero .service-breadcrumb a { color: #fff !important; }
.page-hero .lead { color: color-mix(in srgb,#fff 82%,var(--theme-background)) !important; }
.page-hero .eyebrow { color: var(--theme-accent-alt) !important; }
.product-category-content,.home-products-section,.about-final-section { background-color: transparent !important; }
.page-hero .img-card,.img-card { border-color: color-mix(in srgb,var(--theme-accent) 35%,var(--theme-border)) !important; border-radius: var(--theme-radius) !important; }
.pathway-pill { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-surface) 84%,transparent) !important; border-color: var(--theme-border) !important; }
.pathway-pill span { color: var(--theme-accent) !important; }
.service-exact-card { border-top-color: var(--theme-accent) !important; }
.service-exact-list li,.about-final-value { color: var(--theme-muted) !important; background: color-mix(in srgb,var(--theme-background) 72%,var(--theme-surface)) !important; border-color: var(--theme-border) !important; }
.service-exact-list li>span,.about-final-value span { color: var(--theme-accent) !important; }
.category-product-count { color: var(--theme-accent-alt) !important; background: var(--theme-primary) !important; }
.crumb { color: var(--theme-muted) !important; }.crumb-active { color: var(--theme-text) !important; }
.service-tree-group,.service-category-card { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-surface) 94%,transparent) !important; border-color: var(--theme-border) !important; border-top-color: var(--theme-accent) !important; }
.service-tree-group h2,.service-tree-group strong,.service-category-card h2 { color: var(--theme-text) !important; }
.service-tree-group p,.service-tree-group small,.service-category-card p,.service-category-card li { color: var(--theme-muted) !important; }
.service-tree-item { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-background) 76%,var(--theme-surface)) !important; border-color: var(--theme-border) !important; }
.service-tree-group.is-dark { background: linear-gradient(145deg,var(--theme-primary),var(--theme-primary-alt)) !important; border-color: color-mix(in srgb,var(--theme-accent) 36%,transparent) !important; }
.service-tree-group.is-dark h2,.service-tree-group.is-dark strong { color: #fff !important; }
.service-tree-group.is-dark p,.service-tree-group.is-dark small { color: color-mix(in srgb,#fff 80%,var(--theme-background)) !important; }
.about-final-founder-photo,.category-product-media { background: color-mix(in srgb,var(--theme-background) 82%,var(--theme-primary) 18%) !important; }
.about-final-founder-copy h2,.about-final-mission blockquote,.about-final-value strong { color: var(--theme-text) !important; }
.about-final-founder-copy p { color: var(--theme-muted) !important; }
.about-final-label { color: var(--theme-accent-alt) !important; background: linear-gradient(145deg,var(--theme-primary),var(--theme-primary-alt)) !important; }
.about-final-value { color: var(--theme-text) !important; background: color-mix(in srgb,var(--theme-background) 72%,var(--theme-surface)) !important; border-color: var(--theme-border) !important; border-radius: max(10px,calc(var(--theme-radius) - 6px)) !important; }
.about-final-value span { color: var(--theme-accent) !important; }
.service-exact-card { background: color-mix(in srgb,var(--theme-surface) 92%,transparent) !important; border-color: var(--theme-border) !important; border-top-color: var(--theme-accent) !important; }
.service-exact-list li { color: var(--theme-muted) !important; background: color-mix(in srgb,var(--theme-background) 76%,var(--theme-surface)) !important; border-color: var(--theme-border) !important; }
.service-exact-list li>span { color: var(--theme-accent) !important; background: var(--theme-surface) !important; border-color: color-mix(in srgb,var(--theme-accent) 28%,var(--theme-border)) !important; }
.service-exact-list strong,.category-products-head h2,.category-product-body h3,.category-product-link,.category-empty-copy h2 { color: var(--theme-text) !important; }
.category-product-body p,.category-empty-copy p { color: var(--theme-muted) !important; }
.category-product-media>span { color: var(--theme-accent-alt) !important; background: var(--theme-primary) !important; }
.category-product-meta span { color: var(--theme-accent) !important; background: color-mix(in srgb,var(--theme-accent) 11%,var(--theme-surface)) !important; }
.category-product-link b { color: var(--theme-accent) !important; }

/* Footer */
.site-footer { color: color-mix(in srgb,#fff 82%,var(--theme-background)) !important; background: linear-gradient(145deg,var(--theme-footer),color-mix(in srgb,var(--theme-footer) 78%,var(--theme-primary-alt))) !important; border-top-color: color-mix(in srgb,var(--theme-accent) 30%,transparent) !important; }
.site-footer h2,.site-footer h3,.site-footer strong,.site-footer .footer-brand-title { color: #fff !important; }
.site-footer a:hover,.site-footer .kicker { color: var(--theme-accent-alt) !important; }

/* Dashboard also follows the selected organization palette. */
.admin-root { background: linear-gradient(180deg,var(--theme-background-alt),var(--theme-background)) !important; }
.admin-sidebar { background: linear-gradient(180deg,var(--theme-primary),var(--theme-primary-alt)) !important; border-color: color-mix(in srgb,var(--theme-accent) 25%,transparent) !important; }
.admin-nav-link.active,.admin-nav-link:hover { color: var(--theme-accent-alt) !important; background: color-mix(in srgb,var(--theme-accent) 14%,transparent) !important; }
.admin-shell-bar { background: color-mix(in srgb,var(--theme-surface) 90%,transparent) !important; border-color: var(--theme-border) !important; }
.admin-card,.stat-tile,.admin-modal { background: var(--theme-surface) !important; border-color: var(--theme-border) !important; border-radius: var(--theme-radius) !important; }
.admin-table th { color: var(--theme-muted) !important; }.admin-table td { color: var(--theme-text) !important; border-color: var(--theme-border) !important; }
.admin-table tr:hover td { background: color-mix(in srgb,var(--theme-accent) 6%,var(--theme-surface)) !important; }
#product-form>h3 { color: var(--theme-text) !important; background: linear-gradient(90deg,color-mix(in srgb,var(--theme-accent) 13%,transparent),transparent) !important; border-left-color: var(--theme-accent) !important; }
.dd-zone { background: color-mix(in srgb,var(--theme-background) 68%,var(--theme-surface)) !important; border-color: color-mix(in srgb,var(--theme-accent) 44%,var(--theme-border)) !important; }

@media(max-width:1100px){.site-header .nav-links.is-open{background:linear-gradient(155deg,var(--theme-primary),var(--theme-primary-alt))!important;border-color:color-mix(in srgb,var(--theme-accent) 42%,transparent)!important}.site-header .nav-submenu-toggle{color:var(--theme-accent-alt)!important}.site-header .services-menu,.site-header .products-menu{background:color-mix(in srgb,var(--theme-surface) 97%,transparent)!important;border-top-color:var(--theme-accent)!important}.site-header .services-menu a{color:var(--theme-muted)!important}.site-header .services-menu-title{color:var(--theme-text)!important}}
@media(max-width:760px){.page-home .home-final-cta{border-radius:var(--theme-radius)!important}}

/* Mobile header geometry guard (v32).
   Legacy theme layers used two different centering strategies.  On some
   mobile browsers that left `left:0` combined with `translateX(-50%)`,
   pushing half of the glass header outside the viewport. */
@media (max-width:1100px) {
  .site-header {
    position: sticky !important;
    top: max(8px, env(safe-area-inset-top)) !important;
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px max(10px, env(safe-area-inset-right)) 8px max(10px, env(safe-area-inset-left)) !important;
    transform: none !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .site-header .nav-shell {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px 10px 8px 12px !important;
    transform: none !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    overflow: visible !important;
  }

  .site-header .brand {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: calc(100% - 54px) !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .site-header .brand-logo { flex: 0 0 40px !important; width: 40px !important; height: 40px !important; }
  .site-header .brand-copy { min-width: 0 !important; overflow: hidden !important; }
  .site-header .brand-copy strong { display: block !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
  .site-header .mobile-header-actions { flex: 0 0 auto !important; margin-left: auto !important; }
  .site-header .mobile-toggle { flex: 0 0 44px !important; width: 44px !important; height: 44px !important; }

  .site-header .nav-links:not(.is-open) { display: none !important; }
  .site-header .nav-links.is-open {
    /* Absolute positioning is deliberate: backdrop-filter on the glass bar
       makes fixed descendants use the bar as their containing block on
       Chromium/Samsung Internet. An explicit viewport-height drawer avoids
       the collapsed 30px strip produced by that browser behaviour. */
    position: absolute !important;
    inset: auto 0 auto 0 !important;
    top: calc(100% + 10px) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    height: calc(100vh - 112px) !important;
    height: calc(100dvh - 112px) !important;
    min-height: 320px !important;
    max-height: calc(100vh - 112px) !important;
    max-height: calc(100dvh - 112px) !important;
    margin: 0 !important;
    padding: 14px !important;
    transform: none !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    clip: auto !important;
    clip-path: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
    z-index: 2147483000 !important;
  }

  .site-header .nav-links.is-open .nav-menu,
  .site-header .nav-links.is-open > ul {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 7px !important;
    overflow: visible !important;
  }
  .site-header .nav-links.is-open .nav-menu > li {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    flex: none !important;
  }
  .site-header .nav-links.is-open .nav-actions {
    flex: 0 0 auto !important;
    width: 100% !important;
  }
}

@media (max-width:380px) {
  .site-header { padding-inline: 7px !important; }
  .site-header .nav-shell { padding: 7px 8px 7px 10px !important; }
  .site-header .brand-logo { flex-basis: 38px !important; width: 38px !important; height: 38px !important; }
  .site-header .mobile-toggle { flex-basis: 42px !important; width: 42px !important; height: 42px !important; }
  .site-header .nav-links.is-open {
    height: calc(100vh - 106px) !important;
    height: calc(100dvh - 106px) !important;
    min-height: 280px !important;
    max-height: calc(100vh - 106px) !important;
    max-height: calc(100dvh - 106px) !important;
  }
}

/* Mobile navigation visual system (v34): compact accordion, never a desktop
   mega-menu. These selectors intentionally outrank every legacy menu layer. */
@media (max-width:1100px) {
  .site-header .nav-links.is-open {
    padding: 10px !important;
    gap: 9px !important;
    border: 1px solid color-mix(in srgb,var(--theme-accent) 40%,transparent) !important;
    border-radius: 20px !important;
    background:
      radial-gradient(circle at 100% 0,color-mix(in srgb,var(--theme-accent) 10%,transparent),transparent 32%),
      linear-gradient(155deg,color-mix(in srgb,var(--theme-primary) 98%,#000),var(--theme-primary-alt)) !important;
    box-shadow: 0 24px 60px color-mix(in srgb,var(--theme-primary) 38%,transparent),inset 0 1px 0 rgba(255,255,255,.08) !important;
    scrollbar-width: thin !important;
    scrollbar-color: color-mix(in srgb,var(--theme-accent) 58%,transparent) transparent !important;
  }
  .site-header .nav-links.is-open::-webkit-scrollbar { width: 5px !important; }
  .site-header .nav-links.is-open::-webkit-scrollbar-track { background: transparent !important; }
  .site-header .nav-links.is-open::-webkit-scrollbar-thumb { background: color-mix(in srgb,var(--theme-accent) 56%,transparent) !important; border-radius: 999px !important; }

  .site-header .nav-links.is-open .nav-menu,
  .site-header .nav-links.is-open > ul {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    width: 100% !important;
    gap: 7px !important;
  }
  .site-header .nav-links.is-open .nav-menu > li {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: #fff !important;
    background: color-mix(in srgb,#fff 5%,transparent) !important;
    border: 1px solid color-mix(in srgb,#fff 13%,transparent) !important;
    border-radius: 14px !important;
    box-shadow: none !important;
  }
  .site-header .nav-links.is-open .nav-menu > li > a,
  .site-header .nav-links.is-open .nav-item-row > a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 11px 14px !important;
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 780 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  .site-header .nav-links.is-open .nav-menu > li > a[aria-current="page"],
  .site-header .nav-links.is-open .nav-item-row > a[aria-current="page"] {
    color: var(--theme-accent-alt) !important;
    background: color-mix(in srgb,var(--theme-accent) 13%,transparent) !important;
  }
  .site-header .nav-links.is-open .nav-item-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) 48px !important;
    width: 100% !important;
    min-width: 0 !important;
    align-items: stretch !important;
    gap: 0 !important;
  }
  .site-header .nav-links.is-open .nav-submenu-toggle {
    position: static !important;
    display: grid !important;
    place-items: center !important;
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--theme-accent-alt) !important;
    background: color-mix(in srgb,#fff 4%,transparent) !important;
    border: 0 !important;
    border-left: 1px solid color-mix(in srgb,#fff 12%,transparent) !important;
    border-radius: 0 !important;
    transform: none !important;
  }
  .site-header .nav-links.is-open .nav-submenu-toggle svg { transition: transform .2s ease !important; }
  .site-header .nav-links.is-open .is-submenu-open .nav-submenu-toggle svg { transform: rotate(180deg) !important; }

  /* Complete desktop mega-menu reset for both accordions. */
  .site-header .nav-links.is-open .services-menu,
  .site-header .nav-links.is-open .products-menu {
    position: static !important;
    inset: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 8px 8px !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 7px !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
    transform-origin: center !important;
    overflow: visible !important;
    color: var(--theme-text) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    clip: auto !important;
    clip-path: none !important;
  }
  .site-header .nav-links.is-open .nav-item-has-menu:not(.is-submenu-open) > .services-menu { display: none !important; }
  .site-header .nav-links.is-open .nav-item-has-menu.is-submenu-open > .services-menu { display: grid !important; }
  .site-header .nav-links.is-open .services-menu::before,
  .site-header .nav-links.is-open .services-menu::after { display: none !important; content: none !important; }

  .site-header .nav-links.is-open .services-menu-group {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    align-content: start !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 7px !important;
    gap: 2px !important;
    background: color-mix(in srgb,var(--theme-surface) 97%,transparent) !important;
    border: 1px solid color-mix(in srgb,var(--theme-accent) 20%,var(--theme-border)) !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }
  .site-header .nav-links.is-open .services-menu a,
  .site-header .nav-links.is-open .products-menu a {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 35px !important;
    margin: 0 !important;
    padding: 8px 9px !important;
    color: var(--theme-muted) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    font-weight: 680 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    text-transform: none !important;
    transform: none !important;
  }
  .site-header .nav-links.is-open .services-menu a:hover,
  .site-header .nav-links.is-open .products-menu a:hover {
    color: var(--theme-text) !important;
    background: color-mix(in srgb,var(--theme-accent) 9%,var(--theme-surface)) !important;
  }
  .site-header .nav-links.is-open .services-menu .services-menu-title {
    min-height: 32px !important;
    margin: 0 0 2px !important;
    padding: 7px 9px !important;
    color: var(--theme-text) !important;
    border-bottom: 1px solid var(--theme-border) !important;
    border-radius: 7px 7px 0 0 !important;
    font-size: 10.5px !important;
    font-weight: 850 !important;
    line-height: 1.3 !important;
    letter-spacing: .065em !important;
    text-transform: uppercase !important;
  }
  .site-header .nav-links.is-open .services-menu .services-menu-all {
    min-height: 38px !important;
    padding: 8px 10px !important;
    color: var(--theme-accent) !important;
    background: color-mix(in srgb,var(--theme-accent) 8%,var(--theme-surface)) !important;
    border: 1px solid color-mix(in srgb,var(--theme-accent) 18%,var(--theme-border)) !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
  }
  .site-header .nav-links.is-open .nav-actions {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 7px !important;
  }
  .site-header .nav-links.is-open .search-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 45px !important;
    color: #fff !important;
    background: color-mix(in srgb,#fff 6%,transparent) !important;
    border: 1px solid color-mix(in srgb,#fff 13%,transparent) !important;
    border-radius: 13px !important;
  }
  .site-header .nav-links.is-open .search-toggle-label { display: inline !important; }
}
