/* ═══════════════════════════════════════════════
   ÓTICA SONHO DOS OLHOS — style.css
   ═══════════════════════════════════════════════ */

:root {
  --teal:        #42B8D4;
  --teal-mid:    #2FA4C4;
  --teal-dark:   #1E8BA8;
  --teal-light:  #7ED3E6;
  --teal-pale:   #EAF8FC;
  --teal-ultra:  #F0FBFF;
  --dark:        #1A2332;
  --dark2:       #0D3D52;
  --text:        #4A5568;
  --text-light:  #718096;
  --white:       #FFFFFF;
  --bg-light:    #F8FEFF;
  --bg-gray:     #F7FAFC;
  --wa:          #25D366;
  --wa-dark:     #1DA851;
  --gold:        #F6C90E;
  --red:         #C53030;

  --shadow-teal: 0 8px 32px rgba(66,184,212,0.28);
  --radius:      10px;
  --transition:  0.3s ease;
  --font:        'Poppins', sans-serif;
}

/* ── RESET ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden}
body{font-family:var(--font);color:var(--text);background:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{font-family:var(--font);cursor:pointer;border:none;background:none}
section{padding:100px 8%}

/* ── UTILIDADES ── */
.sec-label{display:block;font-size:11px;font-weight:600;color:var(--teal);letter-spacing:3px;text-transform:uppercase;margin-bottom:12px}
.sec-title{font-size:clamp(28px,3.5vw,46px);font-weight:800;color:var(--dark);line-height:1.15}
.sec-title.light{color:var(--white)}
.sec-sub{font-size:16px;color:var(--text-light);line-height:1.8;max-width:520px;margin-top:14px;font-weight:300}
.sec-header{margin-bottom:56px}

/* ── BOTÕES ── */
.btn-primary{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--teal);color:var(--white);
  padding:15px 30px;border-radius:6px;
  font-size:14px;font-weight:600;
  transition:background var(--transition),transform var(--transition),box-shadow var(--transition);
}
.btn-primary:hover{background:var(--teal-mid);transform:translateY(-3px);box-shadow:var(--shadow-teal)}

.btn-outline{
  display:inline-flex;align-items:center;gap:8px;
  border:1.5px solid rgba(255,255,255,.35);color:rgba(255,255,255,.9);
  padding:15px 28px;border-radius:6px;font-size:14px;font-weight:500;
  transition:border-color var(--transition),color var(--transition),transform var(--transition);
}
.btn-outline:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-3px)}

.btn-wa{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--wa);color:var(--white);
  padding:16px 32px;border-radius:6px;font-size:15px;font-weight:700;
  transition:background var(--transition),transform var(--transition),box-shadow var(--transition);
}
.btn-wa:hover{background:var(--wa-dark);transform:translateY(-3px);box-shadow:0 12px 32px rgba(37,211,102,.35)}
.btn-wa svg{width:20px;height:20px;fill:white;flex-shrink:0}

/* ══════════════════════════════════════════
   HEADER
══════════════════════════════════════════ */
#header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  height:72px;padding:0 5%;
  display:flex;align-items:center;justify-content:space-between;
  background:rgba(26,35,50,.93);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(66,184,212,.12);
  transition:transform .35s ease,box-shadow .3s ease;
}
#header.scrolled{box-shadow:0 4px 30px rgba(0,0,0,.3)}
#header.hidden{transform:translateY(-100%)}

.logo-link{
  display:flex;align-items:center;
  transition:opacity var(--transition);
  flex-shrink:1;min-width:0;
}
.logo-link:hover{opacity:.82}
.logo-img{
  height:56px;
  width:auto;
  max-width:100%;
  display:block;
  object-fit:contain;
}

.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{
  color:rgba(255,255,255,.72);font-size:13px;font-weight:500;letter-spacing:.2px;
  transition:color var(--transition);position:relative;
}
.nav-links a::after{
  content:'';position:absolute;bottom:-3px;left:0;right:0;height:2px;
  background:var(--teal);transform:scaleX(0);transition:transform var(--transition);
}
.nav-links a:hover{color:var(--teal)}
.nav-links a:hover::after{transform:scaleX(1)}

.btn-wa-hdr{
  display:flex;align-items:center;gap:7px;
  background:var(--wa);color:var(--white);
  padding:9px 18px;border-radius:50px;
  font-size:13px;font-weight:600;
  transition:opacity var(--transition),transform var(--transition);
  white-space:nowrap;
}
.btn-wa-hdr:hover{opacity:.9;transform:scale(1.03)}
.btn-wa-hdr svg{width:15px;height:15px;fill:white}

.hamburger{display:none;flex-direction:column;gap:5px;padding:4px;cursor:pointer}
.hamburger span{display:block;width:24px;height:2px;background:var(--teal);border-radius:2px;transition:.3s}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

.nav-mobile{
  display:none;flex-direction:column;
  position:fixed;top:72px;left:0;right:0;
  background:rgba(26,35,50,.97);
  padding:24px 5%;gap:16px;
  border-bottom:1px solid rgba(66,184,212,.15);
  backdrop-filter:blur(16px);z-index:999;
}
.nav-mobile.open{display:flex}
.nav-mobile a{color:rgba(255,255,255,.8);font-size:15px;font-weight:500;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.nav-mobile a:last-child{border-bottom:none}
.nav-wa-btn{
  background:var(--wa)!important;color:white!important;
  text-align:center;padding:12px!important;border-radius:6px;
  font-weight:700!important;margin-top:8px;border:none!important;
}

/* ══════════════════════════════════════════
   HERO
══════════════════════════════════════════ */
.hero{
  min-height:100vh;padding-top:72px;
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;
}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-bg-1{animation:hero-fade-1 12s ease-in-out infinite;object-position:center 55%}
.hero-bg-2{animation:hero-fade-2 12s ease-in-out infinite;object-position:100% 15%;transform:translateX(10%)}
@keyframes hero-fade-1{
  0%,42%  {opacity:1}
  52%,92% {opacity:0}
  100%    {opacity:1}
}
@keyframes hero-fade-2{
  0%,42%  {opacity:0}
  52%,92% {opacity:1}
  100%    {opacity:0}
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(108deg,
    rgba(4,12,22,.96) 0%,
    rgba(6,26,44,.88) 30%,
    rgba(6,26,44,.6) 58%,
    rgba(4,12,22,.12) 100%
  );
}

.hero-deco{position:absolute;inset:0;pointer-events:none;z-index:1}
.hero-ring{position:absolute;border-radius:50%;border:1px solid rgba(66,184,212,.07);animation:pulse-ring 9s ease-in-out infinite}
.hr-1{width:700px;height:700px;right:-220px;top:50%;transform:translateY(-50%)}
.hr-2{width:500px;height:500px;right:-130px;top:50%;transform:translateY(-50%);border-color:rgba(66,184,212,.12);animation-delay:3s}
.hr-3{width:310px;height:310px;right:-40px;top:50%;transform:translateY(-50%);border-color:rgba(66,184,212,.2);animation-delay:6s}
.hdp{position:absolute;border-radius:50%;background:rgba(66,184,212,.22)}
.hdp-1{width:5px;height:5px;top:22%;left:7%;animation:float-dot 9s ease-in-out infinite}
.hdp-2{width:3px;height:3px;top:65%;left:13%;animation:float-dot 13s 3s ease-in-out infinite}
.hdp-3{width:7px;height:7px;top:40%;left:50%;animation:float-dot 10s 6s ease-in-out infinite}
.hdp-4{width:4px;height:4px;top:78%;right:28%;animation:float-dot 8s 1.5s ease-in-out infinite}
.hero-vline{
  position:absolute;left:5.5%;top:12%;
  width:1px;height:76%;
  background:linear-gradient(to bottom,transparent 0%,rgba(66,184,212,.28) 25%,rgba(66,184,212,.28) 75%,transparent 100%);
  transform:scaleY(0);transform-origin:top;
  animation:vline-grow 1.8s .4s cubic-bezier(.16,1,.3,1) both;
}
@keyframes vline-grow{to{transform:scaleY(1)}}

.hero-body{
  position:relative;z-index:2;
  padding:60px 8%;
  display:flex;flex-direction:column;justify-content:center;
  min-height:calc(100vh - 72px);
}
.hero-content{max-width:640px}
.hero-title{
  font-size:clamp(40px,5.6vw,72px);font-weight:800;
  color:var(--white);line-height:1.08;margin-bottom:24px;
  animation:none;
}
.hero-title .accent{color:var(--teal);font-style:italic}
.hero-sub{
  font-size:17px;font-weight:300;
  color:rgba(255,255,255,.65);line-height:1.85;
  max-width:500px;margin-bottom:40px;
  animation:fadeDown .8s .75s ease both;
}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;animation:none}


.hero-scroll{
  position:absolute;bottom:32px;left:50%;transform:translateX(-50%);
  width:44px;height:44px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.25);
  display:flex;align-items:center;justify-content:center;
  color:rgba(255,255,255,.7);z-index:2;
  animation:bounce-down 2s ease-in-out infinite;
  transition:border-color var(--transition);
}
.hero-scroll:hover{border-color:var(--teal);color:var(--teal)}
@keyframes bounce-down{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}

/* ── HERO EYEBROW ── */
.hero-eyebrow{
  display:flex;align-items:center;gap:14px;margin-bottom:30px;
  animation:fadeDown .7s .12s ease both;
}
.hero-eyebrow-bar{
  display:block;width:0;height:1px;background:var(--teal);
  animation:grow-bar .9s .65s cubic-bezier(.16,1,.3,1) both;
}
@keyframes grow-bar{to{width:38px}}
.hero-eyebrow-txt{
  font-size:11px;font-weight:600;letter-spacing:3.5px;
  text-transform:uppercase;color:var(--teal);
  opacity:0;animation:fadeIn .6s .8s ease both;
}

/* ── HERO TITLE REVEAL ── */
.ht-line{
  display:block;
  clip-path:inset(0 0 100% 0);
  animation:clip-reveal .95s cubic-bezier(.16,1,.3,1) both;
}
.ht-line:nth-child(1){animation-delay:.32s}
.ht-line:nth-child(2){animation-delay:.52s}
@keyframes clip-reveal{to{clip-path:inset(0 0 0% 0)}}

