/* verumway.com document pages (the Week, the Quarter, private offers, 404).
   Same world as the home page: the field breathes behind the page and the reading surface sits on top.
   Loaded after verum.css, which supplies the shell (HUD, pills, links, grain, frame, footer). Built only from tokens.css. */

.page{
  /* spacing aliases used by inline styles in the page copy */
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;
  --measure:62ch;--text:var(--t1);
}
.veil--page{background:
  linear-gradient(180deg,rgb(0 0 0/.5) 0,rgb(0 0 0/.3) 24%,rgb(0 0 0/.55) 64%,rgb(0 0 0/.9) 100%),
  linear-gradient(90deg,rgb(0 0 0/.72) 0,rgb(0 0 0/.34) 55%,rgb(0 0 0/.2) 100%)}
.page main{position:relative;z-index:5}
.wrap{width:min(1240px,100%);margin:0 auto;padding:0 var(--gutter)}

/* type */
.kicker{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin-bottom:22px;font:500 var(--fs-chrome)/1.6 var(--mono);letter-spacing:var(--track-chrome);text-transform:uppercase;color:var(--t3)}
.kicker::before{content:"";width:28px;height:1px;background:linear-gradient(90deg,transparent,var(--light));box-shadow:0 0 8px rgb(255 255 255/.4)}
.kicker b{font-weight:500;color:var(--t1)}
.claim{font:300 clamp(3.1rem,7.2vw,8rem)/.92 var(--sans);letter-spacing:var(--track-display);text-wrap:balance;margin:0 0 30px}
.claim span{display:block;width:fit-content;--lit:var(--t1);color:var(--lit)}
.claim span+span,.claim__after{--lit:var(--t3)}
@media (prefers-reduced-motion:no-preference){
  .claim span{color:transparent;background-image:linear-gradient(100deg,var(--lit) 0 40%,#fff 44.5%,#c9ecff 46%,#ddd2ff 47.5%,rgb(255 255 255/.16) 53% 100%);background-size:260% 100%;background-position:0 0;-webkit-background-clip:text;background-clip:text;animation:lit 2.6s var(--ease) .45s both}
  .claim span+span{animation-delay:.8s}
}
.page .h2{font-size:clamp(2.1rem,3.7vw,3.7rem);line-height:1.03;letter-spacing:-.036em;max-width:17ch}
.h3{font:400 var(--fs-h3)/1.2 var(--sans);letter-spacing:-.02em}
.page .body{max-width:62ch;color:var(--t2)}
.page .body p+p,.page .body p+div,.page .body div+p{margin-top:1em}
.page strong{font-weight:500;color:var(--t1)}
.dim{color:var(--t3)}
.page .lede{font-size:var(--fs-lead);line-height:1.5;color:var(--t2);max-width:46ch}
.prose blockquote{margin:30px 0;padding:4px 0 4px 22px;border-left:1px solid var(--light);font:300 clamp(1.4rem,2.2vw,1.9rem)/1.3 var(--sans);letter-spacing:-.02em;color:var(--t1)}

/* actions */
.cta-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 24px;border-radius:999px;border:1px solid var(--line-2);background:rgb(255 255 255/.03);color:var(--t1);font:500 15px/1 var(--sans);letter-spacing:-.005em;white-space:nowrap;transition:background .25s,border-color .25s,box-shadow .35s,transform .35s var(--ease)}
.btn:hover{background:rgb(255 255 255/.08);border-color:rgb(255 255 255/.4)}
.btn--consequence,.btn--solid{background:var(--light);border-color:var(--light);color:#000}
.btn--consequence:hover,.btn--solid:hover{background:#fff;color:#000;box-shadow:0 0 0 6px rgb(255 255 255/.06),0 12px 50px rgb(255 255 255/.16);transform:translateY(-1px)}

/* hero */
.page-hero{position:relative;min-height:92vh;min-height:92svh;display:flex;align-items:flex-end;padding:calc(var(--hud) + 80px) 0 clamp(80px,13vh,130px)}
.page-hero .wrap>p:not(.kicker):not(.lede){color:var(--t2);margin-top:10px}
.hero__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:start;margin-top:8px}
.hero__grid .shape{margin-top:34px;grid-template-columns:repeat(3,minmax(0,1fr))}

/* sections */
.band{position:relative;padding:clamp(90px,13vh,150px) 0}
.band::before{content:"";position:absolute;left:var(--gutter);right:var(--gutter);top:0;height:1px;background:linear-gradient(90deg,transparent,var(--line) 18%,var(--line) 82%,transparent)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,88px);align-items:start;margin-bottom:clamp(44px,7vh,76px)}
.sec-head>.h2{margin:0}

/* the shape of the engagement: a track that lights as you reach it */
.shape{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));position:relative}
.shape::before,.shape::after{content:"";position:absolute;left:4px;top:4px;height:1px}
.shape::before{right:4px;background:var(--line-2)}
.shape::after{width:0;background:linear-gradient(90deg,var(--light),rgb(255 255 255/.35));box-shadow:0 0 10px rgb(255 255 255/.5);transition:width 2.4s var(--ease) .2s}
.is-in .shape::after{width:calc(100% - 8px)}
.shape li{position:relative;padding:26px 22px 0 0;display:flex;flex-direction:column;gap:8px}
.shape li::before{content:"";position:absolute;left:0;top:0;width:9px;height:9px;border-radius:50%;background:#000;border:1px solid var(--line-2);transition:background .4s,border-color .4s,box-shadow .4s}
.is-in .shape li::before{background:var(--light);border-color:var(--light);box-shadow:0 0 12px rgb(255 255 255/.7)}
.is-in .shape li:nth-child(2)::before{transition-delay:.5s}.is-in .shape li:nth-child(3)::before{transition-delay:1s}.is-in .shape li:nth-child(4)::before{transition-delay:1.5s}.is-in .shape li:nth-child(5)::before{transition-delay:2s}
.shape b{font:500 var(--fs-chrome)/1.3 var(--mono);letter-spacing:var(--track-chrome);text-transform:uppercase;color:var(--t1)}
.shape span{font-size:14.5px;line-height:1.5;color:var(--t2)}

/* glass surfaces carry light from the pointer */
.ledger,.fit>div,.tier,.page .form,.stack details{--mx:-999px;--my:-999px}

/* everything you get: an itemised stack */
.stack{border-bottom:1px solid var(--line)}
.stack details{border-top:1px solid var(--line);transition:background .35s}
.stack details:hover,.stack details[open]{background:radial-gradient(600px circle at var(--mx) var(--my),rgb(255 255 255/.045),transparent 60%),linear-gradient(90deg,rgb(255 255 255/.025),transparent 70%)}
.stack summary{display:grid;grid-template-columns:minmax(0,1fr) auto 26px;gap:20px;align-items:center;padding:22px 6px 22px 0;cursor:pointer;list-style:none}
.stack summary::-webkit-details-marker,.faq summary::-webkit-details-marker{display:none}
.stack .ctx{display:block;margin-bottom:6px;font:500 10.5px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3)}
.stack h3{font:400 clamp(1.25rem,1.8vw,1.6rem)/1.2 var(--sans);letter-spacing:-.02em}
.stack .val{font:400 15px/1 var(--mono);color:var(--t1)}
.stack .tog{font:300 24px/1 var(--sans);color:var(--t3);text-align:center;transition:transform .35s var(--ease),color .3s}
.stack details[open] .tog{transform:rotate(45deg);color:var(--light)}
.stack .inner{padding:0 0 30px;max-width:66ch;color:var(--t2)}
.stack .inner ul,.page .body ul{list-style:none;margin:14px 0;padding:0}
.stack .inner li,.page .body li{position:relative;padding:5px 0 5px 22px}
.stack .inner li::before,.page .body li::before{content:"";position:absolute;left:2px;top:15px;width:8px;height:1px;background:var(--t3)}
.means{margin-top:16px;padding-left:16px;border-left:1px solid var(--light);color:var(--t1)}

