:root{
--azul:#052B61;
--vermelho:#A30B1A;
--branco:#ffffff;
--cinza:#f5f5f5;
--verde:#13aa45;
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

:target {
  scroll-margin-top: .8em;
}

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

body{
font-family:'Montserrat',sans-serif;
line-height:1.6;
}

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

header{
background:white;
position:sticky;
top:0;
z-index:999;
box-shadow:0 2px 10px rgba(0,0,0,.08);
}

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

.logo{
height:60px;
}

a, a:hover {
    color: #052B61;
    font-weight: bold;
    text-decoration: none;
}

a:hover {
    color: #A30B1A;
}

nav ul{
display:flex;
gap:30px;
list-style:none;
}

nav a{
text-decoration:none;
color:var(--azul);
font-weight:600;
}

nav a:hover {
    color: #A30B1A;
}

.menu-btn{
display:none;
background:none;
border:none;
font-size:25px;
}
.slider{
    position: relative;
    height:100vh;
    overflow:hidden;
}

.slide{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    opacity:0;
    transition:opacity .8s ease;
}

.slide.active{
    opacity:1;
}

.slide img{
    width:100%;
    height:100%;
    object-fit:cover;
}

h2{
font-family:'Playfair Display',serif;
font-size:3rem;
color:var(--azul);
margin-bottom:20px;
}

.sobre{
padding:100px 0;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.sobre img{
width:100%;
border-radius:20px;
}

.servicos{
background:#f8f8f8;
padding:100px 0;
text-align:center;
}

.cards{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
margin-top:50px;
}

.card{
background:white;
padding:40px;
border-radius:20px;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.card i{
font-size:50px;
color:var(--vermelho);
margin-bottom:20px;
}

.cta{
background:url("banner.jpg") center center;
background-size:cover;
padding:120px 0;
text-align:center;
color:white;
}

.overlay{
background:rgba(5,43,97,.75);
padding:100px 20px;
}

.btn-whatsapp{
display:inline-block;
padding:15px 35px;
background:var(--verde);
color:white;
text-decoration:none;
border-radius:50px;
margin-top:20px;
}

.btn-whatsapp a{
    color: #ffffff;
}

a:hover.btn-whatsapp  {
    color: #052B61;
}

.avaliacoes{
padding:100px 0;
text-align:center;
}

.carousel{
display:flex;
gap:20px;
overflow:auto;
scroll-snap-type:x mandatory;
}

.review{
min-width:300px;
background:white;
padding:30px;
border-radius:20px;
box-shadow:0 5px 15px rgba(0,0,0,.08);
}

.faq{
padding:100px 0;
background:#f8f8f8;
}

.faq-btn{
width:100%;
padding:20px;
border:none;
background:var(--azul);
color:white;
cursor:pointer;
margin-top:10px;
text-align:left;
}

.faq-content{
display:none;
padding:20px;
background:white;
}

.contato{
padding:100px 0;
text-align:center;
}

.contato p{
margin:15px 0;
}

footer{
background:var(--azul);
color:white;
padding:20px;
text-align:center;
}

@media(max-width:768px){

nav ul{
display:none;
}

.menu-btn{
display:block;
}

.sobre{
grid-template-columns:1fr;
}

.cards{
grid-template-columns:1fr;
}

h2{
font-size:2rem;
}

.slider{
height:50vh;
}

.slide img{
height:50vh;
}

}