/* ===== HOME PAGE ===== */
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:130px 24px 60px;}
.hero-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.42em;text-transform:uppercase;color:var(--ice);opacity:0;margin-bottom:8px;text-align:center;text-indent:.42em;max-width:640px;margin-left:auto;margin-right:auto;line-height:1.9;}
.hero-kicker .ln{display:inline-block;width:38px;height:1px;background:var(--ice);vertical-align:middle;margin:0 12px;opacity:.5;}
@media(max-width:600px){.hero-kicker .ln{display:none;}.hero-kicker{letter-spacing:.3em;text-indent:.3em;}}
#heroLogo{width:min(680px,92vw);height:190px;margin-bottom:6px;}
.hero-head{font-family:var(--display);font-weight:200;line-height:.92;letter-spacing:-.01em;font-size:clamp(38px,8vw,102px);text-transform:uppercase;}
.hero-head .w{display:inline-block;opacity:0;transform:translateY(50px);}
.hero-head .ice-text{font-weight:600;filter:drop-shadow(0 0 40px var(--ice-dim));}
.hero-head .chrome-text{font-weight:600;}
.hero-sub{font-family:var(--body);font-weight:300;font-size:clamp(15px,1.7vw,20px);color:var(--silver);max-width:620px;margin:30px auto 0;line-height:1.6;opacity:0;transform:translateY(16px);}
.hero-cta{margin-top:42px;opacity:0;transform:translateY(16px);display:flex;gap:20px;align-items:center;flex-wrap:wrap;justify-content:center;}

/* phone */
.hero-stage{margin-top:72px;perspective:1700px;opacity:0;transform:translateY(40px);}
.hero-phone{width:250px;height:520px;border-radius:40px;position:relative;transform-style:preserve-3d;transition:transform .18s ease-out;background:linear-gradient(150deg,#2c2f37,#0d0e12);padding:9px;box-shadow:0 70px 130px -30px rgba(0,0,0,.92),0 0 0 1px rgba(255,255,255,.07),0 0 90px -20px rgba(143,212,232,.3);animation:float 7s ease-in-out infinite;}
@keyframes float{50%{transform:translateY(-18px);}}
.hp-screen{width:100%;height:100%;border-radius:31px;overflow:hidden;background:#08080a;position:relative;}
.hp-screen img{width:100%;height:100%;object-fit:cover;}
.hp-notch{position:absolute;top:14px;left:50%;transform:translateX(-50%);width:92px;height:24px;background:#050507;border-radius:14px;z-index:3;}
.hp-glass{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.16),transparent 42%),linear-gradient(310deg,rgba(143,212,232,.08),transparent 40%);}
.hp-edge{position:absolute;inset:-1px;border-radius:40px;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(143,212,232,.35),inset 0 0 34px rgba(143,212,232,.14);}
.hp-reflect{position:absolute;left:8%;right:8%;bottom:-42px;height:60px;background:radial-gradient(60% 100% at 50% 0,rgba(143,212,232,.16),transparent 70%);filter:blur(9px);transform:scaleY(-1);opacity:.7;}
.scrollcue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);font-family:var(--mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--dim);display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;}
.scrollcue .bar{width:1px;height:44px;background:linear-gradient(180deg,var(--ice),transparent);animation:drop 2s ease-in-out infinite;}
@keyframes drop{0%{opacity:0;transform:scaleY(.2);transform-origin:top;}50%{opacity:1;}100%{opacity:0;transform:scaleY(1);transform-origin:bottom;}}

