/* The customer button uses the site's sage palette and softly squared controls. */
.header{--header-action-width:74px;--header-action-height:29.7px;--header-action-font-size:.875rem}
.header .header-demo,.header .header-portal,.header .mobile-nav .mobile-portal{width:var(--header-action-width);min-width:var(--header-action-width);height:var(--header-action-height);min-height:var(--header-action-height);padding:0;flex-shrink:0;font-size:var(--header-action-font-size);line-height:1.5}
.header .portal-link{border-radius:6px;box-shadow:inset 0 1px 0 #ffffff70;text-decoration:none;font-weight:500;transition:background .2s,border-color .2s,box-shadow .2s}
.header .portal-link[aria-disabled="true"]{color:#3f5342}
.header .portal-link:focus-visible{outline:2px solid #71805b;outline-offset:4px}
/* Fragment destinations retain focus without drawing a frame around a whole section. */
:where(main,section[id],.lower-faq):focus{outline:none}

@media(max-width:360px){
  .header{--header-action-width:64px;--header-action-height:27.5px;--header-action-font-size:.8125rem}
}

@media(min-width:601px) and (max-width:1050px){
  .header{--header-action-width:84px;--header-action-height:34.1px;--header-action-font-size:.9375rem}
}

@media(min-width:1051px){
  .header{gap:20px;--header-action-width:84px;--header-action-height:44px;--header-action-font-size:14px}
  .header .brand-modern{order:0;margin-right:8px}
  .header .desktop-nav{order:1;gap:20px;margin-left:auto;flex-shrink:0}
  .header .desktop-nav a{display:inline-flex;align-items:center;min-height:44px;padding:11px 0;font-size:14px;line-height:1.5}
  .header .desktop-nav a::after{bottom:7px;background:#71805b}
  .header .desktop-nav a[aria-current="location"]{color:#556747}
  .header .header-portal{order:3;justify-content:center;gap:0;margin:0;border:1px solid #aebaa5;background:#e2e8db;color:#3f5342}
  .header .header-portal:hover{background:#d4dfca;border-color:#8d9f80;box-shadow:inset 0 1px 0 #ffffff70,0 2px 8px #25322b14}
  .header .header-demo{order:2}
  .header .menu-toggle{order:4}
}

@media(min-width:1051px) and (max-width:1199px){
  .header{gap:14px;--header-action-width:76px}
  .header .brand-modern{margin-right:0}
  .header .desktop-nav{gap:14px}
  .header .desktop-nav a{font-size:13px}
}

/* Keep the existing mobile menu layout and its opening behaviour. */
@media(max-width:1199px){
  .header .mobile-nav .mobile-portal{position:relative;align-self:flex-start;max-width:none;margin:auto 12px 0;border:1px solid #aebaa5;border-radius:6px;background:#e2e8db;color:#3f5342}
  .header .mobile-nav .mobile-portal::before{content:"";position:absolute;inset-inline:0;top:50%;height:max(100%,44px);transform:translateY(-50%)}
  .header .mobile-nav .mobile-portal-label{display:flex;align-items:center;justify-content:center;gap:0;width:100%;height:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:inherit;font-size:inherit;font-weight:500;line-height:1.5}
  .header .mobile-nav .mobile-portal:hover{background:#e2e8db;border-color:#aebaa5}
  .header .mobile-nav .mobile-portal:hover .mobile-portal-label{background:transparent;border:0}
  .header .mobile-nav .mobile-portal:not([aria-disabled="true"]):hover{background:#d4dfca;border-color:#8d9f80}
}

@media(prefers-reduced-motion:reduce){
  .header .portal-link{transition:none}
}

/* A quiet return control appears only after the header has left the viewport. */
.scroll-top-control{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:55;display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #b5bfa9;border-radius:50%;background:#faf8f2;color:var(--ink);box-shadow:0 4px 18px #25322b14;cursor:pointer;touch-action:manipulation;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility 0s .22s,background .2s,border-color .2s}
.scroll-top-control.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.scroll-top-control svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.scroll-top-control.is-hinting svg{animation:scroll-top-hint .85s .2s ease-in-out 3}
.scroll-top-control:focus-visible{outline:2px solid #71805b;outline-offset:4px}
@keyframes scroll-top-hint{0%,100%{transform:translateY(0)}45%{transform:translateY(-5px)}}
@media(min-width:1200px){
  .scroll-top-control{right:max(28px,env(safe-area-inset-right));bottom:max(28px,env(safe-area-inset-bottom));width:52px;height:52px}
}
@media(max-width:1199px){
  .scroll-top-control{display:none}
}
@media(hover:hover) and (pointer:fine){
  .scroll-top-control:hover{background:#e2e8db;border-color:#8d9f80}
}
body.motion-paused .scroll-top-control svg{animation:none}
@media(prefers-reduced-motion:reduce){
  .scroll-top-control{transition:none}
  .scroll-top-control.is-hinting svg{animation:none}
}

/* Use the same engine mark as the product graphics in the shared footer. */
.footer .footer-engine{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;flex:0 0 auto;order:0;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.13em;color:var(--ink)}
.footer .footer-engine svg{width:30px;height:30px;flex:0 0 30px;fill:none;stroke:#526659;stroke-width:3.8;stroke-linecap:butt}
.footer .footer-engine span{white-space:nowrap}