.hero-accent{
  font-style:italic;color:var(--teal);
  text-shadow:0 0 60px rgba(66,184,212,.5),0 0 120px rgba(66,184,212,.2);
}

/* ── HERO CTA BUTTONS ── */
.btn-hero-cta{
  position:relative;overflow:hidden;
  display:inline-flex;align-items:center;gap:10px;
  background:linear-gradient(135deg,var(--teal-dark) 0%,var(--teal) 60%,#5ecde8 100%);
  color:white;font-weight:600;font-size:15px;
  padding:16px 34px;border-radius:50px;
  box-shadow:0 8px 32px rgba(66,184,212,.45),0 2px 8px rgba(0,0,0,.25);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
  animation:fadeDown .8s .92s ease both;
}
.btn-hero-cta:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 18px 52px rgba(66,184,212,.6),0 4px 16px rgba(0,0,0,.3);
}
.btn-hero-shine{
  position:absolute;top:0;left:-80%;width:50%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);
  transform:skewX(-15deg);
  animation:shine-sweep 4.5s 2.5s ease-in-out infinite;
}
@keyframes shine-sweep{0%,100%{left:-80%}38%{left:150%}}

.btn-hero-ghost{
  display:inline-flex;align-items:center;
  border:1.5px solid rgba(255,255,255,.28);
  color:rgba(255,255,255,.88);font-weight:500;font-size:15px;
  padding:16px 32px;border-radius:50px;
  backdrop-filter:blur(8px);background:rgba(255,255,255,.04);
  transition:border-color .25s,background .25s,color .25s,transform .3s cubic-bezier(.34,1.56,.64,1);
  animation:fadeDown .8s 1.08s ease both;
}
.btn-hero-ghost:hover{
  border-color:rgba(66,184,212,.7);background:rgba(66,184,212,.12);
  color:white;transform:translateY(-2px);
}

/* ── HERO TRUST ROW ── */
.hero-trust-row{
  display:flex;align-items:center;margin-top:48px;
  animation:fadeDown .8s 1.22s ease both;
}
.htr-item{display:flex;flex-direction:column;gap:4px;padding-right:28px}
.htr-item:last-child{padding-right:0}
.htr-item strong{font-size:21px;font-weight:800;color:white;line-height:1;letter-spacing:-.3px}
.htr-item span{font-size:10px;color:rgba(255,255,255,.42);text-transform:uppercase;letter-spacing:1.5px}
.htr-div{width:1px;height:30px;background:rgba(255,255,255,.12);margin-right:28px;flex-shrink:0}

/* ══════════════════════════════════════════
   CREDIBILIDADE
══════════════════════════════════════════ */
.cred-bar{
  background:linear-gradient(90deg,var(--teal-dark),var(--teal),var(--teal-light));
  padding:0;
}
.cred-grid{
  display:flex;justify-content:center;align-items:stretch;
  flex-wrap:wrap;max-width:1100px;margin:0 auto;
}
.cred-item{
  display:flex;align-items:center;gap:13px;
  padding:22px 36px;
  border-right:1px solid rgba(255,255,255,.22);
  flex:1;min-width:200px;
}
.cred-item:last-child{border-right:none}
.cred-icon-wrap{
  position:relative;width:48px;height:48px;flex-shrink:0;
}
.cred-icon{
  width:48px;height:48px;border-radius:14px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.3);
  display:flex;align-items:center;justify-content:center;
  position:relative;z-index:1;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),background .3s;
  animation:cred-float 3.8s ease-in-out infinite;
}
.cred-item:nth-child(2) .cred-icon{animation-delay:.5s}
.cred-item:nth-child(3) .cred-icon{animation-delay:1s}
.cred-item:nth-child(4) .cred-icon{animation-delay:1.5s}
@keyframes cred-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
.cred-item:hover .cred-icon{background:rgba(255,255,255,.32);transform:translateY(-3px) scale(1.08)}
.cred-icon svg{width:20px;height:20px}
/* anel pulsante */
.cred-icon-ring{
  position:absolute;inset:-7px;border-radius:19px;
  border:1.5px solid rgba(255,255,255,.3);
  animation:cred-ring 3.8s ease-in-out infinite;
  z-index:0;
}
.cred-item:nth-child(2) .cred-icon-ring{animation-delay:.5s}
.cred-item:nth-child(3) .cred-icon-ring{animation-delay:1s}
.cred-item:nth-child(4) .cred-icon-ring{animation-delay:1.5s}
@keyframes cred-ring{
  0%,100%{transform:scale(1);opacity:.35}
  50%{transform:scale(1.18);opacity:0}
}
/* brilho deslizante */
.cred-icon-shine{
  position:absolute;inset:0;border-radius:14px;overflow:hidden;z-index:2;pointer-events:none;
}
.cred-icon-shine::after{
  content:'';position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);
  transform:skewX(-20deg);
  animation:cred-shine 3.8s ease-in-out infinite;
}
.cred-item:nth-child(2) .cred-icon-shine::after{animation-delay:.5s}
.cred-item:nth-child(3) .cred-icon-shine::after{animation-delay:1s}
.cred-item:nth-child(4) .cred-icon-shine::after{animation-delay:1.5s}
@keyframes cred-shine{
  0%{left:-80%}40%,100%{left:120%}
}
.cred-title{font-size:13px;font-weight:700;color:white;line-height:1.2}
.cred-desc{font-size:11px;color:rgba(255,255,255,.82);font-weight:400;margin-top:2px}

/* ══════════════════════════════════════════
   PRODUTOS
══════════════════════════════════════════ */
#produtos{background:var(--bg-light)}
.produtos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.prod-card{
  background:var(--white);border-radius:var(--radius);overflow:hidden;
  display:block;border:2px solid transparent;position:relative;
  transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition);
}
.prod-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:var(--teal);transform:scaleX(0);transform-origin:left;
  transition:transform var(--transition);z-index:2;
}
.prod-card:hover{transform:translateY(-10px);box-shadow:0 20px 50px rgba(66,184,212,.22);border-color:rgba(66,184,212,.18)}
.prod-card:hover::before{transform:scaleX(1)}
.prod-img-wrap{width:100%;height:240px;overflow:hidden}
.prod-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.prod-card:hover .prod-img-wrap img{transform:scale(1.07)}
.prod-info{padding:22px}
.prod-cat{font-size:10px;font-weight:600;color:var(--teal);letter-spacing:2.5px;text-transform:uppercase;margin-bottom:6px;display:block}
.prod-name{font-size:20px;font-weight:700;color:var(--dark);margin-bottom:14px}
.prod-cta{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--teal-mid)}
.prod-cta svg{width:14px;height:14px;fill:var(--teal-mid);transition:transform .2s}
.prod-card:hover .prod-cta svg{transform:translateX(4px)}

/* ══════════════════════════════════════════
   DIFERENCIAIS
══════════════════════════════════════════ */
.sec-dark{background:var(--dark)}
.dif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.dif-card{
  padding:40px 36px;border-radius:var(--radius);position:relative;overflow:hidden;
  border:1px solid rgba(66,184,212,.12);background:rgba(255,255,255,.03);
  transition:border-color var(--transition),background var(--transition),transform var(--transition);
}
.dif-card:hover{border-color:rgba(66,184,212,.45);background:rgba(66,184,212,.06);transform:translateY(-6px)}
.dif-num{
  position:absolute;top:-8px;right:16px;
  font-size:100px;font-weight:800;
  color:rgba(66,184,212,.09);line-height:1;
  pointer-events:none;user-select:none;
}
/* ícone moderno */
.dif-icon-wrap{
  position:relative;width:76px;height:76px;margin-bottom:28px;
}
.dif-icon-bg{
  width:76px;height:76px;border-radius:20px;
  background:linear-gradient(135deg,rgba(66,184,212,.18) 0%,rgba(66,184,212,.06) 100%);
  border:1.5px solid rgba(66,184,212,.3);
  display:flex;align-items:center;justify-content:center;
  position:relative;z-index:1;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),border-color .3s;
  animation:dif-float 4s ease-in-out infinite;
}
.dif-card:nth-child(2) .dif-icon-bg{animation-delay:.6s}
.dif-card:nth-child(3) .dif-icon-bg{animation-delay:1.2s}
@keyframes dif-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
.dif-card:hover .dif-icon-bg{
  transform:translateY(-4px) scale(1.06);
  border-color:rgba(66,184,212,.7);
}
.dif-svg{
  width:32px;height:32px;color:#42B8D4;
  transition:color .3s;
  filter:drop-shadow(0 0 8px rgba(66,184,212,.5));
}
.dif-card:hover .dif-svg{
  color:#fff;
  filter:drop-shadow(0 0 14px rgba(66,184,212,.9));
}
/* anel pulsante */
.dif-icon-ring{
  position:absolute;inset:-8px;border-radius:26px;
  border:1.5px solid rgba(66,184,212,.25);
  animation:dif-ring 3s ease-in-out infinite;
  z-index:0;
}
.dif-card:nth-child(2) .dif-icon-ring{animation-delay:.6s}
.dif-card:nth-child(3) .dif-icon-ring{animation-delay:1.2s}
@keyframes dif-ring{
  0%,100%{transform:scale(1);opacity:.4}
  50%{transform:scale(1.12);opacity:0}
}
/* brilho deslizante */
.dif-icon-shine{
  position:absolute;inset:0;border-radius:20px;overflow:hidden;z-index:2;pointer-events:none;
}
.dif-icon-shine::after{
  content:'';position:absolute;top:0;left:-80%;width:60%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);
  transform:skewX(-20deg);
  animation:dif-shine 4s ease-in-out infinite;
}
.dif-card:nth-child(2) .dif-icon-shine::after{animation-delay:.6s}
.dif-card:nth-child(3) .dif-icon-shine::after{animation-delay:1.2s}
@keyframes dif-shine{
  0%{left:-80%}40%,100%{left:120%}
}
.dif-title{font-size:22px;font-weight:700;color:var(--teal);margin-bottom:12px}
.dif-text{font-size:14px;color:rgba(255,255,255,.55);line-height:1.8;font-weight:300}

