:root{
  --hueso:#FAF7F2; --tinta:#111111; --rojo:#E03E1F; --coral:#FF6B4A;
  --gris:#6B6560; --linea:#E7E0D6;
  --sans:Aptos,"Segoe UI",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--hueso);color:var(--tinta);font-family:var(--sans);
     font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased}
.wrap{max-width:660px;margin:0 auto;padding:0 26px}

/* ---------- hero en tinta ---------- */
.hero{background:var(--tinta);color:var(--hueso);padding:64px 0 76px}
.hero img.firma{display:block;width:210px;height:auto;margin-bottom:56px}
.hero h1{font-size:clamp(34px,6.4vw,54px);line-height:1.08;letter-spacing:-1.4px;font-weight:800}
.hero h1 .rj{background:var(--rojo);color:#fff;padding:0 .18em;
     box-decoration-break:clone;-webkit-box-decoration-break:clone}
.hero p{color:var(--coral);font-size:19px;margin-top:28px;max-width:30em}

/* ---------- ritmo de una frase por parrafo ---------- */
section{padding:66px 0}
section + section{border-top:1px solid var(--linea)}
h2{font-size:clamp(26px,4vw,34px);line-height:1.15;letter-spacing:-.8px;
   font-weight:800;margin-bottom:30px}
p{margin-bottom:24px;max-width:32em}
p:last-of-type{margin-bottom:0}
strong{font-weight:700}
.lista{list-style:none;margin:0 0 30px}
.lista li{padding:16px 0 16px 26px;border-top:1px solid var(--linea);position:relative;max-width:32em}
.lista li:last-child{border-bottom:1px solid var(--linea)}
.lista li:before{content:"";position:absolute;left:0;top:26px;width:11px;height:2px;background:var(--rojo)}

/* ---------- bloque de alta ---------- */
.alta{margin-top:34px;max-width:32em}
.alta form{display:flex;flex-direction:column;gap:12px}
.alta input[type=email]{font-family:inherit;font-size:17px;padding:15px 17px;
     border:1.5px solid var(--tinta);border-radius:10px;background:#fff;color:var(--tinta);width:100%}
.alta input[type=email]::placeholder{color:#A39C94}
.alta input[type=email]:focus{outline:2px solid var(--rojo);outline-offset:1px}
.alta button{font-family:inherit;font-size:17px;font-weight:700;padding:15px 22px;
     border:none;border-radius:10px;background:var(--rojo);color:#fff;cursor:pointer;letter-spacing:.2px}
.alta button:hover{filter:brightness(1.08)}
.chk{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:var(--gris);line-height:1.45}
.chk input{margin-top:3px;accent-color:var(--rojo);width:16px;height:16px;flex:none}
.chk a{color:var(--tinta)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- filtro en tinta ---------- */
.filtro{background:var(--tinta);color:var(--hueso);border-top:none}
.filtro h2{color:var(--hueso)}
.filtro p{color:#CFC8C1}
.filtro strong{color:var(--coral)}
.filtro .alta input[type=email]{border-color:#3A3733;background:#1B1917;color:var(--hueso)}
.filtro .chk{color:#8F8880}
.filtro .chk a{color:var(--hueso)}

footer{padding:44px 0 66px;font-size:14px;color:var(--gris);line-height:1.85}
footer a{color:var(--gris)}
footer .fm{width:150px;height:auto;display:block;margin-bottom:22px;opacity:.85}

/* ---------- aviso de privacidad ---------- */
.legal{padding:56px 0 80px;font-size:16.5px}
.legal h1{font-size:34px;letter-spacing:-1px;margin-bottom:10px;font-weight:800}
.legal .fecha{color:var(--gris);font-size:14px;margin-bottom:38px}
.legal h2{font-size:20px;margin:38px 0 14px;letter-spacing:-.3px}
.legal p,.legal li{margin-bottom:14px;max-width:36em}
.legal ul{margin:0 0 20px 20px}
.legal a{color:var(--tinta)}
.legal .back{display:inline-block;margin-bottom:34px;color:var(--gris);text-decoration:none;font-size:14px}

@media(max-width:560px){body{font-size:18px}.hero{padding:46px 0 56px}section{padding:52px 0}}
