/* ==========================================================================
   Direction A · Field
   One continuous field under the whole site. Chapters are felt, not labelled:
   the field changes shape at each break, evidence turns light, and between the
   big chapters a strip plays the chapter's verb (capture · evaluate · train).
   Layout stays calm and wide so the field can carry the brand.
   ========================================================================== */

/* page-to-page: the bar and the field stay, the page crossfades */
@view-transition{navigation:auto}
header.nav{view-transition-name:nav}
#field{view-transition-name:field}
::view-transition-group(field),::view-transition-group(nav){animation-duration:0s}

/* light sections let the field through: the field draws the evidence tone inside them */
section.tone-light,.tone-light.scene{background:transparent}

/* ---------- glass cards, the deck's .card ---------- */
.pillar,.bench__grid article,.layers article,.dcard,.app,.explore__grid>*,.ic,.mod,.pg-retail .steps article,.tcard,.step .body{
  background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 24px 26px;
  -webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15)}
.pillar{border-top:1px solid var(--line)}
.step .body{margin-top:-28px;margin-inline:14px;position:relative}
.step .media{margin-bottom:0}
.ic,.mod{padding:20px}

/* ---------- hero: the deck's cover block, under every page's promise ---------- */
.m-runs{display:block;width:min(610px,100%);height:58px;margin-top:30px}
.pg-home .m-runs{height:64px}
.hero .m-runs,.intro .m-runs{margin-top:44px}

/* ---------- break strips: a chapter's verb, played once between chapters ---------- */
.m-break{display:block;position:relative;z-index:1;width:100%;max-width:calc(var(--maxw) + 2*var(--m));margin:0 auto;padding:0 var(--m);height:clamp(180px,24vw,300px)}
.m-break canvas{width:100%;height:100%;display:block}

/* ---------- close: the deck's close slide ---------- */
.close{text-align:center;padding-block:clamp(72px,11vh,136px)}
.close h2{margin-inline:auto;max-width:16em;font-size:clamp(30px,3.4vw,58px);line-height:1.06}
.close .row{justify-content:center;margin-top:30px}
.close .m-runs{margin:46px auto 0;width:min(1000px,100%);height:96px}
.closing{text-align:left}

/* ---------- footer: two-step close ---------- */
.site-footer{background:transparent;border-top-color:var(--line)}
.sf__tag{font-size:clamp(28px,3vw,48px)}

/* ---------- benchmarks: the question as a divider title ---------- */
.ask{padding-block:clamp(72px,11vh,136px)}
.ask .wrap p{font-size:clamp(28px,3.2vw,54px);line-height:1.08}

/* ---------- light evidence sections: cards turn to paper ---------- */
.tone-light .diagram__frame{background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

@media (max-width:860px){
  .m-break{height:150px}
  .step .body{margin:-20px 10px 0}
}

/* home: the capture strip leads into the figures */
.info-inner .m-break{padding:0;margin-top:clamp(56px,8vw,120px);height:clamp(150px,18vw,240px)}
.info-inner .m-break+.stats{margin-top:12px}

.m-runs--open{margin:0 0 clamp(48px,6vw,88px)!important}

/* Benchmarks: the promise left, the deck film right, shown whole (no crop) */
.pg-benchmarks .hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,min(40%,510px));column-gap:clamp(32px,5vw,88px);align-items:center;align-content:center}
.pg-benchmarks .hero{grid-template-rows:1fr auto auto auto 1fr}
.pg-benchmarks .hero>:not(.m-film){grid-column:1}
.pg-benchmarks .hero>.u-kicker{grid-row:2}.pg-benchmarks .hero>h1{grid-row:3}.pg-benchmarks .hero>.lede{grid-row:4}
.pg-benchmarks .hero h1{font-size:var(--type-1)}
.pg-benchmarks .hero .m-film{grid-column:2;grid-row:1/-1;margin:0;aspect-ratio:900/884;border-radius:18px;overflow:hidden;background:#0E0C11;
  border:1px solid var(--line-2);box-shadow:0 40px 80px -40px rgba(0,0,0,.55)}
.pg-benchmarks .hero .m-film video{display:block;width:100%;height:100%;object-fit:contain}
@media (max-width:860px){.pg-benchmarks .hero{grid-template-columns:1fr}.pg-benchmarks .hero .m-film{grid-column:1;grid-row:auto;margin-top:36px}.pg-benchmarks .hero{grid-template-rows:none}.pg-benchmarks .hero>*{grid-row:auto!important}}


/* A2 · the menu button is always on screen and always visible (feedback: "the Menu icon is not visible")
   a ringed button that reads on light and dark grounds, and a nav that fits down to 320px */
@media (max-width:860px){
  .nav{gap:10px}
  .nav__toggle{flex:none;margin-right:0;width:40px;height:40px;padding:0 11px;border-radius:999px;border:1px solid var(--line-3,rgba(236,230,234,.24));
    background:color-mix(in srgb,var(--bg) 70%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
  .nav__toggle span{height:1.6px}
}
@media (max-width:380px){
  .nav>a:first-child img{height:14px!important}
  .nav{gap:8px}
  .nav__cta{padding:8px 10px 7px;font-size:9.5px;letter-spacing:.1em}
}
