/* ---------- livery stripe — the signature ---------- */
.stripe{height:12px;background:linear-gradient(180deg,var(--blue) 0 34%,var(--sun) 34% 67%,var(--orange) 67% 100%);}
.stripe--skew{transform:skewY(-1.2deg);margin:-6px 0;position:relative;z-index:3;}
/* ---------- floating pill nav ---------- */
.pnav{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:1000;
  width:calc(100% - 32px);max-width:1080px;
  background:rgba(15,18,22,.82);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);
  border-radius:999px;border:1px solid rgba(244,243,238,.12);
  box-shadow:0 8px 32px rgba(15,18,22,.35);overflow:visible;}
.pnav-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 22px;}
.pnav-brand img{height:58px;width:auto;margin:-16px 0 -10px -14px;filter:drop-shadow(0 4px 10px rgba(15,18,22,.4));}
.pnav-links{display:flex;align-items:center;gap:26px;list-style:none;}
.pnav-links a{font-weight:700;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--paper);opacity:.85;transition:opacity .2s;}
.pnav-links a:hover{opacity:1;}
.pnav-cta{background:var(--orange);color:#fff !important;opacity:1 !important;padding:11px 22px;border-radius:999px;box-shadow:0 4px 16px rgba(255,83,38,.4);transition:transform .2s,box-shadow .2s;}
.pnav-cta:hover{transform:translateY(-1.5px);box-shadow:0 6px 22px rgba(255,83,38,.55);}
.xstripe{height:8px;background:linear-gradient(180deg,var(--blue) 0 34%,var(--sun) 34% 67%,var(--orange) 67% 100%);}
/* ---------- footer ---------- */
footer{background:var(--ink);padding:0 0 44px;}
.foot-in{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:52px 22px 0;}
.foot-logo{height:46px;width:auto;}
footer p{color:#aab1bb;font-size:14px;}
footer .fine{font-family:var(--mono);font-size:12px;color:#6b7280;letter-spacing:.04em;}
.dd{position:relative;}
.dd::after{content:"";position:absolute;left:-12px;right:-12px;top:100%;height:18px;}
.dd-right .dd-menu{left:auto;right:0;transform:none;}
.dd-menu{display:none;position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);background:var(--ink);border:1px solid rgba(244,243,238,.15);border-radius:16px;padding:8px;min-width:180px;box-shadow:0 12px 32px rgba(15,18,22,.5);}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block;}
.dd-menu a{display:block;padding:10px 16px;border-radius:10px;white-space:nowrap;}
.dd-menu a:hover{background:rgba(255,201,0,.15);}
/* ===== UNIVERSAL NAV (v2, overrides all prior nav rules) ===== */
.pnav{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:1000;width:calc(100% - 32px);max-width:1080px;background:rgba(15,18,22,.85);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-radius:999px;border:1px solid rgba(244,243,238,.12);box-shadow:0 8px 32px rgba(15,18,22,.35);overflow:visible !important;}
.pnav-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px 10px 22px;}
.pnav-brand img{height:58px;width:auto;margin:-16px 0 -10px -14px;filter:drop-shadow(0 4px 10px rgba(15,18,22,.4));}
.nav-burger{display:none;background:none;border:0;cursor:pointer;padding:10px;flex-direction:column;gap:5px;}
.nav-burger span{display:block;width:24px;height:3px;background:var(--paper);border-radius:2px;transition:transform .2s,opacity .2s;}
.pnav.menu-open .nav-burger span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.pnav.menu-open .nav-burger span:nth-child(2){opacity:0;}
.pnav.menu-open .nav-burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
.pnav-links{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0;}
.pnav-links li{display:block !important;}
.pnav-links a{font-weight:700;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--paper);opacity:.88;text-decoration:none;}
.pnav-cta{background:var(--orange);color:#fff !important;opacity:1 !important;padding:11px 22px;border-radius:999px;display:inline-block;}
.caret{font-style:normal;font-size:10px;opacity:.7;}
.dd{position:relative;}
.dd::after{content:"";position:absolute;left:-12px;right:-12px;top:100%;height:18px;}
.dd-menu{display:none;position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);background:var(--ink);border:1px solid rgba(244,243,238,.15);border-radius:16px;padding:8px;min-width:190px;box-shadow:0 12px 32px rgba(15,18,22,.5);}
.dd-right .dd-menu{left:auto;right:0;transform:none;}
.dd-menu a{display:block;padding:10px 16px;border-radius:10px;white-space:nowrap;}
.dd-menu a:hover{background:rgba(255,201,0,.15);}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block;}
/* (2026-08-21) removed a duplicate of the mobile block that sat OUTSIDE its
   media query — it hid the desktop nav links and showed the burger at every
   width. Never bit us because no page had ever linked this file. */
