
:root{--green:#749e35;--green-dark:#5f842a;--ink:#383838;--cream:#f9f7f6;--gold:#c69963;--navy:#101d2c}
.blog-page{display:block;background:#fff;color:#6d5d4b;min-height:100vh}
.blog-header{background:linear-gradient(rgba(56,56,56,.93),rgba(56,56,56,.93)),url(../img/hero.jpeg) center/cover;min-height:34rem;padding:4rem 6vw;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff}
.blog-header__logo{height:10rem;max-width:90%;object-fit:contain;margin-bottom:2rem}
.blog-header h1{font-family:"Josefin Sans",sans-serif;font-size:4.5rem;font-weight:400;line-height:1.1}
.blog-header p{font-size:1.8rem;max-width:72rem;margin-top:1.5rem}
.blog-topnav{background:var(--green);display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;padding:1rem}
.blog-topnav a{font-family:"Josefin Sans",sans-serif;color:#fff;text-decoration:none;text-transform:uppercase;font-size:1.4rem;padding:1.2rem 2rem}
.blog-topnav a:hover{background:rgba(255,255,255,.12)}
.blog-main{max-width:120rem;margin:0 auto;padding:7rem 3rem}
.blog-tools{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:end;margin-bottom:4rem}
.blog-tools label{display:block;font-size:1.4rem;text-transform:uppercase;margin-bottom:.8rem;font-weight:700}
.blog-tools input{width:100%;padding:1.5rem;border:1px solid #d8d2cb;font:inherit;font-size:1.6rem}
.blog-status{font-size:1.5rem;text-align:right}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(28rem,1fr));gap:3rem}
.blog-card{background:var(--cream);display:flex;flex-direction:column;border-top:.5rem solid var(--green)}
.blog-card__image{height:20rem;background:linear-gradient(135deg,var(--green),var(--navy));display:flex;align-items:center;justify-content:center;color:#fff;font-family:"Josefin Sans",sans-serif;font-size:2.2rem;text-align:center;padding:2rem}
.blog-card__body{padding:3rem;display:flex;flex-direction:column;flex:1}
.blog-card__meta{font-size:1.3rem;text-transform:uppercase;color:var(--green-dark);font-weight:700;margin-bottom:1rem}
.blog-card h2{font-family:"Josefin Sans",sans-serif;font-size:2.5rem;font-weight:400;color:var(--ink);line-height:1.2;margin-bottom:1.5rem}
.blog-card p{font-size:1.6rem;margin-bottom:2rem;flex:1}
.blog-card a{align-self:flex-start;background:var(--green);color:#fff;text-decoration:none;text-transform:uppercase;font-family:"Josefin Sans",sans-serif;font-size:1.4rem;padding:1.4rem 2rem}
.blog-card a:hover{background:var(--green-dark)}
.blog-card--scheduled{opacity:.72;border-top-color:#888}.scheduled-badge{display:inline-block;background:#eee;color:#555;padding:.3rem .8rem;margin-left:.5rem}
.blog-empty{font-size:1.8rem;padding:4rem;text-align:center;background:var(--cream)}
.article-wrap{max-width:86rem;margin:0 auto;padding:7rem 3rem}
.article-kicker{color:var(--green-dark);font-size:1.4rem;text-transform:uppercase;font-weight:700;letter-spacing:.08em}
.article-title{font-family:"Josefin Sans",sans-serif;font-size:4.8rem;font-weight:400;color:var(--ink);line-height:1.1;margin:1rem 0 2rem}
.article-meta{font-size:1.5rem;border-bottom:1px solid #ddd;padding-bottom:2rem;margin-bottom:3rem}
.article-content{font-size:1.8rem;line-height:1.85}.article-content h2{font-family:"Josefin Sans",sans-serif;font-size:3rem;color:var(--ink);font-weight:400;margin:4rem 0 1.5rem}.article-content p{margin-bottom:2rem}.article-content ul{margin:0 0 2rem 2.5rem}.article-content li{margin-bottom:.8rem}
.article-callout{background:var(--cream);border-left:.5rem solid var(--green);padding:2.5rem;margin:4rem 0}
.article-cta{background:var(--navy);color:#fff;padding:4rem;text-align:center;margin-top:5rem}.article-cta h2{color:#fff;margin-top:0}.article-cta a{display:inline-block;background:var(--green);color:#fff;text-decoration:none;text-transform:uppercase;padding:1.5rem 2.5rem;font-family:"Josefin Sans",sans-serif}
.article-disclaimer{font-size:1.3rem;color:#777;margin-top:3rem}
.blog-footer{background:var(--green);color:#fff;text-align:center;padding:5rem 2rem;font-size:1.5rem}.blog-footer a{color:#fff}
@media(max-width:700px){.blog-tools{grid-template-columns:1fr}.blog-status{text-align:left}.blog-header h1{font-size:3.6rem}.article-title{font-size:3.7rem}.article-wrap{padding:5rem 2rem}}