/* ══════════════════════════════════════════
   NÚMEROS
══════════════════════════════════════════ */
.sec-numeros{
  padding:90px 8%;
  background:linear-gradient(135deg,var(--teal-dark) 0%,var(--teal) 50%,var(--teal-light) 100%);
  position:relative;overflow:hidden;
}
.sec-numeros::before{
  content:'';position:absolute;inset:0;
  background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Ccircle cx='30' cy='30' r='1'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.num-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:24px;max-width:1080px;margin:0 auto;text-align:center;
  position:relative;z-index:1;
}
.num-item{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;
  padding:36px 24px 32px;
  backdrop-filter:blur(8px);
  transition:background .3s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.num-item:hover{
  background:rgba(255,255,255,.18);
  transform:translateY(-6px);
  box-shadow:0 16px 40px rgba(0,0,0,.15);
}
.num-icon{
  width:48px;height:48px;border-radius:14px;
  background:rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 20px;
  color:white;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1);
}
.num-icon svg{width:22px;height:22px}
.num-item:hover .num-icon{transform:scale(1.12) rotate(-5deg)}
.num-val{
  display:block;font-size:clamp(38px,4.5vw,58px);font-weight:800;
  color:white;line-height:1;font-variant-numeric:tabular-nums;
  letter-spacing:-1px;
}
.num-label{
  font-size:12px;color:rgba(255,255,255,.8);margin-top:10px;
  font-weight:500;line-height:1.4;display:block;letter-spacing:.3px;
}

/* ══════════════════════════════════════════
   GALERIA
══════════════════════════════════════════ */
.sec-galeria{background:var(--white);padding:100px 8%}

/* header editorial */
.galeria-header{
  display:flex;flex-direction:column;align-items:flex-start;
  gap:12px;margin-bottom:56px;
}
.galeria-eyebrow{
  display:flex;align-items:center;gap:12px;
  font-size:11px;font-weight:600;letter-spacing:3.5px;
  text-transform:uppercase;color:var(--teal);margin-bottom:16px;
}
.galeria-eyebrow-line{display:block;width:32px;height:1px;background:var(--teal);flex-shrink:0}
.galeria-title{
  font-size:clamp(26px,3.2vw,44px);font-weight:800;
  color:var(--dark);line-height:1.1;
}
.galeria-sub{
  font-size:15px;color:var(--text);
  line-height:1.75;font-weight:300;
}

/* grid */
.galeria-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:285px 285px;
  gap:14px;
}
.galeria-large{grid-row:1/3}

/* item */
.galeria-item{
  position:relative;overflow:hidden;
  border-radius:20px;cursor:pointer;
  background:#e8e8e8;
}
.galeria-item::after{
  content:'';position:absolute;inset:0;border-radius:20px;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);
  transition:box-shadow .35s;pointer-events:none;z-index:3;
}
.galeria-item:hover::after{box-shadow:inset 0 0 0 1.5px rgba(66,184,212,.5)}

/* número editorial */
.galeria-num{
  position:absolute;top:18px;left:22px;z-index:2;
  font-size:10px;font-weight:700;letter-spacing:2px;
  color:rgba(255,255,255,.6);opacity:0;
  transition:opacity .35s ease;
}
.galeria-item:hover .galeria-num{opacity:1}

/* imagem */
.galeria-item img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .8s cubic-bezier(.25,.46,.45,.94);
}
.galeria-item:hover img{transform:scale(1.06)}

/* caption */
.galeria-caption{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(4,12,22,.85) 0%,rgba(4,12,22,.08) 50%,transparent 100%);
  display:flex;align-items:flex-end;padding:22px 20px;
  opacity:0;transition:opacity .4s ease;
}
.galeria-item:hover .galeria-caption{opacity:1}
.galeria-caption span{
  font-size:13px;font-weight:600;color:white;
  letter-spacing:.2px;line-height:1.4;display:block;
  transform:translateY(10px);
  transition:transform .45s cubic-bezier(.16,1,.3,1);
}
.galeria-item:hover .galeria-caption span{transform:translateY(0)}

/* ══════════════════════════════════════════
   VÍDEOS
══════════════════════════════════════════ */
.sec-videos{padding:100px 8%}
.videos-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.video-card{
  border-radius:var(--radius);overflow:hidden;
  aspect-ratio:9/16;position:relative;
  background:var(--dark2);
}
.video-card video{
  width:100%;height:100%;object-fit:cover;
  display:block;border-radius:var(--radius);
}
.vc-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top, rgba(10,20,35,.88) 42%, rgba(10,20,35,.18) 72%, transparent 100%);
  border-radius:var(--radius);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:20px 18px 22px;
  pointer-events:none;
}
.vc-tag{
  font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--teal-light);margin-bottom:8px;
}
.vc-title{
  font-family:'Poppins',sans-serif;
  font-size:clamp(18px, 2.2vw, 26px);
  font-weight:700;line-height:1.22;
  color:#fff;margin:0 0 14px;
}
.vc-title em{
  font-style:normal;color:var(--teal);
}
.vc-cta{
  display:inline-flex;align-items:center;gap:6px;
  background:var(--teal);color:#fff;
  font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  padding:8px 14px;border-radius:5px;
  text-decoration:none;width:fit-content;
  transition:background var(--transition),transform var(--transition);
  pointer-events:all;
}
.vc-cta:hover{background:var(--teal-mid);transform:translateY(-2px)}

/* ══════════════════════════════════════════
   SOBRE
══════════════════════════════════════════ */
/* ══════════════════════════════════════════
   NOVIDADES
══════════════════════════════════════════ */
.sec-novidades{background:var(--bg-gray);padding:100px 8%;overflow:hidden}

.novidades-header{
  display:flex;flex-direction:column;align-items:flex-start;
  gap:12px;margin-bottom:56px;
}
.novidades-eyebrow{
  display:flex;align-items:center;gap:12px;
  font-size:11px;font-weight:600;letter-spacing:3.5px;
  text-transform:uppercase;color:var(--teal);margin-bottom:16px;
}
.novidades-eyebrow-line{display:block;width:32px;height:1px;background:var(--teal);flex-shrink:0}
.novidades-title{
  font-size:clamp(26px,3.2vw,44px);font-weight:800;
  color:var(--dark);line-height:1.1;
}
.novidades-sub{
  font-size:15px;color:var(--text);
  line-height:1.75;font-weight:300;
}

.novidades-strip{
  display:grid;grid-template-columns:repeat(5,1fr);gap:16px;
}

.nov-card{position:relative}
.nov-img-wrap{
  position:relative;overflow:hidden;
  border-radius:18px;aspect-ratio:3/4;
  background:#111;
}
.nov-img-wrap::after{
  content:'';position:absolute;inset:0;border-radius:18px;
  box-shadow:inset 0 0 0 1.5px rgba(66,184,212,0);
  transition:box-shadow .35s;pointer-events:none;z-index:3;
}
.nov-card:hover .nov-img-wrap::after{
  box-shadow:inset 0 0 0 1.5px rgba(66,184,212,.55);
}
.nov-img-wrap img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .9s cubic-bezier(.25,.46,.45,.94);
}
.nov-card:hover .nov-img-wrap img{transform:scale(1.07)}

.nov-overlay{
  position:absolute;inset:0;border-radius:18px;
  background:linear-gradient(to top,rgba(4,12,22,.78) 0%,transparent 55%);
  opacity:0;transition:opacity .4s ease;z-index:1;
}
.nov-card:hover .nov-overlay{opacity:1}

.nov-accent{
  position:absolute;bottom:0;left:0;
  width:0;height:3px;z-index:4;
  background:linear-gradient(90deg,var(--teal),#5ecde8);
  border-radius:0 0 18px 18px;
  transition:width .55s cubic-bezier(.16,1,.3,1);
}
.nov-card:hover .nov-accent{width:100%}

/* ocultar botões de carrossel no desktop */
.carousel-nav-btn{display:none}
.nov-carousel-wrap{display:contents}
.marcas-carousel-wrap{display:contents}

/* ── QUEM SOMOS ── */
.sec-sobre{
  padding:0;display:grid;
  grid-template-columns:1fr 1fr;align-items:stretch;
}

/* coluna imagem */
.sobre-img-col{position:relative;overflow:hidden;min-height:640px}
.sobre-img-col img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform 9s ease;
}
.sec-sobre:hover .sobre-img-col img{transform:scale(1.05)}
.sobre-img-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to right,rgba(4,12,22,.35) 0%,transparent 55%),
             linear-gradient(to top,rgba(4,12,22,.6) 0%,transparent 45%);
}
.sobre-img-badge{
  position:absolute;bottom:40px;left:40px;z-index:2;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;padding:24px 32px;text-align:center;color:white;
  box-shadow:0 12px 40px rgba(0,0,0,.35);
}
.sib-num{
  font-size:54px;font-weight:800;color:var(--teal);
  display:block;line-height:1;letter-spacing:-1px;
  text-shadow:0 0 30px rgba(66,184,212,.4);
}
.sib-txt{font-size:12px;opacity:.75;margin-top:6px;display:block;letter-spacing:.5px}

