/* ============================================================
   Tee-X Renovations · LP reforma de cozinha e banheiro (Destin, FL)
   Identidade: kit de marca (tokens.css). Radius 0 medido no ícone.
   Conversão em VERDE (playbook 13.8), institucional no acento da marca.
   ============================================================ */

:root{
  --green:#159e4c; --green-dark:#0f7d3b;   /* gatilho de conversão (13.8), fora da paleta de propósito */
  --ok:#159e4c; --bad:#c0392b;             /* semânticos do comparativo */
  --on-dark:#cfe0f1;                        /* acento CLARO p/ fundo escuro (contraste) */
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;font-family:var(--font-text);color:var(--ink);background:var(--white);
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.08;margin:0;letter-spacing:-.01em}
p{margin:0 0 1em}
.container{width:min(1180px,92vw);margin-inline:auto}
@media(max-width:600px){.container{width:100%;padding-inline:20px}}
.eyebrow{display:inline-flex;align-items:center;font-family:var(--font-display);
  font-weight:700;font-size:13px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--brand-2);margin-bottom:14px}
.eyebrow::before{content:none!important}   /* remove o marcador pequeno do tokens.css (a logo grande já forma nas dobras) */
section{position:relative}
.section{padding:88px 0}
.section-white{background:var(--white)}
.section-off{background:var(--off)}
.section-dark{background:var(--ink);color:var(--white)}
.section-dark .eyebrow{color:var(--on-dark)}
.section-title{font-size:clamp(28px,4vw,42px);max-width:20ch;text-wrap:balance}
.section-dark .section-title::after{background:var(--on-dark)}
.lead{font-size:clamp(17px,2vw,20px);color:#3a4550;max-width:60ch;text-wrap:pretty}
.section-dark .lead{color:#c4d0dc}


/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;position:relative;
  overflow:hidden;font-family:var(--font-display);font-weight:700;letter-spacing:.02em;
  padding:16px 30px;border:0;cursor:pointer;border-radius:var(--radius-btn);
  font-size:16px;transition:transform .15s,background .2s,box-shadow .2s;text-align:center}
.btn:active{transform:translateY(1px)}
/* sheen que atravessa (brilho) */
.btn::after{content:'';position:absolute;top:0;left:-120%;width:60%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);
  transform:skewX(-18deg);animation:sheen 4.5s ease-in-out infinite}
