/* =====================================================
StormCheckOK Base Styles
Shared style system with RoofCheckOK
===================================================== */

*{
box-sizing:border-box;
margin:0;
padding:0;
}

body{
font-family:Arial, Helvetica, sans-serif;
line-height:1.6;
background:#ffffff;
color:#222;
max-width:1100px;
margin:auto;
padding:20px;
}

/* =====================================================
Typography
===================================================== */

h1{
font-size:2rem;
margin-bottom:10px;
}

h2{
font-size:1.5rem;
margin-top:30px;
margin-bottom:10px;
}

h3{
font-size:1.2rem;
margin-top:20px;
margin-bottom:8px;
}

p{
margin-bottom:12px;
}

/* =====================================================
Links
===================================================== */

a{
color:#0b63ce;
text-decoration:none;
}

a:hover{
text-decoration:underline;
}

/* =====================================================
Navigation
===================================================== */

nav{
margin-top:15px;
margin-bottom:25px;
}

nav a{
margin-right:15px;
font-weight:bold;
}

/* =====================================================
Header
===================================================== */

header{
margin-bottom:30px;
border-bottom:1px solid #e6e6e6;
padding-bottom:15px;
}

/* =====================================================
Main
===================================================== */

main{
margin-bottom:40px;
}

/* =====================================================
Service Grid
===================================================== */

.service-grid{
display:grid;
grid-template-columns:repeat(auto-fit, minmax(250px,1fr));
gap:18px;
margin-top:20px;
}

.service-card{
border:1px solid #e6e6e6;
padding:18px;
border-radius:6px;
background:#fafafa;
}

.service-card h3{
margin-bottom:8px;
}

/* =====================================================
Safety Warning
===================================================== */

.safety-warning{
background:#fff3cd;
border:1px solid #ffeeba;
padding:15px;
border-radius:6px;
margin-top:20px;
margin-bottom:20px;
}

.safety-warning strong{
color:#856404;
}

/* =====================================================
Call Box
===================================================== */

.call-box{
background:#f5f7fa;
border:1px solid #d6dce5;
padding:18px;
margin-top:25px;
border-radius:6px;
text-align:center;
}

.phone-number{
font-size:1.5rem;
font-weight:bold;
margin-top:10px;
}

/* =====================================================
Checklist
===================================================== */

.checklist{
margin-top:15px;
margin-left:20px;
}

.checklist li{
margin-bottom:8px;
}

/* =====================================================
Context Bridge (RoofCheckOK)
===================================================== */

.context-bridge{
margin-top:25px;
padding:15px;
background:#f6f8fb;
border-left:4px solid #3a6edc;
font-size:0.95rem;
}

/* =====================================================
Footer
===================================================== */

footer{
border-top:1px solid #e6e6e6;
padding-top:20px;
margin-top:40px;
font-size:0.9rem;
color:#555;
}

/* =====================================================
Legal pages
===================================================== */

.legal{
max-width:800px;
margin:auto;
}

/* =====================================================
Mobile
===================================================== */

@media (max-width:600px){

body{
padding:15px;
}

h1{
font-size:1.6rem;
}

nav a{
display:block;
margin-bottom:8px;
}

.phone-number{
font-size:1.3rem;
}

}

/* =====================================================
Site Nav + Footer (Global)
===================================================== */

.site-nav{
display:flex;
flex-wrap:wrap;
gap:10px 14px;
margin-top:15px;
margin-bottom:25px;
}

.site-nav a{
font-weight:bold;
padding:6px 0;
}

.site-footer a{
white-space:nowrap;
}

/* =====================================================
Mobile Improvements
===================================================== */

@media (max-width:600px){

body{
padding:14px;
font-size:0.98rem;
}

main{
margin-bottom:28px;
}

.site-nav{
flex-direction:column;
gap:2px;
}

.site-nav a{
display:block;
padding:6px 0;
}

ul, ol{
padding-left:18px;
}

.call-box{
padding:14px;
}

footer{
font-size:0.88rem;
line-height:1.5;
}

}



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

@media (max-width:600px){
.home-service-grid{
grid-template-columns:1fr;
}
}
