/* Readable legal documents within the established Dani Olives visual system. */
.legal-page .legal-hero,.legal-page .legal-layout{width:calc(100% - 2 * var(--gap));margin:var(--panel-gap) auto;border-radius:50px}
.legal-hero{padding:clamp(30px,5vw,80px);background:var(--ink);color:var(--white)}
.legal-home{display:inline-flex;align-items:center;min-height:44px;margin-bottom:28px;font-size:12px;color:var(--earth)}
.legal-home:hover{text-decoration:underline;text-underline-offset:4px}
.legal-hero .eyebrow{color:var(--sage);margin-bottom:22px}
.legal-hero h1{font-size:clamp(36px,5.7vw,84px);font-weight:650;letter-spacing:-.045em;line-height:1.1;max-width:1000px;overflow-wrap:break-word}
.legal-intro{max-width:700px;color:var(--earth);font-size:clamp(14px,1.3vw,18px);margin-top:24px}
.legal-date{color:var(--sage);font-size:11px;margin-top:28px}
.legal-layout{padding:var(--panel-pad);display:grid;grid-template-columns:minmax(200px,.55fr) minmax(0,1.45fr);gap:clamp(35px,5vw,90px);background:var(--earth);align-items:start}
.legal-index{position:sticky;top:var(--sticky-offset);align-self:start;max-height:calc(100dvh - var(--sticky-offset) - 24px);overflow:auto;padding:4px 8px 4px 0;scrollbar-width:thin}
.legal-index nav>p{font-size:10px;font-weight:650;letter-spacing:.11em;text-transform:uppercase;color:var(--brown);margin-bottom:20px}
.legal-index ol{list-style:none;padding:0;margin:0}
.legal-index a{display:block;padding:10px 0;min-height:44px;font-size:12px;font-weight:500;line-height:1.6}
.legal-index a:hover{text-decoration:underline;text-underline-offset:4px}
.legal-copy{min-width:0;max-width:900px}
.legal-copy section{padding:0 0 42px;margin-bottom:42px;border-bottom:1px solid #2e32212b;scroll-margin-top:var(--sticky-offset)}
.legal-copy h2{font-size:clamp(23px,2.2vw,30px);font-weight:650;letter-spacing:-.025em;line-height:1.3;margin-bottom:24px;overflow-wrap:break-word}
.legal-copy p{font-size:14px;line-height:1.9;max-width:78ch}
.legal-copy p+p{margin-top:18px}
.legal-copy p a,.legal-copy dd a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-copy a:hover{color:var(--olive)}
.legal-owner{margin:0 0 28px;font-size:13px;line-height:1.75}
.legal-owner div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;padding:10px 0;border-bottom:1px solid #2e32211a}
.legal-owner dt{font-weight:600}.legal-owner dd{margin:0;overflow-wrap:anywhere}
.legal-table-wrap{width:100%;overflow-x:auto;margin-top:28px}
.legal-copy table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.7}
.legal-copy caption{text-align:left;font-size:12px;font-weight:600;margin-bottom:18px}
.legal-copy th,.legal-copy td{padding:15px 12px;border:1px solid #2e32212b;text-align:left;vertical-align:top;min-width:125px}
.legal-copy thead{background:var(--ink);color:var(--white)}
.legal-copy tbody th{font-weight:600;min-width:140px}
.legal-bottom{padding-top:0}.legal-bottom .pill:hover{color:var(--white)}
.legal-page #enlaces{margin-top:var(--panel-gap)}
.legal-page .footer-legal a[aria-current=page]{font-weight:650}
@media(max-width:1100px){.legal-layout{grid-template-columns:minmax(0,1fr);gap:40px}.legal-index{position:static;max-height:none;overflow:visible;padding:0 0 30px;border-bottom:1px solid #2e32212b}.legal-index ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.legal-copy{max-width:none}}
@media(max-width:760px){.legal-page .legal-hero,.legal-page .legal-layout{border-radius:35px}.legal-index ol{grid-template-columns:minmax(0,1fr)}.legal-owner div{grid-template-columns:minmax(0,1fr);gap:3px}.legal-copy p{font-size:13px}.legal-copy section{padding-bottom:30px;margin-bottom:30px}.legal-home{margin-bottom:20px}.legal-hero{padding:30px 24px}.legal-intro{margin-top:20px}}
