/* Páginas simples (26/10/2026): arrepentimiento y 404. Mismo estilo que condiciones y privacidad
   (que lo tienen en línea), en un archivo para no depender de estilos en línea. */
:root{
  --bg:#f7f0e6; --card:#fffaf3; --ink:#2b211a; --ink-soft:#6b5f54;
  --line:#e6dccd; --accent:#a0561f; --error:#a3262f;
}
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65; font-size:16px;
}
.wrap{ max-width:760px; margin:0 auto; padding:0 20px; }
header.top{ background:var(--ink); color:#f7f0e6; padding:20px 0; }
header.top .wrap{ display:flex; align-items:center; justify-content:space-between; gap:16px; }
header.top .marca{ font-family:Georgia,"Times New Roman",serif; font-size:1.5rem; font-weight:700; letter-spacing:.02em; }
header.top a{ color:#f4d9c2; text-decoration:none; font-size:.9rem; font-weight:600; display:inline-flex; align-items:center; min-height:44px; }
header.top a:hover{ text-decoration:underline; }
main{ padding:40px 0 64px; }
h1{ font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.9rem,5vw,2.6rem); line-height:1.1; margin:0 0 6px; }
h2{ font-family:Georgia,"Times New Roman",serif; font-size:1.28rem; line-height:1.2; margin:28px 0 10px; }
.fecha{ color:var(--ink-soft); font-size:.95rem; margin:0 0 24px; }
.intro{ background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 20px; margin-bottom:24px; color:var(--ink-soft); font-size:.97rem; }
p{ margin:0 0 12px; }
a{ color:var(--accent); }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible{ outline:3px solid var(--accent); outline-offset:2px; }

.form-legal{ background:var(--card); border:1px solid var(--line); border-radius:14px; padding:20px; margin:24px 0 8px; }
.campo{ margin-bottom:16px; }
.campo-fila{ display:grid; gap:0 16px; }
@media (min-width:560px){ .campo-fila{ grid-template-columns:1fr 1fr; } }
label{ display:block; font-weight:600; font-size:.95rem; margin-bottom:4px; }
.ayuda{ font-weight:400; color:var(--ink-soft); font-size:.88rem; }
input, textarea{ width:100%; min-height:44px; padding:10px 12px; border:1px solid #cbbba6; border-radius:10px; background:#fff; color:var(--ink); font:inherit; }
textarea{ resize:vertical; }
input[aria-invalid=true]{ border-color:var(--error); }
.campo-error{ color:var(--error); font-size:.9rem; margin:4px 0 0; }
.trampa{ position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.boton{ display:inline-block; min-height:48px; padding:12px 22px; border:0; border-radius:999px; background:var(--ink); color:#f7f0e6; font:inherit; font-weight:700; cursor:pointer; text-decoration:none; }
.boton:hover{ background:#4a3a2e; }
.boton:disabled{ opacity:.6; cursor:wait; }
.boton-linea{ background:transparent; color:var(--ink); border:1px solid var(--ink); }
.boton-linea:hover{ background:var(--card); }
.estado-form{ margin:12px 0 0; font-size:.95rem; }
.resultado{ background:var(--card); border:1px solid var(--line); border-radius:14px; padding:20px; margin:24px 0; }
.resultado:focus{ outline:none; }
.resultado h2{ margin-top:0; }
.codigo{ font-size:1.2rem; letter-spacing:.04em; }

footer.pie{ border-top:1px solid var(--line); margin-top:48px; padding:26px 0; color:var(--ink-soft); font-size:.86rem; text-align:center; }
footer.pie p{ margin:0 0 8px; }
footer.pie a{ color:var(--ink-soft); }

/* 404 con la marca del sitio (oscuro, Playfair, dulce de leche), mismas fuentes locales que styles.css. */
@font-face{ font-family:"Playfair Display"; font-style:normal; font-weight:400 700; font-display:swap; src:url("/assets/fuentes/playfair-latin.woff2") format("woff2"); }
@font-face{ font-family:"Inter"; font-style:normal; font-weight:400 700; font-display:swap; src:url("/assets/fuentes/inter-latin.woff2") format("woff2"); }
.p404{
  --bg:#14100C; --card:#221B14; --ink:#F3EADB; --ink-soft:#D6C8B2; --line:rgba(243,234,219,.14); --accent:#E2A756;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  min-height:100vh; display:flex; flex-direction:column;
}
.p404 main{ flex:1; display:flex; align-items:center; padding:48px 0; }
.p404 h1{ font-family:"Playfair Display",Georgia,serif; font-weight:600; margin:0 0 12px; }
.p404-logo{ display:inline-block; margin-bottom:28px; }
.p404-logo img{ height:84px; width:auto; display:block; }
.p404-bajada{ color:var(--ink-soft); font-size:1.05rem; max-width:34rem; margin-bottom:24px; }
.p404 .boton{ background:var(--accent); color:#14100C; }
.p404 .boton:hover{ background:#C4863A; }
.p404-links{ list-style:none; padding:0; margin:26px 0 0; display:flex; flex-wrap:wrap; gap:10px 22px; }
.p404-links a{ display:inline-block; padding:10px 0; color:var(--ink); text-decoration:none; border-bottom:1px solid var(--line); }
.p404-links a:hover{ color:var(--accent); border-color:var(--accent); }
.p404 footer.pie{ margin-top:0; }
