html{font-size:16px;}
body.blog-body{margin:0;line-height:1.6;font-family:'Inter',sans-serif;color:#1a202c;background:#fff;}
*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;}
:before,:after{box-sizing:border-box;}
h1,h2,h3,h4,h5,h6,button{font-family:'Sora',sans-serif;}
button,input,textarea,select{font-family:'Inter',sans-serif;}
.container{width:90%;max-width:1320px;margin:0 auto;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.breadcrumb{width:90%;height:auto;overflow:hidden;max-width:1320px;margin:20px auto 0 auto}
.breadcrumb-elite{width:90%;max-width:1320px;margin:0 auto;padding:0 0 20px;font-size:.85rem}
.breadcrumb-list{list-style:none;padding:0;margin:0;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.breadcrumb-list a{text-decoration:none;color:#718096;font-weight:600;transition:.3s;border-bottom:1px solid transparent}
.breadcrumb-list a:hover{color:#cd1312;border-color:#cd1312}
.breadcrumb-list .active{color:#cd1312;font-weight:700}
.breadcrumb-list li:not(:last-child)::after{content:"/";margin-left:8px;color:#718096}

/* Hero */
.blog-hero{padding:clamp(2.5rem,5vw,4.5rem) 0 clamp(2rem,4vw,3rem);background:radial-gradient(circle at top right,#fff5f5,#fff 55%),linear-gradient(180deg,#fafafa 0%,#fff 100%);border-bottom:1px solid #eee}
.blog-hero__badge{display:inline-block;padding:8px 16px;background:rgba(205,19,18,.08);color:#cd1312;border-radius:100px;font-weight:700;font-size:.85rem;margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.04em}
.blog-hero__title{font-size:clamp(2.6rem,5vw,4rem);font-weight:800;line-height:1.05;letter-spacing:-2px;color:#0f172a;margin-bottom:1rem}
.blog-hero__lead{font-size:clamp(1.05rem,1.4vw,1.25rem);color:#4a5568;max-width:640px;margin-bottom:1.75rem}
.blog-search{display:flex;gap:10px;max-width:640px;margin-bottom:1.5rem}
.blog-search input{flex:1;min-width:0;padding:16px 20px;border:1.5px solid #e2e8f0;border-radius:14px;background:#fff;font-size:1rem;outline:none;transition:.25s}
.blog-search input:focus{border-color:#cd1312;box-shadow:0 0 0 4px rgba(205,19,18,.1)}
.blog-search button{display:inline-flex;align-items:center;gap:8px;padding:16px 22px;border:none;border-radius:14px;background:#cd1312;color:#fff;font-weight:700;cursor:pointer;transition:.3s}
.blog-search button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(205,19,18,.35)}
.blog-chips{display:flex;flex-wrap:wrap;gap:10px}
.blog-chip{display:inline-flex;align-items:center;padding:8px 16px;border-radius:100px;border:1px solid #e2e8f0;background:#fff;color:#334155;text-decoration:none;font-size:.9rem;font-weight:600;transition:.25s}
.blog-chip:hover,.blog-chip.is-active{background:#cd1312;border-color:#cd1312;color:#fff}

.blog-listing-head{padding:clamp(2rem,4vw,3.5rem) 0 1rem;background:#fafafa;border-bottom:1px solid #eee}
.blog-listing-head h1{font-size:clamp(2rem,4vw,3rem);font-weight:800;color:#0f172a;margin-bottom:.75rem;letter-spacing:-1px}
.blog-listing-head p{color:#4a5568;max-width:700px;margin-bottom:1rem;font-size:1.05rem}
.blog-back-link{display:inline-flex;align-items:center;gap:8px;color:#cd1312;font-weight:700;text-decoration:none}
.blog-back-link:hover{text-decoration:underline}

/* Layouts */
.blog-main{padding:clamp(2.5rem,5vw,4rem) 0 clamp(4rem,8vw,6rem)}
.blog-layout-2{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(2rem,4vw,3.5rem);align-items:start}
.blog-section{margin-bottom:clamp(2.5rem,5vw,4rem)}
.blog-section__head{margin-bottom:1.5rem}
.blog-section__head h2{font-size:clamp(1.5rem,2.5vw,2rem);font-weight:800;color:#0f172a;margin-bottom:.35rem}
.blog-section__head p{color:#64748b;font-size:.98rem}

.blog-featured-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:1rem}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.blog-grid--related{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}

/* Cards */
.blog-card{background:#fff;border:1px solid #e8ecf1;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;height:100%;box-shadow:0 4px 16px rgba(15,23,42,.04);transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .3s}
.blog-card:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(15,23,42,.12);border-color:rgba(205,19,18,.35)}
.blog-card--featured{min-height:100%}
.blog-card__media{display:block;aspect-ratio:16/10;background:#f8fafc;overflow:hidden}
.blog-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.blog-card:hover .blog-card__media img{transform:scale(1.04)}
.blog-card__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#cd1312;font-size:2rem;background:linear-gradient(135deg,#fff5f5,#f1f5f9)}
.blog-card__body{padding:1.25rem 1.35rem 1.5rem;display:flex;flex-direction:column;flex:1}
.blog-card__category{display:inline-flex;align-self:flex-start;padding:5px 12px;border-radius:100px;background:rgba(205,19,18,.08);color:#cd1312;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;text-decoration:none;margin-bottom:.75rem}
.blog-card__category:hover{background:#cd1312;color:#fff}
.blog-card__title{font-size:17px;font-weight:700;line-height:1.35;margin-bottom:.65rem}
.blog-card__title a{color:#0f172a;text-decoration:none}
.blog-card__title a:hover{color:#cd1312}
.blog-card--featured .blog-card__title{font-size:clamp(1.25rem,2vw,1.45rem)}
.blog-card__excerpt{color:#64748b;font-size:14px;margin-bottom:1rem;flex:1}
.blog-card__meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:.82rem;color:#94a3b8;margin-bottom:1rem}
.blog-card__more{display:inline-flex;align-items:center;gap:8px;color:#cd1312;font-weight:800;text-decoration:none;font-size:.92rem;margin-top:auto}
.blog-card__more i{transition:transform .25s}
.blog-card:hover .blog-card__more i{transform:translateX(6px)}

.blog-empty{padding:3rem 1.5rem;text-align:center;background:#f8fafc;border-radius:20px;border:1px dashed #e2e8f0}
.blog-empty p{margin-bottom:1.25rem;color:#64748b}

/* Sidebar */
.blog-sidebar,.blog-article__aside{display:flex;flex-direction:column;gap:1.25rem}
.blog-widget{background:#fff;border:1px solid #edf2f7;border-radius:18px;padding:1.35rem 1.4rem;box-shadow:0 4px 18px rgba(15,23,42,.03)}
.blog-widget__title{font-size:1.05rem;font-weight:800;color:#0f172a;margin-bottom:1rem;padding-bottom:.65rem;border-bottom:2px solid rgba(205,19,18,.15)}
.blog-widget__posts{list-style:none;display:flex;flex-direction:column;gap:14px}
.blog-widget__posts a{display:grid;grid-template-columns:56px 1fr;gap:12px;align-items:center;text-decoration:none;color:inherit}
.blog-widget__posts img,.blog-widget__thumb-fallback{width:56px;height:56px;border-radius:12px;object-fit:cover;background:#f1f5f9}
.blog-widget__thumb-fallback{display:flex;align-items:center;justify-content:center;color:#cd1312}
.blog-widget__posts strong{display:block;font-size:.9rem;line-height:1.35;color:#0f172a;font-weight:700}
.blog-widget__posts a:hover strong{color:#cd1312}
.blog-widget__posts small{color:#94a3b8;font-size:.78rem}
.blog-widget__cats{list-style:none}
.blog-widget__cats li+li{margin-top:8px}
.blog-widget__cats a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:#334155;font-weight:600;font-size:.92rem;padding:8px 0;border-bottom:1px solid #f1f5f9}
.blog-widget__cats a:hover{color:#cd1312}
.blog-widget__cats em{font-style:normal;background:#f1f5f9;color:#64748b;padding:2px 8px;border-radius:100px;font-size:.75rem;font-weight:700}
.blog-tag-cloud{display:flex;flex-wrap:wrap;gap:8px}
.blog-tag-cloud a{display:inline-flex;padding:6px 12px;border-radius:100px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;text-decoration:none;font-size:.8rem;font-weight:600;transition:.2s}
.blog-tag-cloud a:hover{background:#cd1312;border-color:#cd1312;color:#fff}
.blog-widget--cta{background:linear-gradient(160deg,#0f172a,#1e293b);color:#fff;border:none}
.blog-widget--cta .blog-widget__title{color:#fff;border-bottom-color:rgba(255,255,255,.15)}
.blog-widget--cta p{color:#cbd5e1;font-size:.92rem;margin-bottom:1.1rem}
.blog-cta-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;background:#cd1312;color:#fff;text-decoration:none;border-radius:100px;font-weight:800;font-size:.95rem;transition:.3s}
.blog-cta-btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(205,19,18,.4)}
.blog-cta-link{display:block;margin-top:.85rem;color:#fca5a5;font-size:.82rem;text-decoration:none}
.blog-cta-link:hover{color:#fff;text-decoration:underline}

/* Pagination */
.blog-pagination-wrap{margin-top:2.5rem}
.blog-pagination__list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0;margin:0}
.blog-pagination__item a,.blog-pagination__item span{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;padding:0 12px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#334155;text-decoration:none;font-weight:700;font-size:.9rem}
.blog-pagination__item a:hover{border-color:#cd1312;color:#cd1312}
.blog-pagination__item.is-active span{background:#cd1312;border-color:#cd1312;color:#fff}
.blog-pagination__item.is-disabled span{opacity:.45}

/* Article 2-col (TOC + content) */
.blog-article{padding:clamp(1.5rem,3vw,2.5rem) 0 clamp(4rem,8vw,6rem)}
.blog-article__grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(1.5rem,3vw,2.5rem);align-items:start}
.blog-toc{position:sticky;top:100px;align-self:start}
.blog-toc__inner{background:#fff;border:1px solid #edf2f7;border-radius:16px;    padding: 15px 10px;box-shadow:0 4px 18px rgba(15,23,42,.03)}
.blog-toc__title{font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-weight:800;margin-bottom:.85rem}
.blog-toc__list{list-style:none;display:flex;flex-direction:column;gap:6px;max-height:60vh;overflow:auto}
.blog-toc__list a{display:block;padding:8px 10px;color:#475569;text-decoration:none;font-size:.88rem;font-weight:600;line-height:1.35;border-left:3px solid transparent;transition:.2s}
.blog-toc__list a:hover,.blog-toc__list a.is-active{color:#cd1312;background:rgba(205,19,18,.06);border-left-color:#cd1312}
.blog-toc__empty{font-size:.85rem;color:#94a3b8}

.blog-article__hero{margin:0 0 1.5rem;border-radius:22px;overflow:hidden;background:#f8fafc}
.blog-article__hero img{width:100%;height:auto;display:block;max-height:480px;object-fit:cover}
.blog-article__header{margin-bottom:1.75rem}
.blog-article__header h1{font-size:clamp(1.9rem,3.5vw,2.8rem);font-weight:800;line-height:1.15;letter-spacing:-1px;color:#0f172a;margin:.75rem 0 1rem}
.blog-article__meta{display:flex;flex-wrap:wrap;gap:10px 18px;color:#64748b;font-size:.92rem}
.blog-article__meta i{color:#cd1312;margin-right:4px}
.blog-article__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:1rem}
.blog-article__tags a{color:#cd1312;text-decoration:none;font-weight:700;font-size:.85rem}
.blog-article__tags a:hover{text-decoration:underline}

/* Prose */
.blog-prose{font-size:1.05rem;color:#334155;line-height:1.8}
.blog-prose > *:first-child{margin-top:0}
.blog-prose h1,.blog-prose h2,.blog-prose h3,.blog-prose h4{color:#0f172a;font-weight:800;line-height:1.25;margin:2rem 0 .9rem;scroll-margin-top:110px}
.blog-prose h1{font-size:clamp(1.7rem,3vw,2.2rem)}
.blog-prose h2{font-size:clamp(1.4rem,2.4vw,1.85rem);padding-top:.25rem}
.blog-prose h3{font-size:clamp(1.15rem,2vw,1.4rem);color:#cd1312}
.blog-prose p{margin:0 0 1.25rem}
.blog-prose a{color:#cd1312;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.blog-prose ul,.blog-prose ol{margin:0 0 1.25rem 1.25rem;padding:0}
.blog-prose li{margin-bottom:.45rem}
.blog-prose img{max-width:100%;height:auto;border-radius:14px;margin:1rem 0;display:block}
.blog-prose figure{margin:1.5rem 0}
.blog-prose figcaption{font-size:.85rem;color:#94a3b8;margin-top:.5rem}
.blog-prose blockquote{margin:1.5rem 0;padding:1.1rem 1.35rem;border-left:4px solid #cd1312;background:#fff5f5;border-radius:0 14px 14px 0;color:#475569;font-style:italic}
.blog-prose table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem;overflow-x:auto;display:block}
.blog-prose th,.blog-prose td{border:1px solid #e2e8f0;padding:10px 12px;text-align:left}
.blog-prose th{background:#f8fafc;font-weight:700;color:#0f172a}
.blog-prose code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em;background:#f1f5f9;padding:.15em .4em;border-radius:6px;color:#be123c}
.blog-prose pre{background:#0f172a;color:#e2e8f0;padding:1.1rem 1.2rem;border-radius:14px;overflow:auto;margin:1.25rem 0}
.blog-prose pre code{background:transparent;color:inherit;padding:0}
.blog-prose hr{border:none;border-top:1px solid #e2e8f0;margin:2rem 0}

.blog-author-box{display:flex;gap:1rem;align-items:flex-start;margin:2.5rem 0 1.5rem;padding:1.4rem;background:#f8fafc;border-radius:18px;border:1px solid #edf2f7}
.blog-author-box__avatar{width:56px;height:56px;border-radius:50%;background:#cd1312;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-family:'Sora',sans-serif;flex-shrink:0}
.blog-author-box h3{font-size:1.05rem;margin-bottom:.35rem;color:#0f172a}
.blog-author-box p{margin:0;color:#64748b;font-size:.92rem}

.blog-share{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:1.5rem 0 2rem}
.blog-share > span{font-weight:800;color:#0f172a;margin-right:.25rem}
.blog-share a,.blog-share button{width:42px;height:42px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#334155;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:.25s}
.blog-share a:hover,.blog-share button:hover,.blog-share button.is-copied{background:#cd1312;border-color:#cd1312;color:#fff}

.blog-post-nav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:2rem 0}
.blog-post-nav a{display:flex;flex-direction:column;gap:6px;padding:1.1rem 1.2rem;border:1px solid #edf2f7;border-radius:16px;text-decoration:none;background:#fff;transition:.25s}
.blog-post-nav a:hover{border-color:#cd1312;box-shadow:0 10px 28px rgba(15,23,42,.06)}
.blog-post-nav span{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;font-weight:700}
.blog-post-nav strong{color:#0f172a;font-size:.95rem;line-height:1.35}
.blog-post-nav__next{text-align:right}

.blog-related{margin:2.5rem 0}
.blog-related h2{font-size:1.5rem;font-weight:800;margin-bottom:1.25rem;color:#0f172a}

.blog-article-cta{margin-top:2.5rem;padding:clamp(1.75rem,4vw,2.5rem);border-radius:22px;background:linear-gradient(135deg,#cd1312,#9f0f0e);color:#fff;text-align:center}
.blog-article-cta h2{color:#fff;font-size:clamp(1.35rem,2.5vw,1.75rem);margin-bottom:.65rem}
.blog-article-cta p{color:rgba(255,255,255,.9);margin-bottom:1.25rem;max-width:520px;margin-left:auto;margin-right:auto}
.blog-article-cta .blog-cta-btn{background:#fff;color:#cd1312}
.blog-article-cta .blog-cta-btn:hover{box-shadow:0 14px 30px rgba(0,0,0,.25)}

/* Duplicate sidebar widgets on article aside: hide first popular/recent/etc from nested sidebar if related shown — keep as is */

@media (max-width:1100px){
.blog-article__grid{grid-template-columns:1fr}
.blog-toc{display:none}
}
@media (max-width:900px){
.blog-layout-2{grid-template-columns:1fr}
.blog-search{flex-direction:column}
.blog-search button{justify-content:center}
}
@media (max-width:640px){
.blog-post-nav{grid-template-columns:1fr}
.blog-post-nav__next{text-align:left}
.blog-author-box{flex-direction:column}
.blog-hero__title{letter-spacing:-1px}
}

/*Red: cd1312
font-family: 'Inter', sans-serif;
*/
