/* Página de la ceremonia especial: los colores y motivos de su afiche (verde, rojo tierra, crema, rombos)
   con la tipografía y los botones de toda la web. */
.hv{--verde:#588D6F;--verde-hondo:#3F6B54;--crema:#FFF8EE;--rojo:#8A2A14;--tinta:#2B1C14;
  background:var(--verde);color:var(--crema);overflow:hidden}
.hv a:not(.btn){color:inherit}
.hv-patron{height:clamp(44px,7vw,84px);background:url(../img/patron-rombos.svg) center/auto 100% repeat-x}

/* --- Portada --- */
.hv-hero{text-align:center;padding-top:clamp(28px,5vw,60px)}
.hv-sobre{margin:0 0 18px;font:600 19px/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.hv-titulo{margin:0 auto;max-width:14ch;font:400 clamp(46px,9.4vw,124px)/.98 var(--serif);letter-spacing:-.02em;color:var(--crema)}
.hv-titulo em{font-style:italic}
.hv-titulo--chico{max-width:none;font-size:clamp(34px,5.6vw,68px)}
.hv-cuando{margin:14px 0 0;font:600 19px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}

.hv-datos{display:grid;gap:22px;margin:clamp(32px,5vw,56px) auto 0;max-width:940px;text-align:left}
.hv-dato{display:flex;align-items:center;gap:14px;margin:0}
.hv-dato svg{flex:none}
.hv-dato b,.hv-dato small{display:block;font:700 19px/1.3 var(--sans);letter-spacing:.06em;text-transform:uppercase}
.hv-dato b{font-size:clamp(20px,2.4vw,25px)}
.hv-diag{display:none}
@media (min-width:860px){
  .hv-datos{grid-template-columns:1fr auto 1.25fr;align-items:center;gap:34px}
  .hv-diag{display:block;width:2px;height:140px;background:var(--crema);transform:rotate(-28deg)}
}

.hv-guia{display:flex;align-items:center;gap:22px;margin:clamp(30px,5vw,50px) 0 0}
.hv-guia::before,.hv-guia::after{content:"";flex:1;height:2px;background:var(--crema)}
.hv-guia b{display:block;font:400 clamp(26px,4vw,40px)/1.1 var(--serif)}
.hv-guia small{display:block;margin-top:6px;font:700 19px/1.25 var(--sans);letter-spacing:.2em;text-transform:uppercase}

.hv-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 22px;margin:clamp(28px,4.5vw,44px) 0 0}
.hv-cta span{font:700 19px/1.2 var(--sans);letter-spacing:.08em;text-transform:uppercase}

/* Retrato sobre la franja de la fecha, como en el afiche */
.hv-escena{position:relative;display:flex;justify-content:center;margin-top:clamp(30px,4.5vw,52px);
  background:url(../img/evento-triangulos.svg) center bottom/min(1100px,170vw) auto no-repeat}
.hv-retrato{position:relative;z-index:2;display:block;width:min(560px,86vw);height:auto}
.hv-franja{position:absolute;z-index:1;left:0;right:0;top:9.5%;height:18%;background:var(--crema);display:flex;align-items:center}
.hv-franja .wrap{display:flex;justify-content:space-between;align-items:center;width:100%}
.hv-franja p{margin:0;color:var(--rojo);font:500 clamp(22px,3.3vw,48px)/1 var(--serif);text-align:center}
.hv-franja b{font-weight:500}
.hv-corto{display:none}
@media (max-width:899px){
  .hv-franja p{font:600 13px/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase}
  .hv-franja b{display:block;font:500 34px/1 var(--serif);letter-spacing:0}
  .hv-largo{display:none}
  .hv-corto{display:inline}
}
.hv-pie{position:relative;z-index:3;margin:0;padding:16px 16px 17px;background:var(--crema);color:var(--rojo);font:600 clamp(14px,2vw,18px)/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase}

/* --- Secciones --- */
.hv-papel,.hv-verde,.hv-cierre{padding:clamp(48px,7vw,96px) 0}
.hv-papel{background:var(--crema);color:var(--tinta)}
.hv-papel a:not(.btn){color:var(--rojo)}
.hv-verde{background:var(--verde-hondo)}
.hv-cierre{text-align:center}
.hv h2{margin:0 0 22px;font:400 clamp(32px,5vw,52px)/1.05 var(--serif);letter-spacing:-.01em;color:var(--rojo)}
.hv-verde h2{color:var(--crema)}
.hv-papel h2:not(:first-child){margin-top:clamp(48px,7vw,80px)}
.hv-intro{font-size:19px;line-height:1.55;margin:0 0 22px}

.hv-lista{margin:0;border-top:2px solid var(--rojo)}
.hv-lista div{display:grid;gap:4px;padding:16px 0;border-bottom:1px solid rgba(43,28,20,.18)}
.hv-lista dt{font:600 13px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--rojo)}
.hv-lista dd{margin:0;font-size:19px;line-height:1.5}
@media (min-width:700px){.hv-lista div{grid-template-columns:190px 1fr;gap:24px;align-items:baseline}}
.hv-lista--clara{border-top-color:var(--crema)}
.hv-lista--clara div{border-bottom-color:rgba(255,248,238,.28)}
.hv-lista--clara dt{color:#F6D9A0}

.hv-pasos{list-style:none;margin:0;padding:0;counter-reset:paso;display:grid;gap:14px}
.hv-pasos li{counter-increment:paso;position:relative;padding:20px 20px 20px 78px;background:#fff;border-radius:var(--r);font-size:18px;line-height:1.5;box-shadow:0 1px 0 rgba(43,28,20,.12)}
.hv-pasos li::before{content:counter(paso);position:absolute;left:18px;top:18px;width:44px;height:44px;border-radius:50%;background:var(--rojo);color:var(--crema);
  font:400 26px/42px var(--serif);text-align:center}
.hv-pasos b{display:block;font:400 24px/1.25 var(--serif);margin-bottom:2px}
.hv-aviso{margin:22px 0 0;padding:18px 20px;border-left:5px solid var(--rojo);background:#F8E4DC;border-radius:0 var(--r) var(--r) 0;font-size:18px;line-height:1.5}
.hv-cta--papel{justify-content:flex-start}
.hv-papel .hv-cta span{color:var(--rojo)}

.hv-faq{margin:0;border-top:2px solid var(--rojo)}
.hv-faq div{padding:20px 0;border-bottom:1px solid rgba(43,28,20,.18)}
.hv-faq dt{font:500 22px/1.3 var(--serif);margin-bottom:6px}
.hv-faq dd{margin:0;font-size:18px;line-height:1.55}
.hv .health-box{background:#fff}