@keyframes sheen{0%,60%{left:-120%}80%,100%{left:130%}}
/* CTA institucional (hero, header) = acento da marca, com pulso leve */
.btn-cta{background:var(--brand-2);color:#fff;box-shadow:0 6px 22px rgba(0,38,71,.22)}
.btn-cta:hover{background:#26557f;box-shadow:0 10px 30px rgba(0,38,71,.30)}
/* CTA de CONVERSÃO = verde com pulso + sheen (playbook 13.8) */
.btn-green{background:var(--green);color:#fff;box-shadow:0 8px 24px rgba(21,158,76,.34);
  animation:ctaPulse 2.4s ease-in-out infinite}
.btn-green:hover{background:var(--green-dark);animation:none;box-shadow:0 12px 32px rgba(21,158,76,.45)}
@keyframes ctaPulse{0%,100%{box-shadow:0 8px 24px rgba(21,158,76,.30)}
  50%{box-shadow:0 8px 30px rgba(21,158,76,.55),0 0 0 4px rgba(21,158,76,.12)}}
.btn-navy{background:var(--brand);color:#fff}
.btn-navy:hover{background:#01305a}
.btn-ghost{background:transparent;color:var(--brand);box-shadow:inset 0 0 0 2px var(--brand)}
.btn-ghost:hover{background:var(--brand);color:#fff}
.btn-light-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}
.btn-light-ghost:hover{background:#fff;color:var(--brand)}
.btn-block{width:100%}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.site-header.scrolled{box-shadow:0 4px 24px rgba(0,22,41,.08)}
.header-inner{display:flex;align-items:center;justify-content:space-between;
  height:100px;width:min(1180px,92vw);margin-inline:auto}
.header-logo{display:flex;align-items:center;gap:11px}
.brand-mark{position:relative;display:block;height:80px;aspect-ratio:271/300;flex:none}
.brand-mark .bm-draw,.brand-mark .bm-fill{position:absolute;inset:0;width:100%;height:100%}
.bm-draw path{fill:none;stroke:var(--brand);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:100;stroke-dashoffset:100;animation:bmDraw 1s ease forwards}
.bm-draw path:nth-child(1){animation-delay:.2s}
.bm-draw path:nth-child(2){animation-delay:.32s}
.bm-draw path:nth-child(3){animation-delay:.52s}
.bm-draw path:nth-child(4){animation-delay:.66s}
.bm-draw path:nth-child(5){animation-delay:.78s}
@keyframes bmDraw{to{stroke-dashoffset:0}}
.bm-draw{animation:bmOut .5s ease 1.8s forwards}
@keyframes bmOut{to{opacity:0}}
.bm-fill{opacity:0;animation:bmFill .7s ease 1.6s forwards}
@keyframes bmFill{to{opacity:1}}
.brand-word{height:47px;width:auto;opacity:0;animation:wordIn .6s ease 1.6s both}
@keyframes wordIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}

/* símbolo que SE FORMA, reutilizável nas seções (dispara ao rolar até ele) */
.draw-mark{position:relative;display:block;width:58px;height:64px;margin:0 0 20px}
.draw-mark .dm-draw,.draw-mark .dm-fill{position:absolute;inset:0;width:100%;height:100%}
.draw-mark .dm-draw path{fill:none;stroke:var(--on-dark);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:100;stroke-dashoffset:100}
.draw-mark .dm-fill{background:var(--on-dark);opacity:0;
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.draw-mark.in-view .dm-draw path{animation:bmDraw 1s ease forwards}
.draw-mark.in-view .dm-draw path:nth-child(1){animation-delay:.1s}
.draw-mark.in-view .dm-draw path:nth-child(2){animation-delay:.22s}
.draw-mark.in-view .dm-draw path:nth-child(3){animation-delay:.42s}
.draw-mark.in-view .dm-draw path:nth-child(4){animation-delay:.56s}
.draw-mark.in-view .dm-draw path:nth-child(5){animation-delay:.68s}
.draw-mark.in-view .dm-draw{animation:bmOut .5s ease 1.6s forwards}
.draw-mark.in-view .dm-fill{animation:bmFill .7s ease 1.45s forwards}
@media(max-width:560px){.draw-mark{width:48px;height:53px;margin-bottom:16px}}
.section-off .draw-mark .dm-draw path,.section-white .draw-mark .dm-draw path{stroke:var(--brand)}.section-off .draw-mark .dm-fill,.section-white .draw-mark .dm-fill{background:var(--brand)}
.header-nav{display:flex;gap:30px;align-items:center}
.header-nav a{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--brand);letter-spacing:.01em}
.header-nav a:hover{color:var(--brand-2)}
.header-actions{display:flex;gap:12px;align-items:center}
.header-phone{font-family:var(--font-display);font-weight:700;color:var(--brand);
  font-size:15px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.header-phone svg{width:16px;height:16px;fill:var(--brand-2)}
@media(max-width:900px){.header-nav{display:none}.header-phone span{display:none}.brand-mark{height:64px}.brand-word{height:38px}}

/* ---------- hero ---------- */
.hero{position:relative;color:#fff;min-height:90vh;display:flex;align-items:center;
  padding:120px 0 80px;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover}
.hero-bg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(110deg,rgba(0,13,24,.95) 0%,rgba(0,22,41,.9) 52%,rgba(0,30,55,.82) 100%)}
.hero-inner{position:relative;z-index:2;width:min(1180px,92vw);margin-inline:auto}
@media(max-width:600px){.hero-inner{width:100%;padding-inline:20px}}
.hero-grid{display:grid;grid-template-columns:1.05fr .82fr;gap:clamp(34px,5vw,66px);align-items:center}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:32px}}
.hero-card{position:relative;aspect-ratio:4/5;overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.14)}
.hero-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s ease}
.hero-card img.active{opacity:1}
.hero-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hero-card::after{content:'';position:absolute;inset:0;box-shadow:inset 0 -70px 90px rgba(0,16,30,.4);pointer-events:none}
.hero-card-tag{position:absolute;left:16px;bottom:16px;z-index:2;background:rgba(0,22,41,.72);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.16);color:#fff;font-family:var(--font-display);font-weight:600;font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;padding:8px 14px}
@media(max-width:900px){
  .hero-content{display:contents}
  .hero-content>*{order:1}
  .hero-card,.ba-block{order:2}
  .hero-content>.hero-actions{order:3}
  .hero-content>.hero-cue{order:4}
  .hero-grid{gap:0}
  .hero-card{width:100%;max-width:440px;margin:26px auto 0;aspect-ratio:3/4}
  .ba-block{margin-top:26px}
  .ba-block .hero-card{margin:0 auto}
}
.hero-eyebrow{color:#fff}
.hero h1{font-size:clamp(30px,4.4vw,48px);max-width:26ch;margin-top:6px;line-height:1.18}
.hero h1 em{font-style:normal;color:#fff;text-decoration:underline;text-decoration-color:var(--on-dark);
  text-decoration-thickness:4px;text-underline-offset:8px}
.hero-kicker{font-family:var(--font-display);font-weight:700;font-size:clamp(12px,1.15vw,14px);text-transform:uppercase;letter-spacing:.12em;color:var(--on-dark);margin:0 0 16px}
.hero-kicker::before{content:'';display:inline-block;width:24px;height:2px;vertical-align:middle;margin:0 10px 3px 0;background:var(--on-dark);border-radius:2px}
.hero-kicker strong{color:#fff;font-weight:800}
.hero-sub{font-size:clamp(17px,2.1vw,21px);max-width:52ch;color:#e2ebf4;margin-top:22px;text-wrap:pretty}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-cue{display:inline-flex;align-items:center;gap:9px;margin-top:38px;padding-top:22px;
  border-top:1px solid rgba(255,255,255,.22);color:#cfe0f1;font-family:var(--font-display);
  font-weight:600;font-size:14px;letter-spacing:.03em}
.hero-cue svg{width:20px;height:20px;fill:none;stroke:var(--on-dark);stroke-width:2;animation:bob 1.8s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}

/* ---------- stats band ---------- */
.stats{background:var(--brand);color:#fff;padding:58px 0}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}
.stat{padding:6px 28px}
.stat + .stat{border-left:1px solid rgba(255,255,255,.12)}
.stat b{display:block;font-family:var(--font-display);font-weight:800;font-size:clamp(40px,5vw,56px);line-height:1;color:#fff}
.stat b::after{content:'';display:block;width:34px;height:2px;background:var(--on-dark);opacity:.7;margin:14px auto 0;border-radius:2px}
.stat-lbl{display:block;font-size:14px;color:var(--on-dark);margin-top:14px;letter-spacing:.02em;max-width:26ch;margin-inline:auto}
@media(max-width:640px){.stats-grid{grid-template-columns:1fr;gap:6px}.stat+.stat{border-left:0;border-top:1px solid rgba(255,255,255,.12);padding-top:22px}}

/* ---------- onde atendemos (mapa Emerald Coast + pins) ---------- */
.areamap-sec{padding:64px 0}
.areamap-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:52px;align-items:center;max-width:1080px;margin:0 auto}
.areamap-head{text-align:left;max-width:none;margin:0}
.emap-frame{position:relative;width:100%;max-width:100%;margin:0}
.emerald-map{display:block;width:100%;height:auto}
.emerald-map path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .35s ease var(--dl,0s)}
.areamap-sec.in-view .emerald-map path{stroke-dashoffset:0}
.epin{position:absolute;width:0;height:0;z-index:2;opacity:0}
.areamap-sec.in-view .epin{animation:pinDrop .45s cubic-bezier(.2,.8,.3,1) calc(var(--d,0s) + .4s) both}
.epin i{position:absolute;left:0;top:0;transform:translate(-50%,-100%);transform-origin:50% 100%;width:26px;height:34px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2026%2034%27%3E%3Cdefs%3E%3ClinearGradient%20id%3D%27g%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%271%27%3E%3Cstop%20offset%3D%270%27%20stop-color%3D%27%239cc0e6%27/%3E%3Cstop%20offset%3D%271%27%20stop-color%3D%27%232f6797%27/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath%20d%3D%27M13%201C6.4%201%201%206.2%201%2012.6%201%2021%2013%2033%2013%2033%2013%2033%2025%2021%2025%2012.6%2025%206.2%2019.6%201%2013%201Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23dcebfb%27%20stroke-width%3D%271.1%27/%3E%3Ccircle%20cx%3D%2713%27%20cy%3D%2712.6%27%20r%3D%274.6%27%20fill%3D%27%23eaf3fc%27/%3E%3C/svg%3E") no-repeat center/contain;filter:drop-shadow(0 0 5px rgba(63,127,192,.65)) drop-shadow(0 3px 4px rgba(0,10,25,.55));transition:transform .18s}
.epin.hq i{width:32px;height:42px;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2026%2034%27%3E%3Cdefs%3E%3ClinearGradient%20id%3D%27g%27%20x1%3D%270%27%20y1%3D%270%27%20x2%3D%270%27%20y2%3D%271%27%3E%3Cstop%20offset%3D%270%27%20stop-color%3D%27%2346d98a%27/%3E%3Cstop%20offset%3D%271%27%20stop-color%3D%27%230f7d3a%27/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath%20d%3D%27M13%201C6.4%201%201%206.2%201%2012.6%201%2021%2013%2033%2013%2033%2013%2033%2025%2021%2025%2012.6%2025%206.2%2019.6%201%2013%201Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23d9ffe9%27%20stroke-width%3D%271.1%27/%3E%3Ccircle%20cx%3D%2713%27%20cy%3D%2712.6%27%20r%3D%274.6%27%20fill%3D%27%23eafff2%27/%3E%3C/svg%3E");filter:drop-shadow(0 0 7px rgba(21,158,76,.8)) drop-shadow(0 3px 5px rgba(0,10,25,.55))}
.epin em{position:absolute;left:0;top:8px;transform:translateX(-50%);white-space:nowrap;font-style:normal;font-family:var(--font-display);font-weight:700;font-size:12.5px;color:#eaf2fb;text-shadow:0 2px 8px #001629,0 0 4px #001629,0 0 4px #001629;opacity:0;transition:opacity .2s;pointer-events:none}
.epin.up em{top:auto;bottom:36px}.epin.dn em{top:34px}.epin.lft em{left:auto;right:0;transform:none;text-align:right}
.epin.lblon em{opacity:1}
.epin.hq em{color:#fff;font-size:13px;top:34px}
.epin:hover{z-index:5}
.epin:hover em{opacity:1}
.epin:hover i{transform:translate(-50%,-100%) scale(1.12)}
@keyframes pinIn{to{opacity:1}}
@keyframes pinDrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.epin em{display:none}.epin i{width:21px;height:27px}.epin.hq i{width:26px;height:34px}}

.area-chips{list-style:none;display:none;flex-wrap:wrap;justify-content:flex-start;gap:10px;margin:22px 0 0;padding:0}
.area-chips li{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--on-dark);border:1px solid rgba(130,169,203,.32);border-radius:999px;padding:8px 16px;background:rgba(130,169,203,.06)}
.area-chips li.hq{color:#eafff2;border-color:rgba(21,158,76,.55);background:rgba(21,158,76,.12);position:relative;padding-left:30px}
.area-chips li.hq::before{content:'';position:absolute;left:14px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 8px rgba(21,158,76,.9)}
@media(max-width:860px){.areamap-grid{grid-template-columns:1fr;gap:20px;max-width:600px}}
@media(max-width:600px){.area-chips{display:flex}.area-chips li{font-size:13px;padding:7px 13px}}


/* ---------- problema/risco ---------- */
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
@media(max-width:860px){.split{grid-template-columns:1fr;gap:34px}}
.risk-list{list-style:none;padding:0;margin:22px 0 0}
.risk-list li{position:relative;padding:12px 0 12px 34px;border-bottom:1px solid var(--line);font-size:16px}
.risk-list li::before{content:'';position:absolute;left:0;top:16px;width:16px;height:16px;background:var(--bad);
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.media-frame{position:relative}
.media-frame img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4}
.media-frame .tag{position:absolute;left:0;bottom:0;background:var(--brand);color:#fff;
  font-family:var(--font-display);font-weight:700;font-size:13px;letter-spacing:.08em;
  text-transform:uppercase;padding:11px 18px}

/* ---------- comparativo ---------- */
.compare{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:44px;align-items:stretch}
@media(max-width:760px){.compare{grid-template-columns:1fr}}
.compare-col{background:#fff;border:1px solid var(--line);padding:30px 26px;position:relative;overflow:hidden}
.compare-col h3{font-size:20px;margin-bottom:4px}
.compare-col .sub{font-size:13px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;
  font-family:var(--font-display);margin-bottom:18px;display:block}
.compare-col ul{list-style:none;padding:0;margin:0}
.compare-col li{position:relative;padding:11px 0 11px 32px;font-size:15px;border-bottom:1px solid var(--line)}
.compare-col li:last-child{border-bottom:0}
.compare-col li::before{position:absolute;left:0;top:10px;width:20px;height:20px;font-family:var(--font-display);
  font-weight:700;font-size:14px;text-align:center;line-height:20px}
.compare-col.bad{color:#5b6672}
.compare-col.bad .sub{color:var(--bad)}
.compare-col.bad li::before{content:'\00d7';background:rgba(192,57,43,.12);color:var(--bad)}
.compare-col.bad li .strike{position:relative}
/* a linha de risco anima ABAIXO da frase, nunca por cima (senão a pessoa não lê) */
.compare-col.bad li.mark .strike::after{content:'';position:absolute;left:0;right:100%;bottom:-3px;top:auto;height:2px;
  background:var(--bad);transition:right .5s ease}
.compare-col.bad li.mark.struck .strike::after{right:0}
.compare-col.good{border:2px solid var(--green);box-shadow:0 18px 44px rgba(21,158,76,.16)}
.compare-col.good h3{color:var(--brand)}
.compare-col.good .sub{color:var(--green)}
.compare-col.good li::before{content:'\2713';background:rgba(21,158,76,.14);color:var(--green)}
.compare-col.good::after{content:'';position:absolute;top:0;left:-140%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(21,158,76,.14),transparent);
  transform:skewX(-18deg);animation:sheen 5s ease-in-out infinite}
.compare-seal{position:absolute;top:0;right:0;background:var(--green);color:#fff;font-family:var(--font-display);
  font-weight:700;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:7px 14px}

/* ---------- galeria mosaico (estilo Requinte, 1ª dobra) ---------- */
.mosaic-sec{background:var(--off);padding:64px 0 76px}
.mosaic-head{text-align:center;max-width:760px;margin:0 auto 8px}
.mosaic-head .eyebrow{justify-content:center}
.mosaic-head .section-title{margin-inline:auto}
.mosaic-head .section-title::after{margin-inline:auto}
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:230px;grid-auto-flow:dense;gap:12px;margin-top:40px}
.mo-cell{position:relative;overflow:hidden;background:var(--brand);transition:box-shadow .3s}
.mo-cell:hover{box-shadow:0 0 0 2px var(--brand-2),0 16px 40px rgba(0,22,41,.3);z-index:5}
.mo-cell.tall{grid-row:span 2}
.mo-cell.wide{grid-column:span 2}
.mo-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.6s ease,visibility 1.6s ease;z-index:1}
.mo-slide.is-active{opacity:1;visibility:visible;z-index:2}
.mo-slide img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.05);transition:transform 4.6s ease-out}
.mo-slide.is-active img{transform:scale(1)}
.mo-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 44%,rgba(0,16,30,.86) 100%)}
.mo-cap{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;z-index:3;color:#fff;font-family:var(--font-display);
  font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;line-height:1.35;text-shadow:0 2px 10px rgba(0,16,30,.6)}
