@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--navy:#1a2e4a;--navy-light:#2a4268;--navy-dark:#0f1d30;--red:#d63a50;--red-dark:#b82e40;--white:#fff;--bg:#fff;--bg-light:#f5f7fa;--text:#1a2e4a;--text-muted:#5a6a7e;--border:#e2e8f0;--radius:0.5rem;--shadow:0 2px 8px rgba(0,0,0,0.08);--shadow-lg:0 8px 24px rgba(0,0,0,0.12)}
body{font-family:'Inter',system-ui,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{color:var(--navy);font-weight:700;line-height:1.2}
h1{font-size:2.25rem}h2{font-size:1.75rem}h3{font-size:1.125rem}
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}
.narrow{max-width:720px;margin:0 auto}
.text-center{text-align:center}
.text-muted{color:var(--text-muted);line-height:1.7}
.text-light{color:rgba(255,255,255,0.75)}
.text-light-sm{color:rgba(255,255,255,0.55);font-size:0.875rem}
.mx-auto{margin-left:auto;margin-right:auto}
.max-w-2xl{max-width:42rem}
.max-w-xl{max-width:36rem}
.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mt-05{margin-top:0.5rem}.mt-1{margin-top:1rem}.mt-2{margin-top:1.5rem}.mt-3{margin-top:2rem}.mr-2{margin-right:1rem}
.w-full{width:100%}
.bg-light{background:var(--bg-light)}
.section{padding:5rem 0}
.header{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:40}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:4rem}
.logo{height:2.5rem}
.nav-links{display:flex;gap:1.5rem;align-items:center}
.nav-links a{font-size:0.875rem;font-weight:500;transition:color 0.2s}
.nav-links a:hover{color:var(--red)}
.header-right{display:flex;align-items:center;gap:1rem}
.phone-link{display:flex;align-items:center;gap:0.375rem;font-size:0.875rem;font-weight:600;color:var(--navy)}
.phone-link svg{color:var(--navy)}
.mobile-menu-btn{display:none;background:none;border:none;cursor:pointer;color:var(--navy);padding:0.5rem}
.btn-accent{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.5rem;background:var(--red);color:var(--white);font-weight:600;border-radius:var(--radius);font-size:0.875rem;transition:all 0.2s;border:none;cursor:pointer}
.btn-accent:hover{background:var(--red-dark)}
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.5rem;background:var(--white);color:var(--navy);font-weight:700;border-radius:var(--radius);font-size:0.875rem;transition:all 0.2s;border:none;cursor:pointer}
.btn-primary:hover{opacity:0.9}
.btn-outline-light{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:1rem 2rem;background:rgba(255,255,255,0.1);color:var(--white);font-weight:700;border-radius:var(--radius);font-size:1rem;border:1px solid rgba(255,255,255,0.3);transition:all 0.2s;cursor:pointer}
.btn-outline-light:hover{background:rgba(255,255,255,0.2)}
.btn-sm{padding:0.5rem 1rem;font-size:0.75rem}
.btn-lg{padding:1rem 2rem;font-size:1rem}

.page-hero{background:var(--navy);padding:5rem 0}
.page-hero h1{color:var(--white);margin-bottom:1rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}

/* ===== ICON CARDS (soft premium) ===== */
.icon-card{background:rgba(53,95,222,0.35);border-radius:var(--radius);padding:1.5rem;text-align:center;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s ease}
.icon-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-5px);background:rgba(236,174,174,0.45)}
.icon-circle{width:3.5rem;height:3.5rem;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:var(--red);box-shadow:0 4px 10px rgba(0,0,0,0.08)}
.icon-card h3{margin-bottom:0.5rem}
.icon-card p{font-size:0.875rem;color:#334155}

.card-service{display:block;background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:all 0.3s;text-decoration:none;color:var(--text)}
.card-service:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.card-img{aspect-ratio:4/3;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s}
.card-service:hover .card-img img{transform:scale(1.05)}
.card-body{padding:1.25rem}
.card-body h3{margin-bottom:0.5rem}
.card-body p{font-size:0.875rem;color:var(--text-muted);margin-bottom:0.75rem}
.link-accent{color:var(--red);font-weight:600;font-size:0.875rem}

.card-service-lg{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.card-service-lg img{width:100%;aspect-ratio:16/9;object-fit:cover}
.card-service-lg .card-body{padding:1.5rem}
.card-service-lg h2{font-size:1.25rem;margin-bottom:0.5rem}
.card-service-lg p{color:var(--text-muted);margin-bottom:1rem}

.split-section{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.split-image{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg)}
.split-image img{width:100%;height:100%;object-fit:cover}

.check-list{list-style:none;display:flex;flex-direction:column;gap:0.75rem;margin-top:1rem}
.check-list li{display:flex;align-items:flex-start;gap:0.75rem}
.check-list li svg{flex-shrink:0;margin-top:2px;color:var(--red)}

.cta-banner{background:var(--red);padding:3rem 0}
.cta-text{color:var(--white);font-size:1.25rem;font-weight:600;margin-bottom:1rem}

.steps{display:flex;flex-direction:column;gap:1.5rem}
.step{display:flex;gap:1rem;align-items:flex-start}
.step-num{width:2.5rem;height:2.5rem;border-radius:50%;background:var(--red);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}
.step h3{margin-bottom:0.25rem}
.step p{font-size:0.875rem}

.faq{margin-bottom:1.5rem}
.faq h3{margin-bottom:0.5rem}

.contact-form{display:flex;flex-direction:column;gap:1.25rem}
.form-group{display:flex;flex-direction:column;gap:0.375rem}
.form-group label{font-size:0.875rem;font-weight:500}
.form-group input,.form-group textarea{width:100%;padding:0.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);font-size:0.875rem;font-family:inherit;transition:border-color 0.2s}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(214,58,80,0.1)}
.form-group textarea{resize:none}