/* coluna conteúdo */
.sobre-content{
  padding:80px 8%;
  background:linear-gradient(160deg,#1a3a52 0%,#14304a 100%);
  display:flex;flex-direction:column;justify-content:center;
}

/* eyebrow */
.sobre-eyebrow{
  display:flex;align-items:center;gap:14px;margin-bottom:24px;
  font-size:11px;font-weight:600;letter-spacing:3.5px;
  text-transform:uppercase;color:var(--teal);
}
.sobre-eyebrow-line{display:block;width:32px;height:1px;background:var(--teal);flex-shrink:0}

/* título */
.sobre-title{
  font-size:clamp(28px,3.5vw,46px);font-weight:800;
  color:white;line-height:1.1;margin-bottom:20px;
}
.sobre-accent{font-style:italic;color:var(--teal);text-shadow:0 0 40px rgba(66,184,212,.35)}

/* texto */
.sobre-text{
  font-size:15px;color:rgba(255,255,255,.58);
  line-height:1.9;font-weight:300;margin-bottom:36px;
}

/* pillars 2x2 */
.sobre-pillars{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:40px}
.sobre-pillar{
  display:flex;align-items:flex-start;gap:14px;
  padding:20px 18px;border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
  transition:background .3s,border-color .3s,transform .35s cubic-bezier(.34,1.56,.64,1);
}
.sobre-pillar:hover{
  background:rgba(66,184,212,.09);
  border-color:rgba(66,184,212,.28);
  transform:translateY(-4px);
}
.spl-icon{
  width:40px;height:40px;border-radius:12px;flex-shrink:0;
  background:rgba(66,184,212,.14);
  display:flex;align-items:center;justify-content:center;
  color:var(--teal);
  transition:background .3s,transform .3s;
}
.sobre-pillar:hover .spl-icon{background:rgba(66,184,212,.24);transform:scale(1.1) rotate(6deg)}
.spl-name{font-size:13px;font-weight:700;color:white;margin-bottom:3px}
.spl-desc{font-size:12px;color:rgba(255,255,255,.42);line-height:1.5}

/* cta dentro do sobre */
.sobre-cta{animation:none;margin-top:0;padding:12px 24px;font-size:14px;align-self:flex-start}

/* botão sobre animado (ainda usado em outras seções) */
.btn-sobre{
  position:relative;display:inline-flex;align-items:center;
  text-decoration:none;
}
.btn-sobre-ring{
  position:absolute;inset:0;border-radius:8px;
  border:2px solid rgba(66,184,212,.6);
  animation:sobre-ring 2.4s ease-in-out infinite;
  pointer-events:none;
}
@keyframes sobre-ring{
  0%{transform:scale(1);opacity:0}
  15%{opacity:.7}
  100%{transform:scale(1.18);opacity:0}
}
.btn-sobre-content{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--teal);color:white;
  padding:15px 30px;border-radius:6px;
  font-size:14px;font-weight:600;
  box-shadow:0 4px 18px rgba(66,184,212,.35);
  transition:background .3s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
  position:relative;overflow:hidden;
}
.btn-sobre-content::after{
  content:'';position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);
  transform:skewX(-20deg);
  animation:btn-shine 3s ease-in-out infinite;
}
@keyframes btn-shine{
  0%{left:-80%}45%,100%{left:130%}
}
.btn-sobre:hover .btn-sobre-content{
  background:var(--teal-mid);
  transform:translateY(-3px);
  box-shadow:0 8px 28px rgba(66,184,212,.5);
}

/* ══════════════════════════════════════════
   COMO FUNCIONA
══════════════════════════════════════════ */
#como-funciona{background:var(--bg-gray)}
.steps-header{text-align:center;max-width:560px;margin:0 auto 72px}
.steps-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}
.steps-line{
  position:absolute;top:52px;
  left:calc(16.6% + 52px);right:calc(16.6% + 52px);
  height:3px;border-radius:2px;
  background:linear-gradient(90deg,var(--teal) 0%,var(--teal-light) 60%,rgba(66,184,212,.3) 100%);
  box-shadow:0 0 12px rgba(66,184,212,.35);
  transform:scaleX(0);transform-origin:left;
  transition:transform 1.4s .4s cubic-bezier(.4,0,.2,1);
  z-index:0;overflow:visible;
}
.steps-line.on{transform:scaleX(1)}
/* ponto de luz deslizante sobre a linha */
.steps-line.on::after{
  content:'';
  position:absolute;top:50%;
  width:32px;height:32px;border-radius:50%;
  background:radial-gradient(circle,rgba(66,184,212,.7) 0%,transparent 70%);
  transform:translateY(-50%);
  animation:line-dot 2.4s .4s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes line-dot{
  0%{left:0;opacity:0}
  8%{opacity:1}
  80%{opacity:.9}
  100%{left:calc(100% - 32px);opacity:0}
}
/* pontos nas extremidades */
.steps-line.on::before{
  content:'';
  position:absolute;top:50%;left:0;
  width:8px;height:8px;border-radius:50%;
  background:var(--teal);
  transform:translateY(-50%);
  box-shadow:0 0 10px rgba(66,184,212,.8);
  animation:dot-appear .3s .4s both;
}
@keyframes dot-appear{
  from{opacity:0;transform:translateY(-50%) scale(0)}
  to{opacity:1;transform:translateY(-50%) scale(1)}
}
.step-item{text-align:center;padding:0 36px;position:relative;z-index:1}

/* wrapper com anéis */
.step-icon-wrap{
  position:relative;width:104px;height:104px;margin:0 auto 32px;
}
/* anel externo – pulso lento */
.step-icon-ring{
  position:absolute;inset:-10px;border-radius:50%;
  border:2px solid rgba(66,184,212,.3);
  animation:step-ring 3.2s ease-in-out infinite;
  pointer-events:none;
}
/* anel intermediário – pulso desfasado */
.step-icon-ring-2{
  inset:-22px;border-color:rgba(66,184,212,.15);
  animation-delay:.8s;
}
.step-item:nth-child(2) .step-icon-ring{animation-delay:.5s}
.step-item:nth-child(2) .step-icon-ring-2{animation-delay:1.3s}
.step-item:nth-child(3) .step-icon-ring{animation-delay:1s}
.step-item:nth-child(3) .step-icon-ring-2{animation-delay:1.8s}
@keyframes step-ring{
  0%,100%{transform:scale(1);opacity:.5}
  50%{transform:scale(1.15);opacity:0}
}
/* círculo principal */
.step-icon{
  width:104px;height:104px;border-radius:50%;
  background:linear-gradient(135deg,var(--teal),var(--teal-light));
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 32px rgba(66,184,212,.4);
  position:relative;z-index:1;overflow:hidden;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
  animation:step-float 4s ease-in-out infinite;
}
.step-item:nth-child(2) .step-icon{animation-delay:.6s}
.step-item:nth-child(3) .step-icon{animation-delay:1.2s}
@keyframes step-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}
/* brilho deslizante no círculo */
.step-icon::after{
  content:'';position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:skewX(-20deg);
  animation:step-shine 4s ease-in-out infinite;
}
.step-item:nth-child(2) .step-icon::after{animation-delay:.6s}
.step-item:nth-child(3) .step-icon::after{animation-delay:1.2s}
@keyframes step-shine{
  0%{left:-80%}40%,100%{left:130%}
}
.step-icon svg{width:36px;height:36px;position:relative;z-index:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.2))}
.step-item:hover .step-icon{
  transform:translateY(-5px) scale(1.06);
  box-shadow:0 14px 40px rgba(66,184,212,.55);
}
/* número de passo */
.step-num{
  position:absolute;bottom:-4px;right:-4px;
  width:26px;height:26px;border-radius:50%;
  background:var(--dark);border:2px solid white;
  font-size:10px;font-weight:800;color:var(--teal);
  display:flex;align-items:center;justify-content:center;
  z-index:2;letter-spacing:-.5px;
}
.step-title{font-size:20px;font-weight:700;color:var(--dark);margin-bottom:12px}
.step-text{font-size:14px;color:var(--text-light);line-height:1.8;font-weight:300}
.steps-cta{text-align:center;margin-top:52px}

/* ══════════════════════════════════════════
   DEPOIMENTOS
══════════════════════════════════════════ */
.sec-dep{background:var(--bg-gray);padding:96px 6%}
.dep-header,.faq-header,.conv-header,.contato-header{margin-bottom:56px}

/* frase introdutória */
.dep-intro{
  font-size:15px;color:var(--text-light);line-height:1.8;font-weight:300;margin-top:14px;
}

/* barra de rating */
.dep-rating-bar{
  display:flex;align-items:center;justify-content:center;
  gap:40px;flex-wrap:wrap;
  background:white;border-radius:20px;
  border:1px solid rgba(66,184,212,.15);
  padding:24px 40px;margin:0 auto 52px;
  max-width:680px;
  box-shadow:0 4px 24px rgba(66,184,212,.08);
  animation:dep-bar-in .6s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes dep-bar-in{
  from{opacity:0;transform:translateY(14px) scale(.97)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
.dep-rating-score{display:flex;align-items:center;gap:14px}
.dep-score-num{
  font-size:32px;font-weight:800;color:var(--dark);line-height:1;
  background:linear-gradient(135deg,var(--teal),var(--teal-mid));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.dep-score-stars{color:var(--gold);font-size:13px;letter-spacing:2px;margin-bottom:3px}
.dep-score-label{font-size:11px;color:var(--text-light);font-weight:500;letter-spacing:.3px}
.dep-rating-divider{width:1px;height:40px;background:rgba(66,184,212,.2);flex-shrink:0}

/* grid */
.dep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}

/* card */
.dep-card{
  background:white;border-radius:20px;padding:32px;
  border:1px solid rgba(66,184,212,.1);
  position:relative;overflow:hidden;
  transition:box-shadow .4s,transform .4s cubic-bezier(.34,1.56,.64,1),border-color .3s;
  animation:dep-float 5s ease-in-out infinite;
}
.dep-card:nth-child(2){animation-delay:.5s}
.dep-card:nth-child(3){animation-delay:1s}
.dep-card:nth-child(4){animation-delay:1.5s}
@keyframes dep-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
.dep-card:hover{
  box-shadow:0 20px 52px rgba(66,184,212,.14);
  border-color:rgba(66,184,212,.4);
  transform:translateY(-8px) scale(1.01);
}

/* acento colorido no topo */
.dep-card-accent{
  position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--teal),var(--teal-light));
  border-radius:20px 20px 0 0;
  transform:scaleX(0);transform-origin:left;
  transition:transform .4s .1s cubic-bezier(.4,0,.2,1);
}
.dep-card:hover .dep-card-accent{transform:scaleX(1)}

/* brilho deslizante */
.dep-card-shine{
  position:absolute;inset:0;pointer-events:none;border-radius:20px;overflow:hidden;
}
.dep-card-shine::after{
  content:'';position:absolute;top:0;left:-80%;width:45%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(66,184,212,.07),transparent);
  transform:skewX(-20deg);
  animation:dep-shine 6s ease-in-out infinite;
}
.dep-card:nth-child(2) .dep-card-shine::after{animation-delay:.6s}
.dep-card:nth-child(3) .dep-card-shine::after{animation-delay:1.2s}
.dep-card:nth-child(4) .dep-card-shine::after{animation-delay:1.8s}
@keyframes dep-shine{
  0%{left:-80%}40%,100%{left:130%}
}

