/* Scoped layout for the public website privacy notice. */
#policy { max-width: 1180px; margin: auto; padding: 145px 32px 72px; }
.privacy-heading { max-width: 800px; margin-bottom: 48px; }
.privacy-eyebrow { color: var(--level-blue); font-weight: 800; text-transform: uppercase; letter-spacing: .12em; font-size: .8rem; }
.privacy-heading h1 { font-family: var(--font-display); color: var(--midnight-blue); font-size: clamp(2.4rem, 6vw, 4rem); line-height: 1.12; margin: 14px 0 20px; }
.privacy-heading p { line-height: 1.75; }
.privacy-date { margin-top: 20px; font-size: .875rem; }
.privacy-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 48px; align-items: start; }
.privacy-contents { background: var(--pale-teal); border-radius: 16px; padding: 24px; }
.privacy-contents h2 { font-size: 1rem; color: var(--midnight-blue); margin-bottom: 16px; }
.privacy-contents ol { padding-left: 20px; }
.privacy-contents li { margin: 0 0 12px; font-size: .875rem; line-height: 1.5; }
.privacy-layout a { color: var(--level-blue); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.privacy-copy { min-width: 0; }
.privacy-copy section { scroll-margin-top: 115px; margin-bottom: 36px; }
.privacy-copy h2 { color: var(--midnight-blue); font-size: 1.4rem; line-height: 1.4; margin-bottom: 16px; }
.privacy-copy p, .privacy-copy li { line-height: 1.85; margin-bottom: 16px; }
.privacy-copy ul { padding-left: 24px; }
.privacy-skip { position: fixed; top: -100px; left: 16px; z-index: 2000; padding: 12px 18px; background: white; color: var(--level-blue); }
.privacy-skip:focus { top: 12px; }
a:focus-visible, button:focus-visible { outline: 3px solid var(--level-blue); outline-offset: 4px; }
@media (max-width: 800px) { #policy { padding: 115px 22px 48px; } .privacy-layout { grid-template-columns: 1fr; gap: 32px; } .privacy-heading { margin-bottom: 28px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