/* quote */
.quote-sec{position:relative;min-height:96vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 24px;overflow:hidden;}
.qwm{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(720px,120vw);height:min(720px,120vw);opacity:.04;pointer-events:none;}
.qframe{position:absolute;pointer-events:none;}
.qframe.tl{top:60px;left:60px;width:56px;height:56px;border-top:1px solid var(--dim);border-left:1px solid var(--dim);opacity:.5;}
.qframe.br{bottom:60px;right:60px;width:56px;height:56px;border-bottom:1px solid var(--dim);border-right:1px solid var(--dim);opacity:.5;}
.qidx{position:absolute;top:64px;right:64px;font-family:var(--mono);font-size:11px;letter-spacing:.3em;color:var(--dim);}
.qtag{position:absolute;bottom:64px;left:64px;font-family:var(--mono);font-size:11px;letter-spacing:.3em;color:var(--dim);}
@media(max-width:720px){.qidx,.qtag,.qframe{display:none;}}
.quote{position:relative;max-width:1000px;z-index:2;}
.qline{overflow:hidden;}
.qline .qi{display:block;transform:translateY(120%);}
.qsmall{font-family:var(--display);font-weight:300;font-size:clamp(18px,3vw,34px);text-transform:uppercase;letter-spacing:.04em;color:var(--mid);line-height:1.3;}
.qsmall b{color:var(--silver);font-weight:500;}
.qhero{font-family:var(--display);font-weight:600;font-size:clamp(44px,9vw,104px);text-transform:uppercase;letter-spacing:-.01em;line-height:.98;margin:18px 0;filter:drop-shadow(0 4px 44px var(--ice-dim));}
.qtail{font-family:var(--display);font-weight:300;font-size:clamp(18px,3.2vw,36px);text-transform:uppercase;letter-spacing:.02em;color:var(--silver);line-height:1.2;margin-top:22px;}
.qrule{width:0;height:1px;background:linear-gradient(90deg,transparent,var(--ice),transparent);margin:8px auto 0;}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px;}
@media(max-width:860px){.pillars{grid-template-columns:1fr;}}
.pillar{padding:38px 30px;display:flex;flex-direction:column;transition:transform .4s,border-color .4s;cursor:none;min-height:300px;}
.pillar:hover{transform:translateY(-6px);}
.pillar .pnum{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--dim);}
.pillar .pico{width:52px;height:52px;margin:22px 0 20px;}
.pillar .pico svg{width:100%;height:100%;overflow:visible;}
.pillar .pico *{stroke:var(--silver);stroke-width:1.4;fill:none;transition:stroke .4s;}
.pillar:hover .pico *{stroke:var(--ice);}
.pillar h3{font-family:var(--display);font-weight:500;font-size:22px;text-transform:uppercase;}
.pillar p{color:var(--mid);font-size:14.5px;margin-top:12px;line-height:1.6;font-weight:300;flex:1;}
.pillar .pgo{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ice);margin-top:18px;display:flex;align-items:center;gap:9px;}
.pillar .pgo .arrow{width:20px;height:1px;background:currentColor;position:relative;transition:width .3s;}
.pillar:hover .pgo .arrow{width:32px;}
.pillar .pgo .arrow::after{content:'';position:absolute;right:0;top:-2px;width:5px;height:5px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);}

/* showcase */
.show-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
@media(max-width:860px){.show-grid{grid-template-columns:1fr;gap:40px;}}
.show-phones{position:relative;height:520px;}
.sphone{position:absolute;width:210px;border-radius:32px;overflow:hidden;border:1px solid var(--edge2);box-shadow:0 40px 90px -20px rgba(0,0,0,.8);}
.sphone img{width:100%;display:block;}
.sphone.sp1{left:6%;top:0;transform:rotate(-6deg);z-index:1;}
.sphone.sp2{right:6%;top:60px;transform:rotate(6deg);z-index:2;}

/* metrics */
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center;}
@media(max-width:760px){.metrics{grid-template-columns:1fr 1fr;gap:40px 20px;}}
.metric .mv{font-family:var(--display);font-weight:200;font-size:clamp(48px,7vw,84px);line-height:1;background:var(--g-chrome);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.metric .ml{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-top:14px;}

/* cta strip */
.cta-inner{padding:80px 48px;text-align:center;position:relative;overflow:hidden;}
.cta-inner .qwm2{position:absolute;right:-90px;bottom:-90px;width:340px;height:340px;opacity:.05;}
.cta-inner::after{content:'';position:absolute;left:50%;top:-40%;width:520px;height:520px;transform:translateX(-50%);background:radial-gradient(circle,var(--ice-dim),transparent 66%);opacity:.3;pointer-events:none;}

/* readability scrim behind hero text over galaxy */
.hero::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(60% 50% at 50% 42%,rgba(5,5,7,.55),transparent 70%);}
.hero>*{position:relative;z-index:1;}
.quote-sec .quote{position:relative;}
.quote-sec::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(50% 40% at 50% 50%,rgba(5,5,7,.5),transparent 72%);}
