/* ===== Karpintec · aviso de cookies, páginas legales y página de gracias (03-10-2026) =====
   Se carga DESPUÉS de estilos.css y segunda-vuelta.css (usa sus tokens).
   Las legales y la de gracias las genera ../generar-paginas.py. */

/* ---------- Aviso de cookies (js/cookies.js) · Aceptar y Rechazar pesan lo mismo ---------- */
.cookies{position:fixed;left:16px;bottom:calc(16px + var(--barra,0px));z-index:120;width:min(420px,calc(100% - 32px));padding:20px 20px 16px;border-radius:16px;background:#fff;color:var(--c-ink);border:1px solid var(--c-line);box-shadow:0 1px 2px rgba(35,26,22,.06),0 24px 48px -24px rgba(35,26,22,.35);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease),bottom .3s var(--ease)}
.cookies.es-visible{opacity:1;transform:none;pointer-events:auto}
.cookies__t{font-weight:600;font-size:1rem;letter-spacing:-.01em}
.cookies__p{margin-top:6px;font-size:.875rem;line-height:1.5;color:var(--c-ink-2)}
.cookies__p a{color:var(--c-ink)}
.cookies__acciones{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.cookies__btn{height:44px;border-radius:10px;border:1px solid rgba(35,26,22,.22);background:#fff;color:var(--c-ink);font-weight:600;font-size:.9375rem;transition:background .2s,border-color .2s}
.cookies__btn:hover{background:var(--c-stone);border-color:var(--c-ink)}
@media (max-width:768px){ .cookies{left:12px;right:12px;width:auto;bottom:calc(12px + var(--barra,0px))} }

/* ---------- Cabecera y pie de las páginas simples ---------- */
.cab-simple{background:#fff;border-bottom:1px solid var(--c-line)}
.cab-simple .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.cab-simple img{height:34px;width:auto}
.cab-simple__volver{display:inline-flex;align-items:center;gap:8px;font-size:.9375rem;font-weight:600;text-decoration:none;color:var(--c-ink-2)}
.cab-simple__volver svg{width:16px;height:16px}
.cab-simple__volver:hover{color:var(--c-ink)}
.pie-simple{border-top:1px solid var(--c-line);background:#fff}
.pie-simple .pie2{padding:40px 0}
.pie2__legal a[aria-current]{color:var(--c-ink);font-weight:600}
@media (max-width:768px){ .pie-simple .pie2{padding:32px 0 calc(32px + env(safe-area-inset-bottom))} }

/* ---------- Páginas legales ---------- */
.legal{padding:clamp(48px,6vw,88px) 0 var(--sec-y)}
.legal .h1{font-size:clamp(2.25rem,1.4rem + 2.6vw,3.5rem);line-height:1.05;letter-spacing:-.03em;margin-top:14px}
.legal__fecha{margin-top:14px;color:var(--c-ghost);font-size:.875rem}
.legal__cuerpo{max-width:72ch;margin-top:40px}
.legal__cuerpo h2{font-size:1.375rem;font-weight:600;letter-spacing:-.02em;line-height:1.25;margin:40px 0 12px}
.legal__cuerpo p,.legal__cuerpo li{color:var(--c-ink-2)}
.legal__cuerpo p+p{margin-top:12px}
.legal__cuerpo ul{margin:12px 0;display:grid;gap:8px}
.legal__cuerpo ul li{position:relative;padding-left:20px}
.legal__cuerpo ul li::before{content:"";position:absolute;left:2px;top:.72em;width:6px;height:6px;border-radius:2px;background:var(--c-accent)}
.legal__cuerpo b{color:var(--c-ink);font-weight:600}
.legal__cuerpo a{color:var(--c-ink)}
.legal__ficha{margin:16px 0;padding:20px 24px;border-radius:14px;background:var(--c-stone);display:grid;gap:4px}
.legal__ficha p{margin:0!important}
.legal__tabla{width:100%;border-collapse:collapse;margin:16px 0;font-size:.9375rem}
.legal__tabla th,.legal__tabla td{text-align:left;vertical-align:top;padding:12px 12px 12px 0;border-bottom:1px solid var(--c-line)}
.legal__tabla th{font-weight:600;color:var(--c-ink);font-size:.8125rem;letter-spacing:.04em;text-transform:uppercase}
.legal__tabla td{color:var(--c-ink-2)}
.legal__tabla td:first-child{color:var(--c-ink);font-weight:600;white-space:nowrap}
.legal__boton{margin-top:24px}
.btn-borde{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 22px;border-radius:14px;border:1px solid rgba(35,26,22,.22);background:#fff;color:var(--c-ink);font-weight:600;text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.btn-borde:hover{background:var(--c-ink);color:#fff;border-color:var(--c-ink)}
.btn-borde svg{width:18px;height:18px}
@media (max-width:640px){
  .legal__tabla thead{display:none}
  .legal__tabla tr{display:grid;padding:12px 0;border-bottom:1px solid var(--c-line)}
  .legal__tabla td{border:0;padding:2px 0}
}

/* ---------- Página de gracias: el mismo «certificado» del cierre de la landing ---------- */
.gracias{background:var(--c-stone);padding:calc(clamp(56px,6vw,88px) + 84px) 0 clamp(56px,6vw,96px)}
.gracias .certificado{padding-top:112px}
.gracias .certificado__sello svg{width:168px;height:168px;color:var(--c-accent)}
.gracias .h1{font-size:clamp(2.125rem,1.3rem + 2.8vw,3.5rem);line-height:1.05;letter-spacing:-.03em;max-width:16ch;margin:14px auto 0}
.gracias .lead{max-width:40ch;margin:16px auto 0}
.gracias__pasos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:40px 0 0;text-align:left;border-top:1px solid var(--c-line)}
.gracias__pasos li{padding:24px 20px 4px 0}
.gracias__pasos li+li{padding-left:20px;border-left:1px solid var(--c-line)}
.gracias__pasos .n{display:block;font-family:var(--f-accent);font-style:italic;font-size:2rem;line-height:1;color:var(--c-accent)}
.gracias__pasos b{display:block;margin-top:10px;font-size:1.0625rem;letter-spacing:-.01em}
.gracias__pasos span{display:block;margin-top:4px;font-size:.9375rem;line-height:1.5;color:var(--c-ink-2)}
.gracias__caja{margin-top:36px;padding:24px;border-radius:16px;background:var(--c-stone);display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left}
.gracias__caja b{font-size:1.0625rem;letter-spacing:-.01em}
.gracias__caja p{margin-top:2px;font-size:.9375rem;color:var(--c-ink-2)}
.gracias__acciones{display:flex;flex-wrap:wrap;gap:10px;flex:none}
@media (max-width:768px){
  .gracias{padding:calc(48px + 84px) 0 48px}
  .gracias .certificado{padding:100px 22px 28px;border-radius:18px}
  .gracias .certificado__sello{top:-76px;width:152px;height:152px;margin-left:-76px}
  .gracias .certificado__sello svg{width:138px;height:138px}
  .gracias__pasos{grid-template-columns:1fr;margin-top:28px}
  .gracias__pasos li,.gracias__pasos li+li{padding:18px 0;border-left:0}
  .gracias__pasos li+li{border-top:1px solid var(--c-line)}
  .gracias__caja{flex-direction:column;align-items:stretch}
  .gracias__acciones{flex-direction:column}
  .gracias__acciones .btn,.gracias__acciones .btn-borde{width:100%;justify-content:space-between}
  .gracias__acciones .btn-borde{justify-content:center}
}
