.page-v2{overflow-x:hidden;background:var(--mc-paper)}
    .page-v2 [data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .9s var(--mc-ease-expo),transform .9s var(--mc-ease-expo)}
    .page-v2 [data-reveal].is-in{opacity:1;transform:none}
    @media(prefers-reduced-motion:reduce){.page-v2 [data-reveal]{opacity:1;transform:none;transition:none}}

    /* shared section header */
    .sec{padding-block:clamp(5rem,13vh,9rem)}
    .sec--alt{background:var(--mc-paper-sunken)}
    .sec--ink{background:var(--mc-ink);color:#fff}
    .wrap2{max-width:var(--mc-container);margin:0 auto;padding-inline:var(--mc-gutter)}
    .kick{font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:var(--mc-magenta);font-weight:700}
    .sec--ink .kick{color:var(--mc-violet-bright)}
    .h2{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.2rem,4.6vw,3.6rem);line-height:1.03;letter-spacing:-.02em;color:var(--mc-ink);text-wrap:balance;margin:.6rem 0 0}
    .sec--ink .h2{color:#fff}

    /* ===== HERO (video full screen, centered) ===== */
    .v2hero{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;color:#fff}
    .v2hero__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
    .v2hero__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,17,24,.55),rgba(20,17,24,.32) 42%,rgba(20,17,24,.8))}
    .v2hero__inner{position:relative;z-index:2;padding:calc(var(--mc-header-h) + 5vh) var(--mc-gutter) 8vh;max-width:62rem}
    .v2hero__claim{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(3rem,8.5vw,7.2rem);line-height:.94;letter-spacing:-.03em;text-wrap:balance}
    .v2hero__claim em{font-style:normal;color:#fff}
    .v2hero__sub{margin:1.8rem auto 0;max-width:46ch;font-size:var(--mc-fs-lead);color:#ffffffd8;line-height:1.5}
    .v2hero__ctas{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2.2rem}
    .v2hero__micro{margin-top:1.2rem;margin-bottom:50px;font-size:.9rem;color:#ffffff9c}
    .v2hero .btn--outline{color:#fff;border-color:#ffffff59;background:transparent}
    .v2hero .btn--outline:hover{background:#ffffff1f}
    .v2hero__scroll{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);z-index:2;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#ffffffb0;display:flex;flex-direction:column;align-items:center;gap:.5rem}
    .v2hero__scroll::after{content:"";width:1px;height:34px;background:linear-gradient(#ffffffb0,transparent);animation:scrolldrop 1.8s var(--mc-ease-inout) infinite}
    @keyframes scrolldrop{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

    /* ===== CALC (standalone, overlapping the hero) ===== */
    .v2calc{position:relative;z-index:3;margin-top:-8.8rem}
    .v2calc__card{opacity:0;transform:translateY(40px);transition:opacity .8s var(--mc-ease-expo),transform .8s var(--mc-ease-expo)}
    .v2calc__card.is-in{opacity:1;transform:none}
    @media(prefers-reduced-motion:reduce){.v2calc__card{opacity:1;transform:none;transition:none}}
    .v2calc__card{max-width:720px;margin:0 auto;padding:clamp(1.8rem,4vw,3rem);background:var(--mc-paper-raised);border:1px solid var(--mc-hairline);border-radius:var(--mc-radius-lg);box-shadow:var(--mc-shadow-lg)}
    .v2calc__head{text-align:center;margin-bottom:1.6rem}
    .v2calc__head .h2{font-size:clamp(1.6rem,3vw,2.3rem)}
    .v2calc__head p{margin-top:.6rem;color:var(--mc-ink-soft)}
    /* calc internals (self-contained so it matches even if base .calc differs) */
    .calc2 .frow2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
    .calc2 .fld{display:flex;flex-direction:column;margin-top:1rem}
    .calc2 .fld:first-child{margin-top:0}
    .calc2 .frow2 .fld{margin-top:0}
    .calc2 label{font-size:.85rem;font-weight:600;color:var(--mc-ink);margin-bottom:.45rem}
    .calc2 select,.calc2 input{width:100%;padding:.85rem 1rem;border:1px solid var(--mc-hairline);border-radius:var(--mc-radius-sm);background:var(--mc-paper);color:var(--mc-ink);font:inherit;font-size:1rem}
    .calc2 select:focus,.calc2 input:focus{outline:none;border-color:var(--mc-magenta)}
    .calc2 input.is-error{border-color:var(--mc-error)}
    .calc2 .btn{margin-top:1.3rem}
    .calc2__step2{margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid var(--mc-hairline)}
    .calc2__result{text-align:center;padding:1.4rem;background:var(--mc-paper-sunken);border-radius:var(--mc-radius-md)}
    .calc2__result-label{font-size:.85rem;color:var(--mc-ink-soft);text-transform:uppercase;letter-spacing:.06em}
    .calc2__result-num{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.4rem,6vw,3.6rem);line-height:1;margin-top:.4rem;color:#d62c48}
    .calc2__summary{margin-top:1rem;font-size:.95rem;color:var(--mc-ink-soft);line-height:1.5}
    .calc2__summary b{color:var(--mc-ink);font-weight:600}
    .calc2 .btn.calc2__recalc{margin-top:1.1rem;display:inline-flex;width:auto;padding:.6rem 1.4rem;font-size:.9rem;background:var(--mc-paper);color:var(--mc-ink-soft);border:1px solid var(--mc-hairline);box-shadow:none;-webkit-text-fill-color:currentColor}
    .calc2 .btn.calc2__recalc:hover{background:var(--mc-paper-sunken);color:var(--mc-ink)}
    .calc2__lead{margin-top:1.2rem}
    .calc2__lead-q{font-weight:600;color:var(--mc-ink);margin-bottom:.8rem;font-size:1.2rem;text-align:center}
    .calc2 .btn.is-recalc{background:var(--mc-paper-sunken);color:var(--mc-ink-soft);box-shadow:none;-webkit-text-fill-color:currentColor}
    .calc2__lead-ok{color:var(--mc-success);font-weight:600;text-align:center;padding:1rem 0}
    .calc2__micro{margin-top:1rem;font-size:.82rem;color:var(--mc-ink-mute);text-align:center}

    /* ===== PRECIO ===== */
    .price2{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,4rem);align-items:center}
    .price2__lead{font-size:var(--mc-fs-lead);color:var(--mc-ink-soft);line-height:1.55;margin-top:1.3rem;max-width:40ch}
    .price2__foot{margin-top:1.4rem;font-size:.95rem;color:var(--mc-ink-mute);line-height:1.5;max-width:40ch}
    .price2__nums{display:flex;flex-direction:column;gap:1.2rem}
    .pnum{border-left:3px solid var(--mc-magenta);padding-left:1.2rem}
    .pnum__v{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1;color:var(--mc-ink)}
    .pnum__k{margin-top:.4rem;color:var(--mc-ink-soft)}

    /* ===== FORMATOS teaser (carrusel lateral estilo Apple) ===== */
    .fcarousel{display:flex;justify-content:center;gap:clamp(1rem,2vw,1.8rem);overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-top:clamp(2.5rem,5vh,3.5rem);padding:.6rem var(--mc-gutter) 1.4rem}
    .fcarousel::-webkit-scrollbar{display:none}
    .fcard{flex:0 0 auto;width:min(82vw,460px);scroll-snap-align:start;display:flex;flex-direction:column;background:var(--mc-paper-raised);border:2px solid #fff;border-radius:var(--mc-radius-lg);overflow:hidden;transition:transform var(--mc-dur-micro),box-shadow var(--mc-dur-micro);text-decoration:none;color:inherit}
    .fcard:hover{transform:translateY(-4px);box-shadow:var(--mc-shadow-md)}
    .fcard__img{height:clamp(260px,32vw,380px);overflow:hidden;background:var(--mc-paper-sunken)}
    .fcard__img img{width:100%;height:100%;object-fit:contain;padding:1rem;box-sizing:border-box}
    .fcard__body{padding:1.8rem 2rem 2.1rem}
    .fcard__tag{font-size:var(--mc-fs-overline);text-transform:uppercase;letter-spacing:.1em;color:var(--mc-magenta);font-weight:700}
    .fcard__h{font-family:var(--mc-font-display);font-weight:700;font-size:1.9rem;color:var(--mc-ink);margin:.5rem 0 .7rem;letter-spacing:-.01em}
    .fcard__t{color:var(--mc-ink-soft);line-height:1.55;font-size:1.12rem}
    .center-cta{text-align:center;margin-top:clamp(2rem,5vh,3rem)}

    /* ===== URBANO/INTERURBANO ===== */
    .uix{text-align:center}
    .uix__title{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.03em;color:var(--mc-ink)}
    .uix__cards{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.2rem,2.5vw,2rem);max-width:960px;margin:clamp(2.5rem,6vh,4rem) auto 0;text-align:left}
    .uixcard{background:var(--mc-paper-raised);border:1px solid var(--mc-hairline);border-radius:var(--mc-radius-lg);padding:clamp(1.6rem,3vw,2.4rem);box-shadow:var(--mc-shadow-sm)}
    .uixcard h3{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(1.3rem,2vw,1.6rem);color:var(--mc-ink);margin-bottom:.8rem}
    .uixcard p{color:var(--mc-ink-soft);line-height:1.6}
    .uix__stats{display:flex;justify-content:center;flex-wrap:wrap;gap:clamp(3rem,10vw,7rem);margin-top:clamp(2.5rem,6vh,4rem)}
    .uixstat__num{display:block;font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.4rem,6vw,4rem);letter-spacing:-.02em;line-height:1;color:var(--mc-ink)}
    .uixstat__lbl{display:block;margin-top:.7rem;color:var(--mc-ink-soft)}
    @media(max-width:720px){ .uix__cards{grid-template-columns:1fr} }
    /* botón outline sobre fondo claro */
    .center-cta .btn--outline{background:#fff;color:var(--mc-ink-soft);border-color:var(--mc-hairline);-webkit-backdrop-filter:none;backdrop-filter:none}
    .center-cta .btn--outline:hover{background:var(--mc-paper-sunken);color:var(--mc-ink);border-color:var(--mc-ink-mute)}
    .ui{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,5vw,4rem);align-items:center}
    .ui__mnemo{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.05;letter-spacing:-.02em;color:var(--mc-ink)}
    .ui__mnemo b{color:#d62c48;font-weight:700}
    .ui__cards{display:grid;gap:1.2rem}
    .uicard{background:var(--mc-paper-raised);border:1px solid var(--mc-hairline);border-radius:var(--mc-radius-lg);padding:clamp(1.5rem,3vw,2rem)}
    .uicard h3{font-family:var(--mc-font-display);font-weight:700;font-size:1.3rem;color:var(--mc-ink);margin-bottom:.6rem}
    .uicard p{color:var(--mc-ink-soft);line-height:1.55}

    /* ===== POR QUE (dark stats) ===== */
    .why{text-align:center}
    .why__title{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.2rem,5vw,4rem);line-height:1.02;letter-spacing:-.02em;text-wrap:balance;max-width:20ch;margin:0 auto}
    .why__lead{margin:1.6rem auto 0;max-width:52ch;color:#ffffffc4;font-size:var(--mc-fs-lead);line-height:1.55}
    .why__stats{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(2rem,6vw,5rem);margin-top:clamp(3rem,7vh,5rem)}
    .why__stat{display:flex;flex-direction:column;align-items:center}
    .why__num{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2.8rem,6vw,4.5rem);line-height:1;color:#d62c48}
    .why__lbl{margin-top:.6rem;color:#ffffffb0;font-size:.98rem}
    .why-sec{position:relative;overflow:hidden}
    .why-sec__img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover;z-index:0;will-change:transform}
    .why-sec__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,17,24,.9),rgba(20,17,24,.78) 45%,rgba(20,17,24,.92))}

    /* ===== 360 visor automatico ===== */
    .b360v{background:#fff}
    .b360v__viewer{position:relative;margin-top:clamp(1.5rem,4vh,2.5rem)}
    .b360v__stage{position:relative;width:min(100%,860px);margin:0 auto;aspect-ratio:3/2}
    .b360v__frame{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .28s var(--mc-ease-inout);pointer-events:none}
    .b360v__frame.is-active{opacity:1}
    .b360v__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:1px solid var(--mc-hairline);background:#fff;color:var(--mc-ink);display:grid;place-items:center;cursor:pointer;transition:background var(--mc-dur-micro),border-color var(--mc-dur-micro),transform var(--mc-dur-micro)}
    .b360v__arrow:hover{background:var(--mc-magenta);border-color:var(--mc-magenta);color:#fff}
    .b360v__arrow--prev{left:0}
    .b360v__arrow--next{right:0}
    .b360v__arrow:active{transform:translateY(-50%) scale(.94)}
    .b360v__arrow:focus-visible{outline:2px solid var(--mc-magenta);outline-offset:3px}
    .b360v__dots{display:flex;justify-content:center;gap:.1rem;margin-top:clamp(.6rem,1.8vh,1.1rem)}
    .b360v__dot{width:26px;height:26px;padding:0;border:none;background:none;cursor:pointer;display:grid;place-items:center;-webkit-tap-highlight-color:transparent}
    .b360v__dot::after{content:"";width:9px;height:9px;border-radius:50%;background:#d8d5dd;transition:background var(--mc-dur-micro),transform var(--mc-dur-micro)}
    .b360v__dot:hover::after{background:var(--mc-ink-mute)}
    .b360v__dot.is-active::after{background:var(--mc-magenta);transform:scale(1.3)}
    .b360v__dot:focus-visible{outline:2px solid var(--mc-magenta);outline-offset:3px}
    @media(max-width:620px){
      .b360v__arrow{width:44px;height:44px;background:#ffffffdb;backdrop-filter:blur(2px)}
      .b360v__arrow--prev{left:-2px}
      .b360v__arrow--next{right:-2px}
      .b360v__dots{gap:0}
      .b360v__dot{width:34px;height:44px}
      .b360v__stage{touch-action:pan-y}
    }

    /* ===== 360 (kept) ===== */
    .b360-copy{max-width:var(--mc-container);margin:0 auto;padding:clamp(3rem,7vh,5rem) var(--mc-gutter) 0;text-align:center}
    .b360-copy .kick{color:var(--mc-magenta)}
    .b360-copy h2{font-family:var(--mc-font-display);font-weight:700;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.02em;color:var(--mc-ink);margin-top:.5rem;text-wrap:balance}

    /* ===== COBERTURA teaser ===== */
    .cov{position:relative;overflow:hidden;min-height:70svh;display:flex;align-items:center;color:#fff}
    .cov__img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;will-change:transform;z-index:0}
    .cov__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,4,12,.62) 0%,rgba(10,4,12,.28) 45%,rgba(10,4,12,0) 100%);z-index:1}
    .cov__veil::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.4)}
    .cov__inner{position:relative;z-index:2;max-width:var(--mc-container);margin:0 auto;padding:clamp(3rem,8vh,6rem) var(--mc-gutter)}
    .cov__inner .h2{color:#fff;max-width:16ch}
    .cov__lead{margin:1.4rem 0 2rem;max-width:44ch;color:#ffffffd0;font-size:var(--mc-fs-lead);line-height:1.55}
    .cov__stats{display:flex;gap:2.5rem;margin-bottom:2rem;flex-wrap:wrap}
    .cov__stats b{font-family:var(--mc-font-display);font-size:1.6rem;color:#fff;display:block}
    .cov__stats span{font-size:.9rem;color:#ffffffb0}
    .cov .btn--outline{color:#fff;border-color:#ffffff59;background:transparent}
    .cov .btn--outline:hover{background:#ffffff1f}

    /* ===== FINAL CTA ===== */
    .final2{text-align:center}
    .final2 .h2{margin:0 auto 1rem}
    .final2 p{color:var(--mc-ink-soft);font-size:var(--mc-fs-lead);max-width:46ch;margin:0 auto 2.2rem}
    .final2__cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

    @media(max-width:880px){
      .price2,.ui{grid-template-columns:1fr}
      .cov__img{height:118%}
    }
    .how__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(1rem,1.6vw,1.4rem);margin-top:clamp(2.5rem,5vh,3.5rem)}
    .howcard{background:var(--mc-paper);border:1px solid var(--mc-hairline);border-radius:var(--mc-radius-lg);padding:clamp(2rem,2.8vw,2.8rem);box-shadow:var(--mc-shadow-sm)}
    .howcard__ic{width:68px;height:68px;border-radius:var(--mc-radius-md);background:var(--mc-gradient);display:flex;align-items:center;justify-content:center;color:#fff}
    .howcard__ic svg{width:34px;height:34px}
    .howcard__t{margin:1.5rem 0 .6rem;font-family:var(--mc-font-display);font-weight:700;font-size:1.4rem;color:var(--mc-ink);letter-spacing:-.01em}
    .howcard__t b{color:var(--mc-magenta);font-weight:700}
    .howcard__d{color:var(--mc-ink-soft);line-height:1.55;font-size:1.12rem}
    @media(max-width:860px){ .how__grid{grid-template-columns:1fr 1fr} }
    @media(max-width:520px){ .how__grid{grid-template-columns:1fr} }
    @media(max-width:1180px){ .fcarousel{justify-content:flex-start} }
    @media(max-width:560px){ .calc2 .frow2{grid-template-columns:1fr} }
