/* Compresores Corvin - sitio v2 (2026-10-02).
 * Fuente: Design System "Compresores Corvin" (Claude Design) - tokens + componentes cv-*.
 * Lo usan las plantillas template-corvin-*.php. Todo va scopeado a .cvs para no pelear con Hestia. */
:root{
  --brand:#068846;--brand-deep:#04652f;--brand-tint:#e8f5ec;--brand-text:#04652f;--on-brand:#ffffff;
  --ink:#1e201d;--ink-muted:#545a54;--surface:#ffffff;--surface-alt:#f3f5f2;--line:#d9ded8;--line-strong:#8a918a;
  --signal:#f2b705;--on-signal:#1e201d;--danger:#b42318;--focus:#04652f;
  --shadow-card:0 1px 2px rgba(16,24,16,.06),0 8px 24px rgba(16,24,16,.06);
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;
  --radius-sm:2px;--radius-md:4px;--radius-lg:6px;--rule:3px;--container:1180px;
  --font-display:"Barlow Condensed","Arial Narrow",sans-serif;--font-sans:Barlow,"Segoe UI",system-ui,sans-serif;
}
body.cvs-body{margin:0;padding:0;background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:27px;-webkit-font-smoothing:antialiased}
.cvs *{box-sizing:border-box}
.cvs h1,.cvs h2,.cvs h3,.cvs p,.cvs ul,.cvs ol{margin:0}
.cvs img{max-width:100%;height:auto}
.cvs a{color:var(--brand-text)}
.cvs a:hover{color:var(--brand)}
.cvs a:focus-visible,.cvs summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.cvs .wrap{max-width:var(--container);margin:0 auto;padding:0 32px}
.cvs .sec{padding:96px 0}
.cvs .sec--alt{background:var(--surface-alt)}
.cvs .sec--hero{padding:72px 0 88px;background:var(--surface-alt);border-bottom:1px solid var(--line)}
.cvs .stack{display:flex;flex-direction:column;gap:24px}
.cvs .stack-48{display:flex;flex-direction:column;gap:48px}
/* cv-row y no "row": Hestia trae Bootstrap, cuyo .row mete margen negativo y un clearfix ::before que en flex corre el primer botón */
.cvs .cv-row,.cvs .row{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.cvs .row::before,.cvs .row::after{display:none}
.cvs .cv-row > .cv-btn,.cvs .row > .cv-btn{margin:0}
.cvs .g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:center}
.cvs .g2--top{align-items:start}
.cvs .g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.cvs .g4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.cvs .g-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:48px;align-items:center}
.cvs .h-hero{font-family:var(--font-display);font-weight:800;font-size:64px;line-height:60px;letter-spacing:-.5px}
.cvs .h-page{font-family:var(--font-display);font-weight:800;font-size:56px;line-height:54px}
.cvs .lead{font-size:20px;line-height:30px;color:var(--ink-muted)}
.cvs .muted{color:var(--ink-muted)}
.cvs .crumbs{font-size:14px;line-height:20px;color:var(--ink-muted)}
.cvs .photo{display:block;width:100%;object-fit:cover;border-radius:var(--radius-lg)}

/* Encabezado */
.cvs .hdr{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid var(--line)}
.cvs .hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px}
.cvs .hdr__logo{display:block;flex:none;width:140px;height:52px;overflow:hidden}
.cvs .hdr__logo img{display:block;width:140px;height:140px;max-width:none;margin-top:-44px}
.cvs .hdr__nav{display:flex;gap:20px;font-size:15px;font-weight:600;white-space:nowrap}
.cvs .hdr__nav a{color:var(--ink);text-decoration:none}
.cvs .hdr__nav a:hover,.cvs .hdr__nav a[aria-current="page"]{color:var(--brand-text);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.cvs .hdr__nav a.is-club{color:var(--brand-text)}
.cvs .hdr__menu{display:none}
.cvs .hdr__menu summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line-strong);border-radius:var(--radius-md)}
.cvs .hdr__menu summary::-webkit-details-marker{display:none}
.cvs .hdr__menu nav{position:absolute;left:0;right:0;top:76px;background:var(--surface);border-bottom:1px solid var(--line);padding:8px 16px 16px;display:flex;flex-direction:column}
.cvs .hdr__menu nav a{padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600}

