/* Xhris The Barber · páginas legales (aviso legal, privacidad y cookies). Misma estética y mismo tema claro/oscuro que la web. */
@font-face { font-family: 'Syne'; font-weight: 800; font-display: swap; src: url(recursos/fuentes/syne-800.woff2) format('woff2'); }
@font-face { font-family: 'Outfit'; font-weight: 300 700; font-display: swap; src: url(recursos/fuentes/outfit-latin.woff2) format('woff2'); }
:root { --bg: #07070A; --bg-2: #101116; --texto: #F8FAFC; --suave: #C3CBD8; --oro: #D4AF37; --oro-texto: #E3C766; --linea: rgb(243 229 171 / .14); color-scheme: dark; }
/* Tema claro: el del sistema o el elegido en la web (data-theme, lo pone el script del <head>) */
@media (prefers-color-scheme: light) {
  :root:not([data-theme="oscuro"]) { --bg: #F1F2F5; --bg-2: #FFFFFF; --texto: #0B0B0F; --suave: #3D4452; --oro: #8A6A12; --oro-texto: #7A5C0C; --linea: rgb(11 11 15 / .12); color-scheme: light; }
}
:root[data-theme="claro"] { --bg: #F1F2F5; --bg-2: #FFFFFF; --texto: #0B0B0F; --suave: #3D4452; --oro: #8A6A12; --oro-texto: #7A5C0C; --linea: rgb(11 11 15 / .12); color-scheme: light; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--texto); font: 400 17px/1.65 Outfit, system-ui, sans-serif; -webkit-text-size-adjust: 100%; }
a { color: var(--oro-texto); text-underline-offset: 3px; }
a:focus-visible { outline: 2px solid var(--oro); outline-offset: 3px; border-radius: 4px; }
.legal-cab { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 860px; margin: 0 auto; padding: 18px 20px; border-bottom: 1px solid var(--linea); }
.legal-marca { display: inline-flex; align-items: center; gap: 10px; color: var(--texto); text-decoration: none; font: 800 17px/1 Syne, sans-serif; letter-spacing: .04em; text-transform: uppercase; }
.legal-marca svg { width: 28px; height: 31px; }
.legal-volver { display: inline-flex; align-items: center; min-height: 44px; padding: 0 18px; border: 1px solid var(--linea); border-radius: 999px; color: var(--texto); text-decoration: none; font-size: 15px; white-space: nowrap; }
.legal { max-width: 860px; margin: 0 auto; padding: 40px 20px 64px; }
.legal h1 { font: 800 clamp(32px, 7vw, 52px)/1.05 Syne, sans-serif; letter-spacing: -.03em; margin: 0; }
.legal h2 { font: 800 clamp(20px, 3.4vw, 24px)/1.25 Syne, sans-serif; margin: 40px 0 10px; }
.legal p, .legal li { color: var(--suave); }
.legal strong { color: var(--texto); }
.legal-fecha { font-size: 14px; margin-top: 10px; }
.legal-datos { margin: 16px 0 0; border: 1px solid var(--linea); border-radius: 14px; background: var(--bg-2); }
.legal-datos div { display: grid; grid-template-columns: minmax(120px, 30%) 1fr; gap: 4px 16px; padding: 12px 16px; border-top: 1px solid var(--linea); }
.legal-datos div:first-child { border-top: 0; }
.legal-datos dt { font-weight: 600; }
.legal-datos dd { margin: 0; color: var(--suave); overflow-wrap: anywhere; }
@media (max-width: 520px) { .legal-datos div { grid-template-columns: 1fr; } }
.legal-tabla { overflow-x: auto; margin-top: 14px; border: 1px solid var(--linea); border-radius: 14px; }
.legal table { width: 100%; border-collapse: collapse; font-size: 15px; min-width: 520px; }
.legal th, .legal td { text-align: left; padding: 10px 14px; border-top: 1px solid var(--linea); vertical-align: top; }
.legal thead th { border-top: 0; background: var(--bg-2); }
.legal td { color: var(--suave); }
.legal code { font-size: 14px; color: var(--texto); }
.legal-pie { max-width: 860px; margin: 0 auto; padding: 20px 20px 40px; border-top: 1px solid var(--linea); color: var(--suave); font-size: 15px; }
@media (max-width: 359px) { .legal-cab { padding-inline: 16px; gap: 10px; } .legal-marca { font-size: 14px; gap: 8px; } .legal-volver { padding: 0 12px; font-size: 14px; } }
