
/* Shared legal reference page and footer; compatible with every preserved design. */
.site-footer{flex-wrap:wrap}
.site-footer .footer-links{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
.site-footer .footer-links a{font-size:13px;font-weight:600}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.legal-page{--legal-paper:#fffefb;--legal-edge:#dce4d9;--legal-accent:#187b54;padding:25px 0 55px}
.legal-page a:focus-visible,.site-footer a:focus-visible{outline:3px solid var(--legal-accent,#ad462e);outline-offset:5px}
.legal-breadcrumb{font-size:13px;display:flex;gap:12px;flex-wrap:wrap;margin-bottom:36px}
.legal-breadcrumb a{text-decoration:underline;text-underline-offset:3px}
.legal-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:64px;align-items:center}
.legal-intro h1{font-size:clamp(38px,4.2vw,60px);line-height:1.07;margin:20px 0}
.legal-intro h1 em{color:var(--legal-accent);font-style:normal}
.legal-intro p{max-width:620px;font-size:17px;line-height:1.75}
.legal-checked{font-size:12px;margin-top:25px;color:inherit;opacity:.8}
.legal-reading{background:var(--legal-paper);border:1px solid var(--legal-edge);border-radius:18px;padding:30px;position:relative}
.legal-reading-icon{font:46px Georgia,serif;display:block;color:var(--legal-accent);line-height:1;margin-bottom:16px}
.legal-reading h2{font-size:25px}.legal-reading ol{padding-left:20px;font-size:14px}.legal-reading li{padding-left:5px;margin:10px 0}
.legal-topics{display:flex;flex-wrap:wrap;gap:10px;margin:40px 0 48px}
.legal-topics a{display:flex;gap:22px;align-items:center;font-size:13px;border:1px solid var(--legal-edge);border-radius:30px;padding:11px 17px;background:var(--legal-paper)}
.legal-topics a:hover{border-color:var(--legal-accent)}
.legal-section{scroll-margin-top:24px;margin-bottom:50px}
.legal-section-heading{display:flex;gap:20px;align-items:flex-start;margin:0 0 22px}
.legal-section-heading>span{color:var(--legal-accent);font:21px Georgia,serif;line-height:1.6}
.legal-section-heading h2{margin:0 0 6px;font-size:30px}
.legal-section-heading p{margin:0;font-size:14px}
.legal-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.legal-card{border:1px solid var(--legal-edge);background:var(--legal-paper);border-radius:14px;padding:27px;display:flex;flex-direction:column;min-width:0}
.legal-source{font-size:10px;letter-spacing:1.3px;text-transform:uppercase;color:var(--legal-accent);font-weight:700}
.legal-card h3{font-size:25px;margin:14px 0 5px;line-height:1.2}
.legal-card p{font-size:14px;line-height:1.7;margin:12px 0 22px}
.legal-card .legal-reference{font-size:12px;margin:0 0 5px}
.legal-card-links{margin-top:auto;border-top:1px solid var(--legal-edge);padding-top:17px;display:flex;flex-wrap:wrap;align-items:center;gap:13px 22px}
.legal-card-links .textlink{font-size:12px;margin:0}
.legal-source-link{font-size:13px;font-weight:700;display:flex;gap:16px}
.legal-source-link:hover,.legal-card .textlink:hover{text-decoration:underline}
.legal-local{border-radius:18px;padding:34px;background:#e7eee4;display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center;scroll-margin-top:24px}
.legal-local h2{margin:12px 0}.legal-local p{font-size:14px;margin:0}
.legal-local-links{display:grid;gap:12px}
.legal-local-links a{background:var(--legal-paper);padding:16px 18px;border-radius:8px;font-size:14px;display:flex;justify-content:space-between;gap:12px}
.legal-note{padding:24px 0 24px 21px;border-left:3px solid var(--legal-accent);margin:35px 0}
.legal-note p{font-size:13px;line-height:1.8;margin-bottom:0;max-width:930px}
.legal-end{display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid var(--legal-edge);padding-top:30px}
.legal-end h2{font-size:26px}.legal-end p{font-size:14px;margin-bottom:0}.legal-end .button{flex-shrink:0}
:root[data-design="warm"] .legal-page{--legal-paper:#fffcf7;--legal-edge:#dfd6c9;--legal-accent:#a54831}
:root[data-design="warm"] .legal-page h1,:root[data-design="warm"] .legal-page h2,:root[data-design="warm"] .legal-page h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.5px}
:root[data-design="warm"] .legal-reading{box-shadow:0 18px 48px #59391909;border-radius:4px 32px 4px 4px}
:root[data-design="warm"] .legal-card{border-radius:4px 18px 4px 4px}
:root[data-design="warm"] .legal-local{background:#ece9df}
@media(max-width:850px){.legal-intro{gap:28px;grid-template-columns:1fr}.legal-reading{max-width:none}.legal-local{grid-template-columns:1fr;gap:22px}.legal-end{align-items:flex-start;flex-direction:column}.legal-topics{margin:30px 0}.legal-section-heading h2{font-size:27px}}
@media(max-width:580px){.legal-page{padding-top:15px}.legal-breadcrumb{margin-bottom:24px}.legal-intro h1{font-size:39px}.legal-intro p{font-size:16px}.legal-cards{grid-template-columns:1fr}.legal-reading,.legal-card,.legal-local{padding:23px}.legal-topics{gap:8px}.legal-topics a{padding:9px 12px;font-size:12px;gap:10px}.legal-card h3{font-size:24px}.legal-section{margin-bottom:35px}.site-footer .footer-links{gap:16px 22px}.legal-end .button{white-space:normal}}