/* Botón */
.cvs .cv-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);border:2px solid transparent;font-family:var(--font-sans);font-size:15px;line-height:20px;font-weight:600;letter-spacing:.4px;text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.cvs .cv-btn svg{width:20px;height:20px;flex:none}
.cvs .cv-btn--primary{background:var(--brand);color:var(--on-brand)}
.cvs .cv-btn--primary:hover{background:var(--brand-deep);color:var(--on-brand)}
.cvs .cv-btn--secondary{background:transparent;color:var(--ink);border-color:var(--line-strong)}
.cvs .cv-btn--secondary:hover{border-color:var(--ink);color:var(--ink)}
.cvs .cv-btn--on-dark{background:var(--surface);color:var(--brand-deep)}
.cvs .cv-btn--on-dark:hover{background:var(--brand-tint);color:var(--brand-deep)}
.cvs .cv-btn--ghost-dark{background:transparent;color:var(--on-brand);border-color:rgba(255,255,255,.6)}
.cvs .cv-btn--ghost-dark:hover{border-color:#fff;color:#fff}
.cvs .cv-btn--block{display:flex;width:100%}

/* Título de sección */
.cvs .cv-title{max-width:720px}
.cvs .cv-title__eyebrow{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-family:var(--font-sans);font-size:13px;line-height:16px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:var(--brand-text)}
.cvs .cv-title__eyebrow::before{content:"*";font-family:var(--font-display);font-size:28px;line-height:12px;font-weight:800;padding-top:10px}
.cvs .cv-title__h{font-family:var(--font-display);font-size:34px;line-height:38px;font-weight:700;color:var(--ink)}
.cvs .cv-title__h::after{content:"";display:block;width:64px;height:var(--rule);margin-top:var(--space-4);background:var(--brand)}
.cvs .cv-title__lead{margin-top:var(--space-4);font-size:20px;line-height:30px;color:var(--ink-muted)}

/* Tarjeta de servicio */
.cvs .cv-service{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);color:var(--ink);text-decoration:none;transition:box-shadow .15s,border-color .15s}
.cvs a.cv-service:hover{box-shadow:var(--shadow-card);border-color:var(--line-strong);color:var(--ink)}
.cvs .cv-service--club{background:var(--brand-tint);border-color:var(--brand)}
.cvs .cv-service__icon{width:44px;height:44px;display:grid;place-items:center;background:var(--brand-tint);color:var(--brand-text);border-radius:var(--radius-md)}
.cvs .cv-service--club .cv-service__icon{background:var(--brand);color:var(--on-brand)}
.cvs .cv-service__icon svg{width:24px;height:24px}
.cvs .cv-service__h{font-family:var(--font-display);font-size:24px;line-height:28px;font-weight:700}
.cvs .cv-service__p{font-size:17px;line-height:27px;color:var(--ink-muted)}
.cvs .cv-service__more{margin-top:auto;padding-top:var(--space-2);font-size:15px;font-weight:600;color:var(--brand-text)}

/* Plan */
.cvs .cv-plan{position:relative;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8) var(--space-6) var(--space-6);background:var(--surface);border:1px solid var(--line);border-top:var(--rule) solid var(--line-strong);border-radius:var(--radius-lg);color:var(--ink)}
.cvs .cv-plan--featured{background:var(--brand-tint);border-color:var(--brand);border-top-color:var(--brand);box-shadow:var(--shadow-card)}
.cvs .cv-plan__badge{position:absolute;top:calc(-1 * var(--space-3));left:var(--space-6)}
.cvs .cv-plan__name{font-family:var(--font-display);font-size:30px;line-height:32px;font-weight:700}
.cvs .cv-plan__for{font-size:15px;line-height:22px;color:var(--ink-muted)}
.cvs .cv-plan__price{font-family:var(--font-display);font-size:34px;line-height:38px;font-weight:700}
.cvs .cv-plan__price small{font-family:var(--font-sans);font-size:14px;font-weight:400;color:var(--ink-muted)}
.cvs .cv-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2);font-size:16px;line-height:24px}
.cvs .cv-list li{display:flex;gap:var(--space-2)}
.cvs .cv-list li::before{content:"*";flex:none;width:14px;font-family:var(--font-display);font-weight:800;font-size:22px;line-height:26px;color:var(--brand-text)}
.cvs .cv-list--lg{font-size:17px;line-height:27px}
.cvs .cv-plan .cv-btn{margin-top:auto}
.cvs .fine{font-size:14px;line-height:20px;color:var(--ink-muted)}

