.sw-posts-grid{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:24px;
}

.sw-post-card{
position:relative;
overflow:hidden;
border-radius:24px;
background:#fff;
transition:.3s;
}

body.dark-mode .sw-post-card{
background:#0f172a;
}

.sw-post-card:hover{
transform:translateY(-4px);
}

.sw-post-thumb{
display:block;
position:relative;
aspect-ratio:16/10;
overflow:hidden;
}

.sw-post-thumb img{
width:100%;
height:100%;
object-fit:cover;
transition:.4s;
}

.sw-post-card:hover .sw-post-thumb img{
transform:scale(1.05);
}

.sw-post-content{
padding:18px;
}

.sw-meta-taxonomy,
.sw-meta-taxonomy .sw-meta-content,
.sw-meta-taxonomy a{
color:#ffffff !important;
font-weight:800;
font-size:13px;
text-decoration:none;
display:inline-flex;
align-items:center;
gap:6px;
}

.sw-meta-taxonomy{
margin-bottom:14px;
display:block;
}

.sw-meta-taxonomy a{
display:inline-flex;
align-items:center;
justify-content:center;
height:32px;
padding:0 14px;
border-radius:30px;
background:#e31205;
color:#fff;
font-size:12px;
font-weight:700;
}

.sw-meta-taxonomy a:hover{
opacity:.8;
}

.sw-post-title{
font-size:20px;
line-height:1.6;
margin-bottom:16px;
}

.sw-post-title a{
color:#111;
}

body.dark-mode .sw-post-title a{
color:#fff;
}

.sw-post-meta{
display:flex;
align-items:center;
gap:14px;
font-size:13px;
color:#64748b;
flex-wrap:wrap;
}

.sw-post-meta a{
color:#111;
font-weight:700;
}

body.dark-mode .sw-post-meta a{
color:#fff;
}

.sw-no-posts{
padding:30px;
text-align:center;
}

@media(max-width:1200px){

.sw-posts-grid{
grid-template-columns:repeat(3,minmax(0,1fr));
}

}

@media(max-width:991px){

.sw-posts-grid{
grid-template-columns:repeat(2,minmax(0,1fr));
}

}

@media(max-width:767px){

.sw-posts-grid{
grid-template-columns:1fr;
}

.sw-post-title{
font-size:18px;
}

}

.sw-single-layout{
padding:40px 0 80px;
}

.sw-single-container{
max-width:1400px;
margin:auto;
padding:0 20px;
}

.sw-single-grid{
display:grid;
grid-template-columns:minmax(0,1fr) 340px;
gap:40px;
align-items:start;
}

.sw-single-layout.no-sidebar .sw-single-grid{
grid-template-columns:minmax(0,900px);
justify-content:center;
}

.sw-single-content{
min-width:0;
}

.sw-single-hero{
margin-bottom:30px;
}

.sw-single-category{
margin-bottom:18px;
}

.sw-single-category .sw-meta-taxonomy a{
display:inline-flex;
align-items:center;
justify-content:center;
height:36px;
padding:0 18px;
border-radius:100px;
background:#e31205;
color:#fff;
font-size:13px;
font-weight:700;
}

.sw-single-title{
font-size:clamp(32px,5vw,52px);
line-height:1.4;
margin-bottom:20px;
font-weight:700;
letter-spacing:-1px;
}

.sw-single-subtitle{
font-size:22px;
line-height:1.9;
color:#64748b;
margin-bottom:25px;
}

body.dark-mode .sw-single-subtitle{
color:#94a3b8;
}

.sw-single-meta{
display:flex;
align-items:center;
gap:18px;
flex-wrap:wrap;
padding-bottom:25px;
border-bottom:1px solid #e2e8f0;
}

body.dark-mode .sw-single-meta{
border-color:#1e293b;
}

.sw-single-thumbnail{
position:relative;
overflow:hidden;
border-radius:30px;
margin-bottom:40px;
}

.sw-single-thumbnail img{
width:100%;
height:auto;
display:block;
}

.sw-single-body-wrap{
display:grid;
grid-template-columns:80px minmax(0,1fr);
gap:30px;
}

.sw-single-share{
position:sticky;
top:120px;
height:max-content;
}

.sw-single-content-inner{
font-size:20px;
line-height:2.2;
color:#1e293b;
}

body.dark-mode .sw-single-content-inner{
color:#e2e8f0;
}

.sw-single-content-inner p{
margin-bottom:28px;
}

.sw-single-content-inner h2,
.sw-single-content-inner h3,
.sw-single-content-inner h4{
font-size:32px;
line-height:1.5;
margin:50px 0 25px;
}

.sw-single-content-inner img{
max-width:100%;
height:auto;
border-radius:24px;
margin:25px 0;
}

.sw-single-content-inner ul,
.sw-single-content-inner ol{
padding-right:22px;
margin-bottom:30px;
}

.sw-single-content-inner li{
margin-bottom:14px;
}

.sw-faq-section{
margin-top:60px;
padding:35px;
border-radius:30px;
background:#f8fafc;
}

body.dark-mode .sw-faq-section{
background:#0f172a;
}

.sw-faq-head{
margin-bottom:20px;
}

.sw-faq-head h2{
font-size:28px;
}

.sw-faq-item{
border-bottom:1px solid #e2e8f0;
}

body.dark-mode .sw-faq-item{
border-color:#1e293b;
}

.sw-faq-question{
width:100%;
min-height:70px;
display:flex;
align-items:center;
justify-content:space-between;
background:none;
border:none;
cursor:pointer;
font-size:18px;
font-weight:700;
text-align:right;
padding:0;
}

.sw-faq-icon{
font-size:26px;
transition:.3s;
}

.sw-faq-item.active .sw-faq-icon{
transform:rotate(45deg);
}

.sw-faq-answer{
display:none;
padding-bottom:20px;
}

.sw-faq-item.active .sw-faq-answer{
display:block;
}

.sw-single-sidebar{
position:sticky;
top:110px;
}

.sw-single-footer{
margin-top:50px;
padding-top:30px;
border-top:1px solid #e2e8f0;
}

body.dark-mode .sw-single-footer{
border-color:#1e293b;
}

.sw-single-extra{
margin-top:60px;
}

@media(max-width:1200px){

.sw-single-grid{
grid-template-columns:minmax(0,1fr);
}

.sw-single-sidebar{
display:none;
}

}

@media(max-width:991px){

.sw-single-body-wrap{
grid-template-columns:1fr;
}

.sw-single-share{
display:none;
}

.sw-single-title{
font-size:36px;
}

.sw-single-content-inner{
font-size:18px;
}

}

@media(max-width:767px){

.sw-single-layout{
padding-top:20px;
}

.sw-single-container{
padding:0 14px;
}

.sw-single-title{
font-size:30px;
}

.sw-single-subtitle{
font-size:18px;
}

.sw-single-content-inner{
font-size:17px;
line-height:2;
}

.sw-single-content-inner h2,
.sw-single-content-inner h3,
.sw-single-content-inner h4{
font-size:24px;
}

.sw-faq-section{
padding:25px 20px;
border-radius:24px;
}

}

/* =========================================
POST TITLE - DARK MODE FIX
========================================= */

.sw-post-title,
.sw-post-title a{
color:#111827;
transition:.25s;
}

.sw-post-title a:hover{
color:#e31205;
}

/* DARK MODE */

body.dark-mode .sw-post-title,
body.dark-mode .sw-post-title a{
color:#fff !important;
}

body.dark-mode .sw-post-title a:hover{
color:#ff6b4a !important;
}