/* topo do card: estrelas + ícone aspas */
.dep-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.dep-stars{color:var(--gold);font-size:14px;letter-spacing:3px}
.dep-quote-icon{
  width:28px;height:28px;color:var(--teal);opacity:.2;flex-shrink:0;
  transition:opacity .3s;
}
.dep-card:hover .dep-quote-icon{opacity:.5}

.dep-text{
  font-size:15px;color:var(--text);line-height:1.9;
  font-weight:300;margin-bottom:28px;
  font-style:italic;
}

/* autor */
.dep-author{display:flex;align-items:center;gap:13px}
.dep-avatar-wrap{position:relative;width:48px;height:48px;flex-shrink:0}
.dep-avatar-ring{
  position:absolute;inset:-6px;border-radius:50%;
  border:1.5px solid rgba(66,184,212,.3);
  animation:dep-avatar-ring 3s ease-in-out infinite;
}
.dep-card:nth-child(2) .dep-avatar-ring{animation-delay:.6s}
.dep-card:nth-child(3) .dep-avatar-ring{animation-delay:1.2s}
.dep-card:nth-child(4) .dep-avatar-ring{animation-delay:1.8s}
@keyframes dep-avatar-ring{
  0%,100%{transform:scale(1);opacity:.4}
  50%{transform:scale(1.2);opacity:0}
}
.dep-avatar{
  width:48px;height:48px;border-radius:50%;
  background:linear-gradient(135deg,var(--teal),var(--teal-mid));
  display:flex;align-items:center;justify-content:center;
  font-size:19px;font-weight:700;color:white;
  box-shadow:0 4px 14px rgba(66,184,212,.35);
  position:relative;z-index:1;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.dep-card:hover .dep-avatar{
  transform:scale(1.1);
  box-shadow:0 6px 20px rgba(66,184,212,.5);
}
.dep-name{font-size:14px;font-weight:700;color:var(--dark)}
.dep-source{
  font-size:11px;color:var(--text-light);margin-top:3px;
  display:flex;align-items:center;gap:4px;
}
.dep-source svg{opacity:.6}

/* foto de perfil do Google (substitui a inicial) */
.dep-avatar-photo{
  width:46px;height:46px;border-radius:50%;
  object-fit:cover;position:relative;z-index:1;
}

/* botão "Ver todas no Google" */
.dep-google-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 28px;border-radius:50px;
  border:1.5px solid rgba(66,184,212,.35);
  color:var(--teal);font-size:13px;font-weight:600;
  letter-spacing:.3px;text-decoration:none;
  transition:background .25s,border-color .25s,transform .2s;
}
.dep-google-btn:hover{
  background:rgba(66,184,212,.08);
  border-color:var(--teal);
  transform:translateY(-2px);
}

/* ══════════════════════════════════════════
   MARCAS
══════════════════════════════════════════ */
/* ══ MARCAS ══ */
.sec-marcas{
  padding:96px 8%;
  background:var(--dark);
  position:relative;overflow:hidden;
  text-align:center;
}
.marcas-glow{
  position:absolute;top:-100px;left:50%;transform:translateX(-50%);
  width:600px;height:400px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(66,184,212,.08) 0%,transparent 68%);
  pointer-events:none;
}
.marcas-header{max-width:600px;margin:0 auto 60px}
.marcas-sub{
  font-size:15px;color:rgba(255,255,255,.5);line-height:1.8;
  font-weight:300;margin-top:16px;
}

/* grid de cards */
.marcas-track-wrap{width:100%}
.marcas-track{
  display:flex;flex-wrap:wrap;justify-content:center;gap:14px;
}

/* card individual */
.marca-card{
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;
  padding:24px 28px;
  border-radius:16px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(66,184,212,.12);
  min-width:148px;
  cursor:default;
  transition:
    transform .4s cubic-bezier(.34,1.56,.64,1),
    border-color .3s,
    background .3s,
    box-shadow .3s;
  animation:marca-float 5s ease-in-out infinite;
}
.marca-card:nth-child(2){animation-delay:.4s}
.marca-card:nth-child(3){animation-delay:.8s}
.marca-card:nth-child(4){animation-delay:1.2s}
.marca-card:nth-child(5){animation-delay:1.6s}
.marca-card:nth-child(6){animation-delay:2s}
.marca-card:nth-child(7){animation-delay:2.4s}
@keyframes marca-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-7px)}
}
.marca-card:hover{
  border-color:rgba(66,184,212,.55);
  background:rgba(66,184,212,.07);
  box-shadow:0 12px 36px rgba(66,184,212,.18);
  transform:translateY(-6px) scale(1.03);
}

/* ponto decorativo */
.marca-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--teal);
  box-shadow:0 0 8px rgba(66,184,212,.7);
  margin-bottom:4px;
  animation:marca-dot-pulse 2s ease-in-out infinite;
}
.marca-card:nth-child(2) .marca-dot{animation-delay:.4s}
.marca-card:nth-child(3) .marca-dot{animation-delay:.8s}
.marca-card:nth-child(4) .marca-dot{animation-delay:1.2s}
.marca-card:nth-child(5) .marca-dot{animation-delay:1.6s}
.marca-card:nth-child(6) .marca-dot{animation-delay:2s}
.marca-card:nth-child(7) .marca-dot{animation-delay:2.4s}
@keyframes marca-dot-pulse{
  0%,100%{opacity:.6;transform:scale(1)}
  50%{opacity:1;transform:scale(1.4);box-shadow:0 0 14px rgba(66,184,212,.9)}
}

/* nome da marca */
.marca-name{
  font-size:14px;font-weight:800;letter-spacing:2.5px;
  color:rgba(255,255,255,.75);
  transition:color .3s;
}
.marca-card:hover .marca-name{color:white}

/* categoria */
.marca-cat{
  font-size:10px;font-weight:500;letter-spacing:.5px;
  color:var(--teal);opacity:.8;
  transition:opacity .3s;
}
.marca-card:hover .marca-cat{opacity:1}

/* brilho deslizante */
.marca-card-shine{
  position:absolute;inset:0;pointer-events:none;
}
.marca-card-shine::after{
  content:'';position:absolute;top:0;left:-80%;width:50%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);
  transform:skewX(-20deg);
  animation:marca-shine 5s ease-in-out infinite;
}
.marca-card:nth-child(2) .marca-card-shine::after{animation-delay:.4s}
.marca-card:nth-child(3) .marca-card-shine::after{animation-delay:.8s}
.marca-card:nth-child(4) .marca-card-shine::after{animation-delay:1.2s}
.marca-card:nth-child(5) .marca-card-shine::after{animation-delay:1.6s}
.marca-card:nth-child(6) .marca-card-shine::after{animation-delay:2s}
.marca-card:nth-child(7) .marca-card-shine::after{animation-delay:2.4s}
@keyframes marca-shine{
  0%{left:-80%}40%,100%{left:130%}
}

/* nota final */
.marcas-cta-note{
  margin-top:44px;font-size:13px;color:rgba(255,255,255,.38);
}
.marcas-cta-note a{
  color:var(--teal);font-weight:600;text-decoration:none;
  transition:opacity .2s;
}
.marcas-cta-note a:hover{opacity:.75}

/* ══════════════════════════════════════════
   CONVÊNIOS
══════════════════════════════════════════ */
.sec-convenios{background:var(--teal-ultra)}
.conv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.conv-card{
  background:var(--white);border-radius:var(--radius);padding:28px 24px;
  border:1.5px solid rgba(66,184,212,.12);text-align:center;
  transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition);
}
.conv-card:hover{border-color:var(--teal);box-shadow:0 8px 28px rgba(66,184,212,.18);transform:translateY(-4px)}
.conv-icon-wrap{
  position:relative;width:64px;height:64px;margin:0 auto 20px;
}
.conv-icon{
  width:64px;height:64px;border-radius:18px;
  background:linear-gradient(135deg,rgba(66,184,212,.15),rgba(66,184,212,.05));
  border:1.5px solid rgba(66,184,212,.3);
  display:flex;align-items:center;justify-content:center;
  position:relative;z-index:1;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),border-color .3s,background .3s;
  animation:conv-float 3.6s ease-in-out infinite;
}
.conv-card:nth-child(2) .conv-icon{animation-delay:.3s}
.conv-card:nth-child(3) .conv-icon{animation-delay:.6s}
.conv-card:nth-child(4) .conv-icon{animation-delay:.9s}
.conv-card:nth-child(5) .conv-icon{animation-delay:1.2s}
.conv-card:nth-child(6) .conv-icon{animation-delay:1.5s}
@keyframes conv-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
.conv-card:hover .conv-icon{
  transform:translateY(-4px) scale(1.07);
  border-color:rgba(66,184,212,.7);
  background:linear-gradient(135deg,rgba(66,184,212,.22),rgba(66,184,212,.1));
}
.conv-icon svg{
  width:28px;height:28px;color:var(--teal);
  transition:color .3s,filter .3s;
  filter:drop-shadow(0 0 6px rgba(66,184,212,.4));
}
.conv-card:hover .conv-icon svg{
  color:var(--teal-mid);
  filter:drop-shadow(0 0 12px rgba(66,184,212,.75));
}
/* anel pulsante */
.conv-icon-ring{
  position:absolute;inset:-8px;border-radius:24px;
  border:1.5px solid rgba(66,184,212,.2);
  animation:conv-ring 3.6s ease-in-out infinite;
  z-index:0;
}
.conv-card:nth-child(2) .conv-icon-ring{animation-delay:.3s}
.conv-card:nth-child(3) .conv-icon-ring{animation-delay:.6s}
.conv-card:nth-child(4) .conv-icon-ring{animation-delay:.9s}
.conv-card:nth-child(5) .conv-icon-ring{animation-delay:1.2s}
.conv-card:nth-child(6) .conv-icon-ring{animation-delay:1.5s}
@keyframes conv-ring{
  0%,100%{transform:scale(1);opacity:.4}
  50%{transform:scale(1.14);opacity:0}
}
/* brilho deslizante */
.conv-icon-shine{
  position:absolute;inset:0;border-radius:18px;overflow:hidden;z-index:2;pointer-events:none;
}
.conv-icon-shine::after{
  content:'';position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);
  transform:skewX(-20deg);
  animation:conv-shine 3.6s ease-in-out infinite;
}
.conv-card:nth-child(2) .conv-icon-shine::after{animation-delay:.3s}
.conv-card:nth-child(3) .conv-icon-shine::after{animation-delay:.6s}
.conv-card:nth-child(4) .conv-icon-shine::after{animation-delay:.9s}
.conv-card:nth-child(5) .conv-icon-shine::after{animation-delay:1.2s}
.conv-card:nth-child(6) .conv-icon-shine::after{animation-delay:1.5s}
@keyframes conv-shine{
  0%{left:-80%}40%,100%{left:130%}
}
.conv-name{font-size:15px;font-weight:700;color:var(--dark);margin-bottom:6px}
.conv-desc{font-size:13px;color:var(--text-light);font-weight:300}
.conv-nota{text-align:center;margin-top:36px;font-size:14px;color:var(--text-light)}
.conv-nota a{color:var(--teal-mid);font-weight:600}
.conv-nota a:hover{text-decoration:underline}

