.blog-page{background:var(--ivory)}
.blog-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--forest);color:var(--ivory);padding:clamp(72px,8vw,125px) 0}
.blog-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:url('/assets/services-contact.webp') right 48%/auto 155% no-repeat;opacity:.67}
.blog-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#173423 0%,rgba(23,52,35,.96) 45%,rgba(23,52,35,.42) 100%)}
.blog-hero .eyebrow{color:#e5c780;margin-bottom:18px}
.blog-hero h1{max-width:680px;color:var(--ivory);font-size:clamp(42px,5.5vw,70px);letter-spacing:-1.3px}
.blog-hero p:last-child{max-width:550px;margin-top:22px;font-size:clamp(18px,2vw,22px)}
.blog-listing{padding-block:65px 100px}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.blog-card{min-width:0;background:#fffcf5;border:1px solid var(--line);border-radius:4px;overflow:hidden;display:flex;flex-direction:column}
.blog-card-image{display:block;aspect-ratio:1.55;overflow:hidden;background:var(--cream)}
.blog-card-image img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .25s}
.blog-card-image:hover img{transform:scale(1.03)}
.blog-card-copy{display:flex;flex:1;flex-direction:column;padding:24px}
.blog-meta,.blog-byline{font-size:14px;color:#5b604f}
.blog-card h2{font-size:clamp(26px,2.3vw,34px);margin:12px 0}
.blog-card h2 a{text-decoration:none}
.blog-card h2 a:hover,.blog-read:hover{text-decoration:underline}
.blog-card-copy>p:not(.blog-meta){font-size:16px;line-height:1.55}
.blog-read{margin-top:auto;padding-top:25px;color:var(--forest);font-size:15px;font-weight:700}
.blog-read span{margin-left:8px;font-size:20px}
.blog-empty{text-align:center;padding:60px 24px;border:1px solid var(--line);background:#fffcf5}
.blog-empty img{margin:0 auto 15px}
.blog-empty h2{margin-bottom:10px}
.blog-article-header{background:var(--cream);padding:55px 0 65px}
.blog-article-intro{max-width:900px}
.blog-back{display:inline-block;color:var(--forest);font-weight:700;font-size:15px;margin-bottom:35px}
.blog-article-intro .eyebrow{color:#765019;margin-bottom:15px}
.blog-article h1{font-size:clamp(39px,5.4vw,68px);letter-spacing:-1px;max-width:850px}
.blog-deck{font-size:clamp(18px,2vw,23px);max-width:700px;margin-top:22px}
.blog-byline{margin-top:25px}
.blog-featured{margin-top:45px}
.blog-featured img{display:block;width:auto;max-width:100%;height:auto;max-height:850px;margin-inline:auto;object-fit:contain;border-radius:4px}
.blog-content{max-width:840px;padding-block:50px 90px;font-size:18px;line-height:1.8}
.blog-content>*+*{margin-top:24px}
.blog-content h2{font-size:clamp(31px,3.4vw,43px);margin-top:45px}
.blog-content h3{font-size:clamp(25px,2.6vw,33px);margin-top:32px}
.blog-content h4{font-size:23px}
.blog-content a{color:#1b5234;text-decoration-thickness:1.5px}
.blog-content ul,.blog-content ol{padding-left:1.5em}
.blog-content li+li{margin-top:8px}
.blog-content blockquote{margin-inline:0;padding:8px 0 8px 25px;border-left:3px solid var(--gold);font-family:Georgia,serif;font-size:24px}
.blog-content figure{margin-inline:0}
.blog-content figure img{width:100%;height:auto;border-radius:4px}
.blog-content figcaption{font-size:14px;text-align:center;color:#555;margin-top:8px}
.blog-content code{background:var(--cream);padding:.1em .25em}
.blog-content>.blog-back{margin-top:55px}
.blog-cta{text-align:center;padding:65px 0}
.blog-cta h2{color:var(--ivory)}
.blog-cta p{margin:15px 0 24px}
@media(max-width:1000px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.blog-hero{padding:64px 0 70px}.blog-hero::before{background-size:auto 100%;opacity:.42}.blog-hero::after{background:linear-gradient(90deg,rgba(23,52,35,.99),rgba(23,52,35,.76))}.blog-grid{grid-template-columns:1fr;gap:22px}.blog-listing{padding-block:34px 65px}.blog-article-header{padding:38px 0 45px}.blog-content{font-size:17px;padding-block:35px 65px}.blog-featured{margin-top:20px}.blog-cta{padding:50px 0}}
@media(prefers-reduced-motion:reduce){.blog-card-image img{transition:none}}
