/* Páginas informativas; no modifica el diseño de la portada. */
.legal-page { background:#f5f5f7; color:#1d1d1f; }
.legal-shell { width:min(880px,calc(100% - 48px)); margin:0 auto; }
.legal-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:26px 0; border-bottom:1px solid #dedee5; }
.legal-brand { color:inherit; text-decoration:none; font-weight:600; letter-spacing:-.03em; font-size:18px; }
.legal-header nav,.legal-footer nav { display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; font-size:12px; }
.legal-header a,.legal-footer a { color:inherit; }
.legal-main { padding:64px 0 50px; }
.legal-main h1 { font-size:clamp(34px,6vw,54px); line-height:1.08; letter-spacing:-.05em; margin:0 0 20px; }
.legal-main .legal-lead { font-size:18px; line-height:1.65; color:#64646d; max-width:750px; }
.legal-updated { margin:20px 0 30px; font-size:12px; color:#777781; }
.legal-card { margin:22px 0; padding:28px; background:#fff; border:1px solid #e0e0e6; border-radius:22px; }
.legal-card h2 { font-size:23px; line-height:1.25; letter-spacing:-.025em; margin:0 0 15px; }
.legal-card h3 { font-size:16px; margin:20px 0 8px; }
.legal-card p,.legal-card li,.legal-card dd,.legal-card dt { font-size:15px; line-height:1.75; }
.legal-card p+p { margin-top:13px; }
.legal-card ul { padding-left:21px; margin:14px 0; }
.legal-card li { margin:5px 0; }
.legal-card a { color:#3d3d48; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-facts { display:grid; grid-template-columns:130px minmax(0,1fr); gap:8px 18px; margin:0; }
.legal-facts dt { color:#70707a; }
.legal-facts dd { margin:0; overflow-wrap:anywhere; }
.legal-card details { margin-top:18px; border-top:1px solid #e4e4ea; padding-top:16px; }
.legal-card summary { cursor:pointer; font-size:14px; line-height:1.5; color:#575762; }
.legal-card details p { font-size:13px; color:#6b6b75; margin-top:13px; }
.legal-link-button { display:inline-flex; justify-content:center; align-items:center; min-height:46px; padding:12px 20px; border:1px solid #ceced6; border-radius:100px; background:#f7f7f9; color:#303038!important; font-size:13px; text-decoration:none!important; }
.legal-footer { padding:23px 0 32px; border-top:1px solid #dedee5; color:#6e6e78; font-size:12px; line-height:1.7; }
.legal-footer p { margin-top:16px; }
@media(max-width:600px) { .legal-shell { width:calc(100% - 32px); } .legal-header { align-items:flex-start; flex-direction:column; gap:12px; padding:20px 0; } .legal-main { padding-top:38px; } .legal-card { padding:21px; border-radius:18px; } .legal-facts { grid-template-columns:1fr; gap:2px; } .legal-facts dd { margin-bottom:10px; } .legal-main .legal-lead { font-size:16px; } }
