
@import url("https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700;900&family=Source+Sans+3:wght@400;600;700;800&display=swap");
:root{
  --ink:#15323b; --body:#374b53; --muted:#6c7d83; --line:#d8e3e0; --teal:#0e8d81; --green:#76b83f; --orange:#f2a12f; --blue:#36a9dd; --soft:#f7faf8;
  --max:1280px; --page:1180px; --content:1020px; --sans:"Source Sans 3",Arial,sans-serif; --serif:"Merriweather",Georgia,serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:#fff;color:var(--body);font:19px/1.72 var(--sans);-webkit-font-smoothing:antialiased}
a{color:#0c766d;text-decoration:none} a:hover{text-decoration:underline;text-underline-offset:3px} img{max-width:100%;height:auto;display:block}
.wrap{width:min(var(--max),calc(100% - 48px));margin:0 auto}
.site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);z-index:100}
.header-top{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center;padding:18px 0 10px}
.brand img{width:340px;max-width:42vw;height:auto}
.primary-nav{display:flex;justify-content:flex-end;gap:26px;flex-wrap:wrap;align-items:center}
.primary-nav a{font-size:15px;line-height:1.1;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.primary-nav a:hover{text-decoration:none;color:#0c766d}
.tag-nav{border-top:1px solid var(--line);padding:11px 0 12px;display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.tag-nav .label{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:800;margin-right:4px}
.tag-nav a{font-size:16px;color:var(--ink);font-weight:600;white-space:nowrap}
main{min-height:60vh}
.hero-home{padding:34px 0 18px;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:42px;align-items:start}
.kicker{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:800;margin-bottom:14px}
h1,h2,h3{font-family:var(--serif);color:var(--ink);line-height:1.08;letter-spacing:-.03em;margin:0 0 16px}
h1{font-size:clamp(40px,5vw,66px)} h2{font-size:clamp(30px,3.1vw,42px);margin-top:8px} h3{font-size:26px}
.lead{font-size:24px;line-height:1.45;color:#40555c;max-width:42rem;margin:0 0 18px}
.intro p:last-child{margin-bottom:0}
.hero-visual img,.media-visual img{width:100%;border:1px solid var(--line)}
.crumbs{font-size:13px;color:var(--muted);margin-top:16px}.crumbs a{color:var(--muted)}
.page-section{padding:28px 0;border-bottom:1px solid var(--line)}
.home-columns{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:start}
.plain-text p{margin:0 0 18px}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 30px}
.catalog-item{padding-bottom:18px;border-bottom:1px solid var(--line)}
.catalog-item a{display:block;color:var(--ink);font:800 21px/1.2 var(--sans)}
.catalog-item p{margin:7px 0 0;font-size:16px;line-height:1.55;color:#4b5f66}
.two-lists{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.directory-list{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}
.directory-list a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:17px;font-weight:700;color:var(--ink)}
.directory-list a span{display:block;font-size:14px;color:var(--muted);font-weight:400;margin-top:4px}
.article-shell{padding:28px 0 56px}
.article-content,.wide-content{max-width:var(--content)}
.article-content.full{max-width:none;width:100%}
.article-content p,.wide-content p{margin:0 0 18px}
.page-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.page-hero{padding:26px 0 10px;border-bottom:1px solid var(--line)}
.page-meta{font-size:14px;color:var(--muted)}
.page-meta strong{color:var(--ink)}
.media-split{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:36px;align-items:start;margin-top:8px}
.index-columns{columns:3;column-gap:48px}.index-columns li{break-inside:avoid;margin-bottom:8px}
.linkgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 30px;margin-top:8px}.linkitem{padding-bottom:18px;border-bottom:1px solid var(--line)}.linkitem a{display:block;font-size:20px;line-height:1.2;font-weight:800;color:var(--ink)}.linkitem p{margin:7px 0 0;font-size:15.5px;color:#54686d}
.tagcloud{line-height:2.1}.tagcloud a{display:inline-block;margin-right:16px;border-bottom:1px solid #b7d8d2;color:var(--ink)}
.tablelike{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0;border-top:1px solid var(--line);margin:12px 0 30px}.tablelike div{padding:13px 0;border-bottom:1px solid var(--line)}.tablelike div:nth-child(odd){padding-right:20px;color:var(--ink);font-weight:700}
.form{max-width:820px}.form label{display:block;font-weight:800;color:var(--ink);margin-top:18px}.form input,.form textarea{width:100%;border:1px solid var(--line);padding:14px 12px;font:inherit;color:var(--body)}.form textarea{min-height:170px}.form button{margin-top:20px;background:#0e8d81;color:#fff;border:0;padding:14px 26px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.footer{border-top:1px solid var(--line);padding:34px 0 48px;background:#fff}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:38px;align-items:start}.footer h3{font-size:22px;margin:0 0 12px;font-family:var(--sans);letter-spacing:0}.footer p{margin:0 0 12px;font-size:16px;line-height:1.6}.footer a{display:block;color:var(--ink);font-size:16px;font-weight:700;margin:0 0 10px}.social{display:flex;gap:12px;align-items:center}.social a{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800;color:var(--ink)}
.note{font-size:13px;color:var(--muted)}
@media (max-width:1100px){.hero-grid,.home-columns,.media-split,.footer-grid{grid-template-columns:1fr}.catalog-grid,.linkgrid{grid-template-columns:1fr 1fr}.primary-nav{justify-content:flex-start}.header-top{grid-template-columns:1fr;gap:12px}.brand img{max-width:58vw}}
@media (max-width:760px){body{font-size:18px}.wrap{width:min(var(--max),calc(100% - 28px))}.brand img{width:280px;max-width:72vw}.primary-nav{gap:16px}.primary-nav a{font-size:13px}.tag-nav{gap:12px}.tag-nav a{font-size:15px}.lead{font-size:21px}.catalog-grid,.linkgrid,.two-lists{grid-template-columns:1fr}.index-columns{columns:1}.tablelike{grid-template-columns:1fr}.tablelike div:nth-child(odd){border-bottom:0;padding-bottom:2px}.tablelike div:nth-child(even){padding-top:0}.hero-home{padding-top:24px}}

.hero{padding:26px 0 10px;border-bottom:1px solid var(--line)}
.hero h1{margin-bottom:14px}.hero .lead{margin-bottom:12px}.hero .wrap{max-width:var(--page)}
.main{padding:28px 0 56px}.main .wrap{max-width:var(--page)}
.grid{display:block}.grid article{max-width:none;width:100%}.grid .aside{max-width:none;width:100%;margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}
.aside h2,.aside h3{font-family:var(--sans);font-size:24px;line-height:1.15;margin:0 0 12px}.aside p{font-size:16px;line-height:1.6}


/* final cleanup */
.primary-nav .social-icon{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:inline-grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:0;text-transform:none;margin-left:4px;color:var(--ink)}
.primary-nav .social-icon:hover{border-color:var(--teal);color:var(--teal);text-decoration:none}
.header-top{grid-template-columns:auto minmax(0,1fr)}
.brand{justify-content:flex-start}.brand img{width:360px;max-width:42vw}
.primary-nav{justify-content:flex-end}
.footer .social a{display:grid;margin:0}
.article-content,.wide-content,.main .wrap,.hero .wrap,.page-hero .wrap{max-width:var(--page)}
.article-content.full{max-width:var(--page);width:100%}
.grid{display:block}.grid article{max-width:var(--page);width:100%}
.home-columns,.hero-grid{max-width:var(--max)}
@media(max-width:1100px){.header-top{grid-template-columns:1fr}.brand{justify-content:flex-start}.brand img{max-width:70vw}.primary-nav{justify-content:flex-start}.hero-grid{grid-template-columns:1fr}}
@media(max-width:760px){.brand img{width:300px;max-width:86vw}.primary-nav .social-icon{width:30px;height:30px}.tag-nav{max-height:none}}

.medical-disclaimer{font-size:15px;line-height:1.55;color:#455c62;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:18px 0 24px;font-weight:600}
