:root { color-scheme: light dark; --paper:#f7f5ef; --card:#fffdf8; --ink:#202d27; --muted:#536159; --forest:#285f48; --line:#d8ddd3; --notice:#fbefd3; --notice-ink:#614815; --focus:#ad5429; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font:17px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; overflow-wrap:break-word; }
a { color:var(--forest); text-underline-offset:.22em; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible,summary:focus-visible { outline:3px solid var(--focus); outline-offset:5px; border-radius:3px; }
.site-header,.page-nav,main,footer { max-width:900px; margin:auto; padding-inline:32px; }
.site-header { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:26px 18px; }
.brand { display:inline-flex; align-items:center; gap:10px; font:700 27px/1.2 Georgia,serif; text-decoration:none; }
.book-mark { display:grid; place-items:center; width:36px; height:40px; border:1px solid var(--forest); border-radius:6px; font:30px/1 Georgia,serif; }
.languages { display:flex; flex-wrap:wrap; gap:8px 16px; font-size:14px; }
[aria-current="page"] { font-weight:700; }
.page-nav { display:flex; gap:26px; border-bottom:1px solid var(--line); padding-block:12px 20px; font-size:15px; }
main { padding-block:30px 54px; }
.draft { background:var(--notice); color:var(--notice-ink); border:1px solid #dac59c; padding:14px 18px; border-radius:10px; font-size:14px; line-height:1.6; }
.draft p { margin:3px 0 0; }
.hero { margin:44px 0 40px; }
.eyebrow { color:var(--forest); font-size:14px; font-weight:650; margin:0 0 10px; }
h1 { font:500 clamp(32px,5.7vw,52px)/1.13 Georgia,serif; letter-spacing:-.02em; margin:0 0 18px; }
h2 { font:600 24px/1.3 Georgia,serif; margin:0 0 14px; }
.lead { max-width:630px; font-size:21px; line-height:1.55; }
.meta { color:var(--muted); font-size:13px; }
section { margin:34px 0; }
p { margin:0 0 17px; }
section p:last-child { margin-bottom:0; }
.provider-links { padding-left:22px; margin-top:-15px; }
.contact { padding:26px; background:var(--card); border:1px solid var(--line); border-radius:14px; margin-top:44px; }
.faq details { border-top:1px solid var(--line); padding:20px 0; }
.faq details:last-child { border-bottom:1px solid var(--line); }
summary { cursor:pointer; color:var(--forest); font-weight:650; padding-right:10px; }
.faq p { margin:16px 0 0; }
footer { border-top:1px solid var(--line); padding-block:24px 34px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px 26px; color:var(--muted); font-size:14px; }
.skip-link { position:absolute; top:-100px; left:16px; padding:10px 16px; z-index:10; background:var(--card); }
.skip-link:focus { top:8px; }
.language-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.language-cards section { margin:0; background:var(--card); border:1px solid var(--line); padding:24px; border-radius:14px; font-size:15px; }
.language-cards a { display:block; margin-top:10px; }
@media(max-width:620px) {
 .site-header,.page-nav,main,footer { padding-inline:22px; }
 .site-header { align-items:flex-start; flex-direction:column; gap:20px; }
 .languages { gap:20px; }
 .page-nav { gap:18px; flex-wrap:wrap; }
 .hero { margin-block:34px; }
 .lead { font-size:19px; }
 .contact { padding:22px; }
 .language-cards { grid-template-columns:1fr; }
}
@media(prefers-color-scheme:dark) {
 :root { --paper:#17241e; --card:#203229; --ink:#e8eee8; --muted:#b4c1b7; --forest:#a6d4b8; --line:#3d5145; --notice:#3a321e; --notice-ink:#f3daa0; --focus:#edb58a; }
 .draft { border-color:#6d5a31; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print { .draft,.languages,.page-nav,.skip-link { display:none; } body { font-size:11pt; color:#000; background:#fff; } .site-header,main,footer { max-width:none; padding:0; } a { color:inherit; } details { break-inside:avoid; } }
