.wp-block-columns.alignwide{
    max-width:1400px !important;
    width:100% !important;
}

.wp-block-column{
    flex-basis:100% !important;
}
/* ==========================
   DPI FIRE MONITOR LANDING
========================== */

.fm-container{
max-width:1200px;
margin:auto;
padding-left:25px;
padding-right:25px;
}

/* ==========================
   HERO
========================== */

.fm-hero{
position:relative;
background-image:url('https://dpi-pemadam.com/wp-content/uploads/2025/12/fire-monitor-sistem-proteksi-kebakaran-industri.jpg');
background-size:cover;
background-position:center;
padding:140px 0;
overflow:hidden;
}

.fm-overlay{
position:absolute;
top:0;
left:0;
right:0;
bottom:0;
background:rgba(5,15,30,.75);
}

.fm-hero-content{
position:relative;
z-index:2;
max-width:750px;
color:#fff;
}

.fm-badge{
display:inline-block;
background:rgba(255,255,255,.1);
backdrop-filter:blur(10px);
padding:8px 18px;
border-radius:30px;
font-size:13px;
font-weight:600;
margin-bottom:25px;
}

.fm-hero h1{
font-size:58px;
line-height:1.15;
font-weight:800;
margin-bottom:25px;
color:#fff;
}

.fm-hero p{
font-size:19px;
line-height:1.9;
max-width:700px;
color:#d6dce5;
}

/* ==========================
   BUTTONS
========================== */

.fm-buttons{
display:flex;
gap:15px;
margin-top:35px;
flex-wrap:wrap;
}

.fm-btn-primary{
display:inline-block;
background:#d62828;
color:#fff !important;
padding:15px 32px;
border-radius:6px;
font-weight:700;
text-decoration:none;
transition:.3s;
}

.fm-btn-primary:hover{
transform:translateY(-2px);
}

.fm-btn-secondary{
display:inline-block;
border:1px solid rgba(255,255,255,.4);
color:#fff !important;
padding:15px 32px;
border-radius:6px;
font-weight:600;
text-decoration:none;
}

/* ==========================
   ADVANTAGE
========================== */

.fm-advantage{
padding:80px 0;
background:#f7f8fa;
}

.fm-stat-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
}

.fm-stat-card{
background:#fff;
padding:35px;
text-align:center;
border-radius:10px;
box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.fm-stat-card h3{
font-size:32px;
font-weight:800;
color:#d62828;
margin-bottom:10px;
}

.fm-stat-card p{
margin:0;
font-size:15px;
color:#666;
}

/* ==========================
   INTRO
========================== */

.fm-intro{
padding:100px 0;
}

.fm-intro h2{
font-size:42px;
margin-bottom:25px;
color:#082032;
}

.fm-intro p{
font-size:18px;
line-height:1.9;
max-width:900px;
color:#555;
}

/* ==========================
   CATEGORY
========================== */

.fm-category{
padding:100px 0;
background:#ffffff;
}

.fm-category h2{
text-align:center;
font-size:42px;
margin-bottom:60px;
}

.fm-category-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.fm-category-card{
background:#fff;
border-radius:12px;
overflow:hidden;
text-decoration:none;
color:#111;
box-shadow:0 8px 25px rgba(0,0,0,.08);
transition:.35s;
}

.fm-category-card:hover{
transform:translateY(-8px);
}

.fm-category-card img{
width:100%;
height:240px;
object-fit:cover;
display:block;
}

.fm-category-card h3{
padding:25px 25px 10px;
font-size:24px;
}

.fm-category-card p{
padding:0 25px 25px;
line-height:1.7;
color:#666;
}

/* ==========================
   APPLICATION
========================== */

.fm-application{
background:#081423;
padding:100px 0;
}

.fm-application h2{
text-align:center;
color:#fff;
font-size:42px;
margin-bottom:50px;
}

.fm-app-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.fm-app-grid a{
background:#122338;
color:#fff;
padding:30px;
text-align:center;
text-decoration:none;
font-weight:700;
border-radius:8px;
transition:.3s;
}

.fm-app-grid a:hover{
background:#d62828;
}

/* ==========================
   SELECTION
========================== */

.fm-selection{
padding:100px 0;
background:#f8fafc;
}

.fm-selection h2{
text-align:center;
font-size:42px;
margin-bottom:60px;
}

.fm-selection-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
}

