/* Video page: hero and two video rows. Loads after styles.css and uses its tokens. */
.vhero{padding-block:clamp(28px,5vw,64px) clamp(36px,6vw,72px);background:var(--surface)}
.vgrid{display:grid;gap:28px;align-items:center}
.vtext h1{font-family:var(--f-display);font-weight:800;letter-spacing:-.03em;line-height:1.05;font-size:clamp(1.75rem,4.2vw,2.5rem);margin-top:.4em}
.vtext .vlead{font-size:clamp(1.0625rem,2vw,1.1875rem);line-height:1.55;margin-top:1em;max-width:34ch}
.vprice{margin-top:1.1em;font-family:var(--f-display);font-weight:800;font-size:clamp(1.375rem,3vw,1.75rem);letter-spacing:-.01em}
.vprice .vwho{font-family:var(--f-body);font-weight:400;font-size:1rem;color:var(--neutral-text);display:block;letter-spacing:0;margin-top:.15em}
.vtext .hero-cta{margin-top:1.2em}
.vnote{margin-top:1.4em;padding-top:12px;border-top:1px solid var(--rule);max-width:44ch;font-size:.9375rem;line-height:1.5;color:var(--neutral-text)}
.vnote b{font-family:var(--f-mono);font-weight:500;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:2px}
.vrow{border-top:2px solid var(--ink);padding-block:clamp(36px,6vw,72px)}
.vrow .vgrid{align-items:center}
.vrow .sec-h{max-width:16ch}
.vrow .lead{max-width:34ch}
.vrow .terms-line{max-width:44ch;font-size:.9375rem;line-height:1.5;margin-top:1.2em}
.vfig{margin:0;min-width:0}
.vid{position:relative;aspect-ratio:16/9;background:var(--ink);border:1px solid var(--rule);overflow:hidden}
.vid video{display:block;width:100%;height:100%;object-fit:cover}
.vctl{position:absolute;right:12px;top:12px;min-height:44px;padding:.4em 1.1em;border-radius:999px;border:0;background:rgba(255,255,255,.94);color:var(--ink);font:500 .9375rem/1 var(--f-body);cursor:pointer}
.vctl:hover{background:#fff}
.vctl:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
.vdesc{margin-top:10px;font-size:.9375rem;line-height:1.55;color:var(--neutral-text)}
.vdesc summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-family:var(--f-mono);font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:var(--bh)}
.vdesc p{max-width:62ch;margin-top:.6em}
@media (min-width:900px){
  .vgrid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,4vw,64px)}
  .vhero .vgrid{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
}
@media (max-width:899px){
  .vhero .hero-cta .btn{width:100%}
}
.vcta{margin-top:1.4em}
.vcta-wrap{padding-block:clamp(24px,4vw,40px);text-align:center}
.apply-merged .entry-head{position:static}
.apply-merged .form-h{font:700 1.5rem/1.2 var(--f-display);margin:0 0 .4em}
.vbuilt{margin:.9em 0 0;font-size:.9375rem;color:var(--neutral-text);max-width:36ch}
.vmicro{margin:.9em 0 0;font-size:.9375rem;line-height:1.45;max-width:36ch}
html{scroll-padding-top:76px}
@media (min-width:900px) and (min-height:640px) and (prefers-reduced-motion:no-preference){
  html{scroll-snap-type:y proximity}
  .vhero,.vrow{min-height:calc(100vh - 76px);display:flex;align-items:center;scroll-snap-align:start}
  .vhero>.wrap,.vrow>.wrap{width:100%}
}
.vhero .vgrid{grid-template-columns:1fr}
.vhero .vtext{max-width:46rem}
.vhero h1{font-size:clamp(1.9rem,4.6vw,3rem)}
/* Hero banner: ink band, headline left, offer card right */
.vhero{background:var(--ink);color:#fff;padding-block:clamp(40px,7vw,96px)}
.vhero .vgrid{grid-template-columns:1fr;align-items:center;gap:clamp(28px,5vw,56px)}
.vhero .vtext{max-width:none}
.vhero .ref,.vhero .ref .what{color:#C9D3DA}
.vhero .ref .sep{color:#8FA0AD}
.vhero h1{color:#fff;font-size:clamp(2rem,4.4vw,3.25rem)}
.vhero .vwho2{margin-top:1.1em;font-size:1.125rem;color:#DDE4E9;max-width:36ch}
.vhero .vbuilt{color:#C9D3DA;margin-top:.7em}
.voffer{background:#fff;color:var(--ink);border-radius:18px;padding:clamp(22px,3vw,32px);box-shadow:0 18px 50px rgba(0,0,0,.35);border-top:6px solid var(--bh)}
.voffer-k{font-family:var(--f-mono);font-weight:500;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;color:var(--bh);margin:0}
.voffer-p{font-family:var(--f-display);font-weight:800;font-size:clamp(2.5rem,5vw,3.5rem);line-height:1;letter-spacing:-.03em;margin:.25em 0 0}
.voffer-u{display:block;font-family:var(--f-body);font-weight:500;font-size:1.0625rem;letter-spacing:0;margin-top:.35em;color:var(--neutral-text)}
.voffer-l{list-style:none;margin:1.1em 0 1.3em;padding:0;display:grid;gap:.55em}
.voffer-l li{position:relative;padding-left:1.6em;font-size:1rem;line-height:1.4}
.voffer-l li::before{content:"";position:absolute;left:.15em;top:.35em;width:.45em;height:.8em;border:solid var(--bh);border-width:0 2px 2px 0;transform:rotate(40deg)}
.voffer .btn{display:flex;justify-content:center;width:100%}
.voffer .vnote{margin-top:1.2em}
@media (min-width:900px){.vhero .vgrid{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.vwarm{background:var(--surface);padding-block:clamp(40px,6vw,80px) clamp(28px,4vw,48px)}
.vwarm .sec-h{max-width:20ch}
.vwarm-l{font-size:clamp(1.125rem,2.2vw,1.375rem);line-height:1.55;max-width:40ch;margin-top:1em}
.vwarm-grid{display:grid;gap:12px}
.vwarm-l:first-child{margin-top:0}
@media (min-width:900px){.vwarm-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,4vw,64px);align-items:start}.vwarm-l{max-width:44ch}}
.vwarm .sec-h{max-width:18ch;font-size:clamp(2rem,4.6vw,3.25rem);line-height:1.04}
.vwarm-l{max-width:40ch}
.vwarm-cols{display:grid;gap:clamp(20px,3vw,40px);margin-top:clamp(28px,4vw,48px)}
.vwarm-c{border-top:2px solid var(--ink);padding-top:14px}
.vwarm-c h3{font-family:var(--f-display);font-weight:800;font-size:1.375rem;letter-spacing:-.02em;margin:0 0 .4em}
.vwarm-c p{margin:0;font-size:1.0625rem;line-height:1.55;max-width:34ch}
.vwarm-go{margin-top:clamp(24px,4vw,40px);font-size:1.0625rem;color:var(--neutral-text);max-width:60ch}
@media (min-width:900px){.vwarm-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vwarm .sec-h{max-width:none}
.vwarm .sec-h span{display:block}
.vwarm .sec-h{font-size:clamp(1.6rem,3.4vw,2.5rem);line-height:1.1}
@media (min-width:900px){.vwarm-cols{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(24px,3vw,40px)}.vwarm-c p{max-width:46ch}}
@media (min-width:1000px){.vwarm-cols{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(20px,2.4vw,36px)}.vwarm-c h3{font-size:1.25rem}.vwarm-c p{font-size:1rem;max-width:none}}
.soon{display:inline-block;margin-left:.4em;padding:.1em .55em;border:1px solid var(--bh);border-radius:999px;font:500 .6875rem/1.4 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bh);vertical-align:.2em}
