:root{--page:#f3ead7;--paper:#fffdf5;--ink:#173f47;--muted:#4c686a;--line:#b9c7bd;--accent:#c78d2d;--accent-dark:#8f6114;--soft:#dbe6dc;--radius:6px;--max:1200px}
html{scroll-padding-top:150px}
body{background:var(--page)}
.association-header{position:sticky;top:0;z-index:200;background:var(--paper);box-shadow:0 8px 26px #173f4718;isolation:isolate}
.association-mainhead{min-height:132px;display:grid;grid-template-columns:minmax(0,580px) 1fr;align-items:center;gap:42px}
.association-mainhead .site-brand img{width:min(560px,100%);height:112px}
.association-mainhead .site-nav{justify-content:flex-end}
.association-mainhead .site-nav a{padding-bottom:7px;border-bottom:3px solid transparent}
.association-mainhead .site-nav a:hover,.association-mainhead .site-nav a[aria-current="page"]{border-color:var(--accent)}
.association-toggle-mark{display:grid;width:32px;height:32px;place-items:center;color:var(--accent-dark)}
.association-toggle-mark svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:2}
.association-toggle-mark svg path{fill:var(--accent);stroke:var(--accent-dark)}
.association-nav-toggle .nav-toggle-label{font:700 .72rem/1 Georgia,serif;letter-spacing:.02em}
.association-hero{padding:64px 0;background:var(--ink);color:var(--paper);border-bottom:12px solid var(--accent)}
.association-hero .shell{display:grid;grid-template-columns:1.2fr .8fr;gap:85px;align-items:start}
.association-hero h1{margin:0;font:700 clamp(3.1rem,6.5vw,5.8rem)/.94 Georgia,serif;letter-spacing:-.045em}
.association-hero p{max-width:650px;font-size:1.14rem;color:#dce7df}
.association-hero .btn{margin-top:12px;color:#fff}
.association-sealboard{padding:0 0 0 30px;border-left:1px solid #789197}
.association-sealboard h2{font:700 1.65rem Georgia,serif;margin:0 0 15px;color:#efc779}
.association-sealboard ul{margin:0;padding-left:1.2rem}
.association-sealboard li+li{margin-top:.8rem}
.member-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--paper);border:1px solid var(--line)}
.member-tool{padding:27px;border-right:1px solid var(--line)}
.member-tool:last-child{border:0}
.member-tool strong{display:block;font:700 1.25rem Georgia,serif;margin-bottom:6px;color:var(--accent-dark)}
.association-updates{padding:72px 0 28px}
.association-updates .section-head h2{font-family:Georgia,serif}
.association-lead{display:grid;grid-template-columns:260px 1fr;gap:0;background:var(--paper);border-block:1px solid var(--ink)}
.association-lead .feature-media{width:260px;height:188px;margin:28px 0}
.association-lead .feature-copy{padding:28px 38px}
.association-lead h2{font:700 clamp(2rem,4vw,3.6rem)/1 Georgia,serif;margin:.5rem 0}
.association-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:30px;border-top:1px solid var(--line)}
.association-grid .story-card{display:grid;grid-template-columns:145px 1fr;gap:20px;padding:24px 22px;border-bottom:1px solid var(--line)}
.association-grid .story-card:nth-child(odd){border-right:1px solid var(--line)}
.association-grid img{width:145px;height:112px;object-fit:cover}
.association-grid .story-content{padding:0}
.association-grid .story-card h3{font:700 1.18rem/1.12 Georgia,serif}
.association-grid .story-card p{display:block;margin:.5rem 0 0;font-size:.9rem;line-height:1.48;color:var(--muted)}
.archive-grid .story-card h3{font-family:Georgia,serif}
.archive-grid .story-card p{display:block;line-height:1.5}
.story-meta{color:var(--accent-dark)}
.community-band{margin-top:65px;padding:55px 0;background:var(--soft);border-block:1px solid #b7c5b7}
.community-band blockquote{margin:0 auto;max-width:900px;text-align:center;font:700 clamp(2rem,4vw,3.6rem)/1.05 Georgia,serif}
.sponsor-panel{background:var(--ink);border-bottom:9px solid var(--accent)}

/* Article pages */
.association-article{width:min(calc(100% - 40px),1080px);margin:62px auto 0}
.association-article-header{max-width:920px}
.association-article-header h1{margin:.55rem 0 1rem;color:var(--ink);font:700 clamp(2.8rem,6.2vw,5.7rem)/.95 Georgia,serif;letter-spacing:-.05em}
.association-article-header>p{max-width:790px;margin:0;color:var(--muted);font-size:clamp(1.12rem,2vw,1.42rem);line-height:1.55}
.association-article-hero{margin:36px 0 44px;width:100%;height:min(54vw,540px);border:1px solid var(--line);overflow:hidden;background:var(--paper)}
.association-article-hero img{width:100%;height:100%;object-fit:cover}
.association-article-layout{display:grid;grid-template-columns:minmax(0,720px) 270px;gap:58px;align-items:start}
.association-article-copy{font:normal 1.12rem/1.84 Georgia,'Times New Roman',serif;color:#263f42}
.association-article-copy p{margin:0 0 1.45em}
.association-action-list{position:sticky;top:24px;padding:25px 24px;background:var(--soft);border-top:7px solid var(--accent)}
.association-action-list h2{margin:0 0 14px;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase}
.association-action-list ul{margin:0;padding-left:1.15rem}
.association-action-list li+li{margin-top:.82rem}
.association-inline-media{margin:2.1rem 0 2.4rem;overflow:hidden;background:var(--paper);border:1px solid var(--line)}
.association-inline-media img{width:100%;height:100%;object-fit:cover}
.association-inline-media--wide{height:390px}
.association-inline-media--inset{width:72%;height:310px;margin-left:auto}
.association-article-partner{display:grid;grid-template-columns:145px minmax(0,1fr) auto;grid-template-areas:"label logo action" "label message action";gap:3px 26px;align-items:center;margin:34px 0;padding:24px 28px;background:var(--ink);color:#fff;text-decoration:none;border-left:8px solid var(--accent)}
.association-article-partner-label{grid-area:label;align-self:stretch;display:flex;align-items:center;border-right:1px solid #668086;color:#efc779;font-size:.66rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.association-article-partner img{grid-area:logo;width:190px;max-height:48px;object-fit:contain;object-position:left center}
.association-article-partner strong{grid-area:message;font:700 1.05rem/1.25 Georgia,serif}
.association-article-partner-action{grid-area:action;font-weight:900;white-space:nowrap}
.association-article-partner--within-story{grid-template-columns:120px minmax(0,1fr);grid-template-areas:"label logo" "label message" "action action";padding:22px;margin:2.2rem 0}
.association-article-partner--within-story .association-article-partner-action{padding-top:12px;border-top:1px solid #668086;white-space:normal}

/* About */
.association-about{width:min(calc(100% - 40px),1120px);margin:58px auto 0}
.association-about-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:60px;align-items:end;padding-bottom:48px;border-bottom:1px solid var(--line)}
.association-about-hero h1{margin:0;color:var(--ink);font:700 clamp(3rem,6.3vw,5.7rem)/.94 Georgia,serif;letter-spacing:-.05em}
.association-about-hero>div>p{max-width:700px;margin:1.25rem 0 0;color:var(--muted);font-size:1.22rem;line-height:1.55}
.association-about-photo-row{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:128px 128px;gap:10px}
.association-about-photo-row img{width:100%;height:100%;object-fit:cover;border:1px solid var(--line)}
.association-about-photo-row img:first-child{grid-row:1/3}
.association-about-intro{display:grid;grid-template-columns:360px minmax(0,1fr);gap:70px;padding:72px 0}
.association-about-intro h2,.association-about-heading h2,.association-about-people h2,.association-about-cta h2{margin:0;color:var(--ink);font:700 clamp(2.1rem,4vw,3.65rem)/1 Georgia,serif;letter-spacing:-.035em}
.association-about-intro p{margin:0 0 1.25rem;font:normal 1.08rem/1.78 Georgia,'Times New Roman',serif}
.association-about-section{padding:65px 0;border-top:1px solid var(--line)}
.association-about-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:35px}
.association-about-heading p{margin:0;color:var(--muted);font-size:1.06rem}
.association-about-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:var(--paper)}
.association-about-grid article{min-height:205px;padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.association-about-grid article:nth-child(3n){border-right:0}
.association-about-grid article:nth-child(n+4){border-bottom:0}
.association-about-grid h3,.association-publishing-grid h3,.association-standards-grid h3{margin:0 0 9px;color:var(--accent-dark);font:700 1.22rem/1.15 Georgia,serif}
.association-about-grid p,.association-publishing-grid p,.association-standards-grid p{margin:0;color:var(--muted)}
.association-publishing{background:var(--ink);color:#fff;padding-inline:36px}
.association-publishing .association-about-heading h2{color:#fff}
.association-publishing .association-about-heading p{color:#dce7df}
.association-publishing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#668086;border:1px solid #668086}
.association-publishing-grid article{padding:30px;background:var(--ink)}
.association-publishing-grid h3{color:#efc779}
.association-publishing-grid p{color:#dce7df}
.association-publishing-grid p+p{margin-top:1rem}
.association-about-people{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:center;padding:72px 0}
.association-about-people p{max-width:670px;font:normal 1.06rem/1.72 Georgia,'Times New Roman',serif}
.association-about-people figure{margin:0 0 0 auto;width:min(100%,420px);height:285px;overflow:hidden;border:1px solid var(--line)}
.association-about-people img{width:100%;height:100%;object-fit:cover}
.association-about-standards{padding:65px 0;border-top:1px solid var(--line)}
.association-standards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.association-standards-grid article{padding:26px;background:var(--paper);border-left:5px solid var(--accent)}
.association-about-cta{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:44px;background:var(--soft)}
.association-about-cta p{margin:.75rem 0 0;color:var(--muted)}
.association-about-cta>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:15px}
.association-about-cta>div:last-child>a:last-child{font-weight:850}

/* Footer */
.association-footer{margin-top:70px;padding:52px 0 0;background:var(--paper);border-top:1px solid var(--line)}
.association-footer-layout{display:grid;grid-template-columns:minmax(300px, .82fr) minmax(0,1.18fr);gap:72px;align-items:start}
.association-footer-brand img{width:min(490px,100%);max-width:490px;max-height:108px}
.association-footer-brand p{max-width:500px;margin:16px 0 0;color:var(--muted)}
.association-footer-resources{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.association-footer-resources a{position:relative;min-height:155px;padding:24px 22px 46px;text-decoration:none;border-right:1px solid var(--line)}
.association-footer-resources a:last-child{border-right:0}
.association-footer-resources strong{display:block;color:var(--accent-dark);font:700 1.08rem/1.15 Georgia,serif}
.association-footer-resources span{display:block;margin-top:9px;color:var(--muted);font-size:.86rem;line-height:1.45}
.association-footer-resources b{position:absolute;left:22px;bottom:18px;color:var(--ink);font-size:1.35rem}
.association-footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:42px;padding:20px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.04em}

@media(max-width:900px){
  html{scroll-padding-top:105px}
  .association-mainhead{min-height:86px;grid-template-columns:1fr auto;gap:12px}
  .association-mainhead .site-brand img{width:min(420px,72vw);height:auto}
  .association-nav-toggle{display:inline-flex;min-height:52px;align-items:center;gap:7px;padding:6px 11px 6px 7px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:0;box-shadow:4px 4px 0 var(--accent)}
  .association-nav-toggle.is-active{background:var(--ink);color:var(--paper);box-shadow:4px 4px 0 var(--accent)}
  .association-nav-toggle.is-active .association-toggle-mark{color:#efc779;transform:rotate(45deg)}
  .association-toggle-mark{transition:transform .22s ease}
  .association-mainhead .site-nav{display:none;position:absolute;left:14px;right:14px;top:100%;padding:12px;flex-direction:column;align-items:stretch;background:var(--paper);border:1px solid var(--line);box-shadow:8px 8px 0 var(--accent)}
  .association-mainhead .site-nav.is-open{display:flex}
  .association-mainhead .site-nav a{padding:14px}
  .association-hero .shell{grid-template-columns:1fr;gap:35px}
  .association-sealboard{padding-left:20px}
  .member-tools{grid-template-columns:1fr}
  .member-tool{border-right:0;border-bottom:1px solid var(--line)}
  .association-lead{grid-template-columns:135px 1fr}
  .association-lead .feature-media{width:135px;height:112px;margin:22px 0}
  .association-lead .feature-copy{padding:20px}
  .association-grid{grid-template-columns:1fr}
  .association-grid .story-card:nth-child(odd){border-right:0}
  .association-article{width:min(calc(100% - 28px),1080px);margin-top:38px}
  .association-article-layout{grid-template-columns:1fr;gap:30px}
  .association-action-list{position:static;order:-1}
  .association-article-partner{grid-template-columns:1fr;grid-template-areas:"label" "logo" "message" "action";gap:12px}
  .association-article-partner-label{min-height:0;padding-bottom:10px;border-right:0;border-bottom:1px solid #668086}
  .association-article-partner--within-story{grid-template-columns:1fr;grid-template-areas:"label" "logo" "message" "action"}
  .association-about{width:min(calc(100% - 28px),1120px);margin-top:36px}
  .association-about-hero{grid-template-columns:1fr;gap:32px}
  .association-about-photo-row{max-width:610px}
  .association-about-intro{grid-template-columns:1fr;gap:28px;padding:52px 0}
  .association-about-heading{grid-template-columns:1fr;gap:14px}
  .association-about-grid{grid-template-columns:repeat(2,1fr)}
  .association-about-grid article,.association-about-grid article:nth-child(3n),.association-about-grid article:nth-child(n+4){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .association-about-grid article:nth-child(even){border-right:0}
  .association-about-grid article:nth-child(n+5){border-bottom:0}
  .association-publishing-grid{grid-template-columns:1fr}
  .association-about-people{grid-template-columns:1fr;gap:30px}
  .association-about-people figure{margin:0;width:min(100%,520px)}
  .association-footer-layout{grid-template-columns:1fr;gap:34px}
}
@media(max-width:620px){
  .association-hero{padding:46px 0}
  .association-lead{grid-template-columns:1fr}
  .association-lead .feature-media{width:100%;height:185px;margin:0}
  .association-grid .story-card{grid-template-columns:112px 1fr;gap:15px;padding:20px 0}
  .association-grid img{width:112px;height:90px}
  .association-grid .story-card p{font-size:.84rem;line-height:1.4}
  .association-article-header h1{font-size:clamp(2.45rem,13vw,4.4rem)}
  .association-article-hero{height:58vw;margin:26px 0 32px}
  .association-inline-media--wide,.association-inline-media--inset{width:100%;height:58vw;margin-inline:0}
  .association-article-partner{padding:21px 20px}
  .association-about-photo-row{grid-template-columns:1fr 1fr;grid-template-rows:150px 105px}
  .association-about-photo-row img:first-child{grid-column:1/3;grid-row:1}
  .association-about-grid,.association-standards-grid{grid-template-columns:1fr}
  .association-about-grid article,.association-about-grid article:nth-child(3n),.association-about-grid article:nth-child(n+4),.association-about-grid article:nth-child(even),.association-about-grid article:nth-child(n+5){min-height:0;border-right:0;border-bottom:1px solid var(--line)}
  .association-about-grid article:last-child{border-bottom:0}
  .association-about-cta{align-items:flex-start;flex-direction:column;padding:30px 24px}
  .association-about-cta>div:last-child{align-items:flex-start}
  .association-footer-resources{grid-template-columns:1fr}
  .association-footer-resources a{min-height:125px;border-right:0;border-bottom:1px solid var(--line)}
  .association-footer-resources a:last-child{border-bottom:0}
  .association-footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}
}