.fm-selection-grid div{
background:#fff;
padding:35px;
border-radius:10px;
box-shadow:0 8px 25px rgba(0,0,0,.06);
}

.fm-selection-grid h3{
font-size:24px;
margin-bottom:15px;
color:#082032;
}

/* ==========================
   PRODUCTS
========================== */

.fm-products{
padding:110px 0;
}

.fm-products h2{
text-align:center;
font-size:42px;
margin-bottom:60px;
}

.fm-product-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:30px;
}

.fm-product-card{
background:#fff;
text-decoration:none;
color:#111;
border-radius:12px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,.08);
transition:.3s;
}

.fm-product-card:hover{
transform:translateY(-6px);
}

.fm-product-card img{
width:100%;
height:240px;
object-fit:cover;
display:block;
}

.fm-product-card h3{
padding:20px 20px 8px;
font-size:22px;
}

.fm-product-card p{
padding:0 20px 25px;
color:#666;
}

/* ==========================
   ENGINEERING
========================== */

.fm-engineering{
padding:100px 0;
background:#f7f8fa;
}

.fm-engineering h2{
text-align:center;
font-size:42px;
margin-bottom:50px;
}

.fm-resource-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.fm-resource-grid a{
background:#fff;
padding:25px;
border-radius:8px;
text-decoration:none;
color:#082032;
font-weight:700;
box-shadow:0 8px 20px rgba(0,0,0,.05);
transition:.3s;
}

.fm-resource-grid a:hover{
background:#082032;
color:#fff;
}

/* ==========================
   FAQ
========================== */

.fm-faq{
padding:100px 0;
}

.fm-faq h2{
text-align:center;
font-size:42px;
margin-bottom:50px;
}

.fm-faq-item{
background:#fff;
padding:35px;
margin-bottom:20px;
border-left:4px solid #d62828;
box-shadow:0 5px 20px rgba(0,0,0,.05);
}

.fm-faq-item h3{
font-size:22px;
margin-bottom:15px;
}

.fm-faq-item p{
line-height:1.8;
}

/* ==========================
   CTA
========================== */

.fm-cta{
background:#d62828;
padding:110px 0;
text-align:center;
color:#fff;
}

.fm-cta h2{
font-size:48px;
margin-bottom:20px;
color:#fff;
}

.fm-cta p{
max-width:800px;
margin:auto;
font-size:18px;
line-height:1.9;
margin-bottom:35px;
}

/* ==========================
   RESPONSIVE
========================== */

@media(max-width:1024px){

.fm-category-grid,
.fm-product-grid{
grid-template-columns:repeat(2,1fr);
}

.fm-selection-grid{
grid-template-columns:repeat(2,1fr);
}

.fm-stat-grid{
grid-template-columns:repeat(2,1fr);
}

.fm-resource-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.fm-hero{
padding:90px 0;
}

.fm-hero h1{
font-size:38px;
}

.fm-category-grid,
.fm-product-grid,
.fm-selection-grid,
.fm-app-grid,
.fm-resource-grid,
.fm-stat-grid{
grid-template-columns:1fr;
}

.fm-intro h2,
.fm-category h2,
.fm-products h2,
.fm-selection h2,
.fm-engineering h2,
.fm-faq h2,
.fm-application h2{
font-size:32px;
}

.fm-cta h2{
font-size:34px;
}

.fm-buttons{
flex-direction:column;
}

.fm-btn-primary,
.fm-btn-secondary{
width:100%;
text-align:center;
}

}