/* Index-only layout: article templates retain their own reading layout. */
/* The shared theme sets wrapper-content padding only at initial load. Keep this
   page's clearance responsive to the measured header bands during resizing. */
.blog-index{padding-top:150px}
@media(max-width:993px){.blog-index{padding-top:123px}}
@media(max-width:991px){.blog-index{padding-top:138px}}
@media(max-width:767px){.blog-index{padding-top:68px}}
.blog-index .blog-hero{background:#faf5ec;border-bottom:1px solid #e8dfd1;padding:32px 0}
.blog-index .blog-hero-title{color:#29251f;font-size:32px;font-weight:700;line-height:1.15;letter-spacing:-.5px;margin:0 0 16px}
.blog-index .blog-hero-subtitle{color:#59534a;font-size:18px;line-height:1.6;margin:0;max-width:650px}
.blog-index .blog-section{background:#fcfbf8;padding:32px 0 56px}
.blog-index .blog-index-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:30px}
.blog-index .blog-index-content,.blog-index .blog-index-sidebar-col{min-width:0}
.blog-index .featured-post{display:grid;grid-template-columns:minmax(0,1fr);background:#fff;border:1px solid #e4ded5;border-radius:10px;overflow:hidden;margin-bottom:40px}
.blog-index .featured-post .card-image{position:relative;min-width:0;aspect-ratio:16/9}
.blog-index .featured-post .card-image>a{display:block;width:100%;height:100%}
.blog-index .featured-post .card-image img{display:block;width:100%;height:100%;object-fit:cover}
.blog-index .featured-post .category-badge{position:absolute;top:16px;left:16px;padding:6px 12px;border-radius:4px;background:#e8a335;color:#29251f;font-size:14px;font-weight:600}
.blog-index .featured-post .card-content{padding:24px;min-width:0;align-self:center}
.blog-index .featured-post h2{font-size:24px;line-height:1.3;font-weight:700;margin:14px 0 16px}
.blog-index .featured-post h2 a{color:#29251f}
.blog-index .featured-post p{font-size:16px;line-height:1.65;color:#59534a;margin-bottom:24px}
.blog-index .featured-post .date{font-size:14px;color:#595959}
.blog-index .btn-primary{color:#29251f;background:#e8a335;border-color:#e8a335;border-radius:6px;padding:12px 18px;font-size:16px;font-weight:600;line-height:1.4;white-space:normal}
.blog-index .btn-primary:hover,.blog-index .btn-primary:focus{color:#29251f;background:#f3bc59;border-color:#a86b13}
.blog-index .section-title{text-align:left;font-size:26px;line-height:1.3;font-weight:700;margin:0 0 24px;color:#29251f}
.blog-index .blog-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin:0}
/* Reset Bootstrap's column widths and gutters inside the index-owned grid. */
.blog-index .blog-grid>.blog-card{float:none;width:auto;min-width:0;padding:0;margin:0}
.blog-index .blog-card .card-inner{display:flex;flex-direction:column;height:100%;border:1px solid #e4ded5;border-radius:10px;box-shadow:none;transition:box-shadow .2s ease}
.blog-index .blog-card .card-inner:hover{transform:none;box-shadow:0 4px 16px #29251f12}
.blog-index .blog-card .card-image{aspect-ratio:16/9}
.blog-index .blog-card .card-image>a{display:block;height:100%}
.blog-index .blog-card .card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:none}
.blog-index .blog-card:hover .card-image img{transform:none}
.blog-index .blog-card .card-image .category-badge{max-width:calc(100% - 32px);top:16px;left:16px;background:#e8a335;color:#29251f;font-size:14px;line-height:1.4;letter-spacing:0;text-transform:none}
.blog-index .blog-card .card-content{display:flex;flex-direction:column;flex:1;padding:24px;min-width:0}
.blog-index .blog-card .card-meta{flex-wrap:wrap;color:#595959;font-size:14px;line-height:1.5}
.blog-index .blog-card .card-meta i{color:#805016}
.blog-index .blog-card .card-title a{font-size:20px;line-height:1.4;color:#29251f}
.blog-index .blog-card .card-title a:hover,.blog-index .featured-post h2 a:hover{color:#805016;text-decoration:underline}
.blog-index .blog-card .card-excerpt{font-size:16px;line-height:1.65;color:#59534a;margin-bottom:24px}
.blog-index .blog-card .card-footer{margin-top:auto;gap:12px;flex-wrap:wrap}
.blog-index .blog-card .reading-time{color:#595959;font-size:14px;white-space:nowrap}
.blog-index .blog-sidebar{padding-left:0;margin-top:32px}
.blog-index .sidebar-widget{padding:20px;border:1px solid #e4ded5;border-radius:10px;box-shadow:none;background:#fff;margin-bottom:24px}
.blog-index .sidebar-widget .widget-title{color:#29251f;font-size:20px;line-height:1.4;margin:0 0 20px;padding-bottom:12px}
.blog-index .sidebar-widget p{color:#59534a;font-size:16px;line-height:1.65}
.blog-index .recent-posts-widget .recent-post{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e4ded5}
.blog-index .recent-posts-widget .recent-post:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.blog-index .recent-posts-widget .recent-post>a{display:block;flex:0 0 72px;width:72px}
.blog-index .recent-posts-widget .recent-post img{display:block;width:72px;height:72px;object-fit:cover;border-radius:5px;margin:0;float:none}
.blog-index .recent-posts-widget .post-info{min-width:0;flex:1}
.blog-index .recent-posts-widget .post-title{margin:0 0 8px;font-size:16px;line-height:1.4}
.blog-index .recent-posts-widget .post-title a{font-size:16px;line-height:1.4;color:#29251f;overflow-wrap:break-word}
.blog-index .recent-posts-widget .post-date{font-size:14px;color:#595959}
.blog-index .newsletter-widget input{font-size:16px;min-height:44px;max-width:100%}
@media(min-width:768px){.blog-index .blog-hero{padding:48px 0}.blog-index .blog-hero-title{font-size:44px}.blog-index .blog-section{padding-top:40px}.blog-index .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:992px){.blog-index .featured-post{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-index .featured-post .card-image{aspect-ratio:auto;min-height:280px}.blog-index .featured-post h2{font-size:26px}}
@media(min-width:1200px){.blog-index .blog-index-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.blog-index .blog-sidebar{margin-top:0}}
@media(prefers-reduced-motion:reduce){.blog-index .blog-card .card-inner{transition:none}}
