@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{
 --navy:#0b3d78;--navy2:#0759b8;--blue:#0759b8;--blue2:#2f70c8;
 --orange:#ff6200;--orange2:#ff7a12;--lav:#9ab0e4;--off:#f3f4f7;
 --ink:#12345d;--muted:#61748f;--line:#dbe2ec;
 --shadow:0 18px 45px rgba(11,61,120,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',Arial,sans-serif!important;color:var(--ink);background:#fff}
h1,h2,h3,h4,.brand,.btn,.nav-links,.eyebrow{font-family:'Montserrat',Arial,sans-serif!important}
header{position:absolute!important;top:0!important;left:0!important;width:100%!important;background:linear-gradient(180deg,rgba(7,52,108,.96),rgba(7,89,184,.74),transparent)!important;box-shadow:none!important}
.nav{min-height:88px!important}
.brand{gap:0!important;font-size:0!important;letter-spacing:0!important}
.brand-mark{display:none!important}
.brand img{display:block;width:155px;height:auto;object-fit:contain}
.nav-links a{font-size:12px!important;font-weight:600!important;color:rgba(255,255,255,.92)!important;letter-spacing:.01em}
.nav-links a:hover,.nav-links a.active{color:#fff!important}
.btn{border-radius:999px!important;font-weight:800!important}
.btn-primary{background:var(--orange)!important;box-shadow:0 10px 25px rgba(255,98,0,.22)!important}
.btn-primary:hover{background:var(--orange2)!important}
.btn-arrow{border:1.5px solid rgba(255,255,255,.8)!important;background:transparent!important;width:38px!important;height:28px!important;border-radius:999px!important}
.hero,.page-hero{background:
 radial-gradient(500px 420px at 0% 100%,rgba(255,98,0,.96),transparent 70%),
 radial-gradient(500px 420px at 60% 40%,rgba(154,176,228,.65),transparent 72%),
 linear-gradient(120deg,#7f9dde 0%,#477dc9 45%,#0759b8 100%)!important;}
.hero:before,.page-hero:before{content:""!important;position:absolute!important;inset:0!important;background-image:linear-gradient(135deg,transparent 0 38%,rgba(255,255,255,.07) 38.1%,transparent 38.5%),linear-gradient(45deg,transparent 0 65%,rgba(255,255,255,.05) 65.1%,transparent 65.5%)!important;background-size:720px 520px,620px 520px!important;opacity:1!important}
.hero:after,.page-hero:after{background:radial-gradient(circle,rgba(255,98,0,.28),transparent 68%)!important}
.hero h1,.page-hero h1{font-weight:800!important;letter-spacing:-.045em!important}
.hero h1 .orange{color:#fff!important}
.hero-copy,.page-hero p{color:rgba(255,255,255,.9)!important}
.hero-visual{border-radius:0!important;border:0!important;box-shadow:none!important;background-image:linear-gradient(180deg,rgba(7,61,120,.08),rgba(7,61,120,.68)),url("charger-main-clean.jpg")!important}
.hero-panel{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.18)!important;backdrop-filter:blur(5px)}
section{position:relative}
.section-head h2,.split h2,.proof h2{font-weight:800!important;letter-spacing:-.035em!important;color:var(--ink)}
.eyebrow{color:var(--orange)!important;font-weight:800!important;letter-spacing:.12em!important}
.service-card,.detail-card,.project{border:0!important;border-radius:0!important;box-shadow:0 10px 28px rgba(11,61,120,.08)!important}
.service-card{min-height:285px!important;padding:28px!important}
.service-card:nth-child(even){background:linear-gradient(145deg,#0759b8,#2d70c6)!important;color:#fff!important}
.service-card:nth-child(even) p{color:rgba(255,255,255,.82)!important}
.service-card:nth-child(even) .service-icon{background:rgba(255,255,255,.12)!important;color:#fff!important}
.service-card:nth-child(3n){background:linear-gradient(145deg,#ff6200,#ff8a2b)!important;color:#fff!important}
.service-card:nth-child(3n) p{color:rgba(255,255,255,.85)!important}
.service-card:nth-child(3n) .service-icon{background:rgba(255,255,255,.16)!important;color:#fff!important}
.service-icon{border:1px solid rgba(255,255,255,.55)!important;border-radius:50%!important;background:rgba(255,255,255,.12)!important;color:#fff!important}
.service-link{color:var(--orange)!important}
.proof{background:linear-gradient(135deg,#ff6200,#ff8a2b)!important;color:#fff!important}
.proof h2,.proof p,.proof .tag{color:#fff!important}.big-number{color:#fff!important}
.tag{background:rgba(255,255,255,.13)!important;border-color:rgba(255,255,255,.28)!important}
.portfolio{background:#fff!important}
.filters .filter{border-radius:999px!important;border:1px solid #cfd9e5!important;color:var(--blue)!important;background:#fff!important;font-family:'Montserrat',Arial,sans-serif!important}
.filters .filter.active{background:var(--blue)!important;color:#fff!important;border-color:var(--blue)!important}
.gallery{gap:16px!important}.project{overflow:hidden!important;background:#fff!important}.photo{background:#e8edf5!important}.caption small{color:var(--orange)!important}.caption h3{font-weight:800!important;color:var(--ink)}
.cta-card{border-radius:0!important;background:linear-gradient(120deg,#ff6200,#ff8a2b 38%,#0759b8 100%)!important;box-shadow:none!important}
.about-home{background:linear-gradient(135deg,#ff6200,#ff8a2b)!important;color:#fff!important}
.about-home .about-copy p,.about-home .about-number-label{color:rgba(255,255,255,.9)!important}.about-home .about-number{color:#fff!important}
footer{background:#0b3d78!important}
footer .brand img{width:150px}
.client-note{background:#0b3d78!important}
.notice{border-radius:0!important;background:#eef2f8!important}
.steps .step{border-top-color:var(--orange)!important}
.steps .step b{color:var(--orange)!important}
.visual-box{border-radius:0!important;background:linear-gradient(135deg,#9ab0e4,#0759b8)!important}
/* Presentation-inspired utility cards */
.identity-card{background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.45);box-shadow:0 15px 35px rgba(11,61,120,.15);position:relative}
.identity-card:before{content:"";position:absolute;top:0;right:0;border-top:46px solid var(--orange);border-left:46px solid transparent;width:0;height:0}
@media(max-width:900px){.brand img{width:125px}.nav-links{gap:12px!important}.nav-links a{font-size:10px!important}.hero,.page-hero{padding-top:125px!important}}

/* V31 — ajustes finais da Home solicitados pela Ana */
/* Header: deixa a fotografia do hero aparecer suavemente por trás da navegação */
body:has(.hero-video) header{
  background:linear-gradient(180deg,rgba(8,38,74,.78) 0%,rgba(8,38,74,.42) 62%,rgba(8,38,74,0) 100%) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-bottom:0 !important;
}

/* Mantém a foto real do hero visível, mas com presença discreta */
.hero-video{
  background-image:url("solar-road.jpg") !important;
  background-size:cover !important;
  background-position:center 48% !important;
}
.hero-video-overlay{
  background:
    linear-gradient(90deg,rgba(8,38,74,.70) 0%,rgba(8,38,74,.48) 50%,rgba(8,38,74,.22) 100%),
    linear-gradient(180deg,rgba(8,38,74,.16) 0%,rgba(8,38,74,.42) 100%) !important;
}

/* Card lateral do hero: centralizado no espaço e com proporção mais equilibrada */
.hero-video-panel{
  width:min(100%,500px) !important;
  height:460px !important;
  min-height:460px !important;
  margin:0 auto !important;
  align-self:center !important;
  border-radius:0 42px 0 42px !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-left:3px solid var(--orange) !important;
  background:
    linear-gradient(180deg,rgba(8,38,74,.12),rgba(8,38,74,.58)),
    url("charger-main-clean.jpg") center/cover no-repeat !important;
  box-shadow:0 24px 55px rgba(6,27,54,.18) !important;
}
.hero-video-panel .hero-panel{
  left:30px !important;
  right:30px !important;
  bottom:30px !important;
}
.hero-video-panel .hero-list{margin-top:20px !important}
.hero-video-panel .hero-list div{
  background:rgba(8,38,74,.42) !important;
  border-color:rgba(255,255,255,.18) !important;
  backdrop-filter:blur(3px);
}

/* Links dos quatro cards de Soluções — cores definidas individualmente */
.service-grid .service-card:nth-child(1) .service-link{color:#101c2c !important}
.service-grid .service-card:nth-child(2) .service-link{color:var(--orange) !important}
.service-grid .service-card:nth-child(3) .service-link{color:#fff !important}
.service-grid .service-card:nth-child(4) .service-link{color:var(--orange) !important}

@media(max-width:900px){
  .hero-video-panel{width:100% !important;max-width:560px !important;height:410px !important;min-height:410px !important}
}
@media(max-width:560px){
  .hero-video-panel{height:390px !important;min-height:390px !important;border-radius:0 30px 0 30px !important}
  .hero-video-panel .hero-panel{left:20px !important;right:20px !important;bottom:20px !important}
}


/* V32 — Home limpa, hero redistribuído e WhatsApp flutuante */
body:has(.hero-video) header{
  background:
    linear-gradient(180deg,rgba(8,38,74,.78) 0%,rgba(8,38,74,.54) 70%,rgba(8,38,74,.16) 100%),
    url("solar-road.jpg") center 47% / cover no-repeat !important;
  background-blend-mode:normal !important;
}
.hero-video .hero-grid{
  grid-template-columns:1fr !important;
  min-height:calc(100vh - 88px) !important;
  align-items:center !important;
}
.hero-video .hero-grid > div:first-child{
  width:min(100%,900px) !important;
  max-width:900px !important;
}
.hero-video .hero-grid > div:first-child .hero-copy{
  max-width:720px !important;
}
.hero-video .hero-grid > div:first-child .hero-actions{
  margin-top:32px !important;
}
.hero-video .hero-grid > div:first-child .hero h1{max-width:900px !important}
.cta-eyebrow{color:#fff !important}
.cta-copy{color:rgba(255,255,255,.92) !important}
.floating-whatsapp{
  position:fixed !important;
  right:22px !important;
  bottom:22px !important;
  width:52px !important;
  height:52px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:#25D366 !important;
  color:#fff !important;
  z-index:9999 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22) !important;
  transition:transform .2s ease,box-shadow .2s ease !important;
}
.floating-whatsapp:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 14px 30px rgba(0,0,0,.28)}
.floating-whatsapp svg{width:27px;height:27px;fill:currentColor}
@media(max-width:900px){
  .hero-video .hero-grid{min-height:calc(100vh - 74px) !important}
  .hero-video .hero-grid > div:first-child{max-width:760px !important}
}
@media(max-width:560px){
  .floating-whatsapp{width:48px !important;height:48px !important;right:15px !important;bottom:15px !important}
  .floating-whatsapp svg{width:25px;height:25px}
  .hero-video .hero-grid{min-height:auto !important;padding-top:50px !important;padding-bottom:35px !important}
}


/* V35 — Home integrada: header e hero usam a mesma fotografia, sem quebra visual */
body:has(.hero-video) header{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  background:linear-gradient(180deg,rgba(5,29,58,.78) 0%,rgba(5,29,58,.34) 58%,rgba(5,29,58,0) 100%) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-bottom:0 !important;
  z-index:20 !important;
}
body:has(.hero-video) .hero-video{
  position:relative !important;
  min-height:760px !important;
  padding-top:155px !important;
  background-image:url("solar-road.jpg") !important;
  background-size:cover !important;
  background-position:center 48% !important;
}
body:has(.hero-video) .hero-video .hero-grid{
  grid-template-columns:1fr !important;
  min-height:calc(100vh - 88px) !important;
  align-items:center !important;
}
body:has(.hero-video) .hero-video .hero-grid > div:first-child{
  width:min(100%,900px) !important;
  max-width:900px !important;
}
body:has(.hero-video) .hero h1{
  font-size:clamp(2.55rem,4.25vw,4.55rem) !important;
  max-width:820px !important;
  margin-top:17px !important;
}
@media(max-width:900px){
  body:has(.hero-video) .hero-video{min-height:720px !important;padding-top:125px !important}
  body:has(.hero-video) .hero-video .hero-grid{min-height:calc(100vh - 74px) !important}
}
@media(max-width:560px){
  body:has(.hero-video) .hero-video{min-height:760px !important;padding-top:110px !important}
  body:has(.hero-video) .hero h1{font-size:2.8rem !important}
}

/* V35 — foto escolhida para o card de carregadores */
.portfolio .project[data-cat="carregadores"] .photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}

/* V92 — força os CTAs dos quatro cards do Index em branco. */
.service-grid .home-solution-card .service-link,
.service-grid .home-solution-card .service-link:link,
.service-grid .home-solution-card .service-link:visited,
.service-grid .home-solution-card .service-link:hover,
.service-grid .home-solution-card .service-link:active,
.service-grid .home-solution-card:hover .service-link{
  color:#fff !important;
  opacity:1 !important;
  text-decoration:none !important;
}