/* Badge */
.cvs .cv-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:3px 8px;border-radius:var(--radius-sm);font-size:12px;line-height:16px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}
.cvs .cv-badge--signal{background:var(--signal);color:var(--on-signal)}
.cvs .cv-badge--brand{background:var(--brand);color:var(--on-brand)}
.cvs .cv-badge--neutral{background:var(--surface-alt);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong)}
.cvs .badges{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}

/* Pasos numerados */
.cvs .steps{list-style:none;padding:0;display:flex;flex-direction:column}
.cvs .steps li{display:flex;gap:20px;padding:22px 0;border-top:1px solid var(--line)}
.cvs .steps li:last-child{border-bottom:1px solid var(--line)}
.cvs .steps__n{flex:none;width:36px;font-family:var(--font-display);font-size:40px;line-height:40px;font-weight:800;color:var(--brand-text)}
.cvs .steps h3{font-family:var(--font-display);font-size:24px;line-height:28px;font-weight:700}
.cvs .steps p{margin-top:6px;color:var(--ink-muted)}

/* Hero inicio */
.cvs .hero-fig{position:relative}
.cvs .hero-seal{position:absolute;left:-24px;bottom:32px;max-width:280px;padding:16px 20px;background:var(--surface);border-top:3px solid var(--brand);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}
.cvs .hero-seal b{display:block;font-family:var(--font-display);font-size:22px;line-height:26px}
.cvs .hero-seal span{display:block;margin-top:4px;font-size:14px;line-height:20px;color:var(--ink-muted)}
.cvs .band{background:var(--brand-deep);color:var(--on-brand)}
.cvs .band__list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding-top:22px;padding-bottom:22px}
.cvs .band__list li{display:flex;align-items:center;gap:14px;padding:4px 24px;border-left:1px solid rgba(255,255,255,.18)}
.cvs .band__list li:first-child{padding-left:0;border-left:0}
.cvs .band__ico{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.12);color:#7fe0a3}
.cvs .band__ico svg{width:22px;height:22px}
.cvs .band__list b{display:block;font-family:var(--font-display);font-size:20px;line-height:24px;font-weight:700;color:#fff}
.cvs .band__list small{display:block;font-size:14px;line-height:20px;color:#cfe3d4}

/* Marcas */
.cvs .brands{display:flex;flex-wrap:wrap;gap:10px}
.cvs .brandchip{padding:12px 16px;border:1px solid var(--line-strong);border-radius:var(--radius-md);font-weight:700;background:var(--surface)}
.cvs .brandchip span{display:block;font-size:12px;font-weight:600;color:var(--ink-muted)}

/* Tarjeta instrumento (plan) */
.cvs .gauge{padding:28px;background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}
.cvs .gauge__top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-muted)}
.cvs .gauge__mid{display:flex;align-items:center;gap:24px;margin:20px 0}
.cvs .gauge__mid svg{width:120px;height:120px;flex:none}
.cvs .gauge__big{font-family:var(--font-display);font-size:48px;line-height:48px;font-weight:800}
.cvs .gauge__big small{font-size:20px;color:var(--ink-muted)}
.cvs .gauge__rows{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:1px solid var(--line);font-size:15px}
.cvs .gauge__rows div{display:flex;justify-content:space-between}
.cvs .gauge__rows span{color:var(--ink-muted)}

/* Tabla de intervalos */
.cvs .ivals{border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}
.cvs .ivals div{display:flex;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--line)}
.cvs .ivals div:last-child{border-bottom:0}

/* Chips de repuestos */
.cvs .chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.cvs .chips li{padding:12px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);font-weight:500}

