/* Sistema compartido de campañas: los contenidos siguen siendo específicos por familia. */
:root{--campaign-ink:#28241f;--campaign-muted:#6e675f;--campaign-paper:#f8f6f1;--campaign-sand:#eee8df;--campaign-line:#d9d2c8;--campaign-accent:#98724f;--campaign-display:'Cormorant Garamond',Georgia,serif;--campaign-sans:'DM Sans',Arial,sans-serif}
body.landing-page{background:var(--campaign-paper);color:var(--campaign-ink);font-family:var(--campaign-sans)}
body.landing-page header,.landing-page .landing-header{background:#fff;border-bottom:1px solid var(--campaign-line)}
body.landing-page .brand,.landing-page .brand{color:var(--campaign-ink);font-family:var(--campaign-display)}
.campaign-logo{display:flex!important;height:52px;align-items:center;justify-content:center;line-height:0;text-decoration:none}
.campaign-logo img{display:block!important;width:auto!important;max-width:132px!important;height:100%!important;object-fit:contain;filter:brightness(0);opacity:.94}
body.landing-page h1,body.landing-page h2,body.landing-page h3{font-family:var(--campaign-display);font-weight:500;letter-spacing:-.018em}
body.landing-page .button{border:1px solid transparent;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}
body.landing-page .button:hover{transform:translateY(-1px)}
body.landing-page .button.light,body.landing-page .button--light{background:#fff;color:var(--campaign-ink)}
body.landing-page .button.light:hover,body.landing-page .button--light:hover{background:var(--campaign-accent);border-color:var(--campaign-accent);color:#fff}
body.landing-page .button.dark,body.landing-page .button--dark{background:var(--campaign-ink);color:#fff}
body.landing-page .button.dark:hover,body.landing-page .button--dark:hover{background:var(--campaign-accent);border-color:var(--campaign-accent)}
body.landing-page .button.outline,body.landing-page .button--outline{border-color:var(--campaign-ink);background:transparent;color:var(--campaign-ink)}
body.landing-page .button.outline:hover,body.landing-page .button--outline:hover{background:var(--campaign-ink);color:#fff}
body.landing-page .eyebrow{color:var(--campaign-accent);font-family:var(--campaign-sans);font-weight:600;letter-spacing:.15em;text-transform:uppercase}
body.landing-page .benefits,body.landing-page .benefit-bar{background:#fff;border-bottom:1px solid var(--campaign-line)}
body.landing-page .split,body.landing-page .steps,body.landing-page .advice{background:var(--campaign-sand)}
body.landing-page .calculator,body.landing-page .selection,body.landing-page .statement,body.landing-page .styles,body.landing-page .faq{background:#fff}
body.landing-page .final-trust{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:17px;color:rgba(255,255,255,.82);font-size:8px;line-height:1.3}
body.landing-page .final-trust span+span:before{content:'·';margin-right:9px;color:rgba(255,255,255,.5)}
body.landing-page :focus-visible{outline:2px solid var(--campaign-accent);outline-offset:3px}
@media(min-width:900px){body.landing-page{max-width:none}.campaign-logo{height:66px;justify-content:flex-start}.campaign-logo img{max-width:170px!important}.landing-page .hero{min-height:620px}.landing-page .split,.landing-page .steps,.landing-page .calculator,.landing-page .selection,.landing-page .statement,.landing-page .styles,.landing-page .faq,.landing-page .advice{padding-top:92px;padding-bottom:92px}.landing-page .final-trust{font-size:9px;gap:9px 18px}}
@media(max-width:899px){body.landing-page .button:hover{transform:none}.landing-page .final-trust{font-size:8px}}
@media(prefers-reduced-motion:reduce){body.landing-page .button{transition:none}}

/* Los cierres de campaña son CTA compactos, no una segunda portada. */
body.landing-page .final,body.landing-page .final-preview{min-height:0;padding:16px 18px 12px;background-color:transparent;background-position:center 48%;color:#fff}
body.landing-page .final h2,body.landing-page .final-preview h2{font-size:clamp(28px,7.8vw,34px);line-height:1.01}
body.landing-page .final>p:not(.eyebrow),body.landing-page .final-preview>p:not(.eyebrow){margin:7px 0;font-size:10px;line-height:1.35}
body.landing-page .final .button,body.landing-page .final-preview .button{min-height:38px;margin-top:7px;padding:10px 14px}
body.landing-page .final-trust,body.landing-page .final-preview>small{margin-top:7px;font-size:6.5px}
@media(min-width:900px){
  body.landing-page .final,body.landing-page .final-preview{min-height:0;padding:24px max(48px,calc((100vw - 1180px)/2)) 20px;background-position:center 46%}
  body.landing-page .final h2,body.landing-page .final-preview h2{font-size:clamp(36px,3.4vw,50px);line-height:1}
  body.landing-page .final>p:not(.eyebrow),body.landing-page .final-preview>p:not(.eyebrow){margin:8px 0;font-size:11px;line-height:1.4}
  body.landing-page .final .button,body.landing-page .final-preview .button{min-height:42px;margin-top:8px}
  body.landing-page .final-trust,body.landing-page .final-preview>small{margin-top:9px;font-size:8px}
}
