.legal-hero { padding-block: 90px 70px; border-bottom: 1px solid var(--line); }
.legal-hero h1 { font-size: clamp(36px, 6.5vw, 80px); line-height: 1.05; letter-spacing: -.055em; margin-top: 24px; overflow-wrap: anywhere; }
.legal-hero h1 span { color: var(--orange); }
.legal-intro { max-width: 660px; margin-top: 30px; color: var(--muted); font-size: 17px; line-height: 1.8; }
.legal-meta { display: flex; gap: 30px; align-items: center; flex-wrap: wrap; margin-top: 32px; font-size: 12px; color: var(--muted); }
.legal-meta .text-link { font-size: 12px; }
.legal-review { font-size: 12px; color: #9c3f20; margin-top: 25px; }
.legal-layout { display: grid; grid-template-columns: 265px minmax(0,1fr); gap: 85px; padding-block: 70px 90px; align-items: start; }
.legal-toc { position: sticky; top: 30px; }
.legal-toc h2 { font-size: 14px; letter-spacing: 0; line-height: 1.5; margin-bottom: 20px; }
.legal-toc a { display: flex; gap: 12px; font-size: 12px; line-height: 1.65; padding-block: 8px; color: var(--muted); }
.legal-toc a span { color: #a29a8f; min-width: 20px; }
.legal-toc a:hover { color: var(--orange); }
.legal-section { scroll-margin-top: 35px; margin-bottom: 48px; }
.legal-section h2 { font-size: 24px; line-height: 1.35; letter-spacing: -.035em; margin-bottom: 22px; }
.legal-section p { font-size: 14px; line-height: 1.95; margin-bottom: 18px; color: #514f49; overflow-wrap: anywhere; }
.legal-copy a, .check-note a, .contact-form-note a { text-decoration: underline; text-underline-offset: 3px; }
.legal-company { display: grid; grid-template-columns: 90px 1fr; gap: 12px 20px; font-size: 13px; line-height: 1.8; }
.legal-company dt { color: var(--muted); }
.legal-company dd { margin: 0; overflow-wrap: anywhere; }
@media(max-width:1000px) { .legal-layout { grid-template-columns: 220px minmax(0,1fr); gap: 45px; } }
@media(max-width:750px) { .legal-hero { padding-block: 50px; } .legal-layout { grid-template-columns: 1fr; gap: 40px; padding-block: 40px; } .legal-toc { position: static; } .legal-toc nav { columns: 2; column-gap: 25px; } .legal-toc h2 { column-span: all; } .legal-toc a { break-inside: avoid; } .legal-section h2 { font-size: 22px; } .legal-company { grid-template-columns: 1fr; gap: 4px; } .legal-company dd { margin-bottom: 12px; } }
@media print { .header,.footer,.skip-link,.legal-toc,.legal-meta a { display: none !important; } body { background: white; color: black; } .wrap { width: 100%; max-width: none; } .legal-hero { padding: 0 0 25px; } .legal-hero h1 { font-size: 32px; } .legal-layout { display: block; padding-top: 30px; } .legal-section h2 { break-after: avoid; } .legal-section p { font-size: 10pt; line-height: 1.6; } }