.form-success{text-align:center;padding:3rem 1.5rem;background:var(--bg-light);border-radius:var(--radius)}
.success-title{font-size:1.125rem;font-weight:600;margin-bottom:0.5rem}

.footer{background:var(--navy);color:var(--white);padding:3rem 0}
.footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.footer-logo{height:2rem;filter:brightness(0) invert(1);margin-bottom:1rem}
.footer-text{font-size:0.875rem;opacity:0.7}
.footer-heading{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;font-weight:600;margin-bottom:0.75rem;color:var(--white)}
.footer-link{display:block;font-size:0.875rem;opacity:0.7;margin-bottom:0.5rem;transition:opacity 0.2s}
.footer-link:hover{opacity:1}
.footer-phone{font-size:1.125rem;font-weight:700;display:block;margin-bottom:1rem}
.footer-phone:hover{text-decoration:underline}
.footer-bottom{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.15)}
.footer-seo{font-size:0.75rem;opacity:0.6;line-height:1.7}
.footer-copy{font-size:0.75rem;opacity:0.4;margin-top:1rem}

.sticky-cta-desktop{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50;display:none;align-items:center;gap:0.5rem;background:var(--red);color:var(--white);padding:0.75rem 1.25rem;border-radius:9999px;font-weight:600;box-shadow:var(--shadow-lg);transition:all 0.2s;text-decoration:none}
.sticky-cta-desktop:hover{background:var(--red-dark)}
.sticky-cta-desktop svg{stroke:var(--white)}
.sticky-cta-mobile{position:fixed;bottom:0;left:0;right:0;z-index:50;display:none;align-items:center;justify-content:center;gap:0.5rem;background:var(--navy);color:var(--white);padding:0.75rem;font-weight:600;box-shadow:var(--shadow-lg);text-decoration:none}
.sticky-cta-mobile svg{stroke:var(--white)}

.items-center{align-items:center}

@media(min-width:768px){
  .sticky-cta-desktop{display:flex}
  .sticky-cta-mobile{display:none}
}
@media(max-width:767px){
  .sticky-cta-desktop{display:none}
  .sticky-cta-mobile{display:flex}
  body{padding-bottom:3rem}
}

@media(max-width:1024px){
  .hero-grid{grid-template-columns:1fr}
  .hero-image{display:block}
  .hero-content{padding:4rem 1.5rem}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .split-section{grid-template-columns:1fr}
  .hide-mobile{display:none !important}
  .footer-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .grid-4{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
  h1{font-size:1.75rem}
  h2{font-size:1.375rem}
  .nav-links{display:none;flex-direction:column;position:absolute;top:4rem;left:0;right:0;background:var(--white);border-bottom:1px solid var(--border);padding:1rem 0;z-index:50}
  .nav-links.open{display:flex}
  .nav-links a{padding:0.75rem 1.5rem}
  .header-right{display:none}
  .mobile-menu-btn{display:block}
  .hero-content h1{font-size:2rem}
}
/* ===== FORCE HERO FULL IMAGE (FINAL OVERRIDE) ===== */
.hero{
  min-height:90vh !important;
  background:var(--navy) !important;
  position:relative !important;
  overflow:hidden !important;
}

.hero-grid{
  display:block !important;         /* mata 2 colunas */
  min-height:90vh !important;
  position:relative !important;
}

.hero-image{
  display:block !important;         /* garante que não some */
  position:absolute !important;
  inset:0 !important;
  min-height:100% !important;
}

.hero-image img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

.hero-overlay{
  position:absolute !important;
  inset:0 !important;
  pointer-events:none !important;
  background:rgba(26,46,74,0.30) !important; /* ajuste aqui */
}

/* SEM FUNDO NO TEXTO */
.hero-content{
  position:relative !important;
  z-index:2 !important;
  max-width:720px !important;
  padding:4rem 3rem !important;
  margin:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

/* MOBILE */
@media (max-width: 900px){
  .hero{min-height:auto !important;}
  .hero-grid{min-height:auto !important;}
  .hero-content{padding:3rem 1.25rem !important;}
  .hero-image{min-height:70vh !important;}
}

/* ===== FIX CORES TEXTO HERO ===== */

.hero-content h1{
  color:#ffffff !important;
}

.hero-sub{
  color:rgba(255,255,255,0.88) !important;
}

.hero-body{
  color:rgba(255,255,255,0.70) !important;
}

/* garante que qualquer texto dentro do hero fique claro */
.hero-content,
.hero-content p,
.hero-content span{
  color:inherit;
}