/* ══════════════════════════════════════════
   FAQ
══════════════════════════════════════════ */
.sec-faq{background:#0a1628;position:relative;overflow:hidden}

/* brilho de fundo ambiental */
.faq-bg-glow{
  position:absolute;top:-160px;left:50%;transform:translateX(-50%);
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(66,184,212,.09) 0%,transparent 70%);
  pointer-events:none;
}

.faq-wrap{max-width:800px;margin:0 auto;position:relative;z-index:1}

/* cada item */
.faq-item{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(66,184,212,.1);
  border-radius:16px;
  margin-bottom:12px;
  overflow:hidden;
  transition:border-color .3s,background .3s,box-shadow .3s;
}
.faq-item:hover{
  border-color:rgba(66,184,212,.28);
  background:rgba(66,184,212,.04);
}
.faq-item.open{
  border-color:rgba(66,184,212,.45);
  background:rgba(66,184,212,.06);
  box-shadow:0 8px 32px rgba(66,184,212,.1);
}

/* botão */
.faq-btn{
  width:100%;background:none;text-align:left;
  padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;
  font-family:var(--font);font-size:15px;font-weight:600;color:rgba(255,255,255,.85);
  transition:color .3s;
}
.faq-btn:hover{color:white}
.faq-item.open .faq-btn{color:white}

/* número + texto */
.faq-q-inner{display:flex;align-items:center;gap:16px;flex:1;min-width:0}
.faq-num{
  font-size:11px;font-weight:700;color:var(--teal);
  background:rgba(66,184,212,.12);
  border:1px solid rgba(66,184,212,.25);
  border-radius:6px;padding:3px 8px;
  flex-shrink:0;letter-spacing:.5px;
  transition:background .3s,border-color .3s;
}
.faq-item.open .faq-num{
  background:rgba(66,184,212,.22);
  border-color:rgba(66,184,212,.5);
}
.faq-q-text{font-size:15px;line-height:1.45}

/* ícone chevron */
.faq-icon{
  width:32px;height:32px;border-radius:50%;
  border:1.5px solid rgba(66,184,212,.3);
  color:var(--teal);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),background .3s,border-color .3s;
}
.faq-icon svg{width:16px;height:16px;transition:stroke .3s}
.faq-item.open .faq-icon{
  transform:rotate(180deg);
  background:var(--teal);
  border-color:var(--teal);
  color:white;
}

/* resposta */
.faq-answer{
  max-height:0;overflow:hidden;
  transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .4s,padding .3s;
  font-size:14px;color:rgba(255,255,255,.55);line-height:1.9;font-weight:300;
  padding:0 24px 0 56px;opacity:0;
}
.faq-item.open .faq-answer{max-height:320px;padding-bottom:24px;opacity:1}

/* ══════════════════════════════════════════
   PROMOÇÃO
══════════════════════════════════════════ */
.sec-promo{
  padding:0;
  background:linear-gradient(90deg,#9B2C2C 0%,var(--red) 35%,#C05621 65%,#DD6B20 100%);
  overflow:hidden;
}
.promo-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:32px;padding:52px 8%;flex-wrap:wrap;
}
.promo-badge{
  background:rgba(255,255,255,.15);border:2.5px solid rgba(255,255,255,.5);
  border-radius:var(--radius);padding:18px 28px;text-align:center;flex-shrink:0;
}
.promo-badge-top{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.85)}
.promo-badge-val{font-size:60px;font-weight:800;color:white;line-height:1}
.promo-badge-bot{font-size:11px;color:rgba(255,255,255,.85);letter-spacing:1px}
.promo-body{flex:1;min-width:240px}
.promo-tag{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.8);display:block;margin-bottom:8px}
.promo-title{font-size:clamp(24px,3vw,40px);font-weight:800;color:white;line-height:1.2;margin-bottom:10px}
.promo-sub{font-size:14px;color:rgba(255,255,255,.85);line-height:1.65;font-weight:300;max-width:420px}
.promo-timer{display:flex;gap:10px;margin-top:18px}
.timer-block{background:rgba(0,0,0,.2);border-radius:8px;padding:10px 16px;text-align:center;min-width:64px}
.timer-num{font-size:32px;font-weight:800;color:white;display:block;line-height:1;font-variant-numeric:tabular-nums}
.timer-lbl{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.7)}
.promo-cta-col{display:flex;flex-direction:column;align-items:center;gap:10px;flex-shrink:0}
.btn-promo{
  display:inline-flex;align-items:center;gap:8px;
  background:white;color:var(--red);
  padding:16px 32px;border-radius:6px;font-size:14px;font-weight:700;
  white-space:nowrap;transition:transform var(--transition),box-shadow var(--transition);
}
.btn-promo:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(0,0,0,.25)}
.promo-fine{font-size:11px;color:rgba(255,255,255,.6);text-align:center}