@media(max-width:820px){.mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}}
@media(max-width:520px){.mosaic{grid-auto-rows:148px;gap:8px}}

/* ---------- serviços ---------- */
.svc-featured{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
@media(max-width:860px){.svc-featured{grid-template-columns:1fr}}
/* ---------- destaque: layout/projeto (um presente da Tee-X) ---------- */
.svc-highlight{display:flex;gap:26px;align-items:center;margin-top:24px;padding:30px 34px;border-radius:6px;
  background:linear-gradient(120deg,var(--brand) 0%,#013a68 100%);color:#fff;position:relative;overflow:hidden;
  box-shadow:0 24px 60px rgba(0,22,41,.28)}
.svc-highlight::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 140% at 100% 0%,rgba(130,169,203,.20),transparent 55%)}
.svc-highlight-ico{flex:none;width:66px;height:66px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:rgba(130,169,203,.16);color:var(--on-dark);position:relative;z-index:1}
.svc-highlight-ico svg{width:32px;height:32px}
.svc-highlight-body{position:relative;z-index:1}
.svc-highlight-badge{display:inline-block;font-family:var(--font-display);font-weight:700;font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;color:#fff;background:var(--green);padding:5px 13px;border-radius:999px;margin-bottom:12px}
.svc-highlight h3{font-size:clamp(20px,2.4vw,27px);color:#fff;margin:0 0 8px}
.svc-highlight p{color:#dbe6f2;margin:0;font-size:15.5px;line-height:1.6;max-width:76ch}
@media(max-width:640px){.svc-highlight{flex-direction:column;text-align:center;align-items:center;padding:26px 22px}
  .svc-highlight p{margin-inline:auto}}

/* ---------- antes e depois (arrastar) no hero ---------- */
.ba-block{position:relative}
.ba-frame{position:relative}
/* as abas ficam SOBRE a foto (o comando tem que estar onde a pessoa está olhando) */
.ba-tabs{position:absolute;z-index:7;top:14px;left:50%;transform:translateX(-50%);display:flex;gap:6px;
  padding:5px;background:rgba(0,22,41,.62);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.20)}
.ba-tabs:has(.ba-tab:only-child){display:none}      /* só aparece quando há mais de um ambiente */
.ba-tab{font-family:var(--font-display);font-weight:700;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;
  color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.34);white-space:nowrap;
  padding:9px 18px;cursor:pointer;border-radius:var(--radius-btn);box-shadow:0 2px 10px rgba(0,10,20,.3);transition:background .2s,color .2s,border-color .2s}
.ba-tab:hover{background:rgba(255,255,255,.32);color:#fff}
.ba-tab.is-on{background:#fff;color:var(--brand);border-color:#fff}
@media(max-width:420px){.ba-tab{padding:8px 12px;font-size:11.5px;letter-spacing:.05em}}
.ba-stage{position:relative;overflow:hidden;display:none;touch-action:pan-y;--pos:50%}
.ba-stage.is-on{display:block}
.ba-stage .ba-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
  opacity:1;user-select:none;-webkit-user-drag:none}   /* vence o .hero-card img{opacity:0} do slideshow antigo */
.ba-stage .ba-before{clip-path:inset(0 calc(100% - var(--pos)) 0 0)}
/* rótulos embaixo, pra não brigar com as abas que agora ficam no topo da foto */
.ba-lbl{position:absolute;bottom:14px;z-index:3;font-family:var(--font-display);font-weight:700;font-size:11.5px;
  letter-spacing:.16em;text-transform:uppercase;color:#fff;padding:7px 14px;background:rgba(0,22,41,.72);
  backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18)}
.ba-lbl-before{left:14px}
.ba-lbl-after{right:14px;background:rgba(21,158,76,.85);border-color:rgba(255,255,255,.28)}
.ba-handle{position:absolute;top:0;bottom:0;left:var(--pos);width:3px;z-index:4;background:#fff;
  box-shadow:0 0 18px rgba(0,22,41,.55);transform:translateX(-50%);pointer-events:none;
  display:flex;align-items:center;justify-content:center}
.ba-handle svg{width:26px;height:26px;flex:none;fill:none;stroke:var(--brand);stroke-width:2.4;stroke-linecap:round;
  stroke-linejoin:round;background:#fff;border-radius:50%;padding:6px;box-shadow:0 6px 18px rgba(0,22,41,.4)}
.ba-range{position:absolute;inset:0;z-index:5;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;appearance:none;background:none}
.ba-range::-webkit-slider-thumb{appearance:none;width:44px;height:100%}
.ba-range:focus-visible{outline:none}
.ba-range:focus-visible ~ .ba-handle svg{outline:3px solid var(--on-dark);outline-offset:3px}
/* a dica vem ANTES da foto: quem lê depois de arrastar já não precisava dela */
.ba-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 12px;
  font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.04em;color:#cfe0f1}
.ba-hint svg{width:17px;height:17px;flex:none;fill:none;stroke:var(--on-dark);stroke-width:2.4;
  stroke-linecap:round;stroke-linejoin:round;animation:baNudge 1.9s ease-in-out infinite}
@keyframes baNudge{0%,100%{transform:translateX(-2px)}50%{transform:translateX(2px)}}
.svc-feat{position:relative;overflow:hidden;min-height:300px;display:flex;align-items:flex-end;color:#fff}
.svc-feat>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.svc-feat:hover>img{transform:scale(1.06)}
.svc-feat::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,16,30,.92) 14%,rgba(0,16,30,.12) 76%)}
.svc-feat .in{position:relative;z-index:2;padding:26px 24px}
.svc-feat h3{color:#fff;font-size:23px;margin-bottom:6px}
.svc-feat p{color:#dbe6f0;font-size:14px;margin:0;line-height:1.55}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px}
@media(max-width:860px){.svc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.svc-grid{grid-template-columns:1fr}}
.svc{background:var(--white);border:1px solid var(--line);padding:30px 24px 28px;
  transition:transform .25s,box-shadow .25s,background .25s;position:relative;overflow:hidden}
.svc::before{content:'';position:absolute;top:0;left:0;width:0;height:3px;background:var(--brand-2);transition:width .35s}
.svc::after{content:'';position:absolute;right:-14px;bottom:-18px;width:104px;height:104px;background:var(--brand);
  opacity:.05;transition:opacity .25s,background .25s;
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.svc:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(0,22,41,.16);background:var(--brand);border-color:var(--brand)}
.svc:hover::before{width:100%}
.svc:hover::after{opacity:.16;background:#fff}
.svc:hover h3,.svc:hover p{color:#fff}
.svc:hover .svc-ico{background:var(--on-dark)}
.svc-ico{width:46px;height:46px;background:var(--brand-2);margin-bottom:18px;position:relative;z-index:1;transition:background .25s;
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.svc h3{font-size:20px;margin-bottom:8px;color:var(--brand);position:relative;z-index:1;transition:color .25s}
.svc p{font-size:15px;color:#43505b;margin:0;position:relative;z-index:1;transition:color .25s}

/* ---------- passo a passo (timeline) ---------- */
.section-spotlight{background:linear-gradient(160deg,#00213d 0%,var(--ink) 100%);color:#fff;overflow:hidden}
.section-spotlight .eyebrow{color:var(--on-dark)}
.section-spotlight .section-title{color:#fff}
.timeline{position:relative;margin-top:52px;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.timeline::before{content:'';position:absolute;top:26px;left:6%;right:6%;height:3px;background:rgba(255,255,255,.14)}
.timeline::after{content:'';position:absolute;top:26px;left:6%;width:0;height:3px;background:var(--on-dark);
  transition:width 1.4s ease;box-shadow:0 0 12px var(--on-dark)}
.timeline.fill::after{width:88%}
.tl-step{position:relative;text-align:center;opacity:0;transform:translateY(16px);transition:opacity .5s,transform .5s}
.tl-step.in{opacity:1;transform:none}
.tl-node{width:54px;height:54px;border-radius:0;background:var(--brand);border:3px solid var(--on-dark);
  color:#fff;font-family:var(--font-display);font-weight:700;font-size:20px;display:flex;align-items:center;
  justify-content:center;margin:0 auto 16px;position:relative;z-index:2;transition:box-shadow .4s,background .4s}
.tl-step.in .tl-node{background:var(--brand-2);box-shadow:0 0 0 6px rgba(207,224,241,.18),0 0 18px rgba(130,169,203,.6)}
.tl-step h3{font-size:16px;color:#fff;margin-bottom:6px}
.tl-step p{font-size:13px;color:#b9c8d6;margin:0}
@media(max-width:760px){.timeline{grid-template-columns:1fr;gap:24px}
  .timeline::before,.timeline::after{left:26px;top:0;bottom:0;right:auto;width:3px;height:auto}
  .timeline.fill::after{height:90%;width:3px}
  .tl-step{display:grid;grid-template-columns:54px 1fr;gap:4px 16px;text-align:left;align-items:start}
  .tl-node{margin:0;grid-column:1;grid-row:1/span 2;align-self:start}
  .tl-step h3{grid-column:2;grid-row:1;align-self:center;min-height:54px;display:flex;align-items:center}
  .tl-step p{grid-column:2;grid-row:2}}

/* ---------- galeria por categoria ---------- */
.gal-cat{margin-top:40px}
.gal-cat h3{font-family:var(--font-display);font-size:15px;letter-spacing:.06em;text-transform:uppercase;
  color:var(--brand-2);margin:0 0 14px;display:flex;align-items:center;gap:10px}
.gal-cat h3::before{content:'';width:16px;height:16px;background:var(--brand-2);
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.gal-row{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;padding:2px 2px 12px;cursor:grab;
  scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain}
.gal-row::-webkit-scrollbar{display:none}
.gal-row.dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.gal-row.dragging img{pointer-events:none}
.gal-row figure{margin:0;position:relative;overflow:hidden;background:var(--brand);
  aspect-ratio:4/3;flex:0 0 clamp(260px,30vw,360px);scroll-snap-align:start;border-radius:3px}
.gal-row img{width:100%;height:100%;object-fit:cover;transition:transform .6s;user-select:none;-webkit-user-drag:none}
.gal-row figure:hover img{transform:scale(1.06)}
@media(max-width:640px){.gal-row figure{flex:0 0 82%}}
.gal-wrap{position:relative}
.gal-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:46px;height:46px;
  border:0;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.94);color:var(--brand);box-shadow:0 6px 20px rgba(0,22,41,.20);
  transition:background .2s,transform .15s,opacity .2s}
.gal-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.07)}
.gal-arrow:active{transform:translateY(-50%) scale(.96)}
.gal-arrow svg{width:22px;height:22px;display:block}
.gal-prev{left:10px}
.gal-next{right:10px}
@media(max-width:640px){.gal-arrow{width:40px;height:40px}.gal-arrow svg{width:19px;height:19px}}

/* ---------- diferenciais ---------- */
.diff-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;margin-top:40px}
@media(max-width:820px){.diff-grid{grid-template-columns:1fr}}
.diff{display:flex;gap:18px;align-items:flex-start}
.diff-n{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.1em;
  color:var(--on-dark);padding-top:5px;min-width:34px}
.diff h3{font-size:20px;color:#fff;margin-bottom:6px}
.diff p{font-size:15px;color:#c4d0dc;margin:0}

/* ---------- quem somos ---------- */
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}
@media(max-width:860px){.about-grid{grid-template-columns:1fr;gap:30px}}
.about-media img{width:100%;aspect-ratio:4/3;object-fit:cover}
.about-media video{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--ink)}
.about-badges{display:flex;flex-wrap:wrap;gap:24px;margin-top:26px}
.about-badges div{position:relative;padding-left:26px}
.about-badges div::before{content:'';position:absolute;left:0;top:4px;width:16px;height:16px;background:var(--on-dark);
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.about-badges div b{font-family:var(--font-display);font-size:24px;color:var(--on-dark);display:block;line-height:1}
.about-badges div span{font-size:13px;color:#b9c8d6}

/* ---------- FAQ ---------- */
.faq-list{max-width:820px;margin:40px auto 0}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;text-align:left;background:none;border:0;cursor:pointer;
  font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--brand);
  padding:22px 44px 22px 0;position:relative}
.faq-q::after{content:'+';position:absolute;right:6px;top:50%;transform:translateY(-50%);
  font-size:26px;color:var(--brand-2);transition:transform .3s}
.faq-item.open .faq-q::after{content:'\2013'}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-a p{padding:0 0 22px;font-size:16px;color:#43505b;margin:0}

/* ---------- formulário ---------- */
.form-section{background:var(--brand);color:#fff;padding:84px 0}
.form-wrap{max-width:600px;margin:0 auto}
.form-intro{text-align:center;margin-bottom:34px}
.form-intro .draw-mark{margin:0 auto 18px}
.form-intro .eyebrow{margin-bottom:12px}
.form-intro h2{font-size:clamp(25px,3.4vw,38px);color:#fff;margin:0 auto 14px;line-height:1.12;text-wrap:balance}
.form-intro h2 em{font-style:normal;color:var(--on-dark);white-space:nowrap}
.form-intro .lead{color:#c4d0dc;margin:0 auto;max-width:42ch;text-wrap:balance}
/* stepper numerado (organização do Romualdo) */
.steps-indicator{display:flex;align-items:center;justify-content:center;max-width:420px;margin:0 auto 22px}
.step-item{display:flex;align-items:center;gap:10px}
.step-circle{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:14px;background:rgba(255,255,255,.14);color:var(--on-dark);transition:background .3s,color .3s;flex:none}
.step-circle.active{background:var(--brand-2);color:#fff}
.step-circle.complete{background:var(--green);color:#fff}
.step-label{font-family:var(--font-display);font-size:13.5px;font-weight:600;color:var(--on-dark);white-space:nowrap}
.step-item.active .step-label,.step-item.complete .step-label{color:#fff}
.step-connector{flex:1 1 auto;max-width:120px;height:2px;background:rgba(255,255,255,.18);margin:0 14px;position:relative;overflow:hidden;border-radius:2px}
.step-connector-fill{position:absolute;inset:0 auto 0 0;width:0;background:var(--brand-2);transition:width .45s ease}
/* selos de confiança */
.trust-badges{display:flex;flex-wrap:wrap;gap:14px 22px;justify-content:center;margin-top:22px}
.trust-item{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:13px;font-weight:500;color:var(--on-dark)}
.trust-item svg{width:17px;height:17px;color:#82a9cb}
@media(max-width:460px){.step-label{display:none}}
.form-card{background:#fff;color:var(--ink);padding:34px 30px;box-shadow:0 20px 50px rgba(0,10,20,.3)}
.form-card h3{font-size:22px;color:var(--brand);margin-bottom:6px}
.form-card .step-sub{font-size:14px;color:#6a7580;margin-bottom:22px}
.field{margin-bottom:16px}
.field label{display:block;font-family:var(--font-display);font-weight:600;font-size:13px;
  color:var(--brand);margin-bottom:6px;letter-spacing:.02em}
.field input,.field select{width:100%;padding:14px 15px;border:1.5px solid var(--line);border-radius:0;
  font-family:var(--font-text);font-size:16px;color:var(--ink);background:#fff;transition:border-color .2s}
.field input:focus,.field select:focus{outline:0;border-color:var(--brand-2)}
.field .err{display:none;color:#b5341f;font-size:13px;margin-top:5px}
.field.invalid .err{display:block}
.field.invalid input,.field.invalid select{border-color:#b5341f}
.form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.form-actions .btn{flex:1;min-width:130px;white-space:normal}
.form-success{display:none;text-align:center;padding:20px 6px}
.form-success.show{display:block}
.form-success .ico{width:58px;height:58px;background:var(--green);margin:0 auto 16px;
  -webkit-mask:var(--mark-full) center/contain no-repeat;mask:var(--mark-full) center/contain no-repeat}
.form-success h3{font-size:24px}
.form-note{font-size:12px;color:#9aa4ad;text-align:center;margin-top:16px}

/* ---------- footer ---------- */
.site-footer{background:var(--ink);color:#b9c8d6;padding:56px 0 30px;font-size:14px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr;gap:28px}}
.footer-logo img{height:46px;margin-bottom:16px}
.site-footer h4{font-family:var(--font-display);color:#fff;font-size:14px;letter-spacing:.08em;
  text-transform:uppercase;margin:0 0 14px}
.site-footer a{color:#b9c8d6}.site-footer a:hover{color:var(--on-dark)}
.footer-contact div{margin-bottom:8px;display:flex;gap:9px;align-items:flex-start}
.footer-contact svg{width:16px;height:16px;fill:var(--on-dark);flex:none;margin-top:3px}
.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);
  display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;font-size:12px;color:#7a8a99}

/* ---------- barra fixa de ligação (sobe no scroll) ---------- */
.mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:80;display:flex;justify-content:center;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:rgba(0,22,41,.92);
  -webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.1);
  transform:translateY(120%);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.mobile-cta.is-visible{transform:translateY(0)}
.mobile-cta .btn{width:100%;max-width:560px}
.mobile-cta .btn-green{animation:none}
@media(max-width:760px){.hero{min-height:auto}}

/* ---------- popup ---------- */
.popup-overlay{position:fixed;inset:0;z-index:100;background:rgba(0,14,26,.72);
  display:none;align-items:center;justify-content:center;padding:24px}
.popup-overlay.show{display:flex}
.popup-card{background:#fff;color:var(--ink);width:min(440px,100%);padding:32px 28px;position:relative;
  max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;overscroll-behavior:contain;
  box-shadow:0 30px 70px rgba(0,0,0,.4)}
.popup-close{position:absolute;right:14px;top:10px;background:none;border:0;font-size:30px;
  line-height:1;color:#9aa4ad;cursor:pointer}
.popup-card h3{font-size:22px;color:var(--brand);margin-bottom:6px;padding-right:20px}
.popup-card h3 em{font-style:normal;color:var(--green)}
.popup-card .step-sub{font-size:14px;color:#6a7580;margin-bottom:20px}

/* ---------- reveal + cascata ---------- */
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
[data-reveal].in{opacity:1;transform:none}
[data-stagger]>*{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
[data-stagger].in>*{opacity:1;transform:none}
[data-stagger].in>*:nth-child(1){transition-delay:.05s}
[data-stagger].in>*:nth-child(2){transition-delay:.12s}
[data-stagger].in>*:nth-child(3){transition-delay:.19s}
[data-stagger].in>*:nth-child(4){transition-delay:.26s}
[data-stagger].in>*:nth-child(5){transition-delay:.33s}
[data-stagger].in>*:nth-child(6){transition-delay:.40s}
[data-stagger].in>*:nth-child(7){transition-delay:.47s}
[data-stagger].in>*:nth-child(8){transition-delay:.54s}
[data-stagger].in>*:nth-child(9){transition-delay:.61s}

/* divisória de marca (do kit) */
.mark-divider{opacity:.4}
.section-dark .mark-divider,.form-section .mark-divider,.section-spotlight .mark-divider{background:var(--on-dark)}

/* ============================================================
   EFEITOS / MOVIMENTO (tirar a monotonia)
   ============================================================ */
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* barra de progresso do scroll */
#progress{position:fixed;top:0;left:0;height:3px;width:0;z-index:1200;
  background:linear-gradient(90deg,var(--brand),var(--brand-2),var(--brand-light))}

/* hero: leve zoom-out contínuo (Ken Burns) na foto de fundo */
.hero-bg img{animation:kenburns 24s ease-out both}
@keyframes kenburns{from{transform:scale(1.14)}to{transform:scale(1)}}

/* régua sob os títulos CRESCE ao entrar em cena */
[data-reveal].in .section-title::after{animation:lineGrow .85s cubic-bezier(.2,.7,.2,1) .15s both}
@keyframes lineGrow{from{width:0}to{width:42px}}

/* textura do símbolo nas dobras escuras ganha respiração */
.mark-texture::after{animation:texFloat 13s ease-in-out infinite}
@keyframes texFloat{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-10px,-8px) scale(1.04)}}

/* card de foto do hero: leve respiração na moldura */
.hero-card{animation:cardRise 1s cubic-bezier(.2,.7,.2,1) .3s both}
@keyframes cardRise{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}



/* ---------- port de ajustes (config) 2026-07-28 ---------- */
[data-reveal]{transform:translateY(38px) scale(.98);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1)}
[data-reveal].in{transform:none}
.svc-card,.svc{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s}
.svc-card:hover,.svc:hover{transform:translateY(-6px)}
.gal-row figure{transition:box-shadow .3s}
.gal-row figure:hover{box-shadow:0 18px 40px rgba(0,22,41,.28);z-index:2}
.stat b{display:block}
.stats.in-view .stat b{animation:statPop .7s cubic-bezier(.2,1.4,.4,1) both}
.stats.in-view .stat:nth-child(2) b{animation-delay:.1s}
.stats.in-view .stat:nth-child(3) b{animation-delay:.2s}
@keyframes statPop{from{opacity:0;transform:translateY(14px) scale(.8)}to{opacity:1;transform:none}}
.popup-card h3 em{font-style:normal;color:var(--brand-2)}


/* ---------- PULSAR em todos os botões (além do brilho/sheen) ---------- */
@keyframes btnPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}
.btn{animation:btnPulse 2.6s ease-in-out infinite}
.btn-green{animation:btnPulse 2.6s ease-in-out infinite,ctaPulse 2.4s ease-in-out infinite}
.btn:hover{animation:none;transform:none}
.btn-green:hover{animation:none}
.mobile-cta .btn{animation:none}          /* barra fixa não escala */
.ba-tab{animation:btnPulse 2.6s ease-in-out infinite}
.ba-tab.is-on,.ba-tab:hover{animation:none}
@media(prefers-reduced-motion:reduce){.btn,.ba-tab{animation:none}}
