/* Polymind 2026-11-04 · Apple x Starlink layer: stark black/white, bold uppercase headlines, full-bleed feature sections. Loads after pm.css + pages.css. */
:root{--ink:#fff;--dim:#9aa0aa;--mute:#6b717c}
body{background:#000}
.nav{background:rgba(0,0,0,.72);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-links a{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:500;color:#d7dae0}
.nav-links .nav-cta{background:#fff;color:#000;font-weight:600}
.nav-links a[aria-current="page"]{box-shadow:inset 0 -1px 0 #fff}
.brand span{text-transform:uppercase;letter-spacing:.24em;font-size:13px;font-weight:600}
.display,.h2{font-weight:700;text-transform:uppercase;letter-spacing:-.01em;line-height:.95}
.display .dim,.h2 .dim{color:#7d838e}
.copy-left .display,.copy-right .display{font-size:clamp(38px,5vw,72px)}
.eyebrow{color:#c8ccd3;letter-spacing:.28em;font-weight:600;font-size:11px}
.tick{background:#fff}.tick.r{background:var(--red)}
.btn{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:600;border-radius:4px;min-height:46px;padding:0 26px}
.btn-primary{background:#fff;color:#000}.btn-primary:hover{background:#d9dce1}
.btn-ghost{border:1.5px solid #fff;color:#fff}.btn-ghost:hover{background:#fff;color:#000}
.more{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600;color:#fff}
.tile,.xcard,.promise div,.chat,.buy-card{border-radius:14px}
.tile h3,.xbody h3,.promise b{font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:16px}

/* hero */
.as-hero{position:relative;height:190vh}
.as-hero .stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;align-items:center;justify-content:center}
.as-hero h1{margin:0;font-weight:800;text-transform:uppercase;font-size:clamp(44px,9vw,148px);line-height:.9;letter-spacing:-.02em;text-align:center;transform:scale(calc(1 + var(--p,0) * .25));opacity:calc(1 - var(--p,0) * 1.6)}
.as-hero .sub{margin:22px auto 0;text-align:center;color:#c8ccd3;font-size:clamp(16px,1.6vw,21px);max-width:34em;opacity:calc(1 - var(--p,0) * 2)}
.as-hero .cta-row{opacity:calc(1 - var(--p,0) * 2.4)}

/* spec callouts */
.specs{display:flex;gap:clamp(24px,4vw,64px);margin:30px 0 0;padding:0;list-style:none;flex-wrap:wrap}
.specs li{display:flex;flex-direction:column}
.specs b{font-size:clamp(30px,3.4vw,48px);font-weight:600;letter-spacing:-.02em;line-height:1}
.specs span{margin-top:8px;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#9aa0aa}
.as-hero .specs{position:absolute;left:0;right:0;bottom:7vh;justify-content:center;text-align:center;opacity:calc(1 - var(--p,0) * 2.4)}
.as-hero .specs li{align-items:center}

/* full-bleed features */
.feat{position:relative;height:100vh;height:100svh;min-height:600px;overflow:hidden;background:#000;border-top:1px solid rgba(255,255,255,.06);touch-action:pan-y}
.feat.scrub{height:240vh;overflow:visible}
.feat.scrub .pin{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.feat canvas.fx{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab}
.feat canvas.fx.tap{cursor:pointer}
.feat:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.78) 0,rgba(0,0,0,.35) 38%,transparent 60%),linear-gradient(0deg,rgba(0,0,0,.6),transparent 35%)}
.feat.scrub:after{display:none}
.feat.scrub .pin:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.78) 0,rgba(0,0,0,.3) 38%,transparent 60%)}
.fcopy{position:absolute;z-index:3;left:max(28px,calc((100vw - 1180px)/2));bottom:11vh;max-width:540px;pointer-events:none}
.fcopy a{pointer-events:auto}
.fnum{display:block;font-size:11px;letter-spacing:.3em;color:#9aa0aa;margin-bottom:16px;font-weight:600}
.fh{margin:0;font-weight:800;text-transform:uppercase;font-size:clamp(40px,6.2vw,92px);line-height:.92;letter-spacing:-.015em}
.fl{margin:18px 0 0;font-size:clamp(16px,1.5vw,20px);color:#c8ccd3;max-width:28em}
.fcopy .btn{margin-top:30px}
.fcopy .tag{vertical-align:middle;font-size:10px}
.hint{position:absolute;z-index:3;right:max(28px,calc((100vw - 1180px)/2));top:calc(var(--nav) + 26px);margin:0;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:#c8ccd3;display:flex;align-items:center;gap:10px;pointer-events:none}
.hint i{width:22px;height:22px;border:1.5px solid rgba(255,255,255,.6);border-radius:50%;position:relative}
.hint i:after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:#fff;animation:hintp 1.8s ease-in-out infinite}
@keyframes hintp{0%,100%{transform:translateX(-5px)}50%{transform:translateX(5px)}}
.fcopy>*{opacity:0;transform:translate3d(0,30px,0);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
.feat.in .fcopy>*{opacity:1;transform:none}
.fcopy>*:nth-child(2){transition-delay:.08s}.fcopy>*:nth-child(3){transition-delay:.16s}.fcopy>*:nth-child(4){transition-delay:.24s}.fcopy>*:nth-child(5){transition-delay:.32s}
.shot .fcopy>*{opacity:1;transform:none;transition:none}
@media (prefers-reduced-motion:reduce){.fcopy>*{opacity:1;transform:none;transition:none}.hint i:after{animation:none}.as-hero h1,.as-hero .sub,.as-hero .cta-row,.as-hero .specs{transform:none;opacity:1}}

/* CSS 3D draggable ring (feature 5) */
.ring3d{position:absolute;inset:0;perspective:1200px;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.ring3d.drag{cursor:grabbing}
.ring3d .rot{position:absolute;left:62%;top:46%;transform-style:preserve-3d}
.ring3d a{--w:140px;position:absolute;left:calc(var(--w)/-2);top:calc(var(--w)*-1.05);width:var(--w);height:calc(var(--w)*2.1);box-sizing:border-box;color:#e6f4ff;text-decoration:none;display:flex;align-items:flex-end;justify-content:center;padding:0 0 calc(var(--w)*.07);font:600 calc(var(--w)*.086)/1 -apple-system,system-ui,sans-serif;letter-spacing:0;text-transform:none;white-space:nowrap;backface-visibility:hidden;z-index:0}
.ring3d a::after{content:"";position:absolute;left:-2%;bottom:0;width:104%;height:calc(var(--w)*.224);background:rgba(5,10,16,.75);z-index:-1}
.ring3d a:hover i,.ring3d a.front i{border-color:#bfe9ff;box-shadow:0 0 40px rgba(95,200,255,.4)}
.ring3d a i{position:absolute;left:0;top:0;width:100%;height:calc(var(--w)*1.84);box-sizing:border-box;border:1.5px solid #5fc8ff;border-radius:0;background:#03050a radial-gradient(circle at 50% 40%,rgba(95,200,255,.55),transparent 62%);background-size:cover;background-position:center;box-shadow:0 0 24px rgba(95,200,255,.22);transition:border-color .3s,box-shadow .3s}
.ring3d .floor{position:absolute;left:12%;right:-10%;top:68%;height:120px;border-radius:50%;border-top:1px solid rgba(255,255,255,.3);box-shadow:0 -14px 50px rgba(255,255,255,.06)}

/* and more */
.more-strip{padding:clamp(80px,12vw,150px) 0;border-top:1px solid rgba(255,255,255,.06)}
.more-strip .xgrid{margin-top:40px}

@media (max-width:760px){
  .feat:after{background:linear-gradient(0deg,#000 0,rgba(0,0,0,.85) 34%,transparent 62%)}
  .feat.scrub .pin:after{background:linear-gradient(0deg,#000 0,rgba(0,0,0,.85) 34%,transparent 62%)}
  .fcopy{left:22px;right:22px;bottom:6vh}
  .fh{font-size:clamp(34px,10.5vw,52px)}
  .fl{font-size:15.5px;margin-top:12px}
  .specs{gap:26px;margin-top:18px}
  .specs b{font-size:28px}
  .fcopy .btn{margin-top:18px}
  .hint{left:22px;right:auto;top:calc(var(--nav) + 16px)}
  .ring3d .rot{left:50%;top:34%}
  .ring3d a{--w:100px;font-size:max(9px,calc(var(--w)*.086))}
  .ring3d .floor{top:52%;left:-10%}
  .as-hero h1{font-size:clamp(40px,12vw,64px)}
}
.shot .feat{height:var(--shot-h,100vh)}
.shot .feat.scrub{height:auto}
.shot .feat.scrub .pin{position:relative;height:var(--shot-h,100vh)}
.shot .as-hero{height:auto}
.ffine{font-size:11px;color:#7d838e;margin-top:16px;max-width:36em}
.wind{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:22px}.wind .ffine{margin:0}