/* the receipt */
.ledger{position:relative;margin-top:clamp(44px,7vh,72px);padding:clamp(24px,3vw,44px);border:1px solid var(--glass-line);border-radius:var(--radius);background:radial-gradient(560px circle at var(--mx) var(--my),rgb(255 255 255/.05),transparent 60%),linear-gradient(180deg,rgb(255 255 255/.04),rgb(255 255 255/.01));-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}
.ledger::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--spectrum);opacity:.55}
.ledger>.h3{margin:0;padding:0 0 14px!important}
.ledger__row{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:13px 0;border-top:1px dashed var(--line-2);font:400 14px/1.5 var(--mono);color:var(--t2)}
.ledger__row small{display:block;margin-top:3px;font:400 12.5px/1.45 var(--sans);color:var(--t4)}
.ledger__row .r{color:var(--t1);white-space:nowrap}
.ledger__total{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px;margin-top:16px;padding-top:26px;border-top:1px solid var(--line-2)}
.ledger__total p{margin-top:10px;max-width:54ch;color:var(--t2);font-size:15px}
.big{font:300 clamp(3rem,6vw,5.4rem)/1 var(--sans);letter-spacing:-.045em;font-variant-numeric:tabular-nums}

/* fit, tiers, steps, questions */
.fit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,26px)}
.fit>div{padding:clamp(24px,3vw,40px);border:1px solid var(--glass-line);border-radius:var(--radius);background:radial-gradient(520px circle at var(--mx) var(--my),rgb(255 255 255/.045),transparent 60%),rgb(255 255 255/.022)}
.fit h3{font:400 var(--fs-h3)/1.2 var(--sans);letter-spacing:-.02em;margin-bottom:16px}
.fit ul{list-style:none;margin:0;padding:0}
.fit li{position:relative;padding:11px 0 11px 26px;border-top:1px solid var(--line);color:var(--t2)}
.fit li::before{content:"";position:absolute;left:1px;top:19px;width:7px;height:7px;border-radius:50%}
.fit .yes li::before{background:var(--light);box-shadow:0 0 10px rgb(255 255 255/.6)}
.fit .no li::before{border:1px solid var(--t3)}
.fit li h3{font-size:17px;margin:0 0 4px;color:var(--t1)}
.fit .kicker{margin-bottom:14px}
.access{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:clamp(12px,1.6vw,20px)}
.tier{padding:26px 24px;border:1px solid var(--glass-line);border-radius:var(--radius);background:radial-gradient(420px circle at var(--mx) var(--my),rgb(255 255 255/.05),transparent 60%),rgb(255 255 255/.022)}
.tier h3{font:400 18px/1.3 var(--sans);letter-spacing:-.01em;margin-bottom:8px}
.tier p{color:var(--t2);font-size:14.5px}
.tier .dim{margin:0 4px;color:var(--t3)}
.steps{list-style:none;margin:0;padding:0}
.steps li{display:grid;grid-template-columns:minmax(80px,140px) minmax(0,1fr);gap:24px;padding:30px 0;border-top:1px solid var(--line)}
.steps .n{font:300 clamp(2.4rem,4vw,3.6rem)/1 var(--sans);letter-spacing:-.04em;color:var(--t3)}
.steps h3{font:400 var(--fs-h3)/1.2 var(--sans);letter-spacing:-.02em;margin-bottom:10px}
.steps p{color:var(--t2);max-width:64ch}
.notice{padding:22px 24px;border-left:1px solid var(--light);background:linear-gradient(90deg,rgb(255 255 255/.05),transparent)}
.notice p{color:var(--t2)}.notice p+p{margin-top:10px}
.page .forms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.page .form{padding:26px 24px;border:1px solid var(--glass-line);border-radius:var(--radius);background:radial-gradient(420px circle at var(--mx) var(--my),rgb(255 255 255/.05),transparent 60%),rgb(255 255 255/.022)}
.page .form h3{font:400 19px/1.3 var(--sans);letter-spacing:-.01em;margin-bottom:10px}
.page .form p{color:var(--t2);font-size:14.5px}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{position:relative;padding:22px 44px 22px 0;cursor:pointer;list-style:none;font:400 clamp(1.05rem,1.4vw,1.25rem)/1.4 var(--sans);color:var(--t1)}
.faq summary::after{content:"+";position:absolute;right:6px;top:18px;font:300 26px/1 var(--sans);color:var(--t3);transition:transform .35s var(--ease),color .3s}
.faq details[open] summary::after{transform:rotate(45deg);color:var(--light)}
.faq p{padding:0 0 24px;max-width:64ch;color:var(--t2)}

