:root{color-scheme:dark;font-family:Inter,"Helvetica Neue",Arial,sans-serif;color:#f4f5f7;background:#02060b;--ease:cubic-bezier(.22,1,.36,1);--duration:620ms;--card-width:min(25.72vw,42.5dvh,420px);--card-height:min(44.7dvh,460px);--near:min(24vw,400px);--far:min(44vw,730px)}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,#carousel:focus-visible{outline:3px solid white;outline-offset:6px}#home{position:relative;width:100%;height:100dvh;overflow:hidden;isolation:isolate;touch-action:pan-y;user-select:none;background:radial-gradient(ellipse at 6% 35%,#34000d70,transparent 47%),radial-gradient(ellipse at 93% 22%,#002e4e80,transparent 51%),#02060b}
.environment{position:absolute;inset:-12px;z-index:-1;pointer-events:none;transition:transform 1s ease}.scenery{position:absolute;top:-1%;width:31%;height:64%;opacity:.92;mask-image:linear-gradient(to bottom,#000 65%,transparent 99%);animation:float 22s ease-in-out infinite alternate}.scenery-left{left:0;mask-image:linear-gradient(to right,#000 65%,transparent),linear-gradient(to bottom,#000 65%,transparent 99%);mask-composite:intersect}.scenery-right{right:0;mask-image:linear-gradient(to left,#000 55%,transparent),linear-gradient(to bottom,#000 65%,transparent 99%);mask-composite:intersect;animation-delay:-9s}.foreground{position:absolute;left:-4%;bottom:-5%;width:35%;height:22%;filter:blur(3px);opacity:.7;mask-image:linear-gradient(to right,#000 35%,transparent),linear-gradient(to top,#000 10%,transparent 100%);mask-composite:intersect;animation:float 18s ease-in-out infinite alternate-reverse}.atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 31%,#01060b80 6%,transparent 44%),radial-gradient(ellipse at 50% 60%,transparent 48%,#0009 100%)}
.brand{position:absolute;top:7%;left:50%;transform:translateX(-50%);width:90%;text-align:center;pointer-events:none}.brand h1{display:flex;justify-content:center;margin:0;font-weight:650;font-size:clamp(54px,7.2vw,11.5dvh);letter-spacing:-.035em;line-height:1.04;filter:drop-shadow(0 3px 12px #0008)}.brand h1 span{color:transparent;background:linear-gradient(#fff 18%,#ecf0f8 46%,#9cacbe 95%);background-clip:text}.brand h1 span+span{background-image:linear-gradient(#ff3947 12%,#e6192b 52%,#a80011)}.brand-subtitle{margin:1.3dvh 0 0;font-size:clamp(11px,1.8vw,2.85dvh);font-weight:400;letter-spacing:.28em;line-height:1.3}.claim{font-size:clamp(19px,2.8vw,4.5dvh);font-weight:500;line-height:1.12;margin:calc(5.3dvh + 3px) 0 0;text-wrap:balance;letter-spacing:-.02em}.description{font-size:clamp(12px,1.43vw,2.2dvh);font-weight:400;margin:1.6dvh 0 0;color:#d0d4db;line-height:1.35}
#carousel{position:absolute;top:47.7%;left:0;width:100%;height:47%;perspective:1450px;outline:none;cursor:grab}#cards{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .5s var(--ease)}.dragging #cards{transition:none}.dragging,.dragging button,.dragging #carousel{cursor:grabbing}
.module-card{--x:0px;--y:0px;--z:0px;--s:1;--ry:0deg;--rz:0deg;--accent:#ff4257;--glow:#ff23478a;--surface:#24040c;--button-top:#ff223e;--button-bottom:#b5001b;position:absolute;left:50%;top:0;width:var(--card-width);height:var(--card-height);transform:translateX(-50%) translate3d(var(--x),var(--y),var(--z)) rotateY(var(--ry)) rotateZ(var(--rz)) scale(var(--s));transform-origin:center;transition:transform var(--duration) var(--ease),opacity var(--duration) var(--ease),filter var(--duration) var(--ease);will-change:transform,opacity,filter;opacity:1;z-index:50;cursor:pointer}
.module-card.blue{--accent:#42b8ff;--glow:#0089ff80;--surface:#00152d;--button-top:#1688ed;--button-bottom:#0046a8}.module-card.pink{--accent:#ff7097;--glow:#ef3c735c;--surface:#190a1c;--button-top:#bf3f69;--button-bottom:#742443}
.card-surface{height:100%;width:100%;position:relative;overflow:hidden;border-radius:clamp(18px,2vw,27px);border:1.5px solid var(--accent);background:var(--surface);box-shadow:inset 0 0 0 2px #ffffff18,inset 0 0 18px var(--glow),0 0 5px var(--accent),0 0 28px var(--glow),0 20px 50px #0008;transition:transform 180ms ease,box-shadow 180ms ease;backdrop-filter:blur(12px)}.module-card:hover .card-surface{transform:scale(1.015);box-shadow:inset 0 0 12px var(--glow),0 0 7px var(--accent),0 0 36px var(--glow),0 20px 50px #0009}
.card-art{position:absolute;left:0;top:0;width:100%;height:66%;pointer-events:none}.card-shade{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 30%,color-mix(in srgb,var(--surface),transparent 55%) 53%,var(--surface) 70%);pointer-events:none}.card-copy{position:absolute;left:7%;right:6%;bottom:24%}.module-number{display:inline-block;font-size:clamp(17px,1.8vw,2.9dvh);font-weight:400;line-height:1.3;color:#e3e8f0}.module-number:after{content:"";display:block;width:34px;height:3px;margin-top:5px;background:linear-gradient(90deg,#ec2337 80%,#168dd5 80%)}.card-copy h2{margin:1.3dvh 0 0;font-size:clamp(17px,1.77vw,2.9dvh);font-weight:600;line-height:1.15;letter-spacing:-.025em;text-wrap:balance;text-shadow:0 2px 6px #000b}.card-cta{position:absolute;bottom:5%;left:6%;width:88%;height:13%;min-height:34px;display:flex;align-items:center;justify-content:center;border-radius:999px;border:1.5px solid var(--accent);background:linear-gradient(180deg,var(--button-top),var(--button-bottom));box-shadow:inset 0 1px 5px #fff6,0 0 13px var(--glow);font-weight:600;font-size:clamp(16px,1.55vw,2.5dvh);transition:filter 180ms,transform 180ms}.card-cta:hover{filter:brightness(1.13);transform:scale(1.025)}.card-cta:active{transform:scale(.98)}
.module-card[data-slot="-1"]{--x:calc(-1 * var(--near));--y:15px;--z:-65px;--s:.84;--ry:9deg;--rz:-1deg;z-index:30;opacity:.98;filter:brightness(.92)}.module-card[data-slot="1"]{--x:var(--near);--y:15px;--z:-65px;--s:.84;--ry:-9deg;--rz:1deg;z-index:30;opacity:.98;filter:brightness(.92)}.module-card[data-slot="-2"]{--x:calc(-1 * var(--far));--y:32px;--z:-180px;--s:.65;--ry:20deg;--rz:-3deg;z-index:10;opacity:.72;filter:brightness(.7) blur(1.1px)}.module-card[data-slot="2"]{--x:var(--far);--y:32px;--z:-180px;--s:.65;--ry:-20deg;--rz:3deg;z-index:10;opacity:.72;filter:brightness(.7) blur(1.1px)}
.module-card[data-access="premium"]:is([data-slot="-1"],[data-slot="1"]){opacity:.83;filter:brightness(.76) blur(.7px)}.module-card[data-access="premium"]:is([data-slot="-2"],[data-slot="2"]){opacity:.68;filter:brightness(.62) blur(1.8px)}.module-card[data-slot="-3"]{--x:-75vw;--z:-300px;--s:.42;opacity:0;pointer-events:none;filter:blur(8px)}.module-card[data-slot="3"]{--x:75vw;--z:-300px;--s:.42;opacity:0;pointer-events:none;filter:blur(8px)}
.acquisition{display:none}.module-card[data-slot="0"] .acquisition{display:block;margin-top:1.3dvh}.acquisition span{display:block;font-size:clamp(8px,.65vw,1.1dvh);letter-spacing:.16em;color:#ffacc4;margin-bottom:.6dvh}.acquisition strong{font-size:clamp(12px,1vw,1.6dvh);font-weight:500}.acquisition p{font-size:clamp(10px,.85vw,1.4dvh);line-height:1.35;color:#cdd0de;margin:.6dvh 0 0}.module-card[data-access="premium"][data-slot="0"] .card-shade{background:linear-gradient(transparent 5%,#190a1cbb 40%,#190a1c 60%)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}dialog{max-width:480px;width:calc(100% - 40px);max-height:85dvh;overflow:auto;padding:36px;border:1px solid #7893b66b;border-radius:24px;background:linear-gradient(145deg,#111a29,#050a14);color:#f5f7ff;box-shadow:0 0 60px #0c528544}dialog::backdrop{background:#01040bc9;backdrop-filter:blur(12px)}dialog h2{font-size:28px;line-height:1.15;margin:16px 0}dialog p{line-height:1.6;color:#c2ccdf}.info-eyebrow{font-size:11px;letter-spacing:.15em;color:#ff7e9c}dialog button{width:100%;border:1px solid #559ad180;border-radius:99px;background:#103258;padding:14px;margin-top:12px}noscript{position:fixed;bottom:15px;left:20px;right:20px;text-align:center}
@keyframes float{to{translate:0 12px;scale:1.025}}
@media(min-width:1600px){:root{--near:365px;--far:670px}}
@media(max-width:1099px){:root{--card-width:min(36vw,41dvh);--near:30vw}.brand{top:7%}.brand h1{font-size:min(10vw,11dvh)}.brand-subtitle{font-size:min(2.1vw,2.6dvh)}.claim{font-size:min(3.7vw,4.4dvh)}.description{font-size:min(1.8vw,2.15dvh)}.module-card:is([data-slot="-2"],[data-slot="2"]){opacity:0;pointer-events:none}.card-copy h2{font-size:min(2.5vw,2.8dvh)}.card-cta{font-size:min(2.1vw,2.5dvh)}}
@media(max-width:599px){:root{--card-width:min(72vw,43dvh);--card-height:min(88vw,47dvh);--near:65vw}.brand{top:8%;width:94%}.brand h1{font-size:12.8vw}.brand-subtitle{font-size:2.85vw;letter-spacing:.24em;margin-top:12px}.claim{font-size:5.3vw;line-height:1.2;margin-top:50px}.description{font-size:3.3vw;max-width:88%;margin:16px auto 0;line-height:1.5}#carousel{top:46%;perspective:900px}.card-copy h2{font-size:clamp(18px,5.2vw,25px)}.module-number{font-size:23px}.card-cta{font-size:18px}.module-card:is([data-slot="-1"],[data-slot="1"]){--s:.73;--z:-65px;--y:12px}.scenery{height:48%;width:42%;opacity:.65}.acquisition span{font-size:8px}.acquisition strong{font-size:12px}.acquisition p{font-size:10px}.foreground{width:60%;height:16%}}
@media(max-height:520px) and (min-width:600px){.brand{top:3%}.brand h1{font-size:11dvh}.brand-subtitle{font-size:2.4dvh}.claim{font-size:4dvh;margin-top:calc(3.6dvh + 3px)}.description{margin-top:1dvh;font-size:2.4dvh}#carousel{top:49%}.card-copy h2{font-size:2.9dvh}.card-cta{min-height:0;font-size:2.5dvh}.module-number{font-size:2.9dvh}.module-number:after{height:2px;margin-top:2px}}
@media(prefers-reduced-motion:reduce){:root{--duration:100ms}*,*:before,*:after{animation:none!important;transition-duration:100ms!important}.environment{transform:none!important}}
/* Keep hit testing on the cards, including those behind the central plane. */
html,body,#home{overflow:clip}
#carousel,#cards{pointer-events:none}
.module-card{pointer-events:auto}
.card-art{height:72%}
.card-shade{background:linear-gradient(to bottom,transparent 30%,color-mix(in srgb,var(--surface),transparent 55%) 52%,var(--surface) 71%)}
@media(max-width:1099px){#cards .module-card:is([data-slot="-2"],[data-slot="2"]){opacity:0;pointer-events:none}}

.typewriter-char{visibility:hidden}.typewriter-char.written{visibility:visible}