@media(max-width:880px){
  .pnav{border-radius:26px;width:calc(100% - 20px);}
  .nav-burger{display:flex;}
  .pnav-links{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:rgba(15,18,22,.97);border:1px solid rgba(244,243,238,.12);border-radius:22px;padding:10px;box-shadow:0 20px 50px rgba(15,18,22,.5);backdrop-filter:blur(18px);}
  .pnav.menu-open .pnav-links{display:flex;}
  .pnav-links>li>a{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border-radius:12px;font-size:14px;}
  .pnav-links>li>a:active{background:rgba(255,201,0,.12);}
  .pnav-cta{text-align:center;justify-content:center;margin:8px 4px 2px;}
  .dd::after{display:none;}
  .dd-menu{display:none;position:static;transform:none;background:rgba(255,255,255,.05);border:0;border-radius:12px;box-shadow:none;margin:2px 8px 8px;padding:4px;}
  .dd.open>.dd-menu{display:block;}
  .dd.open>.dd-top .caret{transform:rotate(180deg);display:inline-block;}
  .dd-menu a{padding:13px 18px;font-size:13.5px;opacity:.85;}
}
/* ---- mega menu + cart (v2026-08-22) ---- */
.mega .dd-menu{padding:14px 10px;width:max-content;max-width:min(94vw,860px);}
.mm{display:flex;flex-wrap:wrap;gap:2px 18px;}
.mm-col{min-width:168px;}
.mm-h{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.6;color:#FFC900;font-weight:700;padding:8px 16px 3px;}
.mm-col a{font-size:13px;padding:8px 16px;white-space:nowrap;}
.pnav-cart{display:inline-flex;align-items:center;gap:8px;background:#FF5326;color:#fff;font-weight:800;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;padding:9px 15px;border-radius:999px;}
.pnav-cart:hover{filter:brightness(1.07);}
.pnav-cart .cartn{background:#fff;color:#0F1216;border-radius:999px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;padding:0 6px;}
.pnav-cart .cartn.has{background:#FFC900;}
@media(max-width:880px){
  .mm{display:block;}
  .mm-col{min-width:0;}
  .mm-h{padding:10px 18px 2px;}
  .nav-cart-li .pnav-cart{margin:8px 4px 2px;justify-content:center;display:flex;}
}

/* scroll-under scrim: content passing the floating pill blurs instead of colliding */
body::after{content:"";position:fixed;top:0;left:0;right:0;height:86px;z-index:999;backdrop-filter:blur(9px) saturate(120%);-webkit-backdrop-filter:blur(9px) saturate(120%);-webkit-mask:linear-gradient(#000 55%,transparent);mask:linear-gradient(#000 55%,transparent);pointer-events:none;}

/* ==== mobile sheet v2 (2026-08-22): solid, scrollable, orange/blue, wide ====
   The v1 sheet was a blur-filtered absolute child taller than the viewport with no
   internal scroll — iOS tears on that compositing combo and the close control becomes
   unreachable once content overflows. v2: solid ink, own scroll, full-width sections. */
@media(max-width:880px){
  .pnav-links{
    background:#0e1116;
    backdrop-filter:none;-webkit-backdrop-filter:none;
    border:1px solid rgba(244,243,238,.14);
    max-height:calc(100dvh - 130px);
    overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    padding:8px 10px 12px;
    box-shadow:0 24px 60px rgba(0,0,0,.55);
  }
  .pnav.menu-open .pnav-links{animation:sheetIn .22s cubic-bezier(.2,.8,.2,1);}
  @keyframes sheetIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
  .pnav-links>li{border-bottom:1px solid rgba(244,243,238,.09);}
  .pnav-links>li:last-child,.pnav-links>li.dd-right{border-bottom:0;}
  .pnav-links>li>a{font-weight:800;color:#F4F3EE;padding:16px 12px;}
  .pnav-links>li>a:active{background:rgba(33,80,196,.28);}
  .dd.open>.dd-top{color:#FF5326;}
  .dd.open>.dd-top .caret{color:#FF5326;}
  /* sections run the full sheet width, links in two tappable columns */
  .pnav .dd .dd-menu,.pnav .dd-right .dd-menu{background:transparent;border:0;box-shadow:none;margin:0 0 6px;padding:0 2px 8px;width:auto;max-width:100%;min-width:0;position:static;left:auto;right:auto;transform:none;}  /* .pnav-scoped to out-specify .dd-right/.hover rules whose absolute+translateX(-50%) was the sideways slide */
  .dd.open>.dd-menu{animation:ddIn .18s ease;}
  @keyframes ddIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
  .mm{display:grid;grid-template-columns:1fr 1fr;gap:0 10px;}
  .mm-col{min-width:0;}
  .mm-h{grid-column:1/-1;color:#FF5326;opacity:1;font-size:10.5px;padding:12px 12px 4px;
    border-left:3px solid #2150C4;margin:4px 0 2px;}
  .mm-col a,.dd-menu>a{font-size:13.5px;color:rgba(244,243,238,.92);padding:12px;
    border-radius:10px;white-space:normal;}
  .mm-col a:active,.dd-menu>a:active{background:rgba(33,80,196,.32);color:#fff;}
  .nav-cart-li .pnav-cart{margin:12px 4px 4px;}
}
/* desktop panel highlights follow the same language */
.mm-h{color:#FF5326;opacity:1;}
.mm-col a:hover{background:rgba(33,80,196,.30);color:#fff;}