/* closing: the last light */
.closing{position:relative;padding:clamp(130px,20vh,220px) 0;text-align:center;overflow:hidden}
.closing::before{content:"";position:absolute;left:50%;top:50%;width:min(1000px,96vw);height:560px;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgb(255 255 255/.07),transparent);pointer-events:none}
.closing .wrap{display:flex;flex-direction:column;align-items:center;gap:22px;padding-left:var(--gutter)}
.closing .h2{max-width:20ch;margin:0 auto}
.closing p{max-width:58ch;color:var(--t2)}
.closing .cta-row{justify-content:center}

/* reveal */
.page-hero .wrap>*,.band .wrap>*,.closing .wrap>*{opacity:0;transform:translateY(16px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.is-in .wrap>*{opacity:1;transform:none}
.is-in .wrap>*:nth-child(2){transition-delay:.1s}.is-in .wrap>*:nth-child(3){transition-delay:.2s}.is-in .wrap>*:nth-child(4){transition-delay:.3s}.is-in .wrap>*:nth-child(n+5){transition-delay:.4s}
html:not(.js) .page-hero .wrap>*,html:not(.js) .band .wrap>*,html:not(.js) .closing .wrap>*{opacity:1;transform:none}
html:not(.js) .shape::after{width:calc(100% - 8px)}
@media (prefers-reduced-motion:reduce){.page-hero .wrap>*,.band .wrap>*,.closing .wrap>*{opacity:1;transform:none;transition:none}.shape::after{transition:none}}

@media (max-width:900px){
  .sec-head,.hero__grid,.fit,.page .forms{grid-template-columns:1fr}
  .steps li{grid-template-columns:1fr;gap:10px}
  .page-hero{min-height:auto;padding-top:calc(var(--hud) + 56px)}
  .ledger__row{flex-direction:column;gap:4px}
}
@media (max-width:560px){
  .stack summary{grid-template-columns:minmax(0,1fr) 22px;row-gap:8px}
  .stack .val{grid-column:1;grid-row:2}
  .stack .tog{grid-column:2;grid-row:1}
  .btn{height:46px;padding:0 20px}
}
