/* Páginas secundarias de Tuneame (términos, privacidad, 404). Misma identidad que la portada: Outfit + DM Sans, tinta/papel, naranja y azul, esquinas rectas. */
@font-face{font-family:Outfit;src:url('/brand/assets/fonts/Outfit-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Outfit;src:url('/brand/assets/fonts/Outfit-800.woff2') format('woff2');font-weight:800;font-display:swap}
@font-face{font-family:DM;src:url('/brand/assets/fonts/DMSans-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:DM;src:url('/brand/assets/fonts/DMSans-600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:DM;src:url('/brand/assets/fonts/DMSans-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--ink:#202837;--paper:#fffdfa;--orange:#ff7f45;--orange-hover:#ffa270;--blue:#335cff;--line:#ced0d4;--muted:#536071;--peach:#fff0e7;--sky:#e7edff}
*{box-sizing:border-box}
html{background:var(--paper);scroll-padding-top:24px}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);font:400 16px/1.6 DM,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:Outfit,sans-serif;letter-spacing:-.035em;line-height:1.05;text-wrap:balance}
::selection{background:var(--orange);color:var(--ink)}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--paper);padding:12px}
.skip-link:focus{top:10px}

/* Cabecera y pie compartidos */
.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px;padding:0 max(18px,calc((100vw - 1200px)/2));border-bottom:1px solid var(--ink)}
.page-header .brand img{width:150px;height:auto}
.page-header nav{display:flex;gap:22px}
.page-header nav a{font-size:14px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink);padding:6px 0}
.page-header nav a:hover{color:var(--blue);border-color:var(--blue)}
.page-footer{background:var(--ink);color:var(--paper);padding:50px max(18px,calc((100vw - 1200px)/2)) 24px;margin-top:auto}
.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:40px}
.footer-top>img{width:190px;height:auto}
.footer-top>p{font:700 30px/1.1 Outfit,sans-serif;letter-spacing:-.03em;max-width:12ch}
.footer-top nav{display:flex;flex-direction:column;gap:10px;font-size:14px}
.footer-top nav a{text-decoration:none}
.footer-top nav a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 24px;border-top:1px solid #ffffff44;margin-top:40px;padding-top:20px;font-size:11px;color:#c9d0dc}
.footer-bottom a{color:inherit}
.labs-mark{display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.labs-mark img{width:14px;height:14px}

/* Documento legal: cabecera, índice lateral y capítulos numerados */
.legal{width:min(1200px,100% - 46px);margin:44px auto 90px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px 70px;align-items:start}
.legal-head{grid-column:1/-1;display:grid;gap:18px;padding-bottom:36px;border-bottom:1px solid var(--ink)}
.kicker{font:700 13px/1.3 DM,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.legal-head h1{font-size:clamp(40px,5.4vw,72px);font-weight:800;line-height:.99;max-width:18ch}
.lead{font-size:18px;color:var(--muted);max-width:62ch}
.meta{font-size:13px;color:var(--muted)}
.legal-index{position:sticky;top:24px}
.legal-index h2{font-size:13px;font-family:DM,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.legal-index ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.legal-index a{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px;font-weight:600;text-decoration:none}
.legal-index a span{font:700 13px/1.6 Outfit,sans-serif;color:var(--orange);flex:none;width:22px}
.legal-index a:hover{color:var(--blue)}
.legal-body{min-width:0}
.legal-body section{padding:30px 0 34px;border-top:1px solid var(--line)}
.legal-body section:first-child{border-top:0;padding-top:0}
.legal-body h2{display:flex;align-items:baseline;gap:14px;font-size:27px;margin-bottom:16px}
.legal-body h2 span{font:700 14px/1 Outfit,sans-serif;color:var(--orange);letter-spacing:0}
.legal-body p,.legal-body li{max-width:68ch}
.legal-body p+p{margin-top:12px}
.legal-body ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.legal-body li{position:relative;padding-left:22px}
.legal-body li::before{content:'';position:absolute;left:0;top:.62em;width:9px;height:9px;background:var(--orange)}
.legal-body strong{font-weight:700}
.legal-states{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px;padding:0;list-style:none}
.legal-states li{padding:8px 12px;background:var(--sky);font-size:13px;font-weight:700}
.legal-states li::before{display:none}
.legal-states li{padding-left:12px}
.legal-note{background:var(--peach);padding:18px 20px;margin-top:18px;font-size:15px}

/* 404 */
.notfound{flex:1;width:min(1200px,100% - 46px);margin:40px auto 80px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:50px;align-items:center}
.notfound-code{font:800 clamp(88px,16vw,200px)/.9 Outfit,sans-serif;letter-spacing:-.05em;color:var(--orange)}
.notfound h1{font-size:clamp(36px,4.6vw,60px);font-weight:800;margin:18px 0 16px}
.notfound p{font-size:17px;color:var(--muted);max-width:44ch}
.notfound-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:14px 23px;font-size:14px;font-weight:700;text-decoration:none;border:0;transition:background .18s}
.button.orange{background:var(--orange);color:var(--ink)}
.button.orange:hover{background:var(--orange-hover)}
.button.dark{background:var(--ink);color:var(--paper)}
.button.dark:hover{background:var(--blue)}
.notfound figure{margin:0}
.notfound img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.notfound figcaption{font-size:12px;color:var(--muted);margin-top:8px}

@media(max-width:900px){
  .legal{grid-template-columns:1fr;gap:30px;margin-top:30px}
  .legal-index{position:static}
  .notfound{grid-template-columns:1fr;gap:30px}
  .notfound figure{order:-1;max-width:360px}
  .footer-top{flex-direction:column;gap:22px}
}
@media(max-width:560px){
  .page-header{height:66px}
  .page-header .brand img{width:118px}
  .page-header nav{gap:14px}
  .page-header nav a{font-size:13px}
  .legal{width:calc(100% - 32px)}
  .notfound{width:calc(100% - 32px)}
  .legal-body h2{font-size:24px}
  .footer-top>img{width:160px}
  .footer-top>p{font-size:24px}
  .page-footer{padding-top:36px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
