/* A readable route through the buyout, accompanied by a schematic document stack. */
.v2-process { background:#20231e; color:#f7f7f2; padding:66px 36px 60px; scroll-margin-top:100px; }
.v2-process-inner { max-width:1288px; margin:auto; }
.v2-process-heading { display:grid; grid-template-columns:1.25fr 1fr; gap:60px; align-items:end; margin-bottom:50px; }
.v2-process-eyebrow { font-size:16px; line-height:1.5; font-weight:600; color:#d0d6c8; margin:0 0 22px; }
.v2-process h2 { font-size:clamp(42px,4.5vw,64px); font-weight:500; line-height:1.07; letter-spacing:-.055em; max-width:20ch; margin:0; text-wrap:balance; }
.v2-process-intro { font-size:18px; line-height:1.7; color:#d0d6c8; max-width:42ch; margin:0 0 3px; text-wrap:pretty; }
.v2-process-journey { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.2fr); align-items:start; column-gap:clamp(40px,6vw,88px); row-gap:0; }
.v2-process-preview { grid-column:1; grid-row:1; position:sticky; top:112px; min-width:0; padding:22px; background:#2c3228; border:1px solid #47513f; border-radius:7px; }
.v2-process-preview-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; color:#d0d6c8; font-size:16px; line-height:1.5; }
.v2-process-preview-count { flex:none; color:#b5bea9; font-variant-numeric:tabular-nums; }
.v2-process-preview-count b { font-weight:500; color:#adf28c; }
.v2-process-paper-stack { position:relative; height:300px; margin:0 5px; }
.v2-process-sheet { position:absolute; inset:0; border-radius:3px; }
.v2-process-sheet-back { background:#89977d; transform:rotate(-5deg); }
.v2-process-sheet-middle { background:#c3cbb9; transform:rotate(3deg); }
.v2-process-paper { position:relative; height:100%; overflow:hidden; border-radius:3px; background:#f7f7f2; color:#20231e; }
.v2-process-scene { position:absolute; inset:0; padding:24px; display:flex; flex-direction:column; justify-content:space-between; gap:14px; opacity:0; transform:translateY(9px); transition:opacity .35s ease,transform .45s cubic-bezier(.25,1,.5,1); pointer-events:none; }
.v2-process-scene.is-active { opacity:1; transform:translateY(0); }
.v2-process-scene h3 { font-size:22px; line-height:1.25; font-weight:500; letter-spacing:-.035em; margin:0; padding-bottom:12px; border-bottom:1px solid #cbd1c3; text-wrap:balance; }
.v2-process-artwork { display:flex; flex-direction:column; justify-content:center; align-items:center; flex:1; min-height:0; gap:14px; }
.v2-process-token { display:block; font-size:clamp(64px,7vw,94px); font-weight:500; line-height:1.05; letter-spacing:-.07em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.v2-process-token > span { font-size:.62em; }
.v2-process-token-time { font-size:clamp(58px,6vw,82px); }
.v2-process-scene > p { font-size:16px; line-height:1.6; color:#555d51; margin:0; text-wrap:pretty; }
.v2-process-paper-lines { display:block; width:75%; }
.v2-process-paper-lines i { display:block; height:2px; background:#c8cebf; margin-top:12px; }
.v2-process-paper-lines i:last-child { width:68%; }
.v2-process-stock-fields { margin:0; width:100%; }
.v2-process-stock-fields > div { display:flex; align-items:center; gap:16px; justify-content:space-between; min-height:32px; padding:4px 0; border-bottom:1px solid #d5dacc; font-size:16px; }
.v2-process-stock-fields dt { font-weight:500; }
.v2-process-stock-fields dd { width:33%; margin:0; }
.v2-process-stock-fields dd span { display:block; height:4px; border-radius:2px; background:#bac7ae; }
.v2-process-crate { width:88%; height:160px; max-width:240px; }
.v2-process-crate-arrow { stroke:#648349; }
.v2-process-preview-stages { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:20px; }
.v2-process-preview-stages span { width:32px; height:32px; display:grid; place-items:center; font-size:16px; font-variant-numeric:tabular-nums; color:#d0d6c8; border-bottom:2px solid #526047; transition:color .25s,border-color .25s; }
.v2-process-preview-stages .is-current { color:#adf28c; border-color:#adf28c; }
.v2-process-steps { grid-column:2; grid-row:1; list-style:none; margin:0; padding:0; min-width:0; }
.v2-process-step { position:relative; display:grid; grid-template-columns:56px minmax(0,1fr); align-content:start; column-gap:24px; row-gap:6px; padding:0 0 42px; min-width:0; min-height:200px; scroll-margin-top:115px; }
.v2-process-step::before,.v2-process-step::after { content:''; position:absolute; top:56px; bottom:0; left:27px; width:2px; background:#4d5945; }
.v2-process-step::after { background:#adf28c; transform:scaleY(0); transform-origin:top; transition:transform .4s ease; }
.v2-process-step.is-past::after { transform:scaleY(1); }
.v2-process-step:last-child { padding-bottom:0; min-height:480px; }
.v2-process-step:last-child::before,.v2-process-step:last-child::after { display:none; }
.v2-process-step-heading { display:contents; }
.v2-process-number { grid-column:1; grid-row:1; align-self:start; display:grid; place-items:center; width:56px; height:56px; border:1px solid #647059; border-radius:50%; background:#20231e; color:#f7f7f2; font-size:20px; line-height:1; font-variant-numeric:tabular-nums; transition:background .25s,border-color .25s,color .25s; }
.v2-process-step.is-active .v2-process-number { color:#20231e; background:#adf28c; border-color:#adf28c; }
.v2-process-step.is-past .v2-process-number { border-color:#adf28c; color:#adf28c; }
.v2-process-step h3 { grid-column:2; grid-row:1; align-self:center; font-size:31px; line-height:1.2; letter-spacing:-.04em; font-weight:500; margin:0; text-wrap:pretty; overflow-wrap:anywhere; hyphens:auto; }
.v2-process-step-copy { grid-column:2; grid-row:2; min-width:0; }
.v2-process-step p { font-size:18px; line-height:1.7; color:#d0d6c8; max-width:52ch; margin:0; text-wrap:pretty; }
.v2-process-step p.v2-process-timing { margin-top:14px; padding:11px 14px; border-left:2px solid #adf28c; background:#2c3527; color:#d5f6c4; font-size:16px; line-height:1.6; }
.v2-process-next { grid-column:2; grid-row:1; align-self:end; position:relative; background:#20231e; border-top:1px solid #526047; padding-top:26px; }
.v2-process-next h3 { font-size:28px; font-weight:500; letter-spacing:-.04em; line-height:1.2; margin:0; }
.v2-process-next p { font-size:16px; line-height:1.65; color:#d0d6c8; margin:12px 0 0; max-width:47ch; }
.v2-process-actions { display:flex; flex-direction:column; align-items:flex-start; gap:12px; min-width:0; margin-top:22px; }
.v2-process-guide { display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:16px; line-height:1.6; text-decoration:underline; text-underline-offset:4px; }
.v2-process a:focus-visible { outline:2px solid #adf28c; outline-offset:5px; }
@media(max-height:700px) and (min-width:1001px) {
  .v2-process-preview { top:100px; padding:20px; }
  .v2-process-paper-stack { height:300px; }
  .v2-process-preview-heading,.v2-process-preview-stages { margin-bottom:18px; }
  .v2-process-preview-stages { margin-top:18px; margin-bottom:0; }
  .v2-process-scene { padding:20px; gap:12px; }
}
@media(max-width:1000px), (max-height:599px) {
  .v2-process-heading { grid-template-columns:1.1fr 1fr; gap:36px; }
  .v2-process-preview { display:none; }
  .v2-process-journey { grid-template-columns:minmax(0,1fr); }
  .v2-process-steps { grid-column:1; grid-row:1; max-width:860px; width:100%; margin:auto; }
  .v2-process-step,.v2-process-step:last-child { min-height:0; }
  .v2-process-next { grid-column:1; grid-row:2; margin-top:30px; max-width:860px; width:100%; margin-left:auto; margin-right:auto; }
}
@media(max-width:760px) {
  .v2-process { padding:44px 24px 46px; scroll-margin-top:84px; }
  .v2-process-heading { grid-template-columns:1fr; gap:24px; margin-bottom:34px; }
  .v2-process h2 { font-size:clamp(36px,9.5vw,48px); line-height:1.1; }
  .v2-process-eyebrow { margin-bottom:18px; }
  .v2-process-intro { font-size:18px; line-height:1.65; }
  .v2-process-step { grid-template-columns:44px minmax(0,1fr); column-gap:16px; row-gap:14px; padding:0 0 42px; scroll-margin-top:94px; }
  .v2-process-number { grid-row:1; width:44px; height:44px; font-size:17px; }
  .v2-process-step h3 { font-size:27px; line-height:1.15; }
  .v2-process-step-copy { grid-column:1 / -1; }
  .v2-process-step p { font-size:18px; line-height:1.7; }
  .v2-process-step::before,.v2-process-step::after { top:auto; bottom:0; height:26px; left:21px; }
  .v2-process-step p.v2-process-timing { margin-top:15px; }
  .v2-process-next { display:block; margin-top:30px; padding-top:27px; }
  .v2-process-next h3 { font-size:26px; }
  .v2-process-actions { align-items:stretch; max-width:none; margin-top:24px; gap:14px; }
  .v2-process-guide { align-self:flex-start; }
}
@media(prefers-reduced-motion:reduce) {
  .v2-process-scene,.v2-process-number,.v2-process-step::after,.v2-process-preview-stages span { transition:none; }
  .v2-process-scene { transform:none; }
}
