
.blog-latest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:20px auto 4px}
.blog-feature-item{background:rgba(255,255,255,.88);border:1px solid #e1dbd4;border-radius:10px;overflow:hidden;box-shadow:0 5px 22px #22170b0d;min-width:0;display:flex;flex-direction:column}
.blog-feature-item .blog-live-body{display:flex;flex-direction:column;flex:1;gap:9px;padding:16px}
.blog-feature-item h3,.blog-card .blog-live-body h3{font-size:16px;line-height:1.36;margin:0;letter-spacing:-.014em}
.blog-feature-item h3 a,.blog-card .blog-live-body h3 a{color:#27292c;text-decoration:none}
.blog-feature-item h3 a:hover,.blog-card .blog-live-body h3 a:hover{color:#ac542f}
.blog-feature-item p,.blog-card .blog-live-body p{color:#60666a;font-size:12px;line-height:1.6;margin:0}
.blog-live-category{color:#a15431;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:700}
.blog-feature-item .text-link,.blog-card .blog-live-body .text-link{margin-top:auto}
.blog-feature-item .blog-live-cover{height:6px;background:linear-gradient(90deg,#c97443,#dfb58f)}
.blog-feature-item .blog-live-image,.blog-card .blog-live-image{width:100%;height:auto;max-height:190px;object-fit:cover;display:block}
.blog-feature-item .blog-live-cover:has(img){height:auto;background:none}
.blog-card .blog-live-cover{height:5px;background:linear-gradient(90deg,#ad6039,#ead5b8)}
.blog-card .blog-live-body{padding:18px;display:flex;flex-direction:column;gap:12px;flex:1}
.blog-card:has(.blog-live-body){padding:0;overflow:hidden;display:flex;flex-direction:column}
.blog-latest-grid .blog-live-empty,.blog-cards .blog-live-empty{grid-column:1/-1;color:#666;line-height:1.5}
.blog-feature-item.reveal-ready.reveal-wait{opacity:0;transform:translateX(22px)}
.blog-live-article{padding:66px 0 90px;min-height:75vh;background:#f6f3ed}
.blog-live-article .shell{max-width:860px}
.blog-live-article article{max-width:780px;background:white;padding:clamp(20px,5vw,48px);border:1px solid #e1d9d0;border-radius:13px}
.blog-live-article h1{font-size:clamp(30px,4vw,44px);line-height:1.15;color:#25292b;letter-spacing:-.03em;margin:16px 0}
.blog-live-article .blog-live-lead{font-size:18px;color:#535b60;line-height:1.6;margin:12px 0 28px}
.blog-live-prose{color:#31363a;font-size:16px;line-height:1.9}
.blog-live-prose h2{font-size:24px;line-height:1.34;margin:30px 0 10px}
.blog-live-prose h3{font-size:20px;line-height:1.35;margin:24px 0 8px}
.blog-live-prose ul{padding-left:24px}
.blog-live-prose li{margin:7px 0}
.blog-live-prose p{margin:15px 0}
.blog-live-article .blog-live-image{display:block;width:100%;height:auto;border-radius:8px;max-height:440px;object-fit:cover}
.blog-live-article .blog-breadcrumb{margin-bottom:18px}
.blog-home-section .blog-home-card{margin-bottom:12px}
@media(max-width:980px){.blog-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.blog-latest-grid{grid-template-columns:1fr;gap:10px}.blog-feature-item .blog-live-body{padding:14px}.blog-live-article{padding:22px 0 46px}}
@media(prefers-reduced-motion:reduce){.blog-feature-item.reveal-ready.reveal-wait{transform:none;opacity:1}}

/* Optional inline editorial images and click-to-play privacy-friendly YouTube */
.blog-inline-image{margin:24px 0;}
.blog-inline-image img{display:block;max-width:100%;height:auto;border-radius:9px;}
.blog-video{background:#1c2124;border-radius:11px;margin:24px 0;padding:12px;display:flex;flex-direction:column;gap:10px;min-height:0;}
.blog-video-play{cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;aspect-ratio:16/9;border:1px solid #7e614d;border-radius:7px;background:linear-gradient(120deg,#171c1e,#3d322e);color:#f8eee8;font-weight:700;font-size:clamp(14px,2vw,19px);}
.blog-video-play span{color:#f1a276;font-size:22px;}
.blog-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:7px;display:block;}
.blog-video>a{align-self:flex-start;color:#f3d7c5;font-size:12px;}

/* Blog discovery: visible search, reading time and related published articles. */
.blog-search-field{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 20px}
.blog-search-field label{font-size:13px;color:#3b4346;font-weight:700}
.blog-search-field input{background:#fff;border:1px solid #cfc9be;border-radius:8px;padding:12px 14px;min-height:44px;width:min(420px,100%);color:#252b2d}
.blog-search-field input:focus-visible{outline:2px solid #b86c43;outline-offset:2px}
.blog-card[hidden]{display:none!important}
.blog-reading-time{display:block;color:#88664d;font-size:11px;margin:4px 0}
.blog-related{margin:26px 0 0;padding:28px 0 0;border-top:1px solid #d9cfc4}
.blog-related>h2{font-size:clamp(23px,3vw,29px);color:#292e30;margin:0 0 20px}
.blog-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.blog-related-grid .blog-card{min-width:0}
@media(max-width:760px){.blog-related-grid{grid-template-columns:1fr}.blog-search-field{flex-direction:column;align-items:stretch;gap:9px}.blog-search-field input{width:100%}}

/* Blog listing fix: the previous 5px placeholder strip clipped the image's
   layout box, causing titles and excerpts to overlap the cover photograph. */
.blog-cards .blog-card .blog-live-cover:has(>img){
  flex:0 0 auto;
  height:200px;
  overflow:hidden;
  background:#24282b;
}
.blog-cards .blog-card .blog-live-cover:has(>img) >img{
  display:block;
  width:100%;
  height:100%;
  max-height:none;
  object-fit:cover;
  object-position:center;
}
.blog-cards .blog-card .blog-live-body{
  position:relative;
  flex:1 0 auto;
  z-index:1;
  min-width:0;
}
@media(max-width:580px){
  .blog-cards .blog-card .blog-live-cover:has(>img){height:190px}
}
