:root{
  --color-primary:#E6007E;
  --color-secondary:#FFD500;
  --color-text:#000000;
  --color-accent:#FFFFFF;
  --color-whatsapp:#01AA09;
  --color-whatsapp-hover:#08FF00;
  --font:"Montserrat", sans-serif;
  --max-width:1140px;
}

*{box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  margin:0;
  font-family:var(--font);
  font-weight:400;
  color:var(--color-text);
  background:var(--color-accent);
  line-height:1.6;
}

img{max-width:100%;display:block;}

a{text-decoration:none;}

h1,h2,h3{
  font-family:var(--font);
  color:var(--color-primary);
  line-height:1.15;
  margin:0 0 20px;
}

p{margin:0 0 20px;}

.btn{
  display:inline-block;
  background-color:var(--color-whatsapp);
  color:var(--color-accent);
  font-family:var(--font);
  font-weight:500;
  text-transform:uppercase;
  border-radius:5px;
  padding:14px 32px;
  transition:background-color .2s ease;
}
.btn:hover,.btn:focus{
  background-color:var(--color-whatsapp-hover);
  color:var(--color-accent);
}

.btn-whatsapp{font-size:18px;}

/* Header */
.site-header{
  padding:20px 24px;
}
.header-inner{
  max-width:var(--max-width);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
}
.logo img{width:280px;height:auto;}

/* Hero */
.hero{
  padding:40px 24px 20px;
}
.hero-inner{
  max-width:var(--max-width);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  flex-wrap:wrap;
}
.hero-text{flex:1 1 480px;}
.hero-text h1{
  font-size:55px;
  font-weight:900;
  line-height:1.15;
}
.hero-text h1 .highlight{color:var(--color-secondary);}
.hero-text p{
  font-size:30px;
  font-weight:600;
  color:var(--color-text);
}
.hero-image{
  flex:0 1 480px;
  text-align:center;
}
.hero-image img{
  border-radius:4px;
  box-shadow:0 0 10px rgba(0,0,0,.5);
  padding:10px;
  background:var(--color-accent);
  margin:0 auto;
}

/* Sobre */
.sobre{
  padding:60px 24px 30px;
}
.sobre-inner{
  max-width:var(--max-width);
  margin:0 auto;
  display:flex;
  align-items:flex-start;
  gap:40px;
  flex-wrap:wrap;
}
.sobre-image{flex:0 1 460px;}
.sobre-image img{
  box-shadow:0 0 10px rgba(0,0,0,.5);
  padding:10px;
  background:var(--color-accent);
}
.sobre-text{flex:1 1 480px;}
.sobre-text h2{
  font-size:55px;
  font-weight:900;
}
.sobre-text p{font-size:16px;}

/* Galeria */
.galeria{padding:30px 24px;}
.galeria-grid{
  max-width:var(--max-width);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}
.galeria-grid img{
  box-shadow:0 0 10px rgba(0,0,0,.5);
  padding:10px;
  background:var(--color-accent);
  width:100%;
  height:100%;
  object-fit:cover;
}

.cta-center{
  max-width:var(--max-width);
  margin:30px auto;
  text-align:center;
}

/* Servicos */
.servicos{padding:30px 24px;}
.servicos-header{
  max-width:var(--max-width);
  margin:0 auto;
  text-align:center;
}
.servicos-header h2{
  font-size:55px;
  font-weight:900;
}
.servicos-header p{
  font-size:22px;
  max-width:800px;
  margin:0 auto 20px;
}
.servicos-grid{
  max-width:var(--max-width);
  margin:20px auto 0;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.servico-card{
  background:var(--color-primary);
  border-radius:15px;
  box-shadow:0 0 10px rgba(0,0,0,.5);
  padding:24px 12px;
  text-align:center;
}
.servico-card img{
  margin:0 auto 16px;
  width:120px;
  height:120px;
  object-fit:contain;
}
.servico-card h3{
  color:var(--color-accent);
  font-weight:600;
  font-size:26px;
  margin:0;
}

/* Social band */
.social-band{
  background:var(--color-secondary);
  padding:30px 24px 100px;
}
.social-icons{
  max-width:var(--max-width);
  margin:0 auto;
  display:flex;
  justify-content:center;
  gap:10px;
}
.social-icons a{
  width:60px;
  height:60px;
  border-radius:20%;
  background:var(--color-primary);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .2s ease;
}
.social-icons a:hover{transform:scale(1.08);}
.social-icons svg{width:30px;height:30px;fill:var(--color-accent);}

/* Footer */
.site-footer{
  text-align:center;
  padding-bottom:60px;
}
.footer-logo-card{
  max-width:900px;
  margin:-70px auto 0;
  background:var(--color-accent);
  border-radius:15px;
  box-shadow:0 0 10px rgba(0,0,0,.18);
  padding:60px 24px;
}
.footer-logo{
  min-width:120px;
  margin:0 auto;
}
.copyright{
  margin:40px 0 0;
}
.credito{
  margin-top:-10px;
}
.credito a{
  color:var(--color-primary);
}

/* Responsive */
@media(max-width:1024px){
  .hero-text h1,.sobre-text h2,.servicos-header h2{font-size:36px;}
  .hero-text p{font-size:24px;}
  .servicos-header p{font-size:20px;}
  .servicos-grid{grid-template-columns:repeat(3,1fr);}
  .galeria-grid{grid-template-columns:repeat(2,1fr);}
  .footer-logo{width:25%;}
}

@media(max-width:767px){
  .hero-inner{flex-direction:column-reverse;text-align:center;gap:20px;}
  .hero-text,.hero-image{flex:none;width:100%;}
  .hero-text p{font-size:22px;}
  .sobre-inner{flex-direction:column;gap:16px;}
  .sobre-text h2{margin-top:0;}
  .servicos-grid{grid-template-columns:repeat(2,1fr);gap:16px;}
  .servico-card{padding:16px 8px;}
  .servico-card img{width:64px;height:64px;margin-bottom:10px;}
  .servico-card h3{font-size:16px;}
  .galeria-grid{grid-template-columns:1fr;gap:12px;}
  .header-inner{justify-content:center;text-align:center;}
  .footer-logo{width:50%;}
  .footer-logo-card{margin-left:16px;margin-right:16px;}
}

@media(max-width:480px){
  .servicos-grid{grid-template-columns:1fr;}
}
