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

body{
font-family:'Montserrat',sans-serif;
background:#f5f8ff;
color:#0a2150;
}

.container{
width:90%;
max-width:1200px;
margin:auto;
}

header{
background:#001d5a;
padding:15px 0;
position:sticky;
top:0;
z-index:999;
}

.nav{
display:flex;
justify-content:space-between;
align-items:center;
}

.logo{
font-size:2rem;
font-weight:800;
color:white;
}

.logo span{
color:#ff7b00;
}

.nav-buttons{
display:flex;
gap:10px;
}

.btn{
background:#ff6b00;
color:white;
padding:12px 22px;
border-radius:10px;
text-decoration:none;
font-weight:700;
display:inline-block;
transition:0.3s;
border:none;
cursor:pointer;
}

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

.secondary{
background:#0057d8;
}

.big{
font-size:1rem;
padding:15px 25px;
}

.hero{
background:linear-gradient(rgba(0,26,78,0.8),rgba(0,26,78,0.8)), url('flyer-offres.jpg');
background-size:cover;
background-position:center;
padding:120px 0;
position:relative;
}

.hero-content{
position:relative;
z-index:2;
}

.hero h1{
font-size:3rem;
color:white;
line-height:1.2;
max-width:700px;
}

.hero h1 span{
color:#ff8400;
}

.hero p{
margin-top:20px;
font-size:1.2rem;
color:white;
}

.offer-box{
margin-top:25px;
background:#ff6b00;
padding:20px;
border-radius:15px;
color:white;
font-size:1.1rem;
font-weight:700;
max-width:700px;
box-shadow:0 10px 30px rgba(0,0,0,0.3);
}

.hero-buttons{
margin-top:30px;
display:flex;
gap:15px;
flex-wrap:wrap;
}

.badges{
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:25px;
}

.badges span{
background:white;
padding:10px 15px;
border-radius:30px;
font-size:0.9rem;
font-weight:600;
}

.stats{
padding:70px 0;
}

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

.stat-card{
background:white;
padding:35px;
border-radius:20px;
text-align:center;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
}

.featured{
border:3px solid #ff6b00;
transform:scale(1.03);
}

.stat-card h3{
font-size:2rem;
color:#0057d8;
}

.stat-card strong{
font-size:2rem;
color:#ff6b00;
display:block;
margin-top:10px;
}

.services,.simulateur,.gallery,.contact{
padding:80px 0;
}

.services h2,.simulateur h2,.gallery h2,.contact h2,.cta h2{
text-align:center;
font-size:2.5rem;
margin-bottom:20px;
}

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

.service{
background:white;
padding:30px;
border-radius:20px;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
}

.sim-box{
max-width:700px;
margin:auto;
background:white;
padding:40px;
border-radius:20px;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
}

.form-group{
margin-bottom:20px;
}

label{
display:block;
margin-bottom:10px;
font-weight:700;
}

select,input,textarea{
width:100%;
padding:15px;
border-radius:10px;
border:1px solid #d5dff5;
font-size:1rem;
}

.resultat{
margin-top:30px;
padding:20px;
background:#eef5ff;
border-radius:15px;
font-size:1.1rem;
display:none;
}

.gallery-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:20px;
}

.gallery img{
width:100%;
border-radius:20px;
box-shadow:0 5px 20px rgba(0,0,0,0.1);
}

.cta{
background:#001d5a;
padding:90px 0;
text-align:center;
color:white;
}

.cta p{
margin:20px 0 30px;
font-size:1.2rem;
}

.contact-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
margin-top:40px;
}

.contact-info{
background:#001d5a;
color:white;
padding:35px;
border-radius:20px;
font-size:1.2rem;
line-height:2;
}

.contact-form{
background:white;
padding:35px;
border-radius:20px;
display:flex;
flex-direction:column;
gap:15px;
box-shadow:0 5px 20px rgba(0,0,0,0.08);
}

footer{
background:#00153f;
color:white;
text-align:center;
padding:20px;
margin-top:40px;
}

@media(max-width:768px){

.hero h1{
font-size:2rem;
}

.gallery-grid,
.contact-grid{
grid-template-columns:1fr;
}

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