.legal-page { background: #fff; color: #172033; }
.legal-container { width: min(100% - 4.8rem, 108rem); margin: 0 auto; }
.legal-hero { padding: 10rem 0 7.2rem; background: linear-gradient(180deg, #fff 0%, #fffdf2 58%, #ffeb72 100%); border-bottom: 1px solid rgba(123, 91, 0, .12); }
.legal-hero h1 { max-width: 72rem; margin: 0; font-size: clamp(4rem, 6vw, 6.6rem); line-height: 1.05; letter-spacing: -.06em; }
.legal-hero > div > p:not(.legal-eyebrow):not(.legal-updated) { max-width: 58rem; margin: 2.2rem 0 0; color: #475569; font-size: 1.85rem; line-height: 1.6; }
.legal-eyebrow { margin: 0 0 1.4rem; color: #d96d11; font-size: 1.2rem; font-weight: 800; letter-spacing: .1em; }
.legal-updated { margin: 3.2rem 0 0; color: #697586; font-size: 1.35rem; }
.legal-content { display: grid; grid-template-columns: 20rem minmax(0, 1fr); gap: 8rem; padding: 7.2rem 0 9.6rem; }
.legal-toc { position: sticky; top: 3rem; align-self: start; display: grid; gap: 1.15rem; padding: 2.2rem; border: 1px solid #e8eaee; border-radius: 1.2rem; background: #fff; }
.legal-toc p { margin: 0 0 .4rem; color: #d96d11; font-size: 1.15rem; font-weight: 800; letter-spacing: .08em; }
.legal-toc a { color: #536174; font-size: 1.4rem; text-decoration: none; }
.legal-toc a:hover { color: #d96d11; }
.legal-copy { max-width: 72rem; }
.legal-copy section { padding-bottom: 4.8rem; margin-bottom: 4.8rem; border-bottom: 1px solid #e8eaee; scroll-margin-top: 3rem; }
.legal-copy h2 { margin: 0 0 1.8rem; font-size: 3.2rem; letter-spacing: -.045em; }
.legal-copy h3 { margin: 0 0 .8rem; font-size: 1.7rem; }
.legal-copy p, .legal-copy li { color: #475569; font-size: 1.65rem; line-height: 1.7; }
.legal-copy p { margin: 0 0 1.6rem; }
.legal-copy ul { display: grid; gap: 1rem; margin: 0 0 2rem; padding-left: 2.2rem; }
.legal-copy li::marker { color: #e67e22; }
.legal-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.6rem; }
.legal-grid > div { padding: 2.4rem; border: 1px solid #e7e9ed; border-radius: 1.2rem; background: #fff; }
.legal-grid p { margin: 0; font-size: 1.45rem; }
.legal-contact { padding: 4rem !important; border: 0 !important; border-radius: 1.6rem; background: linear-gradient(145deg, #fffdf3, #ffe35a); }
.legal-contact h2 { font-size: 3.6rem; }
.legal-contact-button { display: inline-flex; width: auto; margin-top: .8rem; border: 0; background: #e97916; color: #fff; }
.legal-contact-button:hover { background: #c96512; }
.legal-footer { padding: 3.2rem 0; border-top: 1px solid #e8eaee; color: #687386; font-size: 1.35rem; }
.legal-footer div { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.legal-footer a { color: #d96d11; font-weight: 700; text-decoration: none; }
@media (max-width: 50em) { .legal-content { grid-template-columns: 1fr; gap: 3.2rem; padding-top: 4.8rem; } .legal-toc { position: static; grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 34em) { .legal-container { width: min(100% - 3.2rem, 108rem); } .legal-hero { padding: 7.2rem 0 5.6rem; } .legal-grid { grid-template-columns: 1fr; } .legal-toc { grid-template-columns: 1fr 1fr; } .legal-copy h2 { font-size: 2.8rem; } .legal-contact { padding: 3.2rem 2.4rem !important; } }

/* Same orange/navy Pesaby identity as the liquor-store sidebar. */
.site-brand, .footer-brand { gap:0; }
.site-brand-name, .footer-brand-name { position:relative; padding-top:1.2rem; font-family:Inter,"Segoe UI",sans-serif; font-size:3rem; font-weight:800; line-height:3rem; letter-spacing:-.045em; color:#092C4C; }
.site-brand-name span, .footer-brand-name span { position:absolute; right:0; top:0; color:#F2B90C; font-size:1.1rem; font-weight:800; line-height:1.2rem; letter-spacing:.025em; }
.site-brand-logo, .footer-brand-logo { width:3.2rem; height:3.2rem; transform:translateY(.5rem); }