/* FAQ */
.cvs .faq{max-width:860px;display:flex;flex-direction:column;gap:12px}
.cvs .faq details{padding:18px 22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}
.cvs .faq summary{cursor:pointer;font-weight:600;font-size:17px}
.cvs .faq details p{margin-top:10px;color:var(--ink-muted)}

/* Contacto */
.cvs .cards2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cvs .ccard{padding:20px;border:1px solid var(--line);border-radius:var(--radius-lg)}
.cvs .ccard__k{font-size:13px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase;color:var(--brand-text)}
.cvs .ccard__v{margin-top:8px;font-size:18px;line-height:28px;overflow-wrap:anywhere}
.cvs .ccard__v a{color:var(--ink);text-decoration:none}
.cvs .map{position:relative;height:420px;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-alt)}
.cvs .map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Hero oscuro (Club) */
.cvs .sec--dark{padding:80px 0 96px;background:var(--brand-deep);color:var(--on-brand)}
.cvs .sec--dark .crumbs,.cvs .sec--dark .crumbs a{color:#d6eadc}
.cvs .sec--dark .lead{color:#d6eadc}
.cvs .eyebrow-dark{font-size:13px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:#d6eadc}

/* CTA + pie */
.cvs .cta{position:relative;overflow:hidden;background:#0b1a10;color:var(--on-brand);border-top:3px solid var(--brand)}
.cvs .cta__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;opacity:.55}
.cvs .cta::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(4,46,22,.96) 0%,rgba(4,60,28,.86) 45%,rgba(4,40,20,.55) 100%)}
.cvs .cta .wrap{position:relative;z-index:2;padding-top:88px;padding-bottom:88px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:56px}
.cvs .cta__eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;line-height:16px;font-weight:600;letter-spacing:1.8px;text-transform:uppercase;color:#7fe0a3}
.cvs .cta__eyebrow::before{content:"*";font-family:var(--font-display);font-size:28px;line-height:12px;font-weight:800;padding-top:10px}
.cvs .cta h2{font-family:var(--font-display);font-size:52px;line-height:52px;font-weight:800;color:#fff}
.cvs .cta h2::after{content:"";display:block;width:64px;height:var(--rule);margin-top:18px;background:#7fe0a3}
.cvs .cta__lead{margin-top:18px;font-size:19px;line-height:30px;color:#dbe8de;max-width:560px}
.cvs .cta__box{display:flex;flex-direction:column;gap:12px;margin:0;padding:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.cvs .cta__btn{display:flex;align-items:center;gap:16px;width:100%;margin:0;padding:14px 18px;border-radius:var(--radius-md);text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s}
.cvs .cta__btn svg{width:26px;height:26px;flex:none}
.cvs .cta__btn span{display:flex;flex-direction:column;min-width:0}
.cvs .cta__btn b{font-size:18px;line-height:24px;font-weight:700}
.cvs .cta__btn small{font-size:14px;line-height:20px;opacity:.8}
.cvs .cta__btn--wa{background:var(--brand);color:#fff;border:2px solid var(--brand);box-shadow:0 8px 24px rgba(0,0,0,.25)}
.cvs .cta__btn--wa:hover{background:#079a4f;border-color:#079a4f;color:#fff;transform:translateY(-1px)}
.cvs .cta__btn--tel{background:rgba(255,255,255,.06);color:#fff;border:2px solid rgba(255,255,255,.35)}
.cvs .cta__btn--tel:hover{border-color:#fff;color:#fff}
.cvs .cta__facts{list-style:none;margin:6px 0 0;padding:14px 0 0;border-top:1px solid rgba(255,255,255,.14);display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;line-height:20px;color:#c9dacd}
.cvs .cta__facts li{display:flex;align-items:center;gap:6px}
.cvs .cta__facts li::before{content:"*";font-family:var(--font-display);font-weight:800;font-size:20px;line-height:16px;color:#7fe0a3}
.cvs .ftr{background:var(--ink);color:#c9cec8;font-size:15px;line-height:24px}
.cvs .ftr .wrap{padding-top:56px;padding-bottom:24px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.cvs .ftr a{color:#c9cec8;text-decoration:none}
.cvs .ftr a:hover{color:#fff}
.cvs .ftr__col{display:flex;flex-direction:column;gap:6px}
.cvs .ftr__k{margin-bottom:6px;font-weight:700;color:#fff}
.cvs .ftr__logo{display:block;width:132px;height:52px;overflow:hidden;background:#fff;border-radius:var(--radius-md)}
.cvs .ftr__logo img{display:block;width:132px;height:132px;max-width:none;margin-top:-40px}
.cvs .ftr__legal{max-width:var(--container);margin:0 auto;padding:20px 32px 32px;border-top:1px solid #3a3d39;font-size:13px;color:#a9aea8}

/* Portada a todo el ancho */
.cvs .hero-img{position:relative;display:flex;align-items:center;min-height:640px;overflow:hidden;background:#101410;color:#fff}
.cvs .hero-img--sub{min-height:520px}
.cvs .hero-img__bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.cvs .hero-img::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(8,14,10,.9) 0%,rgba(8,14,10,.7) 42%,rgba(8,14,10,.2) 100%)}
.cvs .hero-img .wrap{position:relative;z-index:2;width:100%;padding-top:96px;padding-bottom:96px}
.cvs .hero-img__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:56px;align-items:center}
.cvs .hero-copy{max-width:660px}
.cvs .hero-img .h-hero,.cvs .hero-img .h-page{color:#fff}
.cvs .hero-img .lead{color:#dbe4db}
.cvs .hero-img .crumbs,.cvs .hero-img .crumbs a{color:#c6d1c6}
.cvs .hero-img .cv-title__eyebrow,.cvs .sec--ink .cv-title__eyebrow{color:#7fe0a3}
.cvs .hero-img .cv-btn--secondary{color:#fff;border-color:rgba(255,255,255,.7)}
.cvs .hero-img .cv-btn--secondary:hover{border-color:#fff;color:#fff}
.cvs .hero-img .cv-badge--neutral{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
.cvs .hero-img .gauge{color:var(--ink)}
.cvs .hero-img .hero-seal{position:static;max-width:320px;margin-top:8px}

/* Secciones oscuras */
.cvs .sec--ink{background:#141814;color:#fff}
.cvs .sec--ink .cv-title__h{color:#fff}
.cvs .sec--ink .cv-title__lead,.cvs .sec--ink .muted{color:#c4ccc4}
.cvs .sec--ink .steps li{border-color:rgba(255,255,255,.16)}
.cvs .sec--ink .steps p{color:#c4ccc4}
.cvs .sec--ink .steps__n{color:#7fe0a3}
.cvs .sec--ink .cv-list li::before{color:#7fe0a3}

/* Tarjetas con foto */
.cvs .cv-service__img{display:block;width:calc(100% + 48px);max-width:none;height:200px;margin:-24px -24px 8px;object-fit:cover;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
.cvs .cv-service--club .cv-service__img{border-bottom:3px solid var(--brand)}

/* Foto a media pantalla */
.cvs .split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:560px}
.cvs .split__img{width:100%;height:0;min-height:100%;max-width:none;object-fit:cover}
.cvs .split__copy{display:flex;flex-direction:column;justify-content:center;gap:24px;padding:80px max(32px,calc((100vw - var(--container)) / 2))}
.cvs .split__copy--left{padding-right:64px}
.cvs .split__copy--right{padding-left:64px}

/* Banda de foto */
.cvs .photoband{position:relative;height:420px;overflow:hidden}
.cvs .photoband img{width:100%;height:100%;max-width:none;object-fit:cover}

/* Video al scroll */
.cvs .scrollvid{background:#0d110d;color:#fff;padding:96px 0}
.cvs .scrollvid video,.cvs .scrollvid canvas{display:block;background-size:cover;background-position:center;width:100%;max-width:calc((100vh - 500px) * 16 / 9);margin:0 auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg);background:#000}
.cvs .scrollvid__track{position:relative;height:240vh}
.cvs .scrollvid__head{margin-bottom:24px}
.cvs .scrollvid__pin{position:sticky;top:76px;padding:12px 0}
.cvs .scrollvid__after{margin-top:40px;text-align:center}
.cvs .scrollvid__steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}
.cvs .scrollvid__steps li{padding-top:14px;border-top:3px solid rgba(255,255,255,.18);opacity:.45;transition:opacity .25s,border-color .25s}
.cvs .scrollvid__steps li.is-on{opacity:1;border-top-color:var(--brand)}
.cvs .scrollvid__steps b{display:block;font-family:var(--font-display);font-size:24px;line-height:28px}
.cvs .scrollvid__steps span{display:block;margin-top:4px;font-size:15px;line-height:22px;color:#c4ccc4}

@media (max-width:1100px){.cvs .hdr__nav{display:none}.cvs .hdr__menu{display:block}.cvs .hdr__cta{display:none}}
@media (max-width:900px){
  .cvs .wrap{padding:0 16px}
  .cvs .g2,.cvs .g3,.cvs .g4,.cvs .g-map,.cvs .cards2,.cvs .ftr .wrap{grid-template-columns:minmax(0,1fr);gap:32px}
  .cvs .h-hero{font-size:44px;line-height:44px}
  .cvs .h-page{font-size:42px;line-height:42px}
  .cvs .sec,.cvs .sec--hero,.cvs .sec--dark{padding-top:56px;padding-bottom:64px}
  .cvs .hero-seal{left:12px;right:12px;bottom:12px;max-width:none}
  .cvs .photo{height:320px !important}
  .cvs .cta .wrap{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:56px;padding-bottom:56px}
  .cvs .cta::before{background:linear-gradient(180deg,rgba(4,46,22,.82) 0%,rgba(4,46,22,.95) 55%)}
  .cvs .cta h2{font-size:40px;line-height:40px}
  .cvs .cta__lead{font-size:17px;line-height:27px}
  .cvs .cta__box{padding:16px}
  .cvs .cta__facts{flex-direction:column}
  .cvs .ftr__legal{padding:20px 16px 32px}
  .cvs .hero-img{min-height:0}
  .cvs .hero-img::before{background:linear-gradient(180deg,rgba(8,14,10,.6) 0%,rgba(8,14,10,.88) 60%)}
  .cvs .hero-img .wrap{padding-top:72px;padding-bottom:64px}
  .cvs .hero-img__grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .cvs .band__list{grid-template-columns:minmax(0,1fr);padding-top:8px;padding-bottom:8px}
  .cvs .band__list li{padding:14px 0;border-left:0;border-top:1px solid rgba(255,255,255,.14)}
  .cvs .band__list li:first-child{border-top:0}
  .cvs .band__ico{width:38px;height:38px}
  .cvs .band__list b{font-size:19px;line-height:22px}
  .cvs .band__list small{font-size:13px;line-height:18px}
  .cvs .hero-img .cv-row{flex-direction:column}
  .cvs .hero-img .cv-row > .cv-btn{width:100%}
  .cvs .split{grid-template-columns:minmax(0,1fr);min-height:0}
  .cvs .split__img{height:300px;min-height:0}
  .cvs .split__copy,.cvs .split__copy--left,.cvs .split__copy--right{padding:56px 16px 64px}
  .cvs .split--rev .split__img{order:-1}
  .cvs .photoband{height:240px}
  .cvs .scrollvid{padding:64px 0}
  .cvs .scrollvid video,.cvs .scrollvid canvas{aspect-ratio:16/9;width:calc(100% + 32px);max-width:none;margin:0 -16px;border-radius:0}
  .cvs .scrollvid__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:16px}
  .cvs .scrollvid__steps li{padding-top:10px}
  .cvs .scrollvid__steps b{font-size:20px;line-height:24px}
  .cvs .scrollvid__steps span{font-size:13px;line-height:18px}
  .cvs .scrollvid__pin{padding:8px 0}
  .cvs .scrollvid__head{margin-bottom:16px}
  .cvs .scrollvid__head .cv-title__lead{display:none}
  .cvs .scrollvid__head .cv-title__h{font-size:28px;line-height:32px}
  .cvs .scrollvid__head .cv-title__h::after{margin-top:10px}
}
@media (prefers-reduced-motion:reduce){.cvs *{transition:none !important}.cvs .scrollvid__track{height:auto}}
