.legal-page { background: #f7fafc; }
.legal-hero { position: relative; overflow: hidden; padding: 72px 0 64px; color: white; background: linear-gradient(135deg,#071f37,#0b4770 58%,#137b8d); }
.legal-hero::before { content:""; position:absolute; width:560px; height:560px; right:-210px; top:-330px; border-radius:50%; background:radial-gradient(circle,rgba(126,220,255,.28),rgba(126,220,255,0) 70%); }
.legal-theme-hipaa { background: linear-gradient(135deg,#092945,#105981 58%,#1e8894); }
.legal-theme-terms { background: linear-gradient(135deg,#18213a,#344a72 58%,#496d88); }
.legal-theme-accessibility { background: linear-gradient(135deg,#18304a,#236f78 58%,#3b8d74); }
.legal-theme-nondiscrimination { background: linear-gradient(135deg,#291d56,#5a3b8c 55%,#9b527c); }
.legal-theme-emergency { background: linear-gradient(135deg,#6f1823,#b8323f 58%,#dd654f); }
.legal-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr auto; align-items:center; gap:60px; }
.legal-hero-copy h1 { margin:17px 0 18px; max-width:850px; color:white; font-size:clamp(46px,6vw,72px); line-height:1.03; letter-spacing:-.045em; }
.legal-hero-copy > p { max-width:820px; margin:0; color:rgba(236,248,255,.83); font-size:18px; line-height:1.65; }
.legal-hero .breadcrumbs { color:rgba(255,255,255,.67); }
.legal-hero .breadcrumbs a { color:#d7f3ff; }
.legal-hero .kicker { color:#c8f2ff; }
.legal-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.legal-hero-mark { display:grid; place-items:center; width:210px; height:210px; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.16); border-radius:46px; box-shadow:0 30px 65px rgba(0,0,0,.18); backdrop-filter:blur(10px); }
.legal-hero-mark span { display:block; color:white; font-size:45px; font-weight:950; letter-spacing:-.04em; }
.legal-hero-mark small { margin-top:-34px; color:rgba(255,255,255,.64); font-size:11px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.legal-tabs { background:white; border-bottom:1px solid var(--line); box-shadow:0 10px 24px rgba(8,43,75,.04); }
.legal-tabs-inner { display:flex; gap:7px; min-height:66px; align-items:center; overflow-x:auto; scrollbar-width:none; }
.legal-tabs-inner::-webkit-scrollbar { display:none; }
.legal-tabs a { flex:0 0 auto; padding:9px 13px; color:#4d6879; border-radius:999px; font-size:11px; font-weight:850; }
.legal-tabs a:hover,.legal-tabs a.active { color:var(--blue-700); background:var(--sky-100); }
.legal-section { padding:70px 0 100px; }
.legal-layout { display:grid; grid-template-columns:255px minmax(0,1fr); align-items:start; gap:40px; }
.legal-sidebar { position:sticky; top:115px; display:grid; gap:16px; }
.legal-toc,.legal-contact-card { padding:20px; background:white; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow-sm); }
.legal-toc strong { display:block; margin-bottom:12px; color:var(--navy-900); font-size:12px; letter-spacing:.05em; text-transform:uppercase; }
.legal-toc a { display:block; padding:7px 0; color:#557082; border-bottom:1px solid #eef3f6; font-size:11px; font-weight:700; line-height:1.4; }
.legal-toc a:last-child { border-bottom:0; }
.legal-toc a:hover { color:var(--blue-700); }
.legal-contact-card { background:linear-gradient(145deg,#eef8fd,#fff); }
.legal-contact-card strong { display:block; color:var(--navy-900); font-size:14px; }
.legal-contact-card p { margin:7px 0 12px; color:var(--body); font-size:11px; line-height:1.55; }
.legal-contact-card a { color:var(--blue-700); font-size:18px; font-weight:900; }
.legal-content { min-width:0; }
.legal-review-banner { display:flex; align-items:flex-start; gap:16px; margin-bottom:18px; padding:16px 18px; color:#73551d; background:#fff9e9; border:1px solid #efdfae; border-radius:14px; }
.legal-review-banner strong { flex:0 0 230px; color:#624719; font-size:12px; }
.legal-review-banner span { font-size:11px; line-height:1.55; }
.legal-article { padding:clamp(28px,5vw,62px); background:white; border:1px solid var(--line); border-radius:25px; box-shadow:var(--shadow-sm); }
.legal-article > :first-child { margin-top:0; }
.legal-article h1 { margin:38px 0 18px; color:var(--navy-950); font-size:clamp(34px,4vw,48px); line-height:1.08; letter-spacing:-.035em; }
.legal-article h2 { scroll-margin-top:130px; margin:48px 0 16px; padding-top:4px; color:var(--navy-950); font-size:29px; line-height:1.18; letter-spacing:-.02em; }
.legal-article h3 { scroll-margin-top:130px; margin:30px 0 10px; color:#164f75; font-size:19px; line-height:1.3; }
.legal-article p,.legal-article li { color:#405c6f; font-size:14px; line-height:1.78; }
.legal-article p { margin:0 0 16px; }
.legal-article ul,.legal-article ol { display:grid; gap:7px; margin:14px 0 22px; padding-left:25px; }
.legal-article strong { color:#183e59; }
.legal-article a { color:var(--blue-700); text-decoration:underline; text-underline-offset:3px; }
.legal-article blockquote { margin:22px 0 28px; padding:20px 22px; color:#2e5268; background:#eef7fb; border-left:5px solid var(--sky-500); border-radius:0 14px 14px 0; }
.legal-theme-emergency + .legal-tabs + .legal-section .legal-article blockquote { color:#6c2330; background:#fff1f2; border-left-color:#d94a5e; }
.legal-article blockquote p { margin:0; color:inherit; font-size:14px; font-weight:750; }
.legal-article table { width:100%; margin:20px 0; border-collapse:collapse; font-size:12px; }
.legal-article th,.legal-article td { padding:12px; border:1px solid var(--line); text-align:left; vertical-align:top; }
.legal-article th { color:var(--navy-900); background:#f3f8fb; }
.legal-updated { margin-top:16px; color:#6d8492; font-size:10px; text-align:right; }
.footer-legal-links { max-width:780px; justify-content:flex-end; }
@media (max-width:900px){.legal-hero-grid{grid-template-columns:1fr;text-align:center}.legal-hero-copy>p{margin-inline:auto}.legal-hero-actions,.legal-hero .breadcrumbs{justify-content:center}.legal-hero-mark{width:150px;height:150px;margin-inline:auto}.legal-hero-mark span{font-size:34px}.legal-hero-mark small{margin-top:-22px}.legal-layout{grid-template-columns:1fr}.legal-sidebar{position:static;grid-template-columns:1fr 1fr}.legal-review-banner{display:grid}.legal-review-banner strong{flex:auto}.footer-legal-links{justify-content:flex-start}}
@media (max-width:640px){.legal-hero{padding:50px 0}.legal-hero-copy h1{font-size:40px}.legal-hero-actions{flex-direction:column}.legal-hero-actions .button{width:100%}.legal-sidebar{grid-template-columns:1fr}.legal-section{padding:44px 0 74px}.legal-article{padding:25px 20px;border-radius:19px}.legal-article h1{font-size:33px}.legal-article h2{font-size:25px;margin-top:40px}.legal-article h3{font-size:18px}.legal-article p,.legal-article li{font-size:13px}.legal-review-banner{padding:14px}.footer-bottom div{gap:12px}}
@media print{.utility-bar,.site-header,.legal-tabs,.legal-sidebar,.legal-review-banner,.legal-hero-actions,.site-footer,.modal{display:none!important}.legal-hero{padding:0;background:white;color:black}.legal-hero::before,.legal-hero-mark,.legal-hero .breadcrumbs,.legal-hero .kicker,.legal-hero-copy>p{display:none}.legal-hero-copy h1{color:black;font-size:30px}.legal-section{padding:10px 0}.legal-layout{display:block}.legal-article{padding:0;border:0;box-shadow:none}.legal-article h2{break-after:avoid}.legal-article p,.legal-article li{color:black}.legal-updated{text-align:left}}