/* ══════════════════════════════════════════
   CTA FINAL
══════════════════════════════════════════ */
.sec-cta-final{
  background:linear-gradient(160deg,#050d16 0%,#0a1929 60%,#0d1f35 100%);
  padding:120px 8%;text-align:center;position:relative;overflow:hidden;
}
/* anéis decorativos animados */
.cta-shape{
  position:absolute;border-radius:50%;
  border:1px solid rgba(66,184,212,.07);
  top:50%;left:50%;transform:translate(-50%,-50%);
  pointer-events:none;
  animation:cta-ring-spin 18s linear infinite;
}
.cs-1{width:720px;height:720px;animation-duration:22s}
.cs-2{width:520px;height:520px;border-color:rgba(66,184,212,.11);animation-direction:reverse;animation-duration:16s}
.cs-3{width:340px;height:340px;border-color:rgba(66,184,212,.18);animation-duration:12s}
@keyframes cta-ring-spin{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
.cta-content{position:relative;z-index:2;max-width:660px;margin:0 auto}

/* badge de destaque */
.cta-badge{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 18px;border-radius:50px;margin-bottom:24px;
  background:rgba(66,184,212,.1);border:1px solid rgba(66,184,212,.3);
  font-size:12px;font-weight:600;color:var(--teal);letter-spacing:.5px;
  animation:badge-glow 3s ease-in-out infinite;
}
@keyframes badge-glow{
  0%,100%{box-shadow:0 0 0 rgba(66,184,212,0)}
  50%{box-shadow:0 0 18px rgba(66,184,212,.25)}
}
.cta-title{font-size:clamp(32px,4.5vw,56px);font-weight:800;color:white;line-height:1.15;margin-bottom:18px}
.cta-title .accent{color:var(--teal);font-style:italic}
.cta-sub{font-size:16px;color:rgba(255,255,255,.55);line-height:1.8;margin-bottom:44px;font-weight:300;max-width:520px;margin-left:auto;margin-right:auto}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ══════════════════════════════════════════
   CONTATO
══════════════════════════════════════════ */
.sec-contato{background:#f0f8fc;position:relative;overflow:hidden}
.sec-contato::before{
  content:'';position:absolute;bottom:-200px;right:-200px;
  width:500px;height:500px;border-radius:50%;
  background:radial-gradient(circle,rgba(66,184,212,.12) 0%,transparent 70%);
  pointer-events:none;
}
.contato-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;position:relative;z-index:1}

/* info items */
.info-item{
  display:flex;gap:18px;margin-bottom:20px;align-items:flex-start;
  padding:20px;border-radius:16px;
  border:1px solid rgba(66,184,212,.15);
  background:rgba(255,255,255,.7);
  backdrop-filter:blur(6px);
  box-shadow:0 2px 12px rgba(66,184,212,.07);
  transition:border-color .3s,background .3s,transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.info-item:hover{
  border-color:rgba(66,184,212,.45);
  background:white;
  box-shadow:0 6px 24px rgba(66,184,212,.15);
  transform:translateX(6px);
}

/* wrapper do ícone */
.info-icon-wrap{
  position:relative;width:52px;height:52px;flex-shrink:0;
}
.info-icon{
  width:52px;height:52px;border-radius:14px;
  background:linear-gradient(135deg,var(--teal),var(--teal-light));
  display:flex;align-items:center;justify-content:center;
  position:relative;z-index:1;overflow:hidden;
  box-shadow:0 6px 20px rgba(66,184,212,.35);
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
  animation:info-float 4s ease-in-out infinite;
}
.info-item:nth-child(2) .info-icon{animation-delay:.5s}
.info-item:nth-child(3) .info-icon{animation-delay:1s}
.info-item:nth-child(4) .info-icon{animation-delay:1.5s}
@keyframes info-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}
.info-item:hover .info-icon{
  transform:translateY(-3px) scale(1.08);
  box-shadow:0 10px 28px rgba(66,184,212,.55);
}
.info-icon svg{width:22px;height:22px;position:relative;z-index:1}

/* anel pulsante */
.info-icon-ring{
  position:absolute;inset:-8px;border-radius:20px;
  border:1.5px solid rgba(66,184,212,.25);
  animation:info-ring 4s ease-in-out infinite;
  z-index:0;
}
.info-item:nth-child(2) .info-icon-ring{animation-delay:.5s}
.info-item:nth-child(3) .info-icon-ring{animation-delay:1s}
.info-item:nth-child(4) .info-icon-ring{animation-delay:1.5s}
@keyframes info-ring{
  0%,100%{transform:scale(1);opacity:.4}
  50%{transform:scale(1.15);opacity:0}
}
/* brilho deslizante */
.info-icon-shine{
  position:absolute;inset:0;border-radius:14px;overflow:hidden;z-index:2;pointer-events:none;
}
.info-icon-shine::after{
  content:'';position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
  transform:skewX(-20deg);
  animation:info-shine 4s ease-in-out infinite;
}
.info-item:nth-child(2) .info-icon-shine::after{animation-delay:.5s}
.info-item:nth-child(3) .info-icon-shine::after{animation-delay:1s}
.info-item:nth-child(4) .info-icon-shine::after{animation-delay:1.5s}
@keyframes info-shine{
  0%{left:-80%}40%,100%{left:130%}
}

.info-label{font-size:10px;font-weight:700;color:var(--teal);letter-spacing:2px;text-transform:uppercase;margin-bottom:5px}
.info-val{font-size:15px;font-weight:400;color:var(--dark);line-height:1.7}
.info-val a{color:var(--dark);transition:color .25s}
.info-val a:hover{color:var(--teal-mid)}

/* título da seção contato no fundo claro */
.sec-contato .sec-title{color:var(--dark)}
.sec-contato .sec-title.light{color:var(--dark)}
.map-wrapper{
  border-radius:var(--radius);overflow:hidden;
  box-shadow:0 8px 40px rgba(0,0,0,.12);
  border:2px solid rgba(66,184,212,.2);
  position:relative;
}
.map-wrapper iframe{
  display:block;width:100%;height:380px;border:0;
  filter:saturate(1.1) contrast(1.02);
}
.map-actions{
  display:flex;gap:12px;margin-top:16px;flex-wrap:wrap;
}
.map-cta{
  flex:1;min-width:180px;justify-content:center;
  display:flex;align-items:center;gap:8px;
  padding:13px 20px;border-radius:8px;
  font-size:14px;font-weight:600;text-decoration:none;
  transition:all var(--transition);white-space:nowrap;
}
.btn-outline-dark{
  border:2px solid rgba(66,184,212,.5);color:var(--teal);background:rgba(66,184,212,.06);
}
.btn-outline-dark:hover{background:rgba(66,184,212,.14);border-color:var(--teal);color:var(--teal);}

/* ══════════════════════════════════════════
   FOOTER
══════════════════════════════════════════ */
#footer{background:#080f18;padding:72px 8% 32px;position:relative;overflow:hidden}

/* brilho ambiental */
.footer-glow{
  position:absolute;top:-120px;left:50%;transform:translateX(-50%);
  width:700px;height:400px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(66,184,212,.07) 0%,transparent 70%);
  pointer-events:none;
}
/* linha de gradiente no topo */
.footer-top-line{
  position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent 0%,var(--teal) 35%,var(--teal-light) 65%,transparent 100%);
}

.footer-top{
  display:grid;grid-template-columns:2fr 1fr 1fr;
  gap:60px;padding-bottom:48px;
  border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:32px;
}
.footer-logo-img{
  height:80px;
  width:auto;
  object-fit:contain;
  display:block;
  margin-bottom:4px;
}
.footer-tagline{font-size:13px;color:rgba(255,255,255,.42);margin-top:8px;line-height:1.7;max-width:280px;font-weight:300}
.footer-social{display:flex;gap:12px;margin-top:28px}
.soc-btn{
  position:relative;
  width:42px;height:42px;border-radius:12px;
  border:1.5px solid rgba(66,184,212,.28);
  display:flex;align-items:center;justify-content:center;
  transition:background var(--transition),border-color var(--transition);
}
.soc-btn:hover{
  background:rgba(66,184,212,.15);border-color:var(--teal);
  transform:translateY(-3px);
  box-shadow:0 6px 18px rgba(66,184,212,.25);
}
.soc-btn svg{width:17px;height:17px;color:var(--teal);transition:color .3s,filter .3s}
.soc-btn:hover svg{color:white;filter:drop-shadow(0 0 6px rgba(66,184,212,.8))}
/* anel pulsante nos botões sociais */
.soc-ring{
  position:absolute;inset:-6px;border-radius:17px;
  border:1.5px solid rgba(66,184,212,.2);
  animation:soc-ring 3.5s ease-in-out infinite;
  pointer-events:none;
}
.soc-btn:nth-child(2) .soc-ring{animation-delay:.5s}
.soc-btn:nth-child(3) .soc-ring{animation-delay:1s}
@keyframes soc-ring{
  0%,100%{transform:scale(1);opacity:.35}
  50%{transform:scale(1.2);opacity:0}
}

.footer-col-title{
  font-size:10px;letter-spacing:3px;text-transform:uppercase;
  color:var(--teal);font-weight:700;margin-bottom:20px;
  display:flex;align-items:center;gap:8px;
}
.footer-col-title::after{
  content:'';flex:1;height:1px;
  background:linear-gradient(90deg,rgba(66,184,212,.3),transparent);
}
.footer-col li{margin-bottom:11px}
.footer-col li a{
  color:rgba(255,255,255,.42);font-size:13px;font-weight:300;
  transition:color .25s,padding-left .25s;
  display:inline-block;
}
.footer-col li a:hover{color:var(--teal);padding-left:6px}

/* divisor */
.footer-divider{
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(66,184,212,.2) 30%,rgba(66,184,212,.2) 70%,transparent);
  margin:48px 0 28px;
}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-copy{font-size:12px;color:rgba(255,255,255,.25);letter-spacing:.3px}
.footer-rating{display:flex;align-items:center;gap:8px}
.footer-rating-txt{font-size:12px;color:rgba(255,255,255,.3)}
.footer-rating-txt a{color:var(--teal);text-decoration:none;font-weight:600;transition:opacity .2s}
.footer-rating-txt a:hover{opacity:.8}

