:root { --navy: oklch(22% .055 262); --ink: oklch(17% .025 260); --paper: oklch(97.4% .011 92); --sand: oklch(91% .016 88); --yellow: oklch(83% .15 87); --white: oklch(99% .004 90); --serif: 'Newsreader', Georgia, serif; --sans: 'Source Sans 3', 'Segoe UI', sans-serif; }
* { box-sizing: border-box; scrollbar-width: thin; scrollbar-color: color-mix(in oklch, var(--yellow), var(--navy) 18%) color-mix(in oklch, var(--paper), var(--navy) 8%); }
*::-webkit-scrollbar { width: .72rem; height: .72rem; }
*::-webkit-scrollbar-track { background: color-mix(in oklch, var(--paper), var(--navy) 8%); }
*::-webkit-scrollbar-thumb { min-height: 3rem; border: 3px solid color-mix(in oklch, var(--paper), var(--navy) 8%); border-radius: 999px; background: color-mix(in oklch, var(--navy), var(--yellow) 20%); }
*::-webkit-scrollbar-thumb:hover { background: var(--navy); }
html { scroll-behavior: smooth; background: var(--navy); }
body { margin: 0; color: var(--ink); background: var(--paper); font: 400 1rem/1.65 var(--sans); }
img { display: block; max-width: 100%; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--yellow); outline-offset: 4px; }
.skip-link { position: fixed; z-index: 20; left: -9999px; top: 1rem; padding: .7rem 1rem; color: var(--ink); background: var(--yellow); }
.skip-link:focus { left: 1rem; }
.legal-header { min-height: 4.5rem; display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: .7rem clamp(1rem, 2.5vw, 2.5rem); color: var(--white); background: var(--navy); border-bottom: 1px solid color-mix(in oklch, var(--white), transparent 78%); }
.legal-header__brand { width: clamp(8.5rem, 12vw, 11rem); }
.legal-header__brand img { width: 100%; filter: grayscale(1) brightness(0) invert(1); }
.legal-header nav { display: flex; gap: clamp(1rem, 2.5vw, 2.5rem); }
.legal-header nav a { text-decoration: none; font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.legal-hero { min-height: 30rem; display: grid; align-content: end; grid-template-columns: minmax(0, 1fr) minmax(18rem, .55fr); gap: 2rem 5rem; padding: clamp(6rem, 12vw, 10rem) clamp(1rem, 4vw, 4rem) clamp(3rem, 6vw, 5rem); color: var(--white); background: var(--navy); }
.legal-hero > p { grid-column: 1 / -1; margin: 0; color: var(--yellow); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.legal-hero h1 { margin: 0; font: 400 clamp(4.2rem, 10vw, 9rem)/.85 var(--serif); letter-spacing: -.055em; }
.legal-hero div { align-self: end; max-width: 35rem; }
.legal-hero div p { margin: 0 0 1.5rem; font-size: clamp(1.05rem, 1.35vw, 1.25rem); }
.legal-hero span { color: color-mix(in oklch, var(--white), transparent 35%); font-size: .78rem; }
.legal-layout { width: min(92rem, 100%); display: grid; grid-template-columns: minmax(14rem, .5fr) minmax(0, 1.5fr); gap: clamp(3rem, 8vw, 10rem); margin: auto; padding: clamp(5rem, 9vw, 9rem) clamp(1rem, 4vw, 4rem); }
.legal-layout > *, .legal-copy section { min-width: 0; }
.legal-layout aside { align-self: start; position: sticky; top: 2rem; }
.legal-layout aside > p { margin: 0 0 1rem; font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.legal-layout aside nav { display: grid; border-top: 1px solid color-mix(in oklch, var(--ink), transparent 78%); }
.legal-layout aside a { min-width: 0; padding: .65rem 0; border-bottom: 1px solid color-mix(in oklch, var(--ink), transparent 78%); text-decoration: none; font-size: .8rem; font-weight: 600; overflow-wrap: anywhere; }
.legal-copy { max-width: 52rem; }
.legal-copy section { scroll-margin-top: 2rem; padding: 0 0 clamp(3.5rem, 7vw, 6rem); }
.legal-copy h2 { margin: 0 0 1.5rem; font: 400 clamp(2.4rem, 4vw, 4rem)/.95 var(--serif); letter-spacing: -.045em; overflow-wrap: anywhere; }
.legal-copy p { margin: 0 0 1.2rem; max-width: 70ch; overflow-wrap: anywhere; }
.legal-copy a { text-decoration-thickness: 1px; text-underline-offset: .18em; }
.legal-note { padding: 1.5rem; border: 1px solid var(--ink); background: color-mix(in oklch, var(--yellow), var(--paper) 65%); }
.legal-note strong { display: block; margin-bottom: .5rem; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.legal-note p { margin: 0; }
.legal-footer { padding: 4rem clamp(1rem, 4vw, 4rem) 2rem; color: var(--white); background: var(--navy); }
.legal-footer > img { width: clamp(11rem, 20vw, 19rem); filter: grayscale(1) brightness(0) invert(1); }
.legal-footer div { display: flex; gap: 1.5rem; margin-top: 4rem; }
.legal-footer a { font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.legal-footer p { margin: 2rem 0 0; color: color-mix(in oklch, var(--white), transparent 45%); font-size: .8rem; }
.legal-footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 2rem !important; padding-top: 1.2rem; border-top: 1px solid color-mix(in oklch, var(--white), transparent 78%); }
.legal-footer__bottom p { margin: 0; }
.legal-footer__bottom a { letter-spacing: .06em; text-decoration: none; }
@media (max-width: 720px) {
	.legal-header nav a:not(:last-child) { display: none; }
	.legal-hero { min-height: 34rem; grid-template-columns: 1fr; align-content: end; padding-inline: 1.25rem; }
	.legal-hero > p { grid-column: 1; }
	.legal-hero h1 { font-size: clamp(4rem, 19vw, 6rem); overflow-wrap: anywhere; }
	.legal-layout { grid-template-columns: 1fr; padding-inline: 1.25rem; }
	.legal-layout aside { position: static; }
	.legal-copy h2 { font-size: 2.8rem; }
	.legal-footer { padding-inline: 1.25rem; }
	.legal-footer__bottom { align-items: flex-start; flex-direction: column; gap: .8rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
