*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:Arial, Helvetica, sans-serif;
color:#111;
line-height:1.6;
}

.container{
max-width:1200px;
margin:0 auto;
padding:0 20px;
}

/* HERO */

.hero{
background:#0f0f0f;
color:#fff;
padding:120px 0;
}

.hero-container{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.hero-logo img{
max-width:420px;
}

.hero-text h1{
font-size:2.6rem;
margin-bottom:20px;
}

.hero-sub{
margin-top:15px;
font-size:.9rem;
opacity:.9;
}

.btn-primary{
background:#8b0000;
color:#fff;
padding:18px 40px;
border-radius:22px;
font-weight:bold;
text-decoration:none;
display:inline-block;
margin-top:30px;
transition:.25s;
}

.btn-primary:hover{
background:#a30000;
transform:translateY(-2px);
}

.section{
padding:80px 0;
}

.section h2{
font-size:2.2rem;
margin-bottom:30px;
}

.section-intro{
margin-bottom:30px;
font-size:1.05rem;
}

.gray{
background:#f1f1f1;
}

.gray-stronger{
background:#f1f1f1;
}

/* LIST */

.list-check{
list-style:none;
}

.list-check li{
margin-bottom:14px;
padding-left:28px;
position:relative;
}

.list-check li::before{
content:"✔";
position:absolute;
left:0;
color:#8b0000;
}

/* CARDS */

.cards{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:32px;
}

.card{
background:#fff;
padding:32px;
border-radius:24px;
box-shadow:0 12px 35px rgba(0,0,0,.06);
border:1px solid #ececec;
transition:.25s;
}

.card:hover{
transform:translateY(-6px);
box-shadow:0 18px 45px rgba(0,0,0,.12);
}

.two-columns{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.photo img{
width:300px;
border-radius:24px;
}

/* MAP */

.map-container iframe{
width:100%;
height:350px;
border-radius:24px;
border:0;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

/* CTA */

.section-inner{
text-align:center;
padding:120px 0;
}

.cta-text{
margin-bottom:20px;
}

/* FOOTER */

.footer-stronger{
background:#000;
color:#ccc;
padding:60px 0;
text-align:center;
}

.footer-stronger img{
max-width:160px;
margin-bottom:20px;
}

/* WHATSAPP */

.whatsapp-float{
position:fixed;
right:20px;
bottom:20px;
z-index:999;
}

.whatsapp-float img{
width:56px;
}

/* MOBILE */

@media(max-width:768px){

.hero-container,
.cards,
.two-columns{
grid-template-columns:1fr;
text-align:center;
}

.hero-logo img{
max-width:260px;
margin:auto;
}

.photo img{
width:240px;
}
}
