.legal-page { background: var(--page-light); }
.legal-hero { min-height: 560px; padding: 170px 0 90px; position: relative; overflow: hidden; background: radial-gradient(circle at 76% 55%,rgba(145,185,76,.1),transparent 30%),linear-gradient(145deg,#050808,#0c120d); }
.legal-hero-grid { position: absolute; inset: 0; opacity: .36; background-image: linear-gradient(rgba(255,255,255,.023) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.023) 1px,transparent 1px); background-size: 52px 52px; mask-image: radial-gradient(ellipse at 60% 60%,#000,transparent 72%); }
.legal-hero-content { position: relative; }.legal-hero h1 { max-width: 850px; color: #f4f7f4; font-size: clamp(54px,7vw,94px); line-height: .97; }.legal-hero-content > p:not(.eyebrow) { max-width: 720px; margin: 24px 0 31px; color: #a6b0a8; font-size: 16px; line-height: 1.75; }.legal-meta { display: flex; flex-wrap: wrap; gap: 10px; }.legal-meta > span { min-height: 48px; padding: 8px 13px; display: flex; align-items: center; gap: 9px; color: #aeb7b0; background: rgba(255,255,255,.035); border: 1px solid var(--border-dark); border-radius: 10px; font-size: 7px; }.legal-meta i { padding: 6px; color: var(--ink); background: var(--brand-bright); border-radius: 6px; font-size: 5px; font-style: normal; font-weight: 800; }.legal-meta strong { font-size: 7px; }
.legal-review-banner { color: #473a13; background: #fff8e7; border-bottom: 1px solid #ead9a6; }.legal-review-banner .container { min-height: 105px; padding-block: 20px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 14px; }.legal-review-banner i { width: 40px; height: 40px; display: grid; place-items: center; color: #332904; background: #e7c765; border-radius: 10px; font-size: 14px; font-style: normal; font-weight: 900; }.legal-review-banner strong { font-size: 10px; }.legal-review-banner p { max-width: 950px; margin: 5px 0 0; color: #766943; font-size: 8px; line-height: 1.6; }
.legal-document { padding: 95px 0 130px; }.legal-layout { display: grid; grid-template-columns: 270px minmax(0,780px); align-items: start; justify-content: space-between; gap: 85px; }.legal-toc { position: sticky; top: 110px; padding: 23px; background: #fff; border: 1px solid var(--border-light); border-radius: 15px; box-shadow: 0 12px 35px rgba(38,51,32,.05); }.legal-toc > span { display: block; padding-bottom: 14px; color: var(--brand-dark); border-bottom: 1px solid var(--border-light); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.legal-toc ol { margin: 14px 0 18px; padding: 0; display: grid; gap: 2px; list-style: none; counter-reset: legal-links; }.legal-toc li { counter-increment: legal-links; }.legal-toc li a { min-height: 31px; display: flex; align-items: center; gap: 8px; color: #667267; font-size: 8px; text-decoration: none; transition: color 180ms,transform 180ms; }.legal-toc li a::before { content: counter(legal-links,decimal-leading-zero); color: #a0a9a2; font-size: 6px; }.legal-toc li a:hover { color: var(--brand-dark); transform: translateX(3px); }.legal-toc > a { min-height: 45px; padding: 0 12px; display: flex; align-items: center; justify-content: space-between; color: #e8eee9; background: #111612; border-radius: 9px; font-size: 8px; font-weight: 800; text-decoration: none; }
.legal-content { min-width: 0; }.legal-introduction { margin-bottom: 55px; padding: 25px; background: #fff; border: 1px solid var(--border-light); border-left: 3px solid var(--brand); border-radius: 4px 13px 13px 4px; }.legal-introduction > span { color: var(--brand-dark); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.legal-introduction p { margin: 8px 0 0; font-size: 12px; line-height: 1.75; }.legal-content > section { padding: 0 0 52px; margin-bottom: 52px; border-bottom: 1px solid #dce2d9; scroll-margin-top: 110px; }.legal-section-number { display: block; margin-bottom: 10px; color: var(--brand-dark); font-size: 8px; font-weight: 800; letter-spacing: .09em; }.legal-content h2 { max-width: 700px; margin-bottom: 20px; font-size: clamp(29px,3vw,40px); }.legal-content p { color: #5f6b61; font-size: 12px; line-height: 1.85; }.legal-content p + p { margin-top: 15px; }.legal-content ul { margin: 19px 0; padding: 0; display: grid; gap: 11px; list-style: none; }.legal-content li { padding-left: 21px; position: relative; color: #5f6b61; font-size: 11px; line-height: 1.7; }.legal-content li::before { content: ""; width: 7px; height: 7px; position: absolute; top: 7px; left: 0; background: var(--brand); border: 2px solid #dceaca; border-radius: 50%; }.legal-content li strong { color: #2e3a2f; }.legal-content a { color: var(--brand-dark); font-weight: 800; }
.legal-placeholder { margin-top: 25px; padding: 21px; color: #6f5b22; background: #fffaf0; border: 1px dashed #d8bd70; border-radius: 11px; }.legal-placeholder > strong { display: block; font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }.legal-placeholder ul { margin-bottom: 0; }.legal-placeholder li { color: #776a43; font-size: 9px; }.legal-placeholder li::before { background: #e7c765; border-color: #f5e9c6; }.legal-placeholder p { margin: 8px 0 0; color: #776a43; font-size: 9px; }
.legal-callout { margin-top: 23px; padding: 19px; display: grid; grid-template-columns: auto 1fr; align-items: start; gap: 12px; background: #eef5e8; border: 1px solid #d1e0c5; border-radius: 11px; }.legal-callout > i { width: 32px; height: 32px; display: grid; place-items: center; color: var(--ink); background: var(--brand-bright); border-radius: 8px; font-size: 10px; font-style: normal; font-weight: 900; }.legal-callout p { margin: 2px 0 0; color: #566452; font-size: 9px; line-height: 1.7; }.terms-page .legal-callout { background: #fff9ea; border-color: #e7d7a9; }.terms-page .legal-callout > i { background: #e7c765; }
.legal-document-footer { min-height: 72px; display: flex; align-items: center; justify-content: space-between; color: #808b82; font-size: 8px; }.legal-document-footer a { text-decoration: none; }
@media (max-width:900px) { .legal-layout { grid-template-columns: 1fr; gap: 45px; }.legal-toc { position: static; }.legal-toc ol { grid-template-columns: 1fr 1fr; } }
@media (max-width:760px) { .legal-hero { min-height: auto; padding: 130px 0 70px; }.legal-hero h1 { font-size: clamp(48px,15vw,72px); }.legal-hero-content > p:not(.eyebrow) { font-size: 14px; }.legal-meta { display: grid; }.legal-review-banner .container { padding-block: 19px; align-items: start; }.legal-document { padding-top: 65px; }.legal-toc ol { grid-template-columns: 1fr; }.legal-introduction { padding: 20px; }.legal-content > section { padding-bottom: 40px; margin-bottom: 40px; }.legal-content p { font-size: 11px; }.legal-document-footer { align-items: flex-start; gap: 12px; flex-direction: column; } }
