/* PoisedHQ home page. Scoped to index.html only; every other page keeps styles.css.
   One accent: LinkedIn blue (#0A66C2). --lilac is the light blue used on dark sections. */
:root{
  --bg:#f5f7fb;--paper:#fff;--ink:#020915;--muted:#4b5563;--line:#dfe5ee;
  --accent:#0a66c2;--accent-dark:#004182;--accent-soft:#eef4fb;--lilac:#70b5f9;
  --night:#070b16;--cream:#fff8f0;--tell:#d6453d;
  --max:1120px;--radius:18px;--shadow:0 16px 40px rgba(2,9,21,.08);
  --serif:"Newsreader","Iowan Old Style",Georgia,serif;
  --sans:"DM Sans",ui-sans-serif,system-ui,-apple-system,sans-serif;
  --hand:"Caveat","Bradley Hand",cursive;
  --ease:cubic-bezier(.22,1,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
img,svg{display:block}
img{max-width:100%;height:auto}
h1,h2,h3,p,ul,ol,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
em{font-style:italic}
.wrap{width:100%;max-width:calc(var(--max) + 48px);margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px;top:8px;background:var(--accent);color:#fff;padding:8px 12px;border-radius:6px;z-index:100}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.04}
h2 em{color:var(--accent-dark)}

/* buttons */
.button{display:inline-flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.05rem;line-height:1.6;letter-spacing:.01em;padding:.78rem 1.3rem;border-radius:999px;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .35s var(--ease),background .25s,box-shadow .35s,border-color .25s,color .25s}
.button:hover{transform:translateY(-2px)}
.button:active{transform:translateY(0) scale(.98)}
.button-light{background:var(--cream);color:#14181f;box-shadow:0 10px 30px rgba(2,9,21,.18)}
.button-light:hover{background:#fff;box-shadow:0 16px 40px rgba(2,9,21,.26)}
.button-accent{background:var(--accent);color:var(--cream);box-shadow:0 10px 26px rgba(10,102,194,.28)}
.button-accent:hover{background:var(--accent-dark)}
.button-ghost{background:rgba(255,248,240,.08);color:var(--cream);border-color:rgba(255,248,240,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.95rem}
.button-ghost:hover{background:rgba(255,248,240,.18)}
.button-line{background:transparent;color:var(--ink);border-color:var(--line)}
.button-line:hover{border-color:var(--accent);color:var(--accent-dark)}

@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* ───────── header ───────── */
.site-head{position:absolute;inset:0 0 auto;z-index:20;background:linear-gradient(rgba(12,16,24,.18),transparent);animation:rise .9s var(--ease) .05s both}
.site-head__in{display:flex;align-items:center;gap:28px;height:73px}
.logo{font-family:var(--serif);font-size:1.5rem;letter-spacing:-.03em;color:var(--cream);margin-right:auto}
.logo span{font-style:italic;opacity:.72}
.nav-links{display:flex;gap:26px;font-size:.94rem;color:rgba(255,248,240,.9)}
.nav-links a{position:relative;padding:4px 0}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.nav-links a:hover::after{transform:scaleX(1)}
@media(max-width:860px){.nav-links{display:none}}

/* ───────── hero ───────── */
.hero{position:relative;display:grid;place-items:center;min-height:max(640px,100svh);overflow:hidden;color:var(--cream);text-align:center;isolation:isolate}
.hero__sky{position:absolute;inset:0;z-index:-1;overflow:hidden;
  background:linear-gradient(180deg,#3c5683 0%,#4d6a99 24%,#7089b3 46%,#a9b3cc 62%,#e4cfc9 76%,#eee6e6 90%,var(--bg) 100%)}
.hero__glow{position:absolute;inset:0;background:
  radial-gradient(46% 38% at 86% 22%,rgba(226,168,176,.36),transparent 70%),
  radial-gradient(60% 46% at 12% 30%,rgba(40,84,140,.5),transparent 72%),
  radial-gradient(70% 30% at 50% 82%,rgba(255,236,224,.5),transparent 75%)}
.hero__clouds{position:absolute;top:0;left:-200px;height:100%;width:calc(100% + 2200px);background-repeat:repeat-x;background-size:1600px 100%;
  -webkit-mask-image:linear-gradient(transparent 2%,#000 28%,#000 62%,transparent 88%);mask-image:linear-gradient(transparent 2%,#000 28%,#000 62%,transparent 88%);will-change:transform}
.hero__clouds--far{opacity:.28;animation:drift 160s linear infinite;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='800'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.0032 .009' numOctaves='5' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .95 0 0 0 0 .97 0 0 0 2.6 -1.32'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E")}
.hero__clouds--near{opacity:.2;animation:drift 95s linear infinite;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='800'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.0055 .014' numOctaves='4' seed='4' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .86 0 0 0 0 .88 0 0 0 2.4 -1.36'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E")}
/* a low cloud bank that passes in front of the peaks */
.hero__clouds--front{top:36%;height:54%;opacity:.5;animation:drift 70s linear infinite;
  -webkit-mask-image:linear-gradient(transparent,#000 40%,#000 70%,transparent);mask-image:linear-gradient(transparent,#000 40%,#000 70%,transparent);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='430'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.0045 .02' numOctaves='4' seed='31' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .97 0 0 0 0 .98 0 0 0 2.8 -1.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E")}
[data-drift]{will-change:transform,translate}
@keyframes drift{to{transform:translate3d(-1600px,0,0)}}
.hero__peaks{position:absolute;left:0;bottom:0;width:100%;height:70%}
.ridge{will-change:transform}
/* small signs of life on the range; the paths match SKI, FALL and ZIP in .peaks.py */
.skier{offset-path:path("M1302 262 C1280 300 1310 330 1284 362 C1262 388 1290 414 1266 440");animation:glide 15s cubic-bezier(.45,0,.55,1) 2s infinite}
.zip{offset-path:path("M330 514 Q238 612 118 652");offset-rotate:0deg;animation:glide 12s cubic-bezier(.5,0,.8,.6) 5s infinite}
@keyframes glide{0%{offset-distance:0%;opacity:0}5%{opacity:1}80%{offset-distance:100%;opacity:1}88%,100%{offset-distance:100%;opacity:0}}
.fall{animation:fall 1.1s linear infinite}
@keyframes fall{to{stroke-dashoffset:-15}}
.hero__sun{position:absolute;inset:0;background:radial-gradient(38% 26% at 50% 60%,rgba(255,214,190,.62),rgba(255,214,190,.18) 55%,transparent 78%)}
.hero__fog{position:absolute;left:-200px;bottom:0;height:26%;width:calc(100% + 2200px);opacity:.55;animation:drift 120s linear infinite;background-repeat:repeat-x;background-size:1600px 100%;
  -webkit-mask-image:linear-gradient(transparent,#000 45%);mask-image:linear-gradient(transparent,#000 45%);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='400'%3E%3Cfilter id='c' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.004 .016' numOctaves='4' seed='23' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 2.2 -.82'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23c)'/%3E%3C/svg%3E")}
.hero__sky::after{content:"";position:absolute;inset:auto 0 0;height:20%;background:linear-gradient(rgba(245,247,251,0),var(--bg) 88%)}
.hero__grain{position:absolute;inset:0;opacity:.16;mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E")}

.hero__content{position:relative;padding-top:112px;padding-bottom:230px}
/* a soft veil so the words sit on calm sky, whatever the clouds are doing */
.hero__content::before{content:"";position:absolute;inset:40px -6% 150px;z-index:-1;background:radial-gradient(closest-side,rgba(52,76,122,.5),rgba(52,76,122,.22) 60%,transparent);pointer-events:none}
.hero__for{margin-bottom:1.3rem;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,248,240,.78);animation:rise 1s var(--ease) .1s both}
.hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem,5.2vw,4.3rem);line-height:1.04;letter-spacing:-.04em;text-wrap:balance;text-shadow:0 2px 30px rgba(30,50,90,.25);animation:rise 1s var(--ease) .2s both}
.hero h1 em{display:block;font-size:.86em;font-weight:300;text-wrap:balance}
.hero__lede{max-width:34rem;margin:1.4rem auto 1.9rem;color:rgba(255,248,240,.82);text-wrap:balance;animation:rise 1s var(--ease) .45s both}
.hero .button{animation:rise 1s var(--ease) .65s both}
.hero__content{display:flex;flex-direction:column;align-items:center}
.hero__note{display:inline-block;margin-top:1.1rem;padding:5px 14px;border-radius:999px;font-size:.8rem;color:rgba(255,248,240,.95);background:rgba(14,28,52,.3);border:1px solid rgba(255,248,240,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:rise 1s var(--ease) .85s both}

.facts{position:absolute;left:50%;bottom:42px;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);width:min(860px,calc(100% - 48px));transform:translateX(-50%);
  background:rgba(14,28,52,.42);border:1px solid rgba(255,248,240,.14);border-radius:var(--radius);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);
  box-shadow:0 20px 50px rgba(10,12,30,.22);animation:riseFacts 1s var(--ease) 1.1s both;text-align:left}
@keyframes riseFacts{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}
.facts li{padding:18px 22px;border-left:1px solid rgba(255,248,240,.1)}
.facts li:first-child{border-left:0}
.facts b{display:block;font-family:var(--serif);font-weight:400;font-size:1.22rem;letter-spacing:-.02em;line-height:1.2}
.facts span{display:block;margin-top:3px;font-size:.78rem;line-height:1.35;color:rgba(255,248,240,.66)}
@media(max-width:720px){
  .facts{grid-template-columns:1fr 1fr;bottom:28px}
  .facts li{padding:13px 16px}
  .facts li:nth-child(3){border-left:0}
  .facts li:nth-child(n+3){border-top:1px solid rgba(255,248,240,.1)}
  .facts b{font-size:1.05rem}
  .hero__content{padding-top:104px;padding-bottom:250px}
  /* on a phone, widen the drawing and slide it so the left massif is in frame instead of the low valley */
  .hero__peaks{height:56%;width:220%;left:-4%}
  .hero__for{font-size:.66rem;letter-spacing:.16em}
}

/* ───────── roster ───────── */
.roster{background:radial-gradient(70% 90% at 4% 0,rgba(10,102,194,.1),transparent 60%),linear-gradient(170deg,#f1f5fb 0%,#edf2f9 50%,#f5f7fb 100%)}
.roster__stage{position:relative;padding:88px 0}
.roster__inner{display:grid;gap:36px;padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:0}
.roster__counter{display:flex;align-items:center;gap:12px;font-size:.78rem;letter-spacing:.12em;color:var(--muted);font-variant-numeric:tabular-nums}
.roster__counter i{width:44px;height:1px;background:currentColor;opacity:.4}
.roster__head h2{margin-top:18px;font-size:clamp(1.9rem,2.9vw,2.4rem);line-height:1.06}
.roster__sub{margin-top:18px;max-width:23rem;color:var(--muted);font-size:1rem;line-height:1.55}
.roster__hint{display:none;align-items:center;gap:10px;margin-top:26px;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.roster__hint svg{animation:nudge 1.8s var(--ease) infinite}
@keyframes nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.roster__fine{margin-top:22px;font-size:.78rem;color:var(--muted);opacity:.8}
.roster__view{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:14px 0 30px}
.roster__view::-webkit-scrollbar{display:none}
.roster__rail{display:flex;gap:18px;width:max-content;padding-right:24px}
.roster__progress{display:none}

.fcard{position:relative;display:flex;flex-direction:column;flex:none;width:340px;padding:20px 22px 20px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 26px rgba(2,9,21,.06);scroll-snap-align:start;transition:border-color .35s,box-shadow .35s,transform .35s var(--ease)}
.fcard:hover{border-color:#b9d2ee;box-shadow:0 18px 44px rgba(0,65,130,.14);transform:translateY(-4px)}
.fcard--wide{width:384px}
@media(max-width:480px){.fcard,.fcard--wide{width:82vw}.fcard .mini__av,.fcard--wide .mini__av{top:calc((82vw - 46px)/4 - 26px)!important}}
.fcard__top{display:flex;align-items:center;gap:10px}
.fcard__top img{width:36px;height:36px;border-radius:50%;object-fit:cover}
.fcard__top b{display:block;font-size:.86rem;font-weight:500;line-height:1.2}
.fcard__top span{display:block;font-size:.72rem;color:var(--muted)}
.fcard__n{margin-left:auto;font-style:normal;font-size:.72rem;letter-spacing:.1em;color:var(--accent-dark);background:var(--accent-soft);padding:3px 8px;border-radius:6px}
.fcard__metric{margin-top:20px;font-family:var(--serif);font-size:1.86rem;line-height:.95;letter-spacing:-.04em;color:var(--accent-dark)}
.fcard__label{margin-top:8px;padding-bottom:13px;font-size:.88rem;line-height:1.3;border-bottom:1px solid var(--line)}
.fcard__cta{display:inline-flex;align-items:center;gap:10px;margin-top:12px;font-size:.84rem;color:var(--accent-dark)}
.fcard__think{margin-top:auto;padding-top:16px;font-family:var(--hand);font-size:1.46rem;line-height:1.1;color:var(--accent);transform:rotate(-1.5deg);transform-origin:0 50%}
.fcard__think span{display:block;margin-bottom:5px;font-family:var(--sans);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);transform:rotate(1.5deg);transform-origin:0 50%}
.fcard__think--no{color:var(--tell)}
.fcard--after{border-color:#9cc3ec;box-shadow:0 0 0 4px rgba(10,102,194,.08),0 18px 44px rgba(0,65,130,.14)}
.fcard__cta svg{transition:transform .35s var(--ease)}
.fcard__cta:hover svg{transform:translateX(5px)}

.swap{display:flex;flex-direction:column;gap:7px;margin-top:14px;font-size:.84rem;line-height:1.42}
.swap__tag{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.swap__tag--now{margin-top:8px;color:var(--accent-dark)}
.swap__was{padding:9px 11px;border-radius:9px;background:#f4f3f7;color:#7b8092;text-decoration:line-through;text-decoration-color:rgba(123,128,146,.5)}
.swap__was--empty{font-style:italic}
.swap__now{padding:10px 12px;border-radius:9px;background:var(--accent-soft);border:1px solid #d3e3f6;color:var(--ink)}
.more{color:var(--muted)}
.swap__img{border-radius:8px;filter:saturate(.6)}
.swap__banner{position:relative;border-radius:8px;overflow:hidden;box-shadow:0 8px 20px rgba(0,65,130,.18)}
.swap__banner p,.mini__bannerwrap p,.pro__banner p{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:0 8% 0 30%;color:#fff;line-height:1.2;text-align:left}
.swap__banner b,.mini__bannerwrap b,.pro__banner b{font-size:.68rem;font-weight:700;text-shadow:0 1px 6px rgba(0,20,60,.35)}
.swap__banner span,.mini__bannerwrap span{display:none}
.swap--photos{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:6px;margin:auto 0;padding-top:20px;color:var(--muted)}
.swap--photos svg{margin-top:60px}
.swap--photos figure{text-align:center}
.swap--photos img{width:128px;height:128px;border-radius:50%;object-fit:cover;filter:saturate(.7) brightness(.92);border:3px solid #fff;box-shadow:0 6px 18px rgba(2,9,21,.12)}
.swap--photos .is-now img{filter:none;box-shadow:0 0 0 2px var(--accent),0 10px 24px rgba(0,65,130,.25)}
.swap--photos figcaption{margin-top:10px;font-size:.64rem;letter-spacing:.14em;text-transform:uppercase}
.swap--photos .is-now figcaption{color:var(--accent-dark)}
.swap--photos small{display:block;margin-top:5px;font-size:.78rem;letter-spacing:0;text-transform:none;color:var(--muted)}

.mini{position:relative;margin-top:14px;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:.76rem;line-height:1.38;background:#fff}
.mini__banner{width:100%;aspect-ratio:4/1;object-fit:cover}
.mini__bannerwrap{position:relative}
.mini__av{position:absolute;left:12px;top:calc((340px - 46px)/4 - 26px);width:52px;height:52px;border-radius:50%;object-fit:cover;border:3px solid #fff}
.fcard--wide .mini__av{top:calc((384px - 46px)/4 - 26px)}
.fcard:not(.fcard--wide) .mini__av{top:calc((340px - 46px)/4 - 26px)}
.mini__head{padding:34px 12px 10px;color:var(--ink)}
.mini:not(.mini--after) .mini__head{color:#6b7083}
.mini__row{padding:8px 12px;border-top:1px solid var(--line);color:var(--muted)}
.mini__row b{display:inline-block;min-width:58px;font-weight:500;color:var(--ink)}
.mini--after{border-color:#c5daf2;box-shadow:0 10px 26px rgba(0,65,130,.12)}

/* pinned horizontal scroll: desktop, motion allowed */
@media(min-width:960px){
  .roster__inner{grid-template-columns:340px minmax(0,1fr);gap:56px;align-items:center}
  html.js:not(.static) .roster__track{height:300vh}
  html.js:not(.static) .roster__stage{position:sticky;top:0;height:100vh;padding:0;display:grid;align-items:center;overflow:hidden}
  html.js:not(.static) .roster__view{overflow:hidden;padding:40px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 46px);mask-image:linear-gradient(90deg,transparent,#000 46px)}
  html.js:not(.static) .roster__rail{padding-left:46px;padding-right:max(24px,calc((100vw - var(--max))/2));will-change:transform}
  html.js:not(.static) .roster__hint{display:flex}
  html.js:not(.static) .roster__rail .fcard{opacity:.5;transform:scale(.965);transition:opacity .5s,transform .6s var(--ease),border-color .35s,box-shadow .35s}
  html.js:not(.static) .roster__rail .fcard.is-near{opacity:.86}
  html.js:not(.static) .roster__rail .fcard.is-current{opacity:1;transform:none;border-color:#9cc3ec;box-shadow:0 0 0 4px rgba(10,102,194,.07),0 22px 50px rgba(0,65,130,.16)}
  html.js:not(.static) .roster__progress{display:block;position:absolute;left:max(24px,calc((100vw - var(--max))/2));right:max(24px,calc((100vw - var(--max))/2));bottom:44px;height:1px;background:var(--line)}
  .roster__progress span{display:block;height:100%;width:0;background:var(--accent)}
}

/* ───────── chapters ───────── */
.chapter{position:relative;padding:96px 0}
.chapter--paper{background:linear-gradient(#e6edf6 0%,#eef3f9 5%,#f6f8fb 11%,#fdfcfa 18%,#faf8f4 78%,#f8f8f8 88%,var(--bg) 100%)}
.chapter__grid{display:grid;gap:40px}
.chapter__n{font-size:.78rem;letter-spacing:.1em;color:var(--accent-dark)}
.chapter__heading{margin-top:12px;font-size:clamp(1.95rem,3.2vw,2.56rem)}
.chapter__lede{margin-top:18px;color:var(--muted);font-size:1rem;line-height:1.55}
.chapter__steps{display:none;margin-top:30px}
.chapter__steps li{display:flex;gap:18px;padding:7px 0;font-size:.88rem;color:#9a9eac;transition:color .4s,transform .4s var(--ease)}
.chapter__steps span{width:24px;font-size:.76rem;font-variant-numeric:tabular-nums;opacity:.8}
.chapter__steps li.is-done{color:var(--muted)}
.chapter__steps li.is-active{color:var(--ink);font-weight:500;transform:translateX(4px)}
.chapter__panels{display:grid;gap:26px}

.scard{--cover:0;display:flex;flex-direction:column;padding:2.08rem;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 44px rgba(2,9,21,.09);transform-origin:50% 0}
.scard__title{font-family:var(--serif);font-weight:400;font-size:1.7rem;line-height:1.15;letter-spacing:-.03em}
.scard__kicker{margin-top:auto;padding-top:22px;color:var(--muted);font-family:var(--serif);font-size:1.16rem;line-height:1.3;letter-spacing:-.015em}
.scard--accent{justify-content:center;gap:10px;min-height:320px;color:#fff;border:0;background:radial-gradient(120% 140% at 0 0,#2f86dc 0%,var(--accent) 38%,var(--accent-dark) 100%);box-shadow:0 24px 54px rgba(0,65,130,.34)}
.scard--accent p{font-family:var(--serif);font-size:clamp(1.45rem,2.3vw,1.9rem);line-height:1.22;letter-spacing:-.025em}
.scard--accent em{color:#cfe4fb}
.scard--accent .scard__small{margin-top:8px;font-family:var(--sans);font-size:.96rem;line-height:1.5;letter-spacing:0;color:rgba(255,255,255,.82)}
.scard__link{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;margin-top:14px;padding-bottom:3px;font-size:.92rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.5)}
.scard__link svg{transition:transform .35s var(--ease)}
.scard__link:hover svg{transform:translateX(5px)}

.spec{padding-bottom:20px;border-bottom:1px solid var(--line)}
.spec__who{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.spec__who i{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#d5e2f2,#b7cde8)}
.spec__who b{display:block;font-size:.9rem;font-weight:500;line-height:1.25}
.spec__who span{display:block;font-size:.76rem;color:var(--muted)}
.spec__line{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin-top:9px;font-size:1.02rem;line-height:1.7}
.spec__key{flex:none;width:74px;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.spec mark{padding:2px 6px;border-radius:5px;background:rgba(214,69,61,.11);color:#b3322b}
.spec sup{margin-left:2px;font-size:.62em;font-weight:700}
.tells{display:grid;grid-template-columns:1fr 1fr;gap:9px 26px;margin-top:18px;counter-reset:tell;font-size:.86rem}
.tells li{counter-increment:tell;display:flex;gap:10px}
.tells li::before{content:counter(tell);flex:none;width:10px;font-size:.72rem;font-weight:700;color:var(--tell);line-height:1.95}
@media(max-width:560px){.tells{grid-template-columns:1fr}}

.cal{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:auto 0;padding:30px 0 6px}
.cal p{margin-bottom:10px;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cal span{display:block;margin-bottom:6px;padding:8px 9px;border-radius:8px;border:1px solid #d3e3f6;background:var(--accent-soft);font-size:.76rem;line-height:1.2;color:var(--accent-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal em{display:block;position:relative;padding:8px 9px;border-radius:8px;border:1px dashed #c5cfde;font-style:normal;font-size:.76rem;line-height:1.2;color:#9a9eac}
.cal em::after{content:"";position:absolute;left:7px;right:7px;top:50%;height:1.5px;background:var(--tell);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease) .3s}
.cal div:nth-child(2) em::after{transition-delay:.6s}.cal div:nth-child(3) em::after{transition-delay:.9s}.cal div:nth-child(4) em::after{transition-delay:1.2s}
.cal .cal__next{border-color:transparent;padding:2px 0 0 2px;font-family:var(--hand);font-size:1.3rem;color:var(--tell);white-space:nowrap;opacity:0;transform:rotate(-3deg);transition:opacity .5s 1.6s}
.cal .cal__next::after{display:none}
.in .cal em::after,html:not(.js) .cal em::after{transform:scaleX(1)}
.in .cal .cal__next,html:not(.js) .cal .cal__next{opacity:1}
@media(max-width:560px){.cal{gap:5px}.cal span,.cal em{padding:7px 3px;font-size:.56rem;text-align:center;white-space:normal;overflow:visible;min-height:38px;display:grid;place-items:center}.cal em::after{left:4px;right:4px}.cal .cal__next{font-size:.95rem;display:block;min-height:0;text-align:left}}

.path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:auto 0;padding:34px 0 8px}
.path li{position:relative;padding-right:14px}
.path i{display:block;width:14px;height:14px;margin-bottom:16px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);transform:scale(0);transition:transform .5s var(--ease)}
.path li::before{content:"";position:absolute;left:18px;right:4px;top:6.5px;height:1.5px;background:var(--accent);opacity:.55;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease) .15s}
.path li:last-child::before{display:none}
.path li:nth-child(3)::before{background:linear-gradient(90deg,var(--accent),var(--tell));opacity:.8}
.path li:nth-child(2) i{transition-delay:.4s}.path li:nth-child(2)::before{transition-delay:.55s}
.path li:nth-child(3) i{transition-delay:.8s}.path li:nth-child(3)::before{transition-delay:.95s}
.path li:nth-child(4) i{transition-delay:1.3s}
.path b{display:block;font-family:var(--serif);font-weight:400;font-size:1.16rem;line-height:1.2;letter-spacing:-.02em}
.path span{display:block;margin-top:5px;font-size:.8rem;line-height:1.35;color:var(--muted)}
.path__lost i{background:var(--tell);box-shadow:0 0 0 4px rgba(214,69,61,.12)}
.path__lost b{color:var(--tell)}
.in .path i,html:not(.js) .path i{transform:scale(1)}
.in .path li::before,html:not(.js) .path li::before{transform:scaleX(1)}
@media(max-width:560px){.path{grid-template-columns:1fr 1fr;gap:22px 0}.path li:nth-child(2)::before{display:none}}

.hcard{display:grid;gap:26px}
.hcard__n{font-size:.76rem;letter-spacing:.06em;color:var(--accent-dark)}
.hcard__title{margin-top:10px;font-family:var(--serif);font-weight:400;font-size:1.54rem;line-height:1.12;letter-spacing:-.03em}
.hcard__copy>p:not(.hcard__n){margin-top:14px;color:var(--muted);font-size:1rem;line-height:1.55}
.hcard__list{display:grid;gap:9px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:.92rem;line-height:1.45}
.hcard__list li{position:relative;padding-left:24px}
.hcard__list li::before{content:"";position:absolute;left:4px;top:.3em;width:6px;height:11px;border:solid var(--accent);border-width:0 1.5px 1.5px 0;transform:rotate(40deg)}
.hcard__art{position:relative;display:flex;flex-direction:column;justify-content:center;gap:14px;min-height:300px;padding:26px 0 0}
.hand{font-family:var(--hand);font-size:1.34rem;line-height:1.1;color:var(--accent);display:flex;align-items:flex-end;gap:6px;transform:rotate(-2deg)}
.hand s{color:var(--tell);text-decoration-thickness:1.5px}
.hand u{text-decoration-thickness:1.5px;text-underline-offset:4px}
.hand--br{align-self:flex-end}
.art__cap{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

.pro{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 12px 30px rgba(0,65,130,.12)}
.pro__banner{position:relative}
.pro__banner img{width:100%;aspect-ratio:4/1;object-fit:cover}
.pro__banner b{font-size:.72rem}
.pro__av{position:absolute;left:16px;top:0;margin-top:calc(25% - 34px);width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid #fff}
.pro__name{padding:40px 16px 0;font-weight:500;font-size:.98rem}
.pro__name span{margin-left:6px;font-weight:400;font-size:.7rem;color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:1px 6px}
.pro__head{padding:4px 16px 18px;font-size:.86rem;line-height:1.4}

.days{display:flex;gap:10px}
.days li{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px dashed #c5cfde;font-size:.78rem;color:#9a9eac;transform:scale(.9);transition:transform .6s var(--ease),background .4s,border-color .4s,color .4s}
.in .days li.on,html.static .days li.on,html:not(.js) .days li.on{background:var(--accent);border:1px solid var(--accent);color:#fff;transform:scale(1)}
.days li:nth-child(2){transition-delay:.12s}.days li:nth-child(4){transition-delay:.24s}.days li:nth-child(5){transition-delay:.36s}
.post{padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 10px 26px rgba(2,9,21,.06)}
.post__meta{font-size:.72rem;color:var(--muted)}
.post__body{margin-top:6px;font-size:.92rem;line-height:1.45}

.drafts{display:grid;gap:10px}
.drafts li{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}
.drafts div{flex:1;display:grid;gap:8px}
.drafts i{display:block;height:7px;border-radius:4px;background:#e8edf4}
.drafts b{font-size:.72rem;font-weight:500;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 12px}
.drafts .is-yours{border-color:#b9d2ee;background:var(--accent-soft);box-shadow:0 8px 22px rgba(0,65,130,.1)}
.drafts .is-yours i{background:#cddff4}
.drafts .is-yours b{background:var(--accent);border-color:var(--accent);color:#fff}

.queue{border:1px solid #cfe0f5;border-radius:14px;background:linear-gradient(#fafcff,#f1f6fd);padding:16px;box-shadow:0 12px 30px rgba(0,65,130,.1)}
.queue__head{display:flex;align-items:center;gap:9px;font-size:.8rem;font-weight:500}
.queue__head i{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{opacity:.25}}
.queue ul{display:grid;gap:8px;margin-top:14px}
.queue li{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:.84rem;opacity:.35;transform:translateY(6px);transition:opacity .5s,transform .6s var(--ease)}
.queue b{font-size:.68rem;font-weight:500;letter-spacing:.04em;padding:3px 9px;border-radius:6px;background:#e9f6ee;color:#1f7a45;opacity:0;transform:scale(.8);transition:opacity .4s,transform .5s var(--ease)}
.queue li.is-on{opacity:1;transform:none}
.queue li.is-on b{opacity:1;transform:none}
html.static .queue li,html:not(.js) .queue li{opacity:1;transform:none}
html.static .queue b,html:not(.js) .queue b{opacity:1;transform:none}

@media(min-width:720px){
  .hcard{grid-template-columns:1fr 1fr;gap:0}
  .hcard__copy{align-self:center;padding-right:34px}
  .hcard__art{padding:0 0 0 34px;border-left:1px solid var(--line)}
}
/* sticky aside + stacking cards: desktop, motion allowed */
@media(min-width:960px){
  .chapter__grid{grid-template-columns:340px minmax(0,1fr);gap:76px}
  .chapter__steps{display:block}
  .chapter__sticky{position:sticky;top:176px}
  html.js:not(.static) .scard{position:sticky;top:calc(112px + var(--i,0)*14px);min-height:430px;will-change:transform;
    transform:scale(calc(1 - var(--cover)*.045));filter:brightness(calc(1 - var(--cover)*.05))}
  html.js:not(.static) .chapter__panels{gap:30vh;padding-bottom:6vh}
}

/* ───────── boot ───────── */
.boot{position:relative;background:var(--night);color:#fff}
.boot__stage{position:relative;padding:96px 0}
.boot__aura{position:absolute;inset:0;pointer-events:none;opacity:var(--aura,.5);background:radial-gradient(42% 46% at 50% 44%,rgba(10,102,194,.42),rgba(0,65,130,.14) 55%,transparent 75%)}
.boot__quote{display:grid;justify-items:start;gap:28px;width:100%;max-width:calc(var(--max) + 48px);margin:0 auto;padding:0 24px 72px;text-align:left}
.boot__quote blockquote{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,6vw,5rem);line-height:1.04;letter-spacing:-.04em}
.boot__word{color:rgba(255,255,255,.2);transition:color .35s}
.boot__word.is-lit{color:#fff}
.boot__quote em .boot__word.is-lit{color:var(--lilac)}
.boot__quote figcaption{display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline;font-size:.86rem;color:rgba(255,255,255,.6);transition:opacity .5s}
.boot__quote figcaption b{font-weight:500;color:#fff}
.boot__os{position:relative}
.boot__eyebrow{font-size:.78rem;letter-spacing:.1em;color:var(--lilac)}
.boot__title{display:inline-block;margin-top:6px;font-size:clamp(2.8rem,5.6vw,4.1rem);letter-spacing:-.04em;line-height:.95;color:#fff;transform-origin:0 50%;will-change:transform}
.boot__lede{margin-top:16px;color:rgba(255,255,255,.72)}
.mods{display:grid;gap:0 56px;margin-top:34px}
.mod{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.mod__body b{display:block;font-weight:500;font-size:1.06rem;line-height:1.3}
.mod__body span{display:block;margin-top:2px;font-size:.8rem;color:rgba(255,255,255,.55)}
.mod i{font-style:normal;font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:var(--lilac)}
.boot__bar{height:1px;margin-top:22px;background:rgba(255,255,255,.1)}
.boot__bar span{display:block;height:100%;width:100%;background:linear-gradient(90deg,var(--accent),var(--lilac));box-shadow:0 0 14px rgba(112,181,249,.8)}
.boot__buy{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin-top:26px}
.boot__price{font-family:var(--serif);font-size:2.7rem;letter-spacing:-.04em;line-height:1}
.boot__price span{margin-left:4px;font-family:var(--sans);font-size:.74rem;letter-spacing:0;color:rgba(255,255,255,.6)}
.boot__price small{display:block;margin-top:9px;font-family:var(--sans);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lilac)}
.boot__price--std{padding-left:28px;border-left:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.62)}
.boot__price--std small{color:rgba(255,255,255,.5)}
@media(min-width:760px){.mods{grid-template-columns:1fr 1fr}}

/* pinned sequence: motion allowed */
html.js:not(.static) .boot__track{height:440vh}
html.js:not(.static) .boot__stage{position:sticky;top:0;height:100vh;padding:0;display:grid;align-items:center;overflow:hidden}
html.js:not(.static) .boot__quote,html.js:not(.static) .boot__os{grid-area:1/1}
html.js:not(.static) .boot__quote{padding-bottom:0}
html.js:not(.static) .boot__aura{opacity:var(--aura,0)}
html.js:not(.static) .boot__os{visibility:hidden}
html.js:not(.static) .boot__os.is-on{visibility:visible}
html.js:not(.static) .boot__eyebrow,html.js:not(.static) .boot__lede{opacity:0;transform:translateY(10px);transition:opacity .6s,transform .7s var(--ease)}
html.js:not(.static) .is-live .boot__eyebrow,html.js:not(.static) .is-live .boot__lede{opacity:1;transform:none}
html.js:not(.static) .mod{opacity:0;transform:translateY(14px);transition:opacity .55s,transform .7s var(--ease)}
html.js:not(.static) .mod i{opacity:0;transition:opacity .4s .25s}
html.js:not(.static) .mod.is-loaded{opacity:1;transform:none}
html.js:not(.static) .mod.is-loaded i{opacity:1}
html.js:not(.static) .boot__bar{opacity:0;transition:opacity .5s}
html.js:not(.static) .is-live .boot__bar{opacity:1}
html.js:not(.static) .boot__bar span{width:0}
html.js:not(.static) .boot__buy{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .7s var(--ease)}
html.js:not(.static) .boot__buy.is-on{opacity:1;transform:none}
@media(max-width:759px){
  .boot__price--std{padding-left:0;border-left:0}
  .boot__buy{gap:16px 28px}
  html.js:not(.static) .mod{padding:10px 0}
  html.js:not(.static) .mod__body span{display:none}
  html.js:not(.static) .mods{margin-top:20px}
  html.js:not(.static) .boot__price{font-size:2.1rem}
}

/* ───────── wall ───────── */
/* the section's own background carries the fade to the light page, so nothing is laid over the cards */
.wall{position:relative;color:#fff;padding:72px 0 300px;overflow:hidden;
  background:linear-gradient(180deg,var(--night) 0,var(--night) calc(100% - 380px),#0a1326 calc(100% - 325px),#10203f calc(100% - 268px),#1d3661 calc(100% - 212px),#3a5a8e calc(100% - 160px),#6c88b4 calc(100% - 114px),#a3b6d3 calc(100% - 74px),#d3dcea calc(100% - 40px),#ebeff6 calc(100% - 16px),var(--bg) 100%)}
.wall__head{text-align:center}
.wall__title{max-width:15em;margin:0 auto;font-weight:300;font-size:clamp(2rem,4vw,2.7rem);line-height:1.06}
.wall__title em{color:var(--lilac)}
.wall__cols{display:grid;gap:20px;margin-top:44px;padding-bottom:24px}
.wall__col{display:grid;gap:20px;align-content:start;will-change:transform}
.tcard{padding:24px 24px 20px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035);transition:border-color .4s,background .4s}
.tcard:hover{border-color:rgba(112,181,249,.4);background:rgba(255,255,255,.06)}
.tcard blockquote{font-size:1rem;line-height:1.55;color:rgba(255,255,255,.88)}
.tcard figcaption{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}
.tcard i{position:relative;flex:none;width:30px;height:30px;border-radius:50%;border:1px solid rgba(112,181,249,.5)}
.tcard i::after{content:"";position:absolute;left:10px;top:8px;width:8px;height:12px;border:solid var(--lilac);border-width:0 1.5px 1.5px 0;transform:rotate(40deg) scale(.8)}
.tcard b{display:block;font-size:.84rem;font-weight:500;line-height:1.25}
.tcard figcaption span{display:block;font-size:.74rem;color:rgba(255,255,255,.5)}
@media(min-width:860px){
  .wall__cols{grid-template-columns:repeat(3,1fr);height:640px;padding-bottom:0;overflow:hidden;
    -webkit-mask-image:linear-gradient(transparent,#000 9%,#000 62%,rgba(0,0,0,.55) 80%,transparent 100%);mask-image:linear-gradient(transparent,#000 9%,#000 62%,rgba(0,0,0,.55) 80%,transparent 100%)}
  .wall__col:nth-child(1){padding-top:70px}
  .wall__col:nth-child(2){padding-top:10px}
  .wall__col:nth-child(3){padding-top:110px}
}

/* ───────── reveal ───────── */
html.js:not(.static) .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
html.js:not(.static) .reveal.in{opacity:1;transform:none}

/* ───────── founder ───────── */
.founder{padding:36px 0 24px}
.letter{max-width:760px;margin:0 auto;padding:clamp(28px,5vw,56px);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.letter h2{font-weight:300;font-size:clamp(1.9rem,3.4vw,2.5rem)}
.letter p{margin-top:18px;color:var(--muted);max-width:38rem}
.letter__photo{width:84px;height:84px;border-radius:50%;object-fit:cover;margin-bottom:22px}
.letter .letter__sign{margin-top:26px;font-family:var(--hand);font-size:2.1rem;line-height:1;color:var(--accent-dark);transform:rotate(-3deg);transform-origin:0 50%}
.letter__sign span{display:block;margin-top:10px;font-family:var(--sans);font-size:.76rem;color:var(--muted);transform:rotate(3deg);transform-origin:0 50%}

/* ───────── pricing ───────── */
.pricing{padding:72px 0}
.pricing__title,.faq__title{font-weight:300;font-size:clamp(1.8rem,3vw,2.05rem)}
.pricing__head p{margin-top:14px;max-width:34rem;color:var(--muted);font-size:1rem}
.pricing__grid{display:grid;gap:20px;margin-top:38px}
.tier{position:relative;display:flex;flex-direction:column;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);transition:opacity .8s var(--ease),transform .5s var(--ease),box-shadow .4s,border-color .4s}
.tier:hover{box-shadow:0 22px 50px rgba(0,65,130,.13);border-color:#b9d2ee}
.tier--feat{border-color:#9cc3ec;box-shadow:0 0 0 4px rgba(10,102,194,.08),0 22px 50px rgba(0,65,130,.14)}
.tier__head{display:flex;justify-content:space-between;align-items:center}
.tier__name{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-dark)}
.tier__badge{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--accent);color:#fff}
.tier__price{margin-top:22px;font-family:var(--serif);font-size:3.1rem;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.tier__price small{font-family:var(--sans);font-size:.8rem;letter-spacing:0;color:var(--muted)}
.tier__line{margin-top:12px;padding-bottom:20px;color:var(--muted);font-size:.96rem;border-bottom:1px solid var(--line)}
.tier__list{display:grid;gap:11px;margin:20px 0 28px;font-size:.94rem}
.tier__list li{position:relative;padding-left:26px}
.tier__list li::before{content:"";position:absolute;left:4px;top:.32em;width:6px;height:11px;border:solid var(--accent);border-width:0 1.5px 1.5px 0;transform:rotate(40deg)}
.tier .button{margin-top:auto}
.pricing__fine{margin-top:20px;font-size:.84rem;color:var(--muted)}
@media(min-width:760px){.pricing__grid{grid-template-columns:1fr 1fr;max-width:860px}}

/* ───────── faq ───────── */
.faq{padding:72px 0 104px}
.faq__grid{display:grid;gap:36px}
.faq__side p{margin:14px 0 24px;color:var(--muted);font-size:1rem;max-width:22rem}
.faq__mail{display:block;margin-top:18px;font-size:.86rem;color:var(--muted)}
.faq__mail:hover{color:var(--accent-dark)}
.faq__list{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{display:grid;grid-template-columns:34px 1fr 28px;align-items:center;gap:8px;padding:18px 0;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq__n{font-size:.7rem;letter-spacing:.08em;color:var(--muted)}
.faq__q{font-family:var(--serif);font-size:1.3rem;line-height:1.25;letter-spacing:-.02em;transition:color .3s}
.faq summary:hover .faq__q{color:var(--accent-dark)}
.faq summary i{position:relative;width:26px;height:26px;border:1px solid var(--line);border-radius:50%;transition:transform .5s var(--ease),border-color .3s,background .3s}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:1px;background:var(--muted);transform:translate(-50%,-50%)}
.faq summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq details[open] summary i{transform:rotate(45deg);border-color:var(--accent);background:var(--accent-soft)}
.faq__a{padding:0 36px 22px 42px;color:var(--muted);max-width:38rem}
.faq details[open] .faq__a{animation:rise .5s var(--ease) both}
@media(min-width:960px){
  .faq__grid{grid-template-columns:340px minmax(0,1fr);gap:76px}
  .faq__side{position:sticky;top:120px;align-self:start}
}

/* ───────── footer ───────── */
.foot{position:relative;background:var(--night);color:#fff;overflow:hidden;isolation:isolate}
.foot::before{content:"";position:absolute;inset:0 0 auto;height:520px;z-index:-1;background:radial-gradient(60% 100% at 30% 0,rgba(10,102,194,.3),transparent 70%)}
.foot__inner{padding-top:96px}
.foot__cta{display:grid;gap:40px;padding-bottom:72px}
.foot__title{font-weight:300;font-size:clamp(2.1rem,4.4vw,2.85rem);line-height:1.04}
.foot__title em{color:var(--lilac)}
.foot__cta p{margin-top:16px;max-width:27rem;color:rgba(255,255,255,.72)}
.foot__alt{display:inline-block;margin-top:22px;font-size:.92rem;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:2px}
.foot__alt:hover{border-color:#fff}
.sample{display:grid;gap:14px;padding:26px;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);background:rgba(255,255,255,.04);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.sample label{display:grid;gap:6px;font-size:.74rem;letter-spacing:.06em;color:rgba(255,255,255,.66)}
.sample input{width:100%;min-height:46px;padding:0 14px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(7,11,22,.5);color:#fff;font:400 .98rem var(--sans);transition:border-color .25s,box-shadow .25s}
.sample input::placeholder{color:rgba(255,255,255,.32)}
.sample input:focus{outline:0;border-color:var(--lilac);box-shadow:0 0 0 3px rgba(112,181,249,.25)}
.sample .button{margin-top:6px}
.sample .ok{margin:0;font-size:.84rem;color:var(--lilac)}
.sample .ok:empty{display:none}
.foot__cols{display:grid;grid-template-columns:1fr 1fr;gap:36px 24px;padding:48px 0;border-top:1px solid rgba(255,255,255,.08)}
.foot__brand{grid-column:1/-1}
.foot__brand .logo{color:#fff}
.foot__brand p{margin-top:12px;max-width:21rem;font-size:.86rem;color:rgba(255,255,255,.7)}
.foot__brand .foot__dim{color:rgba(255,255,255,.42);font-size:.8rem}
.foot__cols h3{margin:0 0 12px;font-size:.66rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--lilac)}
.foot__cols div>a:not(.logo){display:block;padding:5px 0;font-size:.88rem;color:rgba(255,255,255,.82);transition:color .25s}
.foot__cols div>a:not(.logo):hover{color:var(--lilac)}
.foot__legal{display:grid;gap:8px;padding:26px 0 0;border-top:1px solid rgba(255,255,255,.08);font-size:.74rem;line-height:1.55;color:rgba(255,255,255,.46)}
.foot__legal p{max-width:52rem}
.foot__mark{margin-top:8px;font-family:var(--serif);font-weight:300;font-size:clamp(4.4rem,19.5vw,18rem);line-height:.92;letter-spacing:-.05em;text-align:center;white-space:nowrap;color:rgba(255,255,255,.045);margin-bottom:-.2em;user-select:none}
@media(min-width:860px){
  .foot__cta{grid-template-columns:1fr 440px;gap:72px;align-items:center}
  .foot__cols{grid-template-columns:1.6fr 1fr 1fr 1fr}
  .foot__brand{grid-column:auto}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
html.static *,html.static *::before,html.static *::after{animation:none!important;transition:none!important}
