@font-face{font-family:Conthrax;src:local("Conthrax SemiBold"),local("Conthrax"),url("../fonts/Conthrax-SemiBold.woff2") format("woff2");font-display:swap}
@font-face{font-family:Tungsten;src:local("Tungsten Bold"),local("Tungsten Condensed Bold"),local("Tungsten"),url("../fonts/Tungsten-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:Montserrat;src:local("Montserrat");font-display:swap}

.preloader{position:fixed;inset:0;z-index:500;background:var(--midnight-deep);display:grid;place-items:center;visibility:visible;transition:visibility .5s}
.preloader.is-done{visibility:hidden;pointer-events:none}
.preloader__panel{position:absolute;top:0;bottom:0;width:50%;background:var(--midnight-deep);transition:transform .5s cubic-bezier(.6,0,.2,1)}
.preloader__panel--left{left:0;border-right:1px solid rgba(54,216,255,.3)}
.preloader__panel--right{right:0;border-left:1px solid rgba(54,216,255,.3)}
.preloader.is-open .preloader__panel--left{transform:translateX(-100%)}
.preloader.is-open .preloader__panel--right{transform:translateX(100%)}
.preloader__center{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;opacity:1;transition:opacity .3s var(--ease)}
.preloader.is-open .preloader__center{opacity:0}
.preloader__mark{width:28px;height:auto;filter:drop-shadow(0 0 0 rgba(54,216,255,0));transition:filter .35s}
.preloader.is-flash .preloader__mark{filter:drop-shadow(0 0 10px var(--aurora)) drop-shadow(0 0 22px rgba(54,216,255,.65))}
.preloader__status{font-family:var(--font-tech);font-size:8px;letter-spacing:.22em;color:rgba(255,255,255,.5);margin:0}
.preloader__bar{width:120px;height:1px;background:rgba(255,255,255,.15);position:relative;overflow:hidden}
.preloader__bar span{position:absolute;top:0;left:0;bottom:0;width:0;background:var(--aurora);box-shadow:0 0 6px var(--aurora);animation:gate-fill .6s cubic-bezier(.4,0,.2,1) forwards}
@keyframes gate-fill{to{width:100%}}

:root{
  --midnight:#0A0F5A;
  --midnight-deep:#060935;
  --graphite:#1B1D24;
  --graphite-2:#252833;
  --silver:#B7BCC7;
  --arctic:#F6F7FA;
  --white:#fff;
  --aurora:#36D8FF;
  --ink:#0e1121;
  --line:rgba(10,15,90,.16);
  --line-dark:rgba(255,255,255,.16);
  --font-heading:"Montserrat","Inter",sans-serif;
  --font-display:"Tungsten","Arial Narrow",Impact,sans-serif;
  --font-tech:"Conthrax","Montserrat",Arial,sans-serif;
  --font-ui:"Montserrat",Arial,sans-serif;
  --font-hand:"Caveat",cursive;
  --radius:0;
  --ease:cubic-bezier(.2,.75,.2,1);
  --announcement-h:34px;
  --header-h:80px;
  --header-gap:14px;
  --content-max:1440px;
  --gutter:max(clamp(24px,5vw,78px),calc((100% - var(--content-max)) / 2));
}
*{box-sizing:border-box}
html{overflow-x:hidden;max-width:100vw}
body{margin:0;background:var(--arctic);color:var(--ink);font-family:var(--font-ui);font-size:15px;line-height:1.55;max-width:100vw}
body.is-locked{overflow:hidden}
button,input{font:inherit}
button,a{color:inherit}
a{text-decoration:none}
button{border:0;background:none;padding:0;cursor:pointer}
img{max-width:100%}
::selection{background:var(--aurora);color:var(--midnight-deep)}
.skip-link{position:fixed;left:20px;top:-60px;background:var(--aurora);padding:12px 16px;z-index:999;color:var(--midnight);font-weight:700}.skip-link:focus{top:20px}

.announcement{position:fixed;top:0;left:14px;right:14px;height:var(--announcement-h);padding:0 44px;background:#c2c5cd;color:var(--midnight);display:flex;align-items:center;justify-content:center;font-family:var(--font-tech);font-size:10px;letter-spacing:.1em;font-weight:700;z-index:90;overflow:hidden;border-radius:14px;transform:translateZ(0);will-change:transform}
.announcement__rotator{position:relative;width:100%;max-width:640px;height:100%;overflow:hidden}
.announcement__slide{position:absolute;top:50%;left:50%;display:flex;align-items:center;gap:8px;white-space:nowrap;transform:translate(200%,-50%);opacity:0;animation:announcement-slide 20s ease infinite}
.announcement__slide:nth-child(1){animation-delay:-16s}
.announcement__slide:nth-child(2){animation-delay:-12s}
.announcement__slide:nth-child(3){animation-delay:-8s}
.announcement__slide:nth-child(4){animation-delay:-4s}
.announcement__slide:nth-child(5){animation-delay:0s}
.announcement__signal{display:flex;align-items:center;gap:9px}.announcement__signal i{width:6px;height:6px;border-radius:50%;position:relative;top:-1px;background:var(--midnight);display:inline-block;animation:signal-inner-blink 2.8s ease-in-out infinite}.announcement__signal i::before{content:"";position:absolute;inset:-3px;border-radius:50%;background:rgba(10,15,90,.22);animation:signal-outer-pulse 2.8s ease-in-out infinite;pointer-events:none}.announcement button{position:absolute;right:20px;font-size:18px;line-height:1}.announcement.is-hidden{display:none}
@keyframes announcement-slide{0%{transform:translate(200%,-50%);opacity:0;animation-timing-function:cubic-bezier(.16,1,.3,1)}2.4%{transform:translate(-50%,-50%);opacity:1}17.6%{transform:translate(-50%,-50%);opacity:1;animation-timing-function:cubic-bezier(.5,0,.75,0)}20%{transform:translate(-300%,-50%);opacity:0}100%{transform:translate(-300%,-50%);opacity:0}}
@media(prefers-reduced-motion:reduce){.announcement__slide{position:static;left:auto;transform:none;opacity:1;animation:none;display:none}.announcement__slide.is-active{display:flex}}
.site-header{position:fixed;top:calc(var(--announcement-h) + var(--header-gap));left:14px;right:14px;height:var(--header-h);padding:0 14px 0 32px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;background:rgba(246,247,250,.6);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;border-radius:14px;overflow:hidden;z-index:50}
.site-header--on-dark:not(.is-condensed){background:rgba(6,9,53,.3)}
/* Only the corner changes while the panel is open — the bar keeps its own
   background untouched. The panel below uses the identical frosted recipe, so
   the two read as one continuous sheet of glass.
   !important because applyHeaderMorph() writes border-radius as an inline style. */
.site-header.is-category-open{border-bottom-right-radius:0 !important}
.site-header.is-menu-open{box-shadow:0 24px 50px rgba(10,15,90,.18)}
.brand{display:inline-flex;flex-direction:column;width:max-content;position:relative;z-index:2}.brand__mark{display:inline-flex;align-items:center;gap:9px}.brand__icon-stack,.brand__wordmark-stack{position:relative;display:inline-block}.brand__icon,.brand__wordmark{height:22px;width:auto;display:block}.brand__wordmark{height:14px}.brand__icon--navy,.brand__wordmark--navy{position:relative;opacity:1}.brand__icon--white,.brand__wordmark--white{position:absolute;inset:0;opacity:0}.brand small{font-size:7px;letter-spacing:.2em;margin-top:4px;overflow:hidden}.brand__divider{position:absolute;top:50%;left:100%;margin-left:22px;transform:translateY(-50%);width:1px;height:24px;background:rgba(120,130,160,.35)}
.desktop-nav{display:flex;align-items:center;gap:34px;justify-self:center;opacity:1;max-width:600px;overflow:hidden}.desktop-nav a{font-family:'Inter',var(--font-ui);font-size:14px;font-weight:600;letter-spacing:0;position:relative;white-space:nowrap;display:inline-block;transition:transform .25s var(--ease),letter-spacing .25s var(--ease)}.desktop-nav a:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-8px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--aurora) 45%,#fff 50%,var(--aurora) 55%,transparent);background-size:250% 100%;background-position:150% 0;opacity:0;box-shadow:0 0 8px 1px rgba(54,216,255,.7);transition:opacity .3s var(--ease)}.desktop-nav a:hover:after{opacity:1;animation:energy-flow 1.1s linear infinite}
.desktop-nav a .letter{display:inline-block}
.desktop-nav a:hover .letter{animation:letter-jump .6s ease;animation-delay:calc(var(--i) * 35ms)}
@keyframes energy-flow{0%{background-position:150% 0}100%{background-position:-50% 0}}
@keyframes letter-jump{0%{transform:translateY(0);opacity:1}40%{transform:translateY(-11px);opacity:0}41%{transform:translateY(11px);opacity:0}75%{transform:translateY(0);opacity:1}100%{transform:translateY(0);opacity:1}}
.header-actions{justify-self:end;display:flex;align-items:center;gap:10px}
.icon-button{position:relative;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:var(--midnight);transition:background .25s,transform .25s var(--ease),box-shadow .25s var(--ease)}.icon-button:hover{background:rgba(10,15,90,.08);transform:translateY(-2px) scale(1.12);box-shadow:0 8px 18px rgba(10,15,90,.14)}.icon-button:active{transform:translateY(0) scale(.94);transition-duration:.1s}.icon-button .icon{width:21px;height:21px;transition:transform .25s var(--ease)}.icon-button:hover .icon{transform:scale(1.06)}.icon-badge{position:absolute;top:1px;right:1px;min-width:14px;height:14px;padding:0 3px;border-radius:999px;background:var(--aurora);color:var(--midnight-deep);font-size:8px;font-weight:700;display:grid;place-items:center;font-family:var(--font-tech)}
.icon-button.is-settling,.region-button.is-settling,.prebook-button.is-settling,.menu-button.is-settling{animation:icon-settle 1.8s cubic-bezier(.22,.61,.36,1)}
@keyframes icon-settle{0%{transform:translateX(0)}22%{transform:translateX(-22px)}48%{transform:translateX(14px)}70%{transform:translateX(-7px)}88%{transform:translateX(3px)}100%{transform:translateX(0)}}
.region-button{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:15px;line-height:1;opacity:1;overflow:hidden;transition:background .25s,transform .3s var(--ease)}
.region-button:hover{background:rgba(10,15,90,.07);animation:region-float 1.8s ease-in-out infinite}
@keyframes region-float{0%,100%{transform:translateY(0) scale(1.05)}50%{transform:translateY(-5px) scale(1.05)}}
.prebook-button{position:relative;height:36px;min-width:max-content;padding:0 16px;margin-left:4px;background:var(--aurora);color:var(--midnight-deep);border:1.5px solid transparent;font-family:var(--font-tech);font-size:10px;font-weight:700;letter-spacing:.04em;border-radius:999px;white-space:nowrap;opacity:1;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s,color .25s}.prebook-button:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 10px 20px rgba(10,15,90,.18);background:var(--midnight);color:#fff}.prebook-button:active{transform:translateY(0) scale(.97)}.prebook-button__label{display:inline-block}.prebook-button__icon{width:18px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}
.menu-button{display:none;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;position:relative;flex-shrink:0;opacity:0;pointer-events:none;transform:scale(.55);place-items:center;transition:border-color .25s,background .25s}.menu-button span{width:16px;height:2px;background:var(--midnight);position:absolute;left:50%;top:50%;border-radius:1px;transition:transform .3s cubic-bezier(.22,1,.36,1)}.menu-button span:first-child{transform:translate(-50%,calc(-50% - 3px))}.menu-button span:last-child{transform:translate(-50%,calc(-50% + 3px))}.menu-button:hover:not(.is-active) span:first-child{transform:translate(-50%,calc(-50% - 5px))}.menu-button:hover:not(.is-active) span:last-child{transform:translate(-50%,calc(-50% + 5px))}.menu-button.is-active span:first-child{transform:translate(-50%,-50%) rotate(45deg)}.menu-button.is-active span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}.menu-button.is-active{background:rgba(10,15,90,.06)}
.site-header--on-dark:not(.is-condensed) .brand small,.site-header--on-dark:not(.is-condensed) .desktop-nav a,.site-header--on-dark:not(.is-condensed) .icon-button{color:#fff}.site-header--on-dark:not(.is-condensed) .desktop-nav a:after{background:#fff}.site-header--on-dark:not(.is-condensed) .icon-button:hover{background:rgba(255,255,255,.14)}.site-header--on-dark:not(.is-condensed) .menu-button{border-color:rgba(255,255,255,.35)}.site-header--on-dark:not(.is-condensed) .menu-button span{background:#fff}.site-header--on-dark:not(.is-condensed) .brand__icon--navy,.site-header--on-dark:not(.is-condensed) .brand__wordmark--navy{display:none}.site-header--on-dark:not(.is-condensed) .brand__icon--white,.site-header--on-dark:not(.is-condensed) .brand__wordmark--white{display:block}
.mobile-menu{position:fixed;top:var(--menu-top,90px);right:var(--menu-right,20px);left:auto;bottom:auto;width:min(520px,92vw);max-height:80vh;overflow-y:auto;background:#050728;color:#fff;z-index:230;padding:48px;border-radius:32px;box-shadow:0 40px 90px rgba(0,0,0,.4);transform:translate(14px,-14px) scale(.97);opacity:0;pointer-events:none;transition:transform .35s cubic-bezier(.22,1,.36,1),opacity .32s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column}
.mobile-menu.is-open{transform:translate(0,0) scale(1);opacity:1;pointer-events:auto}
.mobile-menu__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}
.mobile-menu__brand{font-family:var(--font-tech);font-size:13px;font-weight:700;letter-spacing:.18em;color:#fff}
.mobile-menu__close{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.18);position:relative;transition:background .25s,transform .3s cubic-bezier(.22,1,.36,1)}
.mobile-menu__close:hover{background:rgba(255,255,255,.08);transform:rotate(90deg)}
.mobile-menu__close span{position:absolute;top:50%;left:50%;width:15px;height:1px;background:#fff}
.mobile-menu__close span:first-child{transform:translate(-50%,-50%) rotate(45deg)}
.mobile-menu__close span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
.mobile-menu nav{margin:0 0 36px;display:grid}
.mobile-menu nav a{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:baseline;gap:20px;position:relative;opacity:0;transform:translateY(14px);transition:opacity .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1),padding-left .25s cubic-bezier(.22,1,.36,1),border-color .25s}
.mobile-menu.is-open nav a{opacity:1;transform:translateY(0)}
.mobile-menu nav a:nth-child(1){transition-delay:.06s}.mobile-menu nav a:nth-child(2){transition-delay:.1s}.mobile-menu nav a:nth-child(3){transition-delay:.14s}.mobile-menu nav a:nth-child(4){transition-delay:.18s}.mobile-menu nav a:nth-child(5){transition-delay:.22s}.mobile-menu nav a:nth-child(6){transition-delay:.26s}
.mobile-menu nav a:hover{padding-left:8px;border-color:rgba(255,255,255,.18)}
.mobile-menu nav a:hover b{color:#fff}
.mobile-menu nav a:hover .mobile-menu__arrow{opacity:1;transform:translateX(0)}
.mobile-menu__num{font-family:var(--font-tech);font-size:12px;color:var(--aurora);flex-shrink:0}
.mobile-menu nav b{font-family:var(--font-ui);font-size:clamp(28px,3.6vw,48px);font-weight:600;letter-spacing:-.01em;color:rgba(255,255,255,.86);transition:color .25s;flex:1}
.mobile-menu__arrow{font-style:normal;opacity:0;transform:translateX(-6px);transition:opacity .25s,transform .25s;color:var(--aurora);font-size:20px;flex-shrink:0}
.mobile-menu__footer{margin-top:auto;padding-top:28px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:16px}
.mobile-menu__social{display:flex;flex-wrap:wrap;gap:22px;font-family:var(--font-tech);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.mobile-menu__social a{transition:color .2s}
.mobile-menu__social a:hover{color:#fff}
.mobile-menu__locale{display:flex;gap:16px;font-family:var(--font-tech);font-size:10px;letter-spacing:.08em;color:rgba(255,255,255,.4)}
.mobile-menu__copy{font-family:var(--font-tech);font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.3);margin:0}
@media(max-width:640px){.mobile-menu{padding:32px 24px;border-radius:24px;max-height:86vh}.mobile-menu nav b{font-size:22px;line-height:1.25}.mobile-menu__head{margin-bottom:24px}.mobile-menu nav{margin-bottom:24px}.mobile-menu nav a{padding:14px 0;gap:14px}.mobile-menu__arrow{font-size:16px}.mobile-menu__footer{padding-top:20px;gap:12px}}

#main{padding-top:calc(var(--announcement-h) + var(--header-gap) + var(--header-h));transition:padding-top .4s var(--ease)}
#shop,#matcher,#experience,#ownership,#reviews,#faq,#footer{scroll-margin-top:calc(var(--announcement-h) + var(--header-gap) + var(--header-h) + 48px)}
.system-label{font-family:var(--font-tech);font-size:9px;letter-spacing:.16em;display:flex;align-items:center;gap:10px;font-weight:700}.system-label i{width:7px;height:7px;border-radius:50%;background:var(--aurora);box-shadow:0 0 14px var(--aurora);animation:bloom-aurora 1.8s ease-in-out infinite}.system-label--dark{color:var(--midnight)}
h1,h2{font-family:var(--font-display);font-weight:700;text-transform:uppercase;letter-spacing:.01em;margin:0;line-height:.79}h1 em,h2 em{font-style:normal;color:var(--aurora)}
@keyframes bloom-aurora{0%,100%{box-shadow:0 0 3px var(--aurora);opacity:.5;transform:scale(.82)}50%{box-shadow:0 0 18px var(--aurora),0 0 40px rgba(54,216,255,.65),0 0 64px rgba(54,216,255,.35);opacity:1;transform:scale(1.3)}}
@keyframes bloom-soft{0%,100%{box-shadow:0 0 0 1px rgba(10,15,90,.15);opacity:.6}50%{box-shadow:0 0 0 2px rgba(10,15,90,.35);opacity:1}}
@keyframes signal-inner-blink{0%,100%{opacity:.2;transform:scale(.72);box-shadow:0 0 0 0 rgba(10,15,90,.3)}50%{opacity:1;transform:scale(1.18);box-shadow:0 0 6px 1px rgba(10,15,90,.55)}}
@keyframes signal-outer-pulse{0%,100%{transform:scale(.72);opacity:.12}50%{transform:scale(1.4);opacity:.65}}
@keyframes bloom-navy{0%,100%{box-shadow:0 0 3px rgba(10,15,90,.25);opacity:.45;transform:scale(.85)}50%{box-shadow:0 0 20px rgba(10,15,90,.65),0 0 32px rgba(10,15,90,.3);opacity:1;transform:scale(1.4)}}
.hero-carousel{position:relative;height:100vh;min-height:640px;overflow:hidden;background:var(--midnight-deep);margin-top:calc(-1 * (var(--announcement-h) + var(--header-gap) + var(--header-h)))}
.hero-carousel__slide{position:absolute;inset:0;transform:translateX(100%);transition:transform 1s cubic-bezier(.65,0,.35,1);z-index:0}.hero-carousel__slide.is-active{transform:translateX(0);z-index:2}.hero-carousel__slide.is-leaving{transform:translateX(-100%);z-index:1}
.hero-carousel__slide img{width:100%;height:100%;object-fit:cover;object-position:center 34%;transform:scale(1.02)}
.hero-carousel__slide img.is-intro{animation:hero-image-intro 2.2s cubic-bezier(.16,1,.3,1) both}
@keyframes hero-image-intro{0%{opacity:0;transform:scale(1.16)}100%{opacity:1;transform:scale(1.02)}}
.hero-carousel__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,9,53,.8) 0%,rgba(6,9,53,.4) 38%,rgba(6,9,53,.12) 62%,transparent 82%),linear-gradient(180deg,rgba(6,9,53,.55) 0%,rgba(6,9,53,.2) 30%,rgba(6,9,53,.4) 62%,rgba(6,9,53,.9) 100%)}
.hero-carousel__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(180deg,transparent,#000 55%)}
.hero-carousel__glow{position:absolute;width:520px;height:520px;border-radius:50%;background:rgba(54,216,255,.16);filter:blur(120px);right:6%;top:8%}
.hero-carousel__content{position:absolute;left:0;right:0;bottom:0;z-index:2;color:#fff;padding:0 var(--gutter) 56px;padding-left:clamp(24px,4vw,64px);display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.hero-carousel__primary{min-width:0}
.hero-carousel__eyebrow{color:rgba(255,255,255,.8);margin-bottom:16px}
.hero-carousel__content h1{font-size:64px;max-width:500px;font-family:'Inter',var(--font-ui);font-weight:600;text-transform:none;letter-spacing:-.01em;line-height:1.1}.hero-carousel__content h1 em{color:#fff}
.hero-carousel__thumbs{display:flex;align-items:flex-end;gap:34px;margin-top:36px}
.hero-carousel__thumbs-index{font-family:var(--font-tech);font-size:28px;font-weight:700;color:rgba(255,255,255,.85);margin-right:0;display:inline-block;transform:translate(-2px,14px)}
.hero-carousel__thumbs-index.is-changing{animation:hero-index-pop .4s var(--ease)}
@keyframes hero-index-pop{0%{opacity:0;transform:translate(-2px,4px)}60%{opacity:1}100%{opacity:1;transform:translate(-2px,14px)}}
.hero-carousel__thumbs button{width:144px;height:96px;flex-shrink:0;border-radius:8px;overflow:hidden;border:1.5px solid rgba(255,255,255,.28);opacity:.55;transition:opacity .3s,border-color .3s,transform .25s}
.hero-carousel__thumbs button img{width:100%;height:100%;object-fit:cover;display:block}
.hero-carousel__thumbs button:hover{opacity:.85;transform:translateY(-3px)}
.hero-carousel__thumbs button.is-active{opacity:1;border-color:var(--aurora)}
.hero-carousel__secondary{flex-shrink:0;max-width:280px;padding-bottom:6px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.hero-carousel__sub{font-size:clamp(14px,1.1vw,17px);color:rgba(255,255,255,.75);margin:0;line-height:1.5}
.hero-carousel__shop-link{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 28px;background:rgba(246,247,250,.94);color:var(--midnight);border-radius:999px;font-family:var(--font-tech);font-size:11px;font-weight:700;letter-spacing:.05em;gap:10px;transition:transform .25s var(--ease),background .25s}
.hero-carousel__shop-link:hover{transform:translateY(-3px);background:#fff}
@media(max-width:900px){.hero-carousel__content{flex-wrap:wrap}.hero-carousel__secondary{padding-bottom:0}}
@media(max-width:640px){.hero-carousel__content{padding:0 18px 40px;flex-direction:column;align-items:flex-start;gap:20px}.hero-carousel__content h1{font-size:clamp(32px,9.9vw,58px);max-width:100%}.hero-carousel__secondary{padding-bottom:0;max-width:100%}.hero-carousel__thumbs{margin-top:22px}.hero-carousel__thumbs button{width:82px;height:56px}}
.hero{background:var(--midnight-deep);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.82fr);position:relative;overflow:hidden;padding:80px var(--gutter)}.hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#000 30%,transparent 96%)}.hero:before{content:"";position:absolute;width:550px;height:550px;border-radius:50%;background:rgba(54,216,255,.1);filter:blur(110px);right:8%;top:15%;animation:hero-bloom 7s ease-in-out infinite}@keyframes hero-bloom{0%,100%{opacity:.7;transform:scale(.9)}50%{opacity:1;transform:scale(1.12)}}.hero__copy{position:relative;z-index:2;align-self:center;min-width:0}.hero h1{font-size:clamp(56px,8vw,150px);max-width:640px;overflow-wrap:break-word}.hero__lede{font-size:clamp(16px,1.4vw,21px);max-width:570px;color:rgba(255,255,255,.7);margin:34px 0 28px}.hero__actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:54px;padding:0 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:36px;font-size:11px;font-weight:700;letter-spacing:.03em;transition:transform .25s var(--ease),background .25s,color .25s}.button:hover{transform:translateY(-2px)}.button--primary{background:var(--aurora);color:var(--midnight-deep)}.button--ghost{border:1px solid var(--line-dark);color:#fff}.button--light{background:#fff;color:var(--midnight)}.button--full{width:100%}.hero__proof{margin-top:60px;padding-top:20px;border-top:1px solid var(--line-dark);display:flex;gap:38px;max-width:650px}.hero__proof span{font-size:9px;letter-spacing:.08em;color:rgba(255,255,255,.5);text-transform:uppercase}.hero__proof b{display:block;font-family:var(--font-display);font-size:32px;color:white;line-height:1}.hero__visual{position:relative;z-index:2;display:grid;place-items:center;min-height:570px}.hero__halo{position:absolute;width:min(42vw,590px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(54,216,255,.24);box-shadow:inset 0 0 80px rgba(54,216,255,.08),0 0 70px rgba(54,216,255,.05);animation:halo-bloom 5s ease-in-out infinite}@keyframes halo-bloom{0%,100%{box-shadow:inset 0 0 80px rgba(54,216,255,.08),0 0 70px rgba(54,216,255,.05);border-color:rgba(54,216,255,.24)}50%{box-shadow:inset 0 0 110px rgba(54,216,255,.28),0 0 140px rgba(54,216,255,.24);border-color:rgba(54,216,255,.55)}}.hero__halo:after,.hero__halo:before{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;inset:10%;animation:halo-ring-bloom 5s ease-in-out infinite}.hero__halo:after{inset:24%;animation-delay:.6s}@keyframes halo-ring-bloom{0%,100%{border-color:rgba(255,255,255,.08);box-shadow:none}50%{border-color:rgba(54,216,255,.45);box-shadow:0 0 24px rgba(54,216,255,.25)}}.hero-case{width:250px;height:390px;position:relative;filter:drop-shadow(0 45px 40px rgba(0,0,0,.45));animation:float 5s ease-in-out infinite}.hero-case__handle{position:absolute;width:86px;height:76px;border:9px solid #8c919e;border-bottom:0;left:82px;top:-58px;border-radius:20px 20px 0 0}.hero-case__body{height:100%;border-radius:42px;background:linear-gradient(145deg,#d7dbe2 2%,#8b919e 47%,#eceef2 85%);border:1px solid rgba(255,255,255,.75);position:relative;overflow:hidden;box-shadow:inset 15px 0 25px rgba(255,255,255,.28),inset -20px -12px 30px rgba(17,21,45,.25)}.hero-case__body:before{content:"";position:absolute;inset:12px;border:1px solid rgba(10,15,90,.25);border-radius:33px}.hero-case__rail{position:absolute;width:8px;height:77%;top:11%;border-radius:8px;background:linear-gradient(#555b68,#e5e8ee,#606571);box-shadow:0 0 0 1px rgba(0,0,0,.18)}.hero-case__rail--left{left:34px}.hero-case__rail--right{right:34px}.hero-case__screen{position:absolute;top:83px;left:50%;transform:translateX(-50%);width:88px;height:54px;border-radius:9px;background:#0f1320;color:white;padding:11px;display:flex;flex-direction:column}.hero-case__screen small{font-family:var(--font-tech);font-size:6px;letter-spacing:.1em}.hero-case__screen b{font-size:11px;color:var(--aurora);margin-top:auto}.hero-case__light{position:absolute;bottom:66px;left:50%;transform:translateX(-50%);width:58px;height:3px;background:var(--aurora);box-shadow:0 0 16px var(--aurora);animation:bloom-aurora 1.8s ease-in-out infinite}.hero-case__wheel{position:absolute;width:40px;height:22px;border-radius:0 0 15px 15px;background:#111523;bottom:-15px}.hero-case__wheel--left{left:30px}.hero-case__wheel--right{right:30px}.hero__telemetry{position:absolute;width:100%;max-width:450px;display:flex;justify-content:space-between;font-family:var(--font-tech);font-size:8px;letter-spacing:.12em;color:rgba(255,255,255,.55)}.hero__telemetry b{color:var(--aurora)}.hero__telemetry--top{top:9%}.hero__telemetry--bottom{bottom:8%}.hero__ticker{position:absolute;bottom:0;left:0;right:0;height:38px;border-top:1px solid var(--line-dark);display:flex;align-items:center;overflow:hidden;font-family:var(--font-tech);font-size:8px;letter-spacing:.18em;color:rgba(255,255,255,.45);white-space:nowrap}.hero__ticker span{animation:ticker 28s linear infinite}
.hero-case-img{width:min(320px,78%);height:auto;max-height:460px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 35px 45px rgba(0,0,0,.65)) drop-shadow(0 0 35px rgba(54,216,255,.2));animation:float 5s ease-in-out infinite;display:block}
@keyframes float{50%{transform:translateY(-14px) rotate(.7deg)}}@keyframes ticker{to{transform:translateX(-50%)}}

.section-heading{padding:80px var(--gutter) 52px;display:grid;grid-template-columns:180px minmax(0,1fr) minmax(240px,360px);gap:42px;align-items:end}.section-heading>p:first-child,.ownership__head>p{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55);align-self:start;margin:0}.section-heading h2{font-size:clamp(80px,9vw,145px);color:var(--midnight);margin-top:18px;overflow-wrap:break-word}.section-heading>p:last-child{color:#5f6370;max-width:330px;margin:0}.section-heading--compact{padding-bottom:36px}.section-heading>div{min-width:0}.section-heading .system-label{margin:0}
.matcher{background:var(--arctic)}.matcher__panel{margin:0 var(--gutter) 80px;border:1px solid var(--line);display:grid;grid-template-columns:1.45fr .75fr;background:white;min-height:520px}.matcher__steps{display:grid;grid-template-rows:repeat(3,1fr)}.matcher fieldset{border:0;border-bottom:1px solid var(--line);padding:32px;display:grid;grid-template-columns:minmax(170px,1.15fr) repeat(3,1fr);gap:10px;align-items:center;margin:0}.matcher fieldset:last-child{border-bottom:0}.matcher legend{display:contents;font-family:var(--font-tech);font-size:10px;letter-spacing:.08em;font-weight:700}.matcher legend span{display:none}.matcher__legend{display:flex;align-items:center;gap:9px}.matcher__legend-icon{width:16px;height:16px;flex-shrink:0;color:var(--midnight)}.matcher fieldset button{height:58px;border:1px solid var(--line);font-size:11px;font-weight:600;transition:.2s;display:flex;align-items:center;justify-content:center;gap:7px}.matcher fieldset button svg{width:14px;height:14px;flex-shrink:0}.matcher fieldset button:hover,.matcher fieldset button.is-active{background:var(--midnight);border-color:var(--midnight);color:#fff}.matcher__result{background:var(--midnight);color:#fff;padding:24px;display:flex;flex-direction:column}.matcher__result-top{display:flex;justify-content:space-between;font-family:var(--font-tech);font-size:8px;letter-spacing:.14em;color:rgba(255,255,255,.55)}.matcher__object{flex:1;display:grid;place-items:center;min-height:250px}.matcher__object img.product-photo{width:180px;height:230px;object-fit:contain;filter:drop-shadow(0 22px 30px rgba(0,0,0,.35))}.matcher__copy p{font-size:10px;color:rgba(255,255,255,.56);text-transform:uppercase;letter-spacing:.05em}.matcher__copy h3{font-family:var(--font-tech);font-size:17px;letter-spacing:.04em;margin:6px 0}.matcher__copy strong{font-family:var(--font-display);font-size:34px}.matcher__result .button{margin-top:22px}

.product-photo{display:block;border:0}

.shop{padding-bottom:80px}.shop-toolbar{padding:0 var(--gutter) 22px;display:flex;align-items:center;justify-content:space-between}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button,.sort{height:40px;padding:0 15px;border:1px solid var(--line);font-size:10px;font-weight:600}.filters button.is-active{background:var(--midnight);color:white;border-color:var(--midnight)}.shop-promo{margin:0 var(--gutter) 26px;padding:16px 20px;display:flex;align-items:center;gap:14px;background:var(--midnight);border-radius:12px;color:#fff}.shop-promo__badge{flex-shrink:0;font-family:var(--font-tech);font-size:9px;font-weight:700;letter-spacing:.1em;background:var(--aurora);color:var(--midnight-deep);padding:6px 10px;border-radius:999px}.shop-promo p{margin:0;font-size:13px;line-height:1.5;color:rgba(255,255,255,.85)}.shop-promo p b{color:var(--aurora);font-family:var(--font-tech);font-size:12px;letter-spacing:.04em}
.product-grid{padding:0 var(--gutter);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.product-card{background:white;border:1px solid var(--line);min-width:0;transition:transform .3s var(--ease),box-shadow .3s}.product-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(10,15,90,.1)}.product-card.is-hidden{display:none}.product-card__media{height:330px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(140deg,#f9fafc,#d9dee6);cursor:pointer}
.product-card:nth-child(3n+1) .product-card__media{background:linear-gradient(140deg,#f5f5f7,#dcdee2)}
.product-card:nth-child(3n+2) .product-card__media{background:radial-gradient(circle at 50% 45%,rgba(54,216,255,.14),transparent 27%),linear-gradient(145deg,#05083e,#0a0f5a)}
.product-card:nth-child(3n) .product-card__media{background:radial-gradient(circle at 50% 30%,rgba(54,216,255,.09),transparent 40%),linear-gradient(160deg,#0c0e14,#050608)}
.product-card:nth-child(3n+1) .product-code{color:rgba(10,15,90,.65)}
.product-card:nth-child(3n+2) .product-code,.product-card:nth-child(3n) .product-code{color:rgba(255,255,255,.7)}.product-card__media img.product-photo{position:relative;z-index:2;width:88%;height:88%;object-fit:contain;transition:transform .3s var(--ease);filter:drop-shadow(0 18px 22px rgba(10,15,90,.16))}.product-card:hover .product-card__media img.product-photo{transform:scale(1.04)}.product-badge{position:absolute;left:0;top:0;z-index:3;font-family:var(--font-tech);font-weight:500;font-size:11px;letter-spacing:.02em;text-transform:none;background:linear-gradient(90deg, rgba(255,255,255,1) 40%, rgba(255,255,255,0) 100%);padding:14px 40px 14px 14px;color:var(--midnight);border-radius:0;box-shadow:none}.product-favourite{position:absolute;right:12px;top:12px;z-index:3;width:34px;height:34px;background:rgba(255,255,255,.85);font-size:18px}.product-favourite.is-saved{color:var(--midnight)}.product-code{position:absolute;left:14px;right:14px;bottom:12px;z-index:3;display:flex;justify-content:space-between;font-family:var(--font-tech);font-size:7px;letter-spacing:.1em;color:rgba(10,15,90,.65)}.product-card__body{padding:18px 16px 14px;display:flex;justify-content:space-between;gap:12px}.product-card__body h3{font-family:var(--font-tech);font-size:11px;letter-spacing:.04em;margin:0 0 5px}.product-card__body p{font-size:10px;color:#777b86;margin:0}.product-card__body strong{font-family:var(--font-display);font-size:24px;white-space:nowrap}.product-card__actions{display:grid;grid-template-columns:1fr auto;border-top:1px solid var(--line)}.product-card__actions button{height:48px;padding:0 14px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.product-card__actions button:first-child{text-align:left}.product-card__actions button:last-child{border-left:1px solid var(--line);width:55px;font-size:19px}.product-card__actions button:hover{background:var(--midnight);color:white}

.experience{background:var(--midnight-deep);color:white;display:grid;grid-template-columns:.85fr 1.15fr;padding:80px var(--gutter);gap:9vw}.experience__copy{align-self:center}.experience__copy>p.experience__kicker{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(255,255,255,.4);margin:0 0 16px}.experience__copy h2{font-size:clamp(84px,9vw,150px);margin:24px 0 34px;overflow-wrap:break-word}.experience__copy>p:not(.system-label){color:rgba(255,255,255,.62);max-width:520px}.experience__copy .button{margin-top:26px}
.experience__showcase{align-self:center}
.experience-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-dark)}.experience-list li{display:flex;gap:28px;padding:26px 0;border-bottom:1px solid var(--line-dark)}.experience-list__num{font-family:var(--font-tech);font-size:10px;color:var(--aurora);flex-shrink:0;padding-top:3px}.experience-list h3{font-family:var(--font-tech);font-size:15px;letter-spacing:.03em;margin:0 0 8px;font-weight:700}.experience-list p{margin:0;max-width:480px;color:rgba(255,255,255,.6)}
.ownership{padding:80px var(--gutter);background:#e4e6ec}.ownership__head{display:grid;grid-template-columns:180px 1fr;margin-bottom:55px}.ownership__head h2{font-size:clamp(82px,9vw,145px);color:var(--midnight)}.ownership__grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.ownership__grid article{padding:38px 32px;min-height:360px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s}.ownership__grid article:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(10,15,90,.12);z-index:2}.ownership__top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:auto}.ownership__grid span{font-family:var(--font-tech);font-size:11px;color:var(--midnight)}.ownership__icon-wrap{width:52px;height:52px;border-radius:50%;background:rgba(10,15,90,.06);display:grid;place-items:center}.ownership__icon{width:26px;height:26px;color:var(--midnight);opacity:.9}.ownership__grid h3{font-family:var(--font-tech);font-size:16px;letter-spacing:.03em;margin:24px 0 12px}.ownership__grid p{color:#666b76;font-size:14px;line-height:1.6}.ownership__grid a{font-size:11px;font-weight:700;margin-top:24px}

.reviews{padding:90px var(--gutter) 100px;background:var(--arctic);display:grid;grid-template-columns:minmax(280px,320px) 1fr;gap:40px;align-items:start}
.reviews__intro{min-width:0}
.reviews__intro>p:first-child{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55)}
.reviews__intro h2{font-size:clamp(30px,4vw,52px);color:var(--midnight);margin:18px 0 16px;overflow-wrap:break-word}
.reviews__intro>p:nth-of-type(2){color:#5f6370;margin:0 0 24px}
.reviews__score{display:flex;align-items:baseline;gap:12px}
.reviews__score strong{font-family:var(--font-display);font-size:56px;color:var(--midnight);line-height:1}
.reviews__stars{color:var(--aurora);font-size:18px;letter-spacing:2px}
.reviews__count{color:#5f6370;font-size:12px;margin:6px 0 26px}
.reviews__cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-tech);font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--midnight);border-bottom:1px solid var(--midnight);padding-bottom:5px}
.reviews__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.review-card{background:#fff;border-radius:16px;padding:24px;display:flex;gap:20px;box-shadow:0 14px 34px rgba(10,15,90,.08)}
.review-card__body{flex:1;min-width:0}
.review-card__stars{color:var(--aurora);font-size:13px;letter-spacing:2px;margin-bottom:12px}
.review-card h3{font-family:var(--font-tech);font-size:14px;margin:0 0 10px;color:var(--midnight)}
.review-card p{font-size:12px;color:#5f6370;line-height:1.6;margin:0 0 18px}
.review-card__author{display:flex;align-items:center;gap:10px}
.review-card__avatar{width:34px;height:34px;border-radius:50%;color:#fff;display:grid;place-items:center;font-family:var(--font-tech);font-size:10px;font-weight:700;flex-shrink:0}
.review-card__author b{display:block;font-size:11px;color:var(--midnight);font-weight:700}
.review-card__author small{display:flex;align-items:center;gap:4px;font-size:9px;color:#8b8f99}
.review-card__author small svg{width:11px;height:11px;color:var(--aurora)}
.review-card__photo{width:120px;border-radius:10px;object-fit:cover;flex-shrink:0;align-self:stretch}
.reviews__stats{grid-column:1/-1;margin-top:20px;background:#fff;border-radius:16px;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 14px 34px rgba(10,15,90,.08)}
.reviews__stats>div{display:flex;align-items:center;gap:12px;padding:26px;border-right:1px solid var(--line)}
.reviews__stats>div:last-child{border-right:0}
.reviews__stats svg{width:22px;height:22px;color:var(--midnight);flex-shrink:0}
.reviews__stats b{display:block;font-family:var(--font-tech);font-size:15px;color:var(--midnight)}
.reviews__stats span{font-size:10px;color:#8b8f99}
.reviews__footer{grid-column:1/-1;text-align:center;margin-top:26px;font-size:12px;color:#5f6370}
.reviews__footer a{color:var(--midnight);font-weight:700;text-decoration:underline}
.newsletter{background:linear-gradient(165deg,#f5f7fb,#eef1f7);color:var(--ink);padding:90px var(--gutter);display:grid;grid-template-columns:1fr 1.05fr;gap:6vw;align-items:center}.newsletter .system-label i{background:var(--aurora)}.newsletter .system-label{color:rgba(10,15,90,.6)}
.newsletter__copy h2{font-size:clamp(52px,6.5vw,96px);color:var(--midnight);margin:20px 0 20px}.newsletter__copy h2 em{color:var(--aurora);font-style:normal}
.newsletter__lede{font-size:14px;color:#5f6370;max-width:480px;margin:0 0 34px}
.newsletter__perks-row{display:flex;gap:30px;flex-wrap:wrap;margin-bottom:38px}.perk{display:flex;align-items:flex-start;gap:12px;max-width:170px}.perk__icon{width:34px;height:34px;border:1px solid var(--midnight);border-radius:50%;display:grid;place-items:center;flex-shrink:0;color:var(--midnight)}.perk__icon svg{width:15px;height:15px}.perk b{display:block;font-family:var(--font-tech);font-size:11px;color:var(--midnight);margin-bottom:4px}.perk p{margin:0;font-size:11px;color:#767a86;line-height:1.4}
.newsletter__slashes{font-family:var(--font-tech);letter-spacing:.25em;color:rgba(10,15,90,.25);margin:0 0 10px;overflow:hidden;white-space:nowrap;font-size:11px}
.newsletter__hashtag{font-family:var(--font-tech);font-size:10px;letter-spacing:.1em;color:var(--midnight);font-weight:700;margin:0}
.newsletter__panel{position:relative}
.newsletter__visual{position:absolute;inset:0;overflow:hidden;pointer-events:none}.newsletter__orbit{position:absolute;top:-10%;right:-8%;width:58%;aspect-ratio:1;border:1px solid rgba(10,15,90,.12);border-radius:50%}.newsletter__orbit--inner{width:36%;top:auto;bottom:-8%;right:auto;left:-6%}.newsletter__dot{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--aurora);opacity:.55;animation:bloom-navy 2.6s ease-in-out infinite}.newsletter__dot--1{top:16%;right:8%}.newsletter__dot--2{bottom:12%;left:5%;animation-delay:.9s}
.newsletter__form{position:relative;z-index:2;background:#fff;border-radius:22px;padding:34px;box-shadow:0 30px 70px rgba(10,15,90,.14)}
.newsletter__form-head{display:flex;align-items:center;gap:14px;margin-bottom:26px}.newsletter__form-icon{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--midnight),var(--aurora));color:#fff;display:grid;place-items:center;flex-shrink:0}.newsletter__form-icon svg{width:19px;height:19px}.newsletter__form-head b{display:block;font-family:var(--font-tech);font-size:14px;color:var(--midnight);margin-bottom:3px}.newsletter__form-head p{margin:0;font-size:11px;color:#8b8f99}
.newsletter__row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.newsletter__field{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:0 14px;height:48px}.newsletter__field svg{width:15px;height:15px;color:#9296a0;flex-shrink:0}.newsletter__field input,.newsletter__field select{border:0;outline:0;background:none;flex:1;font-size:12px;color:var(--ink);font-family:var(--font-ui);min-width:0}.newsletter__field select{appearance:none;color:#767a86}.newsletter__field--select{position:relative;margin-bottom:18px}.newsletter__field--select svg:last-child{position:absolute;right:14px;width:12px;height:12px;pointer-events:none}
.newsletter__interest-label{font-size:11px;font-weight:700;color:var(--midnight);margin:0 0 10px}.newsletter__checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:22px}.newsletter__checks label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:10px;color:#5f6370}.newsletter__checks input{width:13px;height:13px;accent-color:var(--midnight)}
.newsletter__submit{width:100%;height:52px;border:0;border-radius:12px;background:linear-gradient(90deg,var(--midnight),#1450e6);color:#fff;font-family:var(--font-tech);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:transform .2s}.newsletter__submit:hover{transform:translateY(-2px)}
.newsletter__privacy{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;color:#9296a0;margin:14px 0 0}.newsletter__privacy svg{width:11px;height:11px}
.site-footer{position:relative;overflow:hidden;background-color:var(--midnight-deep);color:#fff;padding:70px var(--gutter) 24px}
.footer__anim{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.footer__anim-routes{display:none !important}
.footer__anim-routes circle{fill:#dff6ff;filter:drop-shadow(0 0 3px rgba(160,225,255,.9))}
.footer__anim-glow{position:absolute;width:5px;height:5px;border-radius:50%;background:#cdeeff;opacity:.15;transform:translate(-50%,-50%);box-shadow:0 0 4px 1px rgba(160,225,255,.35)}
/* Comet: a hairline tail that fades out behind a bright head. transform-origin
   is the tail's tip so rotate() aims the streak and translateX() drives it along
   its own axis — head first, tail always trailing correctly. Hidden by default;
   only the reduced-motion-safe block below animates it. */
.footer__comet{position:absolute;left:var(--cx,0);top:var(--cy,0);width:var(--clen,230px);height:1.5px;transform-origin:0 50%;transform:rotate(var(--cang,17deg));border-radius:999px;opacity:0;background:linear-gradient(90deg,rgba(160,225,255,0) 0%,rgba(160,225,255,.14) 45%,rgba(196,236,255,.5) 78%,rgba(226,246,255,.95) 100%);filter:drop-shadow(0 0 5px rgba(120,200,255,.5))}
.footer__comet:after{content:"";position:absolute;right:0;top:50%;width:3px;height:3px;border-radius:50%;transform:translate(45%,-50%);background:#eefaff;box-shadow:0 0 7px 1.5px rgba(190,234,255,.9),0 0 16px 5px rgba(110,195,255,.35)}
/* Transform runs linearly across 0->62% of the cycle, so the crossing is one
   slow, even sweep; the remaining 38% is dead air before the next pass. */
@keyframes footer-comet{
  0%{opacity:0;transform:rotate(var(--cang,15deg)) translateX(0)}
  5%{opacity:1}
  54%{opacity:1}
  62%{opacity:0;transform:rotate(var(--cang,15deg)) translateX(var(--cdist,108vw))}
  100%{opacity:0;transform:rotate(var(--cang,15deg)) translateX(var(--cdist,108vw))}
}
.footer__globe-wrap{position:absolute;right:40px;top:45px;width:240px;height:240px;z-index:2;pointer-events:auto}
.footer__globe-wrap:before,.footer__globe-wrap:after{content:"";position:absolute;width:16px;height:16px;border-style:solid;border-color:rgba(157,205,255,.55);pointer-events:none}
.footer__globe-wrap:before{top:-12px;right:-30px;border-width:1px 1px 0 0}
.footer__globe-wrap:after{bottom:-12px;left:-12px;border-width:0 0 1px 1px}
.footer-globe__svg{width:100%;height:100%;display:block;cursor:grab;touch-action:none}
.footer-globe__svg.is-dragging{cursor:grabbing}
.footer-globe__ocean{fill:rgba(18,26,64,.6);stroke:rgba(157,205,255,.55);stroke-width:1.4}
.footer-globe__graticule{fill:none;stroke:rgba(255,255,255,.12);stroke-width:.6}
.footer-globe__land{fill:rgba(120,165,255,.4);stroke:rgba(190,215,255,.3);stroke-width:.7}
.footer-globe__marker{fill:#36d8ff;filter:drop-shadow(0 0 4px rgba(54,216,255,.95));cursor:pointer;transition:fill .2s}
.footer-globe__marker:hover{fill:#7ce8ff}
.footer-globe__marker.is-selected{fill:#fff;stroke:#36d8ff;stroke-width:2.5;filter:drop-shadow(0 0 8px rgba(54,216,255,1))}
.footer-globe__badge{position:absolute;left:50%;top:50%;transform:translate(-50%,calc(-100% - 10px));padding:7px 20px 7px 10px;border-radius:6px;background:#0b1330;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 22px rgba(0,0,0,.4);opacity:0;pointer-events:none;transition:opacity .15s var(--ease);z-index:6;white-space:nowrap}
.footer-globe__badge.is-visible{opacity:1}
.footer-globe__badge-dot{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:2px;background:#ff4d3d;box-shadow:0 0 4px rgba(255,77,61,.6)}
.footer-globe__badge-title{display:block;font-family:var(--font-tech);font-size:10px;font-weight:700;letter-spacing:.05em;color:#fff;white-space:nowrap;text-transform:uppercase}
.footer-globe__badge-sub{display:block;margin-top:2px;font-family:var(--font-tech);font-size:8px;font-weight:400;letter-spacing:.08em;color:rgba(255,255,255,.55);white-space:nowrap;text-transform:uppercase}
.footer__globe-coords{position:absolute;top:0;bottom:0;right:-18px;display:flex;align-items:center;gap:6px;writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--font-tech);font-size:10px;color:rgba(157,205,255,.75);letter-spacing:.05em;pointer-events:none}
.footer__globe-coords b{font-weight:400}
@media(max-width:1300px){.footer__globe-wrap{width:190px;height:190px;right:20px}}
@media(max-width:960px){.footer__globe-wrap{display:none}}
@media(prefers-reduced-motion:no-preference){
.footer__anim-glow{animation:footer-anim-glow var(--gdur,16s) ease-in-out infinite;animation-delay:var(--gdel,0s)}
.footer__comet{animation:footer-comet 18s linear infinite !important;animation-delay:var(--cdel,0s)}
}
@keyframes footer-anim-glow{0%,85%,100%{opacity:.15;transform:translate(-50%,-50%) scale(1)}92%{opacity:.75;transform:translate(-50%,-50%) scale(1.6)}}
.footer__top,.footer__bottom{position:relative;z-index:1}.footer__top{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:40px;padding-bottom:50px}.footer__brand{display:flex;flex-direction:column;gap:18px}.footer__brand-mark{display:inline-flex;align-items:center;gap:12px}.footer__brand-tagline{font-family:var(--font-ui);font-size:16px;font-weight:300;line-height:1.4;color:#ffffff;margin:0;max-width:260px}.footer__brand-origin{font-family:var(--font-ui);font-size:14px;font-weight:300;line-height:1.5;color:rgba(255,255,255,.8);margin:0}
.footer__speaker{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.4);color:#fff;display:grid;place-items:center;flex-shrink:0;transition:background .25s,border-color .25s,transform .2s}
.footer__speaker svg{width:15px;height:15px}
.footer__speaker:hover{background:rgba(255,255,255,.15);transform:translateY(-1px)}
.footer__speaker.is-playing{background:var(--aurora);border-color:var(--aurora);color:var(--midnight-deep)}.footer__social{display:flex;align-items:center;gap:10px;margin-top:4px}.footer__social-btn,.footer__top .footer__social-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.35);color:#ffffff;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:0;transition:background .25s,border-color .25s,transform .2s var(--ease),color .25s}.footer__social-btn svg,.footer__top .footer__social-btn svg{width:16px;height:16px;display:block;margin:0}.footer__social-btn:hover,.footer__top .footer__social-btn:hover{background:var(--aurora);border-color:var(--aurora);color:var(--midnight-deep);transform:translateY(-2px)}.footer__brand-icon{height:30px;width:auto;display:block}.footer__brand-wordmark{height:20px;width:auto;display:block}.footer__brand span{font-family:var(--font-tech);font-size:9.5px;font-weight:400;letter-spacing:.11em;color:var(--aurora)}.inline-wordmark{height:.85em;width:auto;vertical-align:middle;display:inline-block}.footer__top h3{font-size:12px;font-family:var(--font-tech);font-weight:700;letter-spacing:.12em;color:#ffffff;text-transform:uppercase}.footer__top a:not(.footer__social-btn){display:flex;align-items:center;justify-content:flex-start;gap:6px;margin:11px 0;font-size:14px;font-weight:300;color:#ffffff;transition:color .2s}.footer__top a:not(.footer__social-btn) span{display:inline-block;width:112px;flex-shrink:0}.footer__top>div:nth-child(4) a:not(.footer__social-btn) span{width:170px}.footer__top a:not(.footer__social-btn) i{font-style:normal;font-weight:300;color:rgba(255,255,255,.6);transition:color .2s,transform .2s var(--ease)}.footer__top a:not(.footer__social-btn):hover{color:var(--aurora)}.footer__top a:not(.footer__social-btn):hover i{color:var(--aurora);transform:translateX(3px)}.footer__bottom{border-top:1px solid var(--line-dark);padding-top:20px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;font-family:var(--font-tech);font-size:10px;font-weight:300;letter-spacing:.12em;color:rgba(255,255,255,.88)}.footer__bottom>span{display:flex;align-items:center;gap:8px}.footer__bottom-left{gap:5px;justify-self:start}.footer__bottom-center{justify-self:center}.footer__bottom-center b{font-weight:300;font-style:normal;font-size:13px;letter-spacing:.08em;color:#ffffff;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-family:"SF Mono", "Roboto Mono", Consolas, monospace;text-align:left}.footer__bottom-right{gap:18px;justify-self:end}
@media(max-width:640px){.footer__bottom{display:flex;flex-direction:column;align-items:flex-start;gap:10px}}

.product-page{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(380px,1.15fr);align-items:start;gap:6vw;padding:24px var(--gutter) 80px;background:var(--arctic);color:var(--ink)}.product-page__backwrap{padding:24px var(--gutter) 0;background:var(--arctic)}.product-page__back{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-tech);font-size:9px;letter-spacing:.1em;color:var(--midnight);font-weight:700}.product-page__eyebrow{font-family:var(--font-tech);font-size:9px;letter-spacing:.12em;color:rgba(255,255,255,.55);margin:0}
.blueprint-layer{position:absolute;inset:0;pointer-events:none;z-index:3}.blueprint-callout{position:absolute;display:flex;align-items:center;gap:8px;font-family:var(--font-tech);font-size:9.5px;letter-spacing:.07em;color:#fff;white-space:nowrap;transform:translateY(-50%)}.blueprint-callout:before{content:"";width:28px;height:1px;background:var(--aurora);flex-shrink:0}.blueprint-callout--left{flex-direction:row-reverse}
.blueprint-dim{position:absolute;display:flex;align-items:center;justify-content:center;font-family:var(--font-tech);font-size:9px;color:rgba(255,255,255,.75);letter-spacing:.06em}.blueprint-dim--width{flex-direction:column;gap:4px}.blueprint-dim--height{flex-direction:row;gap:4px;writing-mode:vertical-rl}.blueprint-dim__line{position:relative;background:rgba(255,255,255,.5)}.blueprint-dim--width .blueprint-dim__line{width:100%;height:1px}.blueprint-dim--height .blueprint-dim__line{height:100%;width:1px}.blueprint-dim--width .blueprint-dim__line:before,.blueprint-dim--width .blueprint-dim__line:after{content:"";position:absolute;top:-3px;width:1px;height:7px;background:rgba(255,255,255,.5)}.blueprint-dim--width .blueprint-dim__line:before{left:0}.blueprint-dim--width .blueprint-dim__line:after{right:0}.blueprint-dim--height .blueprint-dim__line:before,.blueprint-dim--height .blueprint-dim__line:after{content:"";position:absolute;left:-3px;height:1px;width:7px;background:rgba(255,255,255,.5)}.blueprint-dim--height .blueprint-dim__line:before{top:0}.blueprint-dim--height .blueprint-dim__line:after{bottom:0}
.product-dialog__visual{background:var(--midnight);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.product-dialog__media{display:flex;flex-direction:column;align-self:stretch}
.product-dialog__tagline{position:relative;overflow:hidden;display:flex;align-items:flex-end;margin:0;padding:22px 6px 32px;min-height:90px;font-family:var(--font-tech);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(10,15,90,.5)}
.product-dialog__tagline span{color:var(--midnight);font-weight:700}
.product-dialog__tagline:before{content:"";position:absolute;top:28px;right:-6%;width:62%;aspect-ratio:1;background:url(brand/icon-navy.png) center/contain no-repeat;opacity:.05;pointer-events:none}
.product-dialog__visual-inner{display:flex;flex-direction:column;flex:1}.product-scene{flex:1;min-height:460px;position:relative;display:grid;place-items:center;overflow:hidden}.product-scene__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:54px 54px}.product-scene--night{background:linear-gradient(140deg,#050715,#161a45 65%,#0a0f5a)}.product-scene--night:after{content:"";position:absolute;width:70%;height:2px;background:var(--aurora);bottom:23%;left:15%;box-shadow:0 0 28px var(--aurora)}.product-scene--quiet{background:linear-gradient(145deg,#e9ebf0,#adb2bd)}.product-scene--quiet .product-scene__grid{opacity:.35}.product-scene--quiet .scene-meta{color:var(--midnight)}.experience-object{position:relative;z-index:2;transition:transform .6s var(--ease)}.experience-object img.product-photo{width:min(420px,80vw);height:480px;object-fit:contain;filter:drop-shadow(0 26px 34px rgba(0,0,0,.4))}.product-scene:hover .experience-object{transform:translateY(-6px)}.scene-meta{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px 24px 14px;background:linear-gradient(180deg,transparent,rgba(6,9,53,.9) 55%);display:flex;justify-content:space-between;align-items:flex-end;color:rgba(255,255,255,.7);font-family:var(--font-tech);font-size:8px;letter-spacing:.13em}.scene-switcher{height:58px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark)}.scene-switcher button{color:rgba(255,255,255,.5);border-right:1px solid var(--line-dark);font-size:13px;font-weight:700}.scene-switcher button.is-active{color:#fff;box-shadow:inset 0 -2px 0 rgba(255,255,255,.8)}
.pdp-gallery{display:flex;gap:10px;padding:16px 20px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;background:rgba(255,255,255,.04);border-top:1px solid var(--line-dark)}.pdp-gallery::-webkit-scrollbar{display:none}.pdp-gallery button{flex-shrink:0;width:92px;height:92px;border-radius:12px;overflow:hidden;background:#fff;border:1.5px solid rgba(10,15,90,.1);opacity:.8;box-shadow:0 2px 8px rgba(10,15,90,.04);transition:opacity .2s,border-color .2s,transform .2s var(--ease),box-shadow .2s;display:grid;place-items:center;padding:6px;cursor:pointer}.pdp-gallery button:hover{opacity:1;transform:translateY(-2px);box-shadow:0 6px 16px rgba(10,15,90,.1)}.pdp-gallery button.is-active{opacity:1;border-color:var(--midnight);box-shadow:0 0 0 1px var(--midnight)}.pdp-gallery button img{width:100%;height:100%;object-fit:contain;display:block;padding:0}.product-dialog__content{padding:0 32px 16px;overflow:auto;display:flex;flex-direction:column;scrollbar-width:none;-ms-overflow-style:none}.product-dialog__content::-webkit-scrollbar{display:none}.product-dialog__head>p:first-child{font-family:var(--font-tech);font-size:9px;letter-spacing:.11em;color:var(--midnight);margin:0}.product-dialog__head h2{font-family:var(--font-tech);font-size:clamp(22px,2.4vw,32px);line-height:1.05;color:var(--midnight);letter-spacing:.03em;margin:8px 0}.product-dialog__head>p:nth-of-type(2){max-width:720px;color:#686c78;margin:0}.product-dialog__head>div{display:flex;align-items:flex-end;gap:14px;margin-top:14px;flex-wrap:wrap}.product-dialog__head strong{font-family:var(--font-display);font-size:30px;color:var(--midnight)}.product-dialog__head>div span{font-size:9px;color:#858995;margin-bottom:8px}
.qty-stepper{display:flex;align-items:center;gap:10px}.qty-stepper button{width:28px;height:28px;border-radius:50%;background:linear-gradient(150deg,#fff,var(--silver) 85%);color:var(--midnight);font-size:15px;font-weight:700;line-height:1;display:grid;place-items:center;box-shadow:0 2px 5px rgba(10,15,90,.2),inset 0 1px 1px rgba(255,255,255,.8);transition:transform .15s var(--ease),box-shadow .15s}.qty-stepper button:hover{transform:translateY(-1px);box-shadow:0 4px 9px rgba(10,15,90,.25),inset 0 1px 1px rgba(255,255,255,.8)}.qty-stepper button:active{transform:translateY(0)}.qty-stepper span{min-width:14px;text-align:center;font-family:var(--font-tech);font-size:13px;font-weight:700;color:var(--midnight)}
.product-accordion{margin-top:20px;border-top:1px solid var(--line)}.accordion-item{border-bottom:1px solid var(--line)}.accordion-item__toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 1px;font-family:var(--font-tech);font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--midnight);text-align:left}.accordion-item__icon{position:relative;width:16px;height:16px;flex-shrink:0}.accordion-item__icon i{position:absolute;top:50%;left:50%;background:var(--midnight);transition:transform .25s var(--ease)}.accordion-item__icon i:first-child{width:11px;height:1px;transform:translate(-50%,-50%)}.accordion-item__icon i:last-child{width:1px;height:11px;transform:translate(-50%,-50%)}.accordion-item__toggle[aria-expanded="true"] .accordion-item__icon i:last-child{transform:translate(-50%,-50%) rotate(90deg) scaleY(0)}.accordion-item__panel{max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}.accordion-item__panel p{margin:0 0 18px;font-size:13px;line-height:1.65;color:#565a66;max-width:560px}.finish-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:14px;font-size:10px;font-weight:700}.swatches{display:flex;gap:8px}.swatches button{width:24px;height:24px;border-radius:50%;border:3px solid var(--arctic);box-shadow:0 0 0 1px var(--line)}.swatches button.is-active{box-shadow:0 0 0 2px var(--midnight)}.experience-tabs{display:flex;border-bottom:1px solid var(--line);margin-top:14px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.experience-tabs::-webkit-scrollbar{display:none}.experience-tabs button{padding:15px 20px;font-size:13px;font-weight:700;white-space:nowrap;position:relative}.experience-tabs button.is-active:after{content:"";height:2px;position:absolute;left:0;right:0;bottom:-1px;background:var(--midnight)}.tab-panels{flex:1}.tab-panel{display:none;padding:16px 0 8px}.tab-panel.is-active{display:block}.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.spec-grid div{padding:12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.spec-grid small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#888c97}.spec-grid b{display:block;font-family:var(--font-ui);font-size:14px;font-weight:600;letter-spacing:0;margin-top:6px;color:var(--midnight)}.mood-dna{margin-top:16px;background:var(--midnight);color:#fff;padding:14px}.mood-dna>div:first-child{display:flex;justify-content:space-between;font-family:var(--font-tech);font-size:8px;letter-spacing:.08em;margin-bottom:17px}.mood-dna>div:first-child b{color:var(--aurora)}.dna-row{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:10px;font-size:8px;text-transform:uppercase;color:rgba(255,255,255,.55);margin:10px 0}.dna-row span:last-child{text-align:right}.dna-row i{height:3px;background:rgba(255,255,255,.13);display:block;position:relative}.dna-row i b{display:block;height:100%;background:var(--aurora);width:50%;box-shadow:0 0 10px var(--aurora)}.pack-head{display:flex;justify-content:space-between;align-items:center;gap:14px}
.pdp-sound{background:#001f54;border:none;outline:none;border-radius:20px;padding:20px 22px;margin:20px 0 0 0;box-shadow:0 10px 30px rgba(0,0,0,0.35);width:100%}
.pdp-sound__label{margin:0 0 14px 2px;font-family:ui-monospace,monospace;font-size:11px;letter-spacing:1.5px;font-weight:700;text-transform:uppercase;color:rgba(255,255,255,0.65)}
.pdp-sound__card{position:relative;display:flex;align-items:center;gap:16px;background:none;border:none;outline:none;border-radius:0;padding:0}
.pdp-sound__art-wrap{position:relative;flex-shrink:0;width:72px;height:72px}
.pdp-sound__art{width:72px;height:72px;border-radius:12px;object-fit:cover;background:rgba(255,255,255,0.08);display:block;box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.pdp-sound__info{flex:1;min-width:0}
.pdp-sound__title{margin:0 0 8px;font-family:'Montserrat',-apple-system,sans-serif;font-size:15px;font-weight:700;color:#fff;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pdp-sound__meta{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}
.pdp-sound__badge{display:inline-flex;align-items:center;height:auto;padding:3px 9px;border-radius:6px;background:rgba(255,255,255,0.15);color:#fff;font-size:11px;font-weight:600;font-family:ui-monospace,monospace}
.pdp-sound__artist{font-size:13px;font-weight:600;color:#b9c8ff;text-decoration:none;transition:color .2s}
.pdp-sound__artist:hover{color:#fff;text-decoration:underline}
.pdp-sound__action-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px;padding-right:8px}
.pdp-sound__save{display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,0.85);font-size:13px;font-weight:600;background:none;border:none;padding:0;cursor:pointer;transition:color .2s}
.pdp-sound__save:hover{color:#1DB954}
.pdp-sound__save .circle{width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(255,255,255,0.85);display:inline-flex;align-items:center;justify-content:center;font-size:12px;line-height:1;transition:border-color .2s}
.pdp-sound__save:hover .circle{border-color:#1DB954}
.pdp-sound__more-btn{color:rgba(255,255,255,0.5);font-size:18px;line-height:1;background:none;border:none;cursor:pointer;padding:0 4px;transition:color .2s}
.pdp-sound__more-btn:hover{color:#fff}
.pdp-sound__right-controls{display:flex;flex-direction:column;align-items:center;justify-content:space-between;align-self:stretch;padding:0;flex-shrink:0;width:46px}
.pdp-sound__spotify-icon{width:30px;height:30px;border-radius:50%;background:#1DB954;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0 auto;transform:translateY(-6px);box-shadow:0 2px 8px rgba(29,185,84,0.4)}
.pdp-sound__play-btn{width:46px;height:46px;border-radius:50%;background:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;margin:0 auto;box-shadow:0 4px 12px rgba(0,0,0,0.25);transition:transform 0.15s ease,background .2s}
.pdp-sound__play-btn:hover{transform:scale(1.06);background:#36d8ff}
.pdp-sound__play-btn:active{transform:scale(0.96)}
.pdp-sound__play-btn:disabled{opacity:0.5;cursor:wait}
.pdp-sound__progress-track{margin-top:14px;height:3px;background:rgba(255,255,255,0.15);border-radius:2px;overflow:hidden;cursor:pointer}
.pdp-sound__progress-fill{height:100%;width:0%;background:#1DB954;transition:width 0.1s linear}
.pdp-sound__status{color:rgba(255,255,255,0.5);font-size:11px;margin:6px 0 0 4px;min-height:14px;font-family:ui-monospace,monospace}
@media(max-width:640px){.pdp-sound{padding:16px 16px 18px}.pdp-sound__art{width:64px;height:64px}.pdp-sound__art-wrap{width:64px;height:64px}.pdp-sound__play-btn{width:40px;height:40px}.pdp-sound__spotify-icon{width:26px;height:26px;transform:translateY(-4px)}.pdp-sound__right-controls{width:40px}}
.faq-list{border-top:1px solid var(--line)}
.pdp-reviews{padding:70px var(--gutter);background:var(--arctic);border-top:1px solid var(--line)}.pdp-reviews__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px;margin-bottom:30px}.pdp-reviews__eyebrow{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55);margin:0 0 10px}.pdp-reviews__head h2{font-size:clamp(28px,3.2vw,44px);color:var(--midnight);margin:0;margin-left:8px}.pdp-reviews__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pdp-reviews .review-card{box-shadow:0 14px 34px rgba(10,15,90,.06)}
.pdp-faq{padding:70px var(--gutter);background:#fff;border-top:1px solid var(--line)}.pdp-faq__head{margin-bottom:30px}.pdp-faq__head>p{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55);margin:0 0 12px}.pdp-faq__head h2{font-size:clamp(28px,3.2vw,44px);color:var(--midnight);margin:0;line-height:1.05;margin-left:8px}
.pdp-related{padding:70px 0 90px;background:var(--arctic);border-top:1px solid var(--line)}.pdp-related__head{padding:0 var(--gutter);margin-bottom:26px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.pdp-related__head p{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55);margin:0 0 8px}.pdp-related__head h2{font-size:clamp(28px,3.2vw,44px);color:var(--midnight);margin:0;margin-left:8px}.pdp-related .product-grid .product-card__actions{display:none}
.pdp-related .product-grid{padding:0;grid-template-columns:repeat(5,1fr);gap:0}
.pdp-related .product-grid .product-card{background:var(--arctic)}
@media(max-width:1180px){.pdp-related .product-grid{grid-template-columns:repeat(3,1fr)}}
.faq{padding:90px var(--gutter) 90px;background:var(--arctic)}
.faq__num{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55);margin:0 0 28px}
.faq__layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}
.faq__head{position:sticky;top:calc(var(--announcement-h) + var(--header-gap) + var(--header-h) + 40px)}
.faq__head .system-label{margin-bottom:14px}
.faq__head h2{font-size:clamp(44px,4.6vw,78px);color:var(--midnight);margin:0 0 18px;overflow-wrap:break-word}
.faq__lede{color:#5f6370;margin:0 0 26px;max-width:400px}
.faq__accent{display:block;width:44px;height:2px;background:var(--aurora)}
.faq .faq-list{border-top:0;display:flex;flex-direction:column;gap:14px}
.faq .accordion-item{border:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:16px;background:#fff;padding:0 22px}
.faq .accordion-item__toggle{padding:20px 0;gap:18px}
.accordion-item__icon-badge{width:44px;height:44px;border-radius:50%;background:rgba(10,15,90,.06);color:var(--midnight);display:grid;place-items:center;flex-shrink:0}
.accordion-item__icon-badge svg{width:20px;height:20px}
.accordion-item__q{flex:1;font-family:var(--font-tech);font-size:11px;font-weight:700;letter-spacing:.05em}
@media(max-width:900px){.faq__layout{grid-template-columns:1fr;gap:36px}.faq__head{position:static}}
@media(max-width:640px){.faq .accordion-item{padding:0 16px}.faq .accordion-item__toggle{padding:16px 0;gap:12px}.accordion-item__icon-badge{width:38px;height:38px}.accordion-item__icon-badge svg{width:17px;height:17px}}
.movement-banner{background:var(--midnight-deep);color:#fff;padding:90px var(--gutter);overflow:hidden}.movement-banner__content{max-width:640px;margin:0 auto;text-align:center}.movement-banner__content h2{overflow-wrap:break-word}.movement-banner__lede{margin-left:auto;margin-right:auto}.movement-banner__features{text-align:center}.movement-banner .button{margin:0 auto}
.movement-banner__accent{display:block;width:44px;height:2px;background:var(--aurora);margin:0 auto 18px}
.movement-banner__content h2{font-size:clamp(40px,4.5vw,72px);overflow-wrap:break-word}
.movement-banner__lede{color:rgba(255,255,255,.6);margin:18px auto 34px;max-width:420px}
.movement-banner__features{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:38px}
.movement-banner__features svg{width:24px;height:24px;color:var(--aurora);margin-bottom:14px}
.movement-banner__features b{display:block;font-family:var(--font-tech);font-size:11px;letter-spacing:.03em;margin-bottom:6px}
.movement-banner__features p{margin:0;font-size:12px;color:rgba(255,255,255,.5)}
@media(max-width:900px){.movement-banner__features{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.movement-banner{padding:64px 18px}.movement-banner__features{gap:20px}}
@media(max-width:900px){.pdp-reviews__grid{grid-template-columns:1fr}.pdp-reviews__head{flex-direction:column;align-items:flex-start}}
.pack-head span,.sound-head span{font-family:var(--font-tech);font-size:8px;letter-spacing:.1em;color:var(--midnight)}.pack-head h3,.sound-head h3{font-family:var(--font-tech);font-size:17px;margin:7px 0}.pack-head strong{display:flex;align-items:baseline;gap:4px;font-family:var(--font-display);font-size:40px;line-height:1;color:var(--midnight);flex-shrink:0}.pack-head strong .pack-head__suffix{font-family:var(--font-ui);font-size:11px;font-weight:600;color:#9096a1;text-transform:none;letter-spacing:0}.pack-head strong [data-pack-used]{font-size:inherit;font-family:inherit;letter-spacing:inherit;color:inherit}.pack-items{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}.pack-items button{height:42px;border:1px solid var(--line);padding:0 12px;font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:0}.pack-items button.is-active{background:var(--midnight);color:white}.capacity>div{height:12px;background:#d9dce3;overflow:hidden}.capacity>div span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--midnight),var(--aurora));transition:width .35s}.capacity p{font-size:10px;color:#676b76}.micro-note{font-size:8px;color:#8c9099;margin-top:17px}.round-play{width:56px;height:56px;border-radius:50%;background:var(--midnight);color:white;display:grid;place-items:center}.mood-selector{display:flex;gap:6px;margin:18px 0}.mood-selector button{border:1px solid var(--line);padding:9px 12px;font-size:9px}.mood-selector button.is-active{background:var(--midnight);color:white}.track-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line);counter-reset:tracks}.track-list li{display:grid;grid-template-columns:32px 1fr auto;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);font-size:10px}.track-list li:before{counter-increment:tracks;content:"0" counter(tracks);font-family:var(--font-tech);font-size:7px;color:#9296a0}.track-list b{font-size:10px}.track-list span{color:#8b8f99}.passport-card{background:var(--midnight);color:white;padding:23px}.passport-code{display:flex;justify-content:space-between;font-family:var(--font-tech);font-size:8px;letter-spacing:.11em;color:rgba(255,255,255,.54)}.passport-code b{color:var(--aurora)}.passport-grid{display:grid;grid-template-columns:1fr 1fr;margin:22px 0;border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}.passport-grid article{padding:18px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.passport-grid span{display:block;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.45)}.passport-grid b{display:block;font-family:var(--font-ui);font-size:13px;font-weight:600;margin-top:8px;letter-spacing:0}.passport-card button{color:var(--aurora);font-size:9px;font-weight:700}.product-dialog__buy{display:grid;grid-template-columns:7fr 3fr;gap:10px;margin-top:16px;position:sticky;bottom:0;background:var(--arctic);padding:14px 0}
.pdp-trust{display:flex;align-items:center;gap:8px;margin-top:2px;font-family:var(--font-ui);font-size:12px;color:#6b6f7a;background:var(--arctic)}.pdp-trust__icon{width:16px;height:16px;flex-shrink:0;color:#6b6f7a}
.add-to-bag-box{min-height:52px;border-radius:10px;background:var(--midnight);display:flex;align-items:stretch;box-shadow:0 12px 28px rgba(10,15,90,.2);transition:transform .2s var(--ease),box-shadow .2s;overflow:hidden}
.add-to-bag-box:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(10,15,90,.26)}
.add-to-bag-box .qty-stepper{padding:0 14px;flex-shrink:0;border-left:1px solid rgba(255,255,255,.18);max-width:0;padding-left:0;padding-right:0;border-left-width:0;opacity:0;overflow:hidden;pointer-events:none;transition:max-width .35s var(--ease),opacity .25s var(--ease),padding .35s var(--ease),border-left-width .35s var(--ease)}
.add-to-bag-box .qty-stepper span{color:#fff}
.add-to-bag-box.is-added .qty-stepper{max-width:120px;padding-left:14px;padding-right:14px;border-left-width:1px;opacity:1;pointer-events:auto}
.add-to-bag-box__btn{flex:1;min-width:0;padding:0 20px;display:flex;justify-content:space-between;align-items:center;background:transparent;color:#fff;font-size:11px;font-weight:700}
.product-dialog__buy>button{min-height:52px;padding:0 20px;font-size:11px;font-weight:700;border-radius:10px;border:1.5px solid var(--midnight);color:var(--midnight);background:#fff;transition:transform .2s var(--ease),box-shadow .2s,background .2s,color .2s}
.product-dialog__buy>button:hover{background:var(--midnight);color:#fff}
.cart-drawer,.compare-drawer{position:fixed;right:0;top:0;bottom:0;width:min(510px,100vw);background:var(--arctic);z-index:240;transform:translateX(105%);transition:transform .48s var(--ease);display:flex;flex-direction:column}.cart-drawer.is-open,.compare-drawer.is-open{transform:none}.drawer-head{height:92px;padding:20px 24px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.drawer-head small{font-family:var(--font-tech);font-size:8px;letter-spacing:.1em}.drawer-head h2{font-size:40px;color:var(--midnight);margin-top:5px}.drawer-head button{font-size:10px}.cart-progress{height:4px;background:#d7dae2}.cart-progress span{display:block;height:100%;width:0;background:var(--aurora);transition:width .35s}.cart-progress+p{font-size:9px;padding:10px 24px;margin:0;border-bottom:1px solid var(--line)}.cart-items{overflow:auto;flex:1}.empty-state{padding:60px 24px;text-align:center}.empty-state span{font-family:var(--font-display);font-size:100px;color:#d5d8df}.empty-state h3{font-family:var(--font-tech);font-size:12px}.cart-item{padding:18px 24px;display:grid;grid-template-columns:80px 1fr auto;gap:16px;align-items:center;border-bottom:1px solid var(--line)}.cart-item__image{background:#e3e5ea;border-radius:10px;display:grid;place-items:center;height:90px;overflow:hidden}.cart-item__image img.product-photo{width:80%;height:80%;object-fit:contain}.cart-item h3{font-family:var(--font-ui);font-size:14px;font-weight:600;margin:0 0 4px;color:var(--midnight)}.cart-item p{font-size:11px;color:#6b6f7a;margin:0 0 10px}.cart-item__qty{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:8px;width:max-content;overflow:hidden}.cart-item__qty button{width:30px;height:30px;display:grid;place-items:center;font-size:13px;font-weight:600;color:var(--midnight);transition:background .2s}.cart-item__qty button:hover{background:rgba(10,15,90,.06)}.cart-item__qty span{width:32px;display:grid;place-items:center;font-size:12px;font-weight:600;color:var(--midnight);border-left:1px solid var(--line);border-right:1px solid var(--line)}.cart-item__end{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:12px}.cart-item__end strong{font-family:var(--font-display);font-size:22px;color:var(--midnight)}.cart-item__end button{font-size:10px;color:#6b6f7a;text-decoration:underline}.cart-summary{padding:20px 24px;border-top:1px solid var(--line);background:white}.cart-summary>div{display:flex;justify-content:space-between}.cart-summary strong{font-family:var(--font-display);font-size:30px}.cart-summary p{font-size:8px;color:#858995}.cart-summary>button{width:100%;height:54px;background:var(--midnight);color:white;padding:0 16px;display:flex;justify-content:space-between;font-weight:700;font-size:10px}.cart-summary small{display:block;text-align:center;font-size:7px;margin-top:10px;color:#858995}.compare-content{overflow:auto;padding:18px;flex:1}.compare-empty{padding:60px 20px;text-align:center}.compare-empty h3{font-family:var(--font-tech);font-size:13px}.compare-table{display:grid;grid-template-columns:105px repeat(var(--compare-count),minmax(135px,1fr));min-width:460px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.compare-table>div{padding:13px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:9px}.compare-table .label{font-weight:700;background:#e4e6eb}.compare-product h3{font-family:var(--font-tech);font-size:8px}.compare-product button{font-size:8px;text-decoration:underline}.page-scrim{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:220;opacity:0;pointer-events:none;transition:opacity .35s cubic-bezier(.22,1,.36,1)}.page-scrim.is-visible{opacity:1;pointer-events:auto}
.search-overlay{position:fixed;inset:0;background:var(--midnight-deep);color:white;z-index:260;transform:translateY(-105%);transition:transform .55s var(--ease);padding:30px clamp(24px,6vw,90px);visibility:hidden;pointer-events:none;overflow-y:auto}
.search-overlay.is-open{transform:none;visibility:visible;pointer-events:auto}
.search-head{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-tech);font-size:9px;letter-spacing:.13em;border-bottom:1px solid rgba(255,255,255,0.12);padding-bottom:18px}
.search-head button{color:white;border:0;background:none;font-family:inherit;font-size:11px;cursor:pointer;text-transform:uppercase;letter-spacing:.08em}
.search-overlay form{max-width:1050px;margin:10vh auto 0}
.search-overlay label{display:block;font-family:var(--font-display);font-size:clamp(48px,8vw,110px);line-height:.9;color:white}
.search-overlay form>div{display:flex;align-items:center;border-bottom:2px solid var(--aurora);margin-top:34px}
.search-overlay input{flex:1;background:transparent;border:0;outline:0;color:white;font-size:clamp(18px,2.5vw,32px);padding:16px 0;font-family:var(--font-ui)}
.search-overlay input::placeholder{color:rgba(255,255,255,.32)}
.search-overlay form button{color:var(--aurora);font-size:28px;background:none;border:0;cursor:pointer;padding:0 12px}
.search-results{max-width:1050px;margin:30px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.search-results button{color:white;border:1px solid var(--line-dark);text-align:left;padding:18px;background:rgba(255,255,255,0.03);border-radius:10px;cursor:pointer;transition:background .2s,border-color .2s}
.search-results button:hover{background:rgba(54,216,255,0.08);border-color:var(--aurora)}
.search-results small{display:block;color:var(--aurora);font-family:var(--font-tech);font-size:8px;letter-spacing:.05em}
.search-results b{display:block;font-family:var(--font-ui);font-size:14px;font-weight:600;margin-top:6px}
@media(max-width:768px){.search-results{grid-template-columns:1fr}}

/* ===== SPOTIFY NAVY MUSIC CARD ===== */
.spotify-card-wrap {
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translate(-50%, 150%);
  width: 430px;
  max-width: calc(100vw - 28px);
  z-index: 350;
  transition: transform .45s cubic-bezier(.22, 1, .36, 1), opacity .35s ease;
  opacity: 0;
  pointer-events: none;
}
.spotify-card-wrap.is-visible {
  transform: translate(-50%, 0);
  opacity: 1;
  pointer-events: auto;
}
.spotify-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  padding: 0 4px;
}
.spotify-card__eyebrow {
  color: rgba(255,255,255,0.7);
  font-family: var(--font-tech, monospace);
  font-size: 10px;
  letter-spacing: 1.5px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 0;
}
.spotify-card__close {
  background: rgba(255,255,255,0.12);
  border: none;
  color: #fff;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  cursor: pointer;
  transition: background .2s, transform .2s;
}
.spotify-card__close:hover {
  background: rgba(255,255,255,0.25);
  transform: scale(1.1);
}
.spotify-card {
  background: #001f54;
  border: 1px solid rgba(54, 216, 255, 0.22);
  border-radius: 20px;
  padding: 16px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  box-shadow: 0 16px 40px rgba(0,0,0,0.5), 0 0 30px rgba(54,216,255,0.12);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
.spotify-card__art-wrap {
  position: relative;
  flex-shrink: 0;
  width: 68px;
  height: 68px;
}
.spotify-card__art {
  width: 68px;
  height: 68px;
  border-radius: 12px;
  object-fit: cover;
  background: rgba(255,255,255,0.08);
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}
.spotify-card__info {
  flex: 1;
  min-width: 0;
}
.spotify-card__title {
  color: #fff;
  font-family: Inter, var(--font-ui, sans-serif);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.spotify-card__meta-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 6px;
  flex-wrap: wrap;
}
.spotify-card__badge {
  background: rgba(255,255,255,0.16);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 6px;
  font-family: var(--font-tech, monospace);
  letter-spacing: .05em;
}
.spotify-card__artist {
  color: #b9c8ff;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  transition: color .2s;
}
.spotify-card__artist:hover {
  color: #fff;
  text-decoration: underline;
}
.spotify-card__save-row {
  display: flex;
  align-items: center;
  gap: 6px;
  color: rgba(255,255,255,0.85);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
  transition: color .2s;
}
.spotify-card__save-row:hover {
  color: #1DB954;
}
.spotify-card__circle {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1.5px solid currentColor;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
}
.spotify-card__right-controls {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.spotify-card__icon {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #1DB954;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(29,185,84,0.4);
}
.spotify-card__play-btn {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #fff;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.18s ease, background .2s, box-shadow .2s;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}
.spotify-card__play-btn:hover {
  transform: scale(1.08);
  background: var(--aurora, #36d8ff);
}
.spotify-card__play-btn:active {
  transform: scale(0.95);
}
.spotify-card__play-btn:disabled {
  opacity: 0.5;
  cursor: wait;
}
.spotify-card__progress-track {
  margin-top: 10px;
  height: 3px;
  background: rgba(255,255,255,0.18);
  border-radius: 2px;
  overflow: hidden;
  cursor: pointer;
}
.spotify-card__progress-fill {
  height: 100%;
  width: 0%;
  background: #1DB954;
  transition: width 0.1s linear;
}
.spotify-card__status {
  color: rgba(255,255,255,0.6);
  font-family: var(--font-tech, monospace);
  font-size: 10px;
  margin: 6px 0 0 4px;
  min-height: 14px;
}
.audio-bar { display: none !important; }
.toast{position:fixed;left:50%;top:24px;transform:translate(-50%,-100px);background:var(--aurora);color:var(--midnight);padding:12px 16px;z-index:400;font-family:var(--font-tech);font-size:8px;letter-spacing:.08em;font-weight:700;transition:transform .35s}.toast.is-visible{transform:translate(-50%,0)}

@media(max-width:1180px){.desktop-nav{gap:18px}.product-grid{grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1fr .7fr}.hero-case,.hero-case-img{transform:scale(.86);animation:none}.section-heading{grid-template-columns:120px minmax(0,1fr) 260px}.matcher fieldset{grid-template-columns:150px repeat(3,1fr)}.product-page{grid-template-columns:.8fr 1.2fr}.product-dialog__content{padding-left:36px;padding-right:36px}}
@media(max-width:900px){:root{--header-h:70px}.site-header{grid-template-columns:1fr auto;padding:0 14px 0 20px}.brand{width:auto;min-width:0}.brand small{overflow-wrap:break-word}.desktop-nav,.header-actions [data-search-open]{display:none}.menu-button{display:grid;opacity:1;pointer-events:auto;transform:scale(1)}.prebook-button{height:32px;padding:0 12px;margin-left:2px}.hero{grid-template-columns:1fr;padding-top:80px;min-height:auto}.hero__copy{padding-bottom:50px}.hero__visual{min-height:540px}.hero__halo{width:500px}.section-heading{grid-template-columns:1fr;padding-top:75px}.section-heading>p:first-child{margin-bottom:14px}.section-heading>p:last-child{max-width:520px}.matcher__panel{grid-template-columns:1fr}.matcher__result{min-height:470px}.product-grid{grid-template-columns:repeat(2,1fr)}.experience{grid-template-columns:1fr}.ownership__head{grid-template-columns:1fr}.ownership__head>p{margin-bottom:14px}.ownership__grid{grid-template-columns:repeat(2,1fr)}.newsletter{grid-template-columns:1fr}.newsletter__row,.newsletter__checks{grid-template-columns:1fr}.reviews{grid-template-columns:1fr}.reviews__intro{position:static}.reviews__grid{grid-template-columns:1fr}.review-card{flex-direction:column-reverse}.review-card__photo{width:100%;height:160px}.reviews__stats{grid-template-columns:1fr 1fr}.reviews__stats>div{border-right:0;border-bottom:1px solid var(--line)}.product-page{grid-template-columns:1fr;padding:75px 18px}.product-dialog__visual-inner{height:auto;min-height:520px;position:static}.product-dialog__content{overflow:visible}.footer__top{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1;margin-bottom:10px}.search-results{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.announcement{padding:0 14px;font-size:7px}.site-header{padding:0 14px}.brand__icon{height:18px}.brand__wordmark{height:11px}.hero{padding:64px 18px}.hero h1{font-size:clamp(52px,20vw,96px);max-width:100%}.hero__lede{font-size:15px}.hero__actions{display:grid}.button{width:100%}.hero__proof{gap:18px;justify-content:space-between}.hero__proof b{font-size:26px}.hero__visual{min-height:440px}.hero__halo{width:390px}.hero-case,.hero-case-img{transform:scale(.73)}.hero__telemetry{padding:0 8px}.section-heading{padding:65px 18px 34px}.section-heading h2{font-size:clamp(72px,25vw,115px)}.matcher__panel{margin:0 18px 70px}.matcher fieldset{grid-template-columns:1fr 1fr 1fr;padding:20px 16px}.matcher legend{grid-column:1/-1;display:block;margin-bottom:10px}.matcher fieldset button{height:48px;font-size:9px}.matcher__result{min-height:430px}.shop-toolbar{padding:0 18px 16px;align-items:flex-end}.shop-promo{margin:0 18px 20px;flex-direction:column;align-items:flex-start;gap:10px}.filters{max-width:80%}.filters button{height:35px;padding:0 10px;font-size:8px}.sort{width:42px;font-size:0;padding:0}.sort:after{content:"↕";font-size:15px}.product-grid{padding:0 18px;grid-template-columns:1fr;gap:10px}.product-card__media{height:370px}.experience{padding:75px 18px}.experience__copy h2{font-size:clamp(48px,18vw,90px);overflow-wrap:break-word}.ownership{padding:75px 18px}.ownership__head h2{font-size:clamp(74px,23vw,110px)}.ownership__grid{grid-template-columns:1fr}.newsletter{padding:64px 18px}.newsletter__copy h2{font-size:clamp(34px,10vw,56px);overflow-wrap:break-word}.newsletter__perks-row{gap:22px}.newsletter__form{padding:26px 20px}.newsletter__row{grid-template-columns:1fr}.newsletter__checks{grid-template-columns:1fr}.site-footer{padding:60px 18px 24px}.footer__top{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}.footer__top>div:last-child{grid-column:auto}.product-dialog__visual-inner{min-height:480px}.product-dialog__content{padding:44px 18px 24px}.product-dialog__head h2{font-size:28px}.spec-grid{grid-template-columns:1fr 1fr}.experience-tabs button{padding:14px 12px}.passport-grid{grid-template-columns:1fr}.product-dialog__buy{grid-template-columns:1fr}.product-dialog__buy .qty-stepper{justify-content:center}.pdp-trust{font-size:10.5px;white-space:normal}.audio-bar{grid-template-columns:38px 1fr 28px 24px;height:62px}.audio-progress{display:none}.audio-bar>span{font-size:0}.audio-bar>span:after{content:"●";font-size:8px;color:var(--aurora)}.search-overlay{padding:22px 18px}.search-overlay form{margin-top:14vh}.search-overlay label{font-size:62px}.search-results{grid-template-columns:1fr}.product-card:hover{transform:none}}
@media(max-width:380px){.site-header{padding:0 12px;gap:8px}.brand small{display:none}.prebook-button{padding:0 10px;font-size:9px}.header-actions{gap:0}}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .5s var(--ease),transform .5s var(--ease);will-change:opacity,transform}.reveal.is-revealed{opacity:1;transform:none}
@keyframes hero-rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.hero-carousel__primary>*,.hero-carousel__secondary>*{opacity:0}
.hero-carousel__content.is-revealed .hero-carousel__primary>.hero-carousel__eyebrow{animation:hero-rise .8s var(--ease) forwards}
.hero-carousel__content.is-revealed .hero-carousel__primary>h1{animation:hero-rise .95s var(--ease) .1s forwards}
.hero-carousel__content.is-revealed .hero-carousel__primary>.hero-carousel__thumbs{animation:hero-rise .8s var(--ease) .18s forwards}
.hero-carousel__content.is-revealed .hero-carousel__secondary>.hero-carousel__sub{animation:hero-rise .8s var(--ease) .3s forwards}
.hero-carousel__content.is-revealed .hero-carousel__secondary>.hero-carousel__shop-link{animation:hero-rise .8s var(--ease) .46s forwards}
@media(prefers-reduced-motion:reduce){.hero-carousel__primary>*,.hero-carousel__secondary>*{opacity:1}}
.blog-hero{padding:90px var(--gutter) 50px;background:var(--arctic)}.blog-hero__eyebrow{font-family:var(--font-tech);font-size:8px;letter-spacing:.15em;color:rgba(10,15,90,.55);margin:0 0 16px;display:flex;align-items:center;gap:10px}.blog-hero h1{font-size:clamp(50px,7vw,100px);color:var(--midnight);margin:0 0 18px;overflow-wrap:break-word}.blog-hero p.lede{color:#5f6370;max-width:560px;margin:0}
.blog-filters{padding:0 var(--gutter) 30px;display:flex;gap:6px;flex-wrap:wrap}
.blog-grid{padding:0 var(--gutter) 90px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s}.blog-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(10,15,90,.1)}
.blog-card__media{height:220px;overflow:hidden;position:relative;display:block;background:var(--midnight)}.blog-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .3s var(--ease)}.blog-card:hover .blog-card__media img{transform:scale(1.05)}
.blog-card__tag{position:absolute;left:14px;top:14px;z-index:2;font-family:var(--font-tech);font-size:7px;letter-spacing:.11em;background:rgba(255,255,255,.86);padding:7px 9px;color:var(--midnight)}
.blog-card__body{padding:20px 18px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.blog-card__meta{font-family:var(--font-tech);font-size:8px;letter-spacing:.1em;color:#8b8f99}
.blog-card__body h3{font-family:var(--font-tech);font-size:14px;color:var(--midnight);margin:0;line-height:1.35;font-weight:700}.blog-card__body h3 a{display:block}
.blog-card__body p{font-size:12px;color:#5f6370;line-height:1.6;margin:0;flex:1}
.blog-card__link{font-family:var(--font-tech);font-size:9px;font-weight:700;letter-spacing:.06em;color:var(--midnight);display:inline-flex;align-items:center;gap:6px}
.blog-post{padding:90px var(--gutter) 20px;max-width:900px;margin:0 auto}.blog-post__meta{display:flex;align-items:center;gap:14px;font-family:var(--font-tech);font-size:8px;letter-spacing:.12em;color:rgba(10,15,90,.55);margin-bottom:18px}.blog-post__meta span:first-child{background:var(--midnight);color:#fff;padding:6px 10px}.blog-post h1{font-size:clamp(34px,5vw,64px);color:var(--midnight);margin:0 0 30px;overflow-wrap:break-word}
.blog-post__media{width:100%;height:min(56vw,460px);overflow:hidden;background:var(--midnight);margin-bottom:36px}.blog-post__media img{width:100%;height:100%;object-fit:cover}
.blog-post__body{font-size:16px;line-height:1.8;color:#3a3d47;max-width:720px}.blog-post__body p{margin:0 0 24px}
.blog-post__back{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-tech);font-size:9px;letter-spacing:.1em;color:var(--midnight);font-weight:700;margin-bottom:30px}
.blog-post__more{padding:70px var(--gutter) 90px;background:var(--arctic);border-top:1px solid var(--line)}.blog-post__more h2{font-size:clamp(28px,3.2vw,44px);color:var(--midnight);margin:0 0 26px}.blog-post__more .blog-grid{padding:0;grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.blog-grid,.blog-post__more .blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.blog-hero{padding:70px 18px 34px}.blog-filters{padding:0 18px 24px}.blog-grid{padding:0 18px 70px;grid-template-columns:1fr;gap:16px}.blog-post{padding:70px 18px 20px}.blog-post__more{padding:60px 18px 70px}.blog-post__more .blog-grid{grid-template-columns:1fr}}
.checkout-modal,.login-modal,.join-modal{position:fixed;inset:0;z-index:340;display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .3s var(--ease)}
.checkout-modal.is-open,.login-modal.is-open,.join-modal.is-open{opacity:1;pointer-events:auto}
.checkout-modal__scrim,.login-modal__scrim,.join-modal__scrim{position:absolute;inset:0;background:rgba(6,9,53,.72);backdrop-filter:blur(6px)}
.checkout-modal__card,.login-modal__card,.join-modal__card{position:relative;z-index:2;width:min(480px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:20px;padding:38px 34px;box-shadow:0 40px 100px rgba(6,9,53,.4);transform:translateY(14px) scale(.98);transition:transform .35s var(--ease)}
.checkout-modal.is-open .checkout-modal__card,.login-modal.is-open .login-modal__card,.join-modal.is-open .join-modal__card{transform:none}
.checkout-modal__close,.login-modal__close,.join-modal__close{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:50%;background:rgba(10,15,90,.06);font-size:16px;display:grid;place-items:center;color:var(--midnight)}
.checkout-modal__eyebrow,.login-modal__eyebrow,.join-modal__eyebrow{display:block;font-family:var(--font-tech);font-size:9px;letter-spacing:.14em;color:var(--aurora);background:var(--midnight);width:max-content;padding:6px 10px;margin-bottom:16px}
.checkout-modal__card h3,.login-modal__card h3,.join-modal__card h3{font-family:var(--font-display);font-size:clamp(30px,4vw,42px);color:var(--midnight);text-transform:uppercase;letter-spacing:.01em;margin:0 0 18px;line-height:.95}
.login-modal__card form,.join-modal__card form{display:grid;gap:12px}
.login-modal__card label,.join-modal__card label{display:flex;flex-direction:column;gap:6px;font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--midnight)}
.login-modal__card input,.join-modal__card input{height:46px;border:1px solid var(--line);border-radius:10px;padding:0 14px;font-size:13px;font-family:var(--font-ui);font-weight:400;color:var(--ink)}
.login-modal__submit,.join-modal__submit{width:100%;border-radius:12px;justify-content:center;gap:8px;margin-top:4px}
.login-modal__divider{display:flex;align-items:center;gap:12px;margin:22px 0;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#9296a0}
.login-modal__divider:before,.login-modal__divider:after{content:"";flex:1;height:1px;background:var(--line)}
.login-modal__guest{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;height:52px;border:1.5px solid var(--midnight);border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--midnight);transition:background .2s,color .2s}
.login-modal__guest:hover{background:var(--midnight);color:#fff}
.login-modal__note{font-size:10px;color:#8b8f99;text-align:center;margin:16px 0 0}
.login-modal__note a{color:var(--midnight);font-weight:700;text-decoration:underline}
.category-menu-btn{position:relative;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:var(--midnight);flex-shrink:0;transition:background .25s,transform .25s var(--ease),box-shadow .25s var(--ease)}
.category-menu-btn:hover{background:rgba(10,15,90,.08);transform:translateY(-2px) scale(1.12);box-shadow:0 8px 18px rgba(10,15,90,.14)}
.category-menu-btn:active{transform:translateY(0) scale(.94);transition-duration:.1s}
.category-menu-btn .icon{width:21px;height:21px;transition:transform .25s var(--ease)}
.category-menu-btn:hover .icon{transform:scale(1.06)}
.site-header--on-dark:not(.is-condensed) .category-menu-btn{color:#fff}
.site-header--on-dark:not(.is-condensed) .category-menu-btn:hover{background:rgba(255,255,255,.14)}
/* Sits BEHIND the header (z-index below .site-header's 50) with its top tucked
   under the bar, so it reads as sliding out of the navbar instead of being a
   separate card butted against it. */
/* Sits just ABOVE the header and starts 1px into it, so the two identical
   frosted surfaces meet edge-to-edge with no seam and no stacked translucency.
   The header squares off its bottom-right corner while open (below) so the
   bar's right edge runs straight down into the panel. */
.category-menu{position:fixed;top:var(--cm-top,90px);left:var(--cm-left,auto);z-index:60;width:180px;background:rgba(246,247,250,.6);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:0;border-radius:0 0 14px 14px;padding:12px 13px 13px;box-shadow:0 22px 30px -18px rgba(6,9,53,.5);display:flex;flex-direction:column;gap:2px;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .22s var(--ease),transform .22s var(--ease)}
.category-menu.is-open{opacity:1;transform:translateY(0);pointer-events:auto}
.category-menu__link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 2px;font-size:12.5px;font-weight:600;color:var(--midnight);border-bottom:1px solid rgba(10,15,90,.1);transition:padding-left .2s var(--ease),color .2s}
.category-menu__link:last-of-type{border-bottom:0}
.category-menu__link i{font-style:normal;font-weight:400;color:rgba(10,15,90,.5);transition:transform .2s var(--ease),color .2s}
.category-menu__link:hover{padding-left:8px}
.category-menu__link:hover i{color:var(--midnight);transform:translateX(3px)}
.category-menu__join{margin-top:10px;display:flex;align-items:center;justify-content:center;gap:5px;height:38px;border-radius:999px;background:var(--silver);color:var(--midnight);font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;transition:background .2s,transform .2s var(--ease)}
.category-menu__join:hover{background:var(--midnight);color:#fff;transform:translateY(-1px)}
/* Pills remain for the mobile drawer, which still uses that treatment. */
.category-menu__pill{display:flex;align-items:center;justify-content:center;height:38px;border:1px solid rgba(10,15,90,.22);border-radius:999px;font-size:12px;font-weight:600;color:var(--midnight);transition:background .2s,border-color .2s,color .2s}
.category-menu__pill:hover{background:var(--midnight);border-color:var(--midnight);color:#fff}
.mobile-menu__categories{margin-top:8px;padding-top:28px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:14px}
.mobile-menu__categories-label{font-family:var(--font-tech);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.4);margin:0}
.mobile-menu__category-pills{display:flex;flex-wrap:wrap;gap:10px}
.mobile-menu__category-pills .category-menu__pill{height:36px;padding:0 18px;border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.86)}
.mobile-menu__category-pills .category-menu__pill:hover{background:var(--aurora);border-color:var(--aurora);color:var(--midnight-deep)}
.mobile-menu__categories .category-menu__join{margin-top:2px}
.join-modal__card [data-join-panel].is-hidden{display:none}
.join-modal__card canvas{width:100%;height:auto;border-radius:14px;box-shadow:0 14px 30px rgba(10,15,90,.2);display:block;margin-top:4px}
.join-modal__passport-actions{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.checkout-modal__summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:20px;display:grid;gap:8px}
.checkout-modal__line{display:flex;justify-content:space-between;font-size:12px;color:#3a3d47}
.checkout-modal__empty{font-size:12px;color:#8b8f99;margin:0}
.checkout-modal__card form{display:grid;gap:12px}
.checkout-modal__card label{display:flex;flex-direction:column;gap:6px;font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--midnight)}
.checkout-modal__card input{height:46px;border:1px solid var(--line);border-radius:10px;padding:0 14px;font-size:13px;font-family:var(--font-ui);font-weight:400;color:var(--ink)}
.checkout-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.checkout-modal__submit{width:100%;border-radius:12px;margin-top:6px;justify-content:center;gap:8px}
.checkout-modal__submit:disabled{opacity:.4;cursor:not-allowed;transform:none}
.checkout-modal__note{font-size:10px;color:#8b8f99;text-align:center;margin:12px 0 0}
.checkout-modal__confirm{font-size:13px;color:#3a3d47;line-height:1.6}
.checkout-modal__confirm b{color:var(--midnight)}
[data-checkout-step="success"] .button{width:100%;justify-content:center;border-radius:12px;margin-top:10px}

@media(max-width:480px){.checkout-modal__card,.login-modal__card{padding:30px 22px}.checkout-modal__row{grid-template-columns:1fr}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Cookie Consent (TTDSG / GDPR-style, German legal standard) */
.cookie-consent {
  position: fixed;
  left: 24px;
  bottom: 24px;
  z-index: 99999;
  width: 380px;
  max-width: calc(100vw - 48px);
  background: #0b1042;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 14px;
  padding: 22px 22px 20px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.45);
  opacity: 0;
  transform: translateY(16px) scale(0.98);
  pointer-events: none;
  transition: opacity 0.35s ease, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  font-family: var(--font-ui);
}
.cookie-consent.is-open {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}
.cookie-consent [data-cookie-panel].is-hidden { display: none; }
.cookie-consent__title {
  font-family: var(--font-tech);
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 10px;
  letter-spacing: 0.02em;
}
.cookie-consent__text {
  font-size: 12.5px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.75);
  margin: 0 0 14px;
}
.cookie-consent__links {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  margin-bottom: 16px;
}
.cookie-consent__links a { color: var(--aurora); text-decoration: underline; text-underline-offset: 2px; }
.cookie-consent__links span { color: rgba(255, 255, 255, 0.3); }
.cookie-consent__actions { display: flex; flex-direction: column; gap: 9px; }
.cookie-consent__btn {
  width: 100%;
  padding: 11px 16px;
  border-radius: 9px;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: center;
}
.cookie-consent__btn--primary {
  background: var(--aurora);
  color: var(--midnight-deep);
  font-family: var(--font-tech);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  border: 1px solid transparent;
}
.cookie-consent__btn--primary:hover {
  background: #fff;
  color: var(--midnight-deep);
  filter: none;
  box-shadow: 0 4px 14px rgba(54, 216, 255, 0.4);
}
.cookie-consent__btn--secondary {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #fff;
}
.cookie-consent__btn--secondary:hover { background: rgba(255, 255, 255, 0.14); }
.cookie-consent__btn--text {
  background: none;
  border: none;
  color: rgba(255, 255, 255, 0.65);
  font-weight: 500;
  padding: 4px;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.cookie-consent__btn--text:hover { color: #fff; }

.cookie-toggle-row { margin-bottom: 16px; }
.cookie-toggle-row__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 6px; }
.cookie-toggle-row__label { font-size: 12.5px; font-weight: 600; color: #fff; }
.cookie-toggle-row__desc { font-size: 11px; line-height: 1.5; color: rgba(255, 255, 255, 0.55); margin: 0; }

.cookie-toggle { position: relative; display: inline-block; width: 38px; height: 22px; flex-shrink: 0; }
.cookie-toggle input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.cookie-toggle__track { position: absolute; inset: 0; background: rgba(255, 255, 255, 0.18); border-radius: 999px; transition: background 0.2s; }
.cookie-toggle__thumb { position: absolute; top: 2px; left: 2px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: transform 0.2s; }
.cookie-toggle input:checked ~ .cookie-toggle__track { background: var(--aurora); }
.cookie-toggle input:checked ~ .cookie-toggle__track .cookie-toggle__thumb { transform: translateX(16px); }
.cookie-toggle.is-locked { opacity: 0.6; }
.cookie-toggle.is-locked input { cursor: not-allowed; }

@media (max-width: 480px) {
  .cookie-consent { left: 12px; right: 12px; bottom: 12px; width: auto; max-width: none; }
}

/* Trusted Origin Scrolling Ribbon (Above Footer) */
.origin-ribbon {
  background: var(--midnight-deep, #060935);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  padding: 30px 0 34px;
  overflow: hidden;
  color: #ffffff;
  position: relative;
  width: 100%;
}

.origin-ribbon__header {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto 24px;
  padding: 0 var(--gutter);
}

.origin-ribbon__line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
}

.origin-ribbon__title {
  font-family: var(--font-tech);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.85);
  white-space: nowrap;
  margin: 0;
}

.origin-ribbon__track-wrap {
  width: 100%;
  overflow: hidden;
  position: relative;
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.origin-ribbon__track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: originScroll 35s linear infinite;
}

.origin-ribbon__track:hover {
  animation-play-state: paused;
}

@keyframes originScroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.origin-badge {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0 32px;
  flex-shrink: 0;
}

.origin-badge__head {
  font-family: var(--font-tech);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
  min-height: 11px;
}

.origin-badge__content {
  display: flex;
  align-items: center;
  gap: 14px;
}

.origin-icon {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  color: #ffffff;
}

.origin-badge__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.origin-badge__text strong {
  font-family: var(--font-heading);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: #ffffff;
  white-space: nowrap;
  line-height: 1.2;
}

.origin-badge__text small {
  font-family: var(--font-ui);
  font-size: 11px;
  color: rgba(255, 255, 255, 0.55);
  white-space: nowrap;
  line-height: 1.2;
}

.origin-divider {
  width: 1px;
  height: 38px;
  background: rgba(255, 255, 255, 0.15);
  flex-shrink: 0;
  margin: 12px 0 0;
}

/* ==========================================================================
   Boarding Pass & Order Tracking Page
   ========================================================================== */
.tracking-hero {
  background: #060935;
  color: #ffffff;
  padding: 130px var(--gutter) 80px;
  position: relative;
  overflow: hidden;
}

.tracking-hero__top-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1100px;
  margin: 0 auto 24px;
  font-family: var(--font-tech);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tracking-hero__top-nav a {
  color: rgba(255, 255, 255, 0.7);
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
  gap: 8px;

}

.tracking-hero__top-nav a:hover {
  color: #ffffff;
}

/* Boarding Pass Ticket Card */
.boarding-pass {
  max-width: 1100px;
  margin: 0 auto;
  background: #ffffff;
  color: #060935;
  border-radius: 24px;
  display: grid;
  grid-template-columns: 2.3fr 1fr;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.5);
  position: relative;
  overflow: hidden;
}

/* Ticket Perforation / Semi-circle Notches */
.boarding-pass::before,
.boarding-pass::after {
  content: "";
  position: absolute;
  width: 26px;
  height: 26px;
  background: #060935;
  border-radius: 50%;
  left: 69.7%;
  transform: translateX(-50%);
  z-index: 5;
}

.boarding-pass::before {
  top: -13px;
}

.boarding-pass::after {
  bottom: -13px;
}

.pass-main {
  padding: 38px 42px;
  display: flex;
  flex-direction: column;
  gap: 28px;
  border-right: 2px dashed #e2e8f0;
  position: relative;
}

.pass-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.pass-logo-stack {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.pass-logo-mark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.pass-logo-icon {
  height: 22px;
  width: auto;
}

.pass-logo-wordmark {
  height: 16px;
  width: auto;
}

.pass-tagline {
  font-family: var(--font-tech);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: rgba(6, 9, 53, 0.45);
  text-transform: uppercase;
  margin-top: 2px;
}

.pass-status-badge {
  text-align: right;
  font-family: var(--font-tech);
}

.pass-status-badge__title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #10b981;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  text-transform: uppercase;
}

.pass-status-badge__title::after {
  content: "";
  width: 7px;
  height: 7px;
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10b981;
}

.pass-status-badge__date {
  font-size: 11px;
  color: rgba(6, 9, 53, 0.5);
  display: block;
  margin-top: 2px;
}

/* Airport Route Banner */
.pass-route {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.pass-route__code {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.pass-route__code h2 {
  font-family: var(--font-heading);
  font-size: 52px;
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
  margin: 0 0 4px;
  color: #060935;
}

.pass-route__code label {
  font-family: var(--font-tech);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: rgba(6, 9, 53, 0.4);
  text-transform: uppercase;
}

.pass-route__code span {
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 700;
  color: #060935;
  line-height: 1.2;
}

.pass-route__code small {
  font-family: var(--font-ui);
  font-size: 11px;
  color: rgba(6, 9, 53, 0.55);
}

.pass-route__flight-line {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin: 0 36px;
}

.pass-route__flight-line::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: repeating-linear-gradient(90deg, #060935 0 6px, transparent 6px 12px);
}

.pass-route__plane-icon {
  position: relative;
  z-index: 2;
  background: #ffffff;
  padding: 0 10px;
  font-size: 20px;
  transform: rotate(90deg);
  color: #060935;
  line-height: 1;
}

/* Pass Summary Row */
.pass-info-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  padding: 16px 0;
  border-top: 1px solid #edf0f5;
  border-bottom: 1px solid #edf0f5;
}

.pass-info-item label {
  font-family: var(--font-tech);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(6, 9, 53, 0.45);
  text-transform: uppercase;
  display: block;
  margin-bottom: 4px;
}

.pass-info-item strong {
  font-family: var(--font-heading);
  font-size: 14px;
  font-weight: 700;
  color: #060935;
}

/* Item & Live Tracker Block */
.pass-product-row {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 28px;
  align-items: center;
}

.pass-product-card {
  display: flex;
  align-items: center;
  gap: 14px;
  background: #f8fafc;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid #eef2f6;
}

.pass-product-thumb {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 10px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
}

.pass-product-details h4 {
  font-family: var(--font-heading);
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 2px;
  color: #060935;
}

.pass-product-details p {
  font-family: var(--font-ui);
  font-size: 11.5px;
  color: rgba(6, 9, 53, 0.6);
  margin: 0 0 4px;
}

.pass-product-details small {
  font-family: var(--font-tech);
  font-size: 10.5px;
  color: rgba(6, 9, 53, 0.8);
}

.pass-live-timeline {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.pass-live-timeline__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.pass-live-timeline__head label {
  font-family: var(--font-tech);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(6, 9, 53, 0.45);
  text-transform: uppercase;
}

.pass-live-timeline__head strong {
  font-family: var(--font-tech);
  font-size: 12px;
  font-weight: 700;
  color: #060935;
  display: flex;
  align-items: center;
  gap: 6px;
  letter-spacing: 0.06em;
}

.pass-progress-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  margin: 6px 0 2px;
}

.pass-progress-bar::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 3px;
  background: #e2e8f0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.pass-progress-bar__fill {
  position: absolute;
  left: 0;
  width: 50%;
  height: 3px;
  background: #060935;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}

.pass-progress-node {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #e2e8f0;
  position: relative;
  z-index: 3;
}

.pass-progress-node.is-active {
  background: #060935;
  box-shadow: 0 0 0 4px rgba(6, 9, 53, 0.15);
}

.pass-progress-labels {
  display: flex;
  justify-content: space-between;
  font-family: var(--font-tech);
  font-size: 9.5px;
}

.pass-progress-labels div {
  display: flex;
  flex-direction: column;
}

.pass-progress-labels span {
  font-weight: 700;
  color: #060935;
  text-transform: uppercase;
}

.pass-progress-labels small {
  color: rgba(6, 9, 53, 0.5);
}

/* Feature Icons Row */
.pass-features-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  background: #f8fafc;
  padding: 14px 16px;
  border-radius: 14px;
  border: 1px solid #edf2f7;
}

.pass-feature-item {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pass-feature-icon {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
  color: #060935;
}

.pass-feature-text label {
  font-family: var(--font-tech);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #060935;
  display: block;
  text-transform: uppercase;
}

.pass-feature-text span {
  font-family: var(--font-ui);
  font-size: 10.5px;
  color: rgba(6, 9, 53, 0.6);
}

.pass-footer-note {
  font-family: var(--font-tech);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: rgba(6, 9, 53, 0.4);
  text-transform: uppercase;
}

/* Stub / Right Section */
.pass-stub {
  background: #f8fafc;
  padding: 34px 28px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-left: 1px dashed #cbd5e1;
}

.pass-stub__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  border-bottom: 1px solid #e2e8f0;
}

.pass-stub__header h3 {
  font-family: var(--font-tech);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #060935;
  margin: 0;
  text-transform: uppercase;
}

.pass-stub__title-block {
  margin: 16px 0 12px;
}

.pass-stub__title-block h4 {
  font-family: var(--font-heading);
  font-size: 14px;
  font-weight: 800;
  margin: 0 0 2px;
  letter-spacing: 0.06em;
  color: #060935;
}

.pass-stub__title-block code {
  font-family: var(--font-tech);
  font-size: 10.5px;
  color: rgba(6, 9, 53, 0.55);
}

.pass-stub__grid {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pass-stub__row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid #edf2f7;
}

.pass-stub__row-icon {
  width: 18px;
  height: 18px;
  color: rgba(6, 9, 53, 0.6);
  flex-shrink: 0;
}

.pass-stub__row-data label {
  font-family: var(--font-tech);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: rgba(6, 9, 53, 0.45);
  text-transform: uppercase;
  display: block;
}

.pass-stub__row-data strong {
  font-family: var(--font-heading);
  font-size: 12.5px;
  font-weight: 700;
  color: #060935;
}

.pass-stub__barcode {
  margin-top: 18px;
  text-align: center;
  padding-top: 14px;
  border-top: 1px dashed #cbd5e1;
}

.pass-stub__barcode svg {
  width: 100%;
  height: 42px;
}

.pass-stub__barcode span {
  font-family: var(--font-tech);
  font-size: 10px;
  letter-spacing: 0.2em;
  color: #060935;
  display: block;
  margin-top: 4px;
  font-weight: 700;
}

/* Lower Section: Ecommerce Tracking Lookup & Details */
.track-section {
  padding: 80px var(--gutter);
  background: var(--paper, #f7f8fb);
  color: var(--midnight, #0a0f5a);
}

.track-container {
  max-width: 1100px;
  margin: 0 auto;
}

.track-search-card {
  background: #ffffff;
  padding: 32px 38px;
  border-radius: 20px;
  border: 1px solid var(--line, rgba(10, 15, 90, 0.12));
  box-shadow: 0 12px 40px rgba(10, 15, 90, 0.05);
  margin-bottom: 40px;
}

.track-search-head {
  margin-bottom: 20px;
}

.track-search-head h3 {
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: 800;
  margin: 0 0 4px;
}

.track-search-head p {
  font-family: var(--font-ui);
  font-size: 13px;
  color: rgba(10, 15, 90, 0.65);
  margin: 0;
}

.track-search-form {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 16px;
  align-items: flex-end;
}

.track-search-form label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 600;
  color: rgba(10, 15, 90, 0.7);
}

.track-search-form input {
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid rgba(10, 15, 90, 0.2);
  font-family: var(--font-tech);
  font-size: 13px;
  color: #0a0f5a;
  background: #f8fafc;
}

.track-search-form input:focus {
  outline: none;
  border-color: #0a0f5a;
  background: #ffffff;
}

.track-search-btn {
  padding: 12px 28px;
  border-radius: 10px;
  background: #060935;
  color: #ffffff;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  border: none;
  transition: all 0.2s ease;
  height: 43px;
}

.track-search-btn:hover {
  background: #36d8ff;
  color: #060935;
}

.track-details-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 28px;
}

.track-card {
  background: #ffffff;
  padding: 32px;
  border-radius: 20px;
  border: 1px solid var(--line, rgba(10, 15, 90, 0.12));
  box-shadow: 0 10px 30px rgba(10, 15, 90, 0.04);
}

.track-card__title {
  font-family: var(--font-heading);
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.track-timeline-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: relative;
  padding-left: 28px;
}

.track-timeline-list::before {
  content: "";
  position: absolute;
  left: 9px;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: #e2e8f0;
}

.track-timeline-item {
  position: relative;
}

.track-timeline-item::before {
  content: "";
  position: absolute;
  left: -28px;
  top: 4px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #cbd5e1;
  border: 2px solid #ffffff;
}

.track-timeline-item.is-done::before {
  background: #10b981;
}

.track-timeline-item.is-current::before {
  background: #060935;
  box-shadow: 0 0 0 4px rgba(6, 9, 53, 0.15);
}

.track-timeline-item h4 {
  font-family: var(--font-heading);
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.track-timeline-icon {
  width: 18px;
  height: 18px;
  color: #060935;
  flex-shrink: 0;
}

.track-timeline-item.is-done .track-timeline-icon {
  color: #10b981;
}

.track-timeline-item.is-current .track-timeline-icon {
  color: #060935;
}

.track-timeline-item p {
  font-family: var(--font-ui);
  font-size: 13px;
  color: rgba(10, 15, 90, 0.7);
  margin: 0 0 4px;
}

.track-timeline-item time {
  font-family: var(--font-tech);
  font-size: 11px;
  color: rgba(10, 15, 90, 0.45);
}

/* Sidebar Info Card */
.track-sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.track-carrier-box {
  background: #060935;
  color: #ffffff;
  padding: 24px;
  border-radius: 16px;
}

.track-carrier-box h4 {
  font-family: var(--font-tech);
  font-size: 10px;
  letter-spacing: 0.16em;
  color: #36d8ff;
  margin: 0 0 10px;
  text-transform: uppercase;
}

.track-carrier-box code {
  font-family: var(--font-tech);
  font-size: 15px;
  font-weight: 700;
  display: block;
  margin-bottom: 14px;
  letter-spacing: 0.08em;
}

.track-carrier-box a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
  padding: 8px 14px;
  border-radius: 8px;
  transition: background 0.2s ease;
}

.track-carrier-box a:hover {
  background: rgba(255, 255, 255, 0.2);
}

@media (max-width: 992px) {
  .boarding-pass {
    grid-template-columns: 1fr;
  }
  .boarding-pass::before,
  .boarding-pass::after {
    display: none;
  }
  .pass-main {
    border-right: none;
    border-bottom: 2px dashed #e2e6ee;
    padding: 24px;
  }
  .pass-stub {
    border-left: none;
    padding: 24px;
  }
  .pass-info-grid,
  .pass-product-row,
  .pass-features-row {
    grid-template-columns: 1fr;
  }
  .track-search-form {
  border-radius: 10px;
  background: #060935;
  color: #ffffff;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  border: none;
  transition: all 0.2s ease;
  height: 43px;
}

.track-search-btn:hover {
  background: #36d8ff;
  color: #060935;
}

.track-details-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 28px;
}

.track-card {
  background: #ffffff;
  padding: 32px;
  border-radius: 20px;
  border: 1px solid var(--line, rgba(10, 15, 90, 0.12));
  box-shadow: 0 10px 30px rgba(10, 15, 90, 0.04);
}

.track-card__title {
  font-family: var(--font-heading);
  font-size: 18px;
  font-weight: 700;
  margin: 0 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.track-timeline-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  position: relative;
  padding-left: 28px;
}

.track-timeline-list::before {
  content: "";
  position: absolute;
  left: 9px;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: #e2e8f0;
}

.track-timeline-item {
  position: relative;
}

.track-timeline-item::before {
  content: "";
  position: absolute;
  left: -28px;
  top: 4px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #cbd5e1;
  border: 2px solid #ffffff;
}

.track-timeline-item.is-done::before {
  background: #10b981;
}

.track-timeline-item.is-current::before {
  background: #060935;
  box-shadow: 0 0 0 4px rgba(6, 9, 53, 0.15);
}

.track-timeline-item h4 {
  font-family: var(--font-heading);
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.track-timeline-icon {
  width: 18px;
  height: 18px;
  color: #060935;
  flex-shrink: 0;
}

.track-timeline-item.is-done .track-timeline-icon {
  color: #10b981;
}

.track-timeline-item.is-current .track-timeline-icon {
  color: #060935;
}

.track-timeline-item p {
  font-family: var(--font-ui);
  font-size: 13px;
  color: rgba(10, 15, 90, 0.7);
  margin: 0 0 4px;
}

.track-timeline-item time {
  font-family: var(--font-tech);
  font-size: 11px;
  color: rgba(10, 15, 90, 0.45);
}

/* Sidebar Info Card */
.track-sidebar {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.track-carrier-box {
  background: #060935;
  color: #ffffff;
  padding: 24px;
  border-radius: 16px;
}

.track-carrier-box h4 {
  font-family: var(--font-tech);
  font-size: 10px;
  letter-spacing: 0.16em;
  color: #36d8ff;
  margin: 0 0 10px;
  text-transform: uppercase;
}

.track-carrier-box code {
  font-family: var(--font-tech);
  font-size: 15px;
  font-weight: 700;
  display: block;
  margin-bottom: 14px;
  letter-spacing: 0.08em;
}

.track-carrier-box a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
  padding: 8px 14px;
  border-radius: 8px;
  transition: background 0.2s ease;
}

.track-carrier-box a:hover {
  background: rgba(255, 255, 255, 0.2);
}

@media (max-width: 992px) {
  .boarding-pass {
    grid-template-columns: 1fr;
  }
  .boarding-pass::before,
  .boarding-pass::after {
    display: none;
  }
  .pass-main {
    border-right: none;
    border-bottom: 2px dashed #e2e6ee;
    padding: 24px;
  }
  .pass-stub {
    border-left: none;
    padding: 24px;
  }
  .pass-info-grid,
  .pass-product-row,
  .pass-features-row {
    grid-template-columns: 1fr;
  }
  .track-search-form {
    grid-template-columns: 1fr;
  }
  .track-details-grid {
    grid-template-columns: 1fr;
  }
}
