.brand-logo{width:40px;height:40px;object-fit:contain;border-radius:10px}.mobile-menu{display:none;position:relative}.mobile-menu summary{font-size:26px;cursor:pointer;list-style:none}.mobile-menu nav{position:absolute;right:0;top:44px;width:220px;padding:14px;display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px rgba(20,52,46,.18)}.mobile-menu nav a{padding:9px;border-radius:8px}.mobile-menu nav a:hover{background:var(--mint)}
.content-page{width:min(820px,calc(100% - 40px));margin:-70px auto 110px;padding:45px 55px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 20px 60px rgba(27,61,54,.08);font-size:17px}.content-page p{white-space:pre-line;margin:0 0 1.5em}.content-page p:first-child{font:700 25px/1.35 var(--serif);color:var(--green-dark)}
.resource-grid{width:min(1180px,calc(100% - 40px));margin:-70px auto 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.post-card,.empty-state{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.post-card img{width:100%;height:190px;object-fit:cover}.post-card div,.empty-state{padding:28px}.post-card span{color:var(--green);font-size:11px;font-weight:800;text-transform:uppercase}.post-card h2{font:700 22px var(--serif)}.post-card p{color:var(--muted)}.post-card a{color:var(--green);font-weight:700}
.article-page{padding:110px 20px}.article-page>h1,.article-page>.lead,.article-page>.eyebrow{display:block;width:min(900px,100%);margin-left:auto;margin-right:auto}.article-page h1{font:800 clamp(42px,6vw,72px)/1.05 var(--serif);letter-spacing:-.05em}.article-page .lead{font-size:20px;color:var(--muted)}.article-image{display:block;width:min(1050px,100%);max-height:560px;object-fit:cover;margin:50px auto;border-radius:24px}.article-page .content-page{margin:45px auto 0}
.contact-grid{width:min(1100px,calc(100% - 40px));margin:90px auto 120px;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.contact-grid h1{font:800 clamp(42px,5vw,66px)/1.05 var(--serif);letter-spacing:-.05em}.contact-grid>div>p{font-size:18px;color:var(--muted)}.contact-grid dl{margin-top:40px}.contact-grid dt{font-weight:800;color:var(--green);font-size:12px;text-transform:uppercase}.contact-grid dd{margin:4px 0 22px}.contact-form{padding:35px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 20px 60px rgba(27,61,54,.08)}.contact-form label{display:flex;flex-direction:column;gap:7px;margin-bottom:18px;font-weight:700;font-size:13px}.contact-form input,.contact-form textarea{width:100%;padding:13px;border:1px solid #cddbd6;border-radius:10px;font:inherit;background:#fbfcfb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.alert{padding:13px 15px;border-radius:10px;margin-bottom:18px}.alert.success{background:#e5f6ef;color:#075e50}.alert.error{background:#fff0ed;color:#9b3026}
@media(max-width:1000px){.mobile-menu{display:block}.resource-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr;gap:35px}}@media(max-width:620px){.resource-grid{grid-template-columns:1fr}.content-page{padding:28px 22px}.form-row{grid-template-columns:1fr}.brand{font-size:16px}.brand-logo{width:34px;height:34px}}