/* ══════════════════════════════════════════
   WHATSAPP FLOAT
══════════════════════════════════════════ */
/* ── wrapper posicionado ── */
.wa-float-wrap{
  position:fixed;bottom:28px;right:28px;z-index:999;
  display:flex;align-items:center;
}
/* ── tooltip sofisticado ── */
.wa-tooltip{
  position:absolute;right:calc(100% + 14px);
  background:rgba(13,27,42,.92);
  backdrop-filter:blur(8px);
  color:white;padding:8px 16px;border-radius:10px;
  font-family:var(--font);font-size:12px;font-weight:500;white-space:nowrap;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 8px 24px rgba(0,0,0,.3);
  opacity:0;transform:translateX(8px);
  transition:opacity .25s,transform .25s;pointer-events:none;
}
.wa-tooltip-arrow{
  position:absolute;top:50%;right:-6px;
  width:12px;height:12px;
  background:rgba(13,27,42,.92);border-right:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);
  transform:translateY(-50%) rotate(45deg);
}
.wa-float-wrap:hover .wa-tooltip{opacity:1;transform:translateX(0)}
/* ── botão principal ── */
.wa-float{
  position:relative;
  width:62px;height:62px;border-radius:50%;
  background:linear-gradient(135deg,#25d366,#1da851);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 24px rgba(37,211,102,.5);
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
  animation:wa-float-bob 3.2s ease-in-out infinite;
}
@keyframes wa-float-bob{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
.wa-float:hover{
  transform:translateY(-4px) scale(1.1);
  box-shadow:0 12px 36px rgba(37,211,102,.65);
}
/* ── ícone interno ── */
.wa-btn-inner{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;
  width:100%;height:100%;border-radius:50%;overflow:hidden;
}
.wa-btn-inner::after{
  content:'';position:absolute;top:0;left:-80%;width:55%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
  transform:skewX(-20deg);
  animation:wa-shine 3.2s ease-in-out infinite;
}
@keyframes wa-shine{
  0%{left:-80%}40%,100%{left:130%}
}
.wa-float svg{width:30px;height:30px;position:relative;z-index:1}
/* ── anéis pulsantes ── */
.wa-ring{
  position:absolute;inset:0;border-radius:50%;
  border:2px solid rgba(37,211,102,.5);
  pointer-events:none;
  animation:wa-ring-pulse 3.2s ease-out infinite;
}
.wa-ring-2{
  border-color:rgba(37,211,102,.25);
  animation-delay:.9s;
}
@keyframes wa-ring-pulse{
  0%{transform:scale(1);opacity:.6}
  100%{transform:scale(1.9);opacity:0}
}

/* ══════════════════════════════════════════
   POPUP
══════════════════════════════════════════ */
.popup-overlay{
  position:fixed;inset:0;background:rgba(13,27,42,.78);
  z-index:9999;display:flex;align-items:center;justify-content:center;
  padding:24px;opacity:0;pointer-events:none;transition:opacity .4s;
}
.popup-overlay.show{opacity:1;pointer-events:all}
.popup-box{
  background:white;border-radius:16px;max-width:460px;width:100%;
  overflow:hidden;transform:translateY(24px) scale(.97);
  transition:transform .4s;position:relative;
}
.popup-overlay.show .popup-box{transform:none}
.popup-top{
  background:linear-gradient(135deg,var(--dark),var(--dark2));
  padding:44px 40px 36px;text-align:center;position:relative;
}
.popup-close{
  position:absolute;top:14px;right:14px;
  background:rgba(255,255,255,.15);border:none;color:white;
  width:30px;height:30px;border-radius:50%;cursor:pointer;
  font-size:16px;display:flex;align-items:center;justify-content:center;
  transition:background var(--transition);font-family:var(--font);
}
.popup-close:hover{background:rgba(255,255,255,.28)}
.popup-circle{
  width:112px;height:112px;border-radius:50%;background:var(--teal);color:white;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  margin:0 auto 20px;box-shadow:0 8px 32px rgba(66,184,212,.55);
}
.popup-circle span{font-size:44px;font-weight:800;line-height:1}
.popup-circle small{font-size:16px;font-weight:700}
.popup-title{font-size:24px;font-weight:800;color:white;margin-bottom:8px}
.popup-sub{font-size:13px;color:rgba(255,255,255,.65);font-weight:300;line-height:1.65}
.popup-body{padding:30px 36px 36px}
.popup-body p{font-size:13px;color:var(--text-light);margin-bottom:20px;line-height:1.7;font-weight:300}
.popup-skip{text-align:center;margin-top:16px;font-size:12px;color:var(--text-light);cursor:pointer}
.popup-skip:hover{color:var(--teal-mid);text-decoration:underline}

/* ══════════════════════════════════════════
   RESPONSIVIDADE
══════════════════════════════════════════ */
@media(max-width:1100px){
  .produtos-grid{grid-template-columns:repeat(2,1fr)}
  .num-grid{grid-template-columns:repeat(2,1fr)}
  .videos-grid{grid-template-columns:repeat(2,1fr)}
  .footer-top{grid-template-columns:1fr 1fr}
  .galeria-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .galeria-large{grid-row:auto}
  .galeria-header{flex-direction:column;align-items:flex-start;gap:16px}
  .galeria-sub{text-align:left;max-width:100%}
}
@media(max-width:900px){
  .nav-links{display:none}
  .btn-wa-hdr .hdr-label{display:none}
  .btn-wa-hdr{padding:8px 10px}
  .logo-img{height:48px;max-width:160px}
  .hamburger{display:flex}
  .novidades-strip{grid-template-columns:repeat(2,1fr)}
  .novidades-header{flex-direction:column;align-items:flex-start;gap:16px}
  .novidades-sub{text-align:left;max-width:100%}
  .sec-sobre{grid-template-columns:1fr}
  .sobre-img-col{min-height:420px}
  .sobre-img-badge{bottom:24px;left:24px;padding:18px 24px}
  .sib-num{font-size:42px}
  .sobre-pillars{grid-template-columns:1fr}
  .sobre-content{padding:60px 6%}
  .dif-grid{grid-template-columns:1fr}
  .steps-wrap{grid-template-columns:1fr;gap:44px}
  .steps-line{display:none}
  .dep-grid{grid-template-columns:repeat(2,1fr)}
  .conv-grid{grid-template-columns:repeat(2,1fr)}
  .contato-grid{grid-template-columns:1fr;gap:44px}
  .map-actions{flex-direction:column}
  .map-cta{min-width:100%;flex:unset}
  .footer-top{grid-template-columns:1fr;gap:40px}
  section{padding:72px 6%}
  .sec-videos{padding:72px 6%}
  .sec-numeros{padding:72px 6%}
  .sec-galeria{padding:72px 6%}
  .sec-novidades{padding:72px 6%}
  .sec-dep{padding:72px 6%}
  .sec-marcas{padding:72px 6%}
  .sec-cta-final{padding:80px 6%}
  #footer{padding:56px 6% 32px}
  .promo-inner{flex-direction:column;text-align:center}
  .promo-timer{justify-content:center}
  .promo-sub{max-width:100%}
  .galeria-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
}
@media(max-width:600px){
  .hero-ring,.hero-vline{display:none}
  .hero-bg-2{object-position:72% 15%;transform:none}
  .marcas-carousel-wrap{position:relative;display:flex;align-items:center;gap:0}
  .marcas-track-wrap{overflow:hidden;flex:1}
  .marcas-track{
    flex-wrap:nowrap;
    overflow-x:auto;scroll-snap-type:x mandatory;
    justify-content:flex-start;gap:12px;
    padding-bottom:6px;
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .marcas-track::-webkit-scrollbar{display:none}
  .marca-card{flex:0 0 80%;scroll-snap-align:start}
  .carousel-nav-btn{
    display:flex;align-items:center;justify-content:center;
    width:36px;height:36px;min-width:36px;
    background:rgba(66,184,212,.15);border:1px solid rgba(66,184,212,.4);
    color:#42b8d4;border-radius:50%;font-size:22px;line-height:1;
    cursor:pointer;flex-shrink:0;transition:background .2s,transform .15s;
    -webkit-tap-highlight-color:transparent;
  }
  .carousel-nav-btn:active{background:rgba(66,184,212,.35);transform:scale(.93)}
  .cred-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.2);padding:14px 16px}
  .num-grid{grid-template-columns:repeat(2,1fr);gap:28px}
  .produtos-grid{grid-template-columns:1fr}
  .conv-grid{grid-template-columns:1fr}
  .hero-ctas{flex-direction:column;align-items:flex-start}
  .btn-hero-cta,.btn-hero-ghost{width:100%;justify-content:center}
  .cta-btns{flex-direction:column;align-items:center}
  .footer-top{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
  .galeria-grid{grid-template-columns:1fr}
  .videos-grid{grid-template-columns:1fr;max-width:360px;margin-left:auto;margin-right:auto}
  .dep-grid{
    display:flex;flex-direction:row;
    overflow-x:auto;scroll-snap-type:x mandatory;
    gap:16px;padding-bottom:16px;
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .dep-grid::-webkit-scrollbar{display:none}
  .dep-card{flex:0 0 85%;scroll-snap-align:center;max-width:340px}
  .nov-carousel-wrap{position:relative;display:flex;align-items:center;gap:0}
  .novidades-strip{
    display:flex;flex-direction:row;flex:1;
    overflow-x:auto;scroll-snap-type:x mandatory;
    gap:14px;padding-bottom:8px;
    scrollbar-width:none;-ms-overflow-style:none;
  }
  .novidades-strip::-webkit-scrollbar{display:none}
  .nov-card{flex:0 0 86%;scroll-snap-align:start}
  .dep-rating-bar{padding:18px 20px;gap:20px;flex-direction:column;align-items:flex-start}
  .dep-rating-divider{display:none}
  .promo-badge-val{font-size:44px}
  .sobre-pillars{grid-template-columns:1fr}
  .cred-item{min-width:0;width:100%;flex:0 0 100%}
}
@media(max-width:480px){
  .sobre-pillars{grid-template-columns:1fr}
  .espaco-layout{grid-template-columns:1fr}
  .hero-trust-row{gap:0}
  .htr-item strong{font-size:17px}
  .sec-novidades,.sec-galeria,.sec-sobre .sobre-content{padding:56px 5%}
  .sec-videos{padding:56px 5%}
  .sec-numeros{padding:56px 5%}
  .sec-dep{padding:56px 5%}
  .sec-marcas{padding:56px 5%}
  .sec-cta-final{padding:64px 5%}
  .sobre-content{padding:48px 5%}
  #footer{padding:48px 5% 28px}
  .sobre-img-col{min-height:280px}
  .galeria-header,.novidades-header{margin-bottom:36px}
  .num-grid{grid-template-columns:1fr 1fr}
  .hero-body{padding:40px 5%}
  .hero-title{font-size:clamp(34px,9vw,52px)}
  .logo-img{height:40px;max-width:140px}
  .btn-wa-hdr{padding:7px 9px}
  .cred-item{min-width:0}
  .faq-answer{padding-left:24px}
  .promo-badge-val{font-size:36px}
  .map-wrapper iframe{height:260px}
  .dep-rating-bar{padding:16px}
  .videos-grid{max-width:100%}
}

/* ══ ESPAÇO / VÍDEO LOJA ══ */
.sec-espaco{padding:96px 6%}

/* layout dois lados */
.espaco-layout{
  display:grid;grid-template-columns:1fr 1.45fr;
  gap:56px;align-items:center;
  max-width:1200px;margin:0 auto;
}
.espaco-content{display:flex;flex-direction:column;gap:0}
.espaco-intro{
  font-size:15px;color:rgba(255,255,255,.65);line-height:1.85;
  font-weight:300;margin:20px 0 36px;
}

/* features */
.espaco-features{display:flex;flex-direction:column;gap:20px}
.espaco-feat{
  display:flex;align-items:center;gap:18px;
  padding:18px 22px;border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  transition:background .25s,border-color .25s,transform .3s cubic-bezier(.34,1.56,.64,1);
}
.espaco-feat:hover{
  background:rgba(66,184,212,.12);
  border-color:rgba(66,184,212,.35);
  transform:translateX(6px);
}
.espaco-feat-icon{
  width:46px;height:46px;border-radius:12px;flex-shrink:0;
  background:linear-gradient(135deg,rgba(66,184,212,.25),rgba(66,184,212,.1));
  border:1px solid rgba(66,184,212,.3);
  display:flex;align-items:center;justify-content:center;
  color:var(--teal-light);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1);
}
.espaco-feat-icon svg{width:20px;height:20px}
.espaco-feat:hover .espaco-feat-icon{transform:scale(1.1) rotate(-5deg)}
.espaco-feat-title{
  font-size:14px;font-weight:700;color:white;margin-bottom:3px;
}
.espaco-feat-sub{
  font-size:12px;color:rgba(255,255,255,.5);font-weight:400;
}

/* vídeo */
.espaco-video-wrap{
  border-radius:24px;overflow:hidden;
  box-shadow:0 32px 80px rgba(0,0,0,.5);
  position:relative;
}
.espaco-video-wrap::before{
  content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
  border-radius:24px;
  box-shadow:inset 0 0 0 1px rgba(66,184,212,.2);
}
.espaco-video{width:100%;display:block;aspect-ratio:16/9;background:#000;object-fit:cover}

@media(max-width:900px){
  .espaco-layout{grid-template-columns:1fr;gap:48px}
  .sec-espaco{padding:72px 6%}
}
