
/* ═══════════════════════════════════════════════════════════════
   PALETA  ·  amostrada dos pixels do logo do cliente
   vermelho do carro #D4372F · azul do oval #64B2E2 · preto #0B0A06
   --bg amostrado da parede de fundo da foto do hero (x60..520 / y120..560)
   ═══════════════════════════════════════════════════════════════ */
:root{
  --bg:#172737;          /* parede azul-noite da foto do hero */
  --bg-fundo:#101C28;    /* mesma parede, um degrau mais funda */
  --asfalto:#0B1119;     /* palco do caminho do ar */
  --preto:#0B0A06;       /* preto do logo */
  --azul:#64B2E2;        /* azul do oval do logo */
  --azul-fundo:#2E7AAE;
  --vermelho:#D4372F;    /* vermelho do carro do logo */
  --vermelho-forte:#EE4438;
  --concreto:#E9E6DF;    /* claro quente, nao cinza frio */
  --marfim:#F4F2EC;
  --texto:#D9E2EA;
  --texto-fraco:#8FA3B4;
  --display:'Archivo',sans-serif;
  --corpo:'Sora',sans-serif;
  --mono:'IBM Plex Mono',monospace;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--texto);
  font-family:var(--corpo);font-weight:300;font-size:17px;line-height:1.62;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{display:block;max-width:100%}
a{color:inherit}

h1,h2,h3,.display{
  font-family:var(--display);font-weight:800;
  font-variation-settings:'wdth' 84,'wght' 800;
  line-height:.98;letter-spacing:-.028em;text-transform:none;
}
.rot{
  font-family:var(--mono);font-size:11.5px;letter-spacing:.22em;
  text-transform:uppercase;color:var(--azul);font-weight:500;
}
.env{width:min(1240px,100% - 48px);margin-inline:auto}
.esconde{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ── grao, para nada ficar chapado ─────────────────────────── */
.grao{
  position:fixed;inset:0;z-index:2;pointer-events:none;opacity:.038;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ── navegacao ─────────────────────────────────────────────── */
.pula{position:absolute;left:-999px;top:0;z-index:99}
.pula:focus{left:12px;top:12px;background:var(--vermelho);color:#fff;padding:10px 16px;border-radius:4px}

#nav{
  position:fixed;top:0;left:0;right:0;z-index:40;
  padding:18px 0;transition:padding .35s ease,background .35s ease,box-shadow .35s ease;
}
.nav-env{width:min(1280px,100%);margin-inline:auto;padding-inline:20px;display:flex;align-items:center;gap:32px}
#nav::before{
  content:'';position:absolute;inset:0;z-index:-1;opacity:0;
  background:rgba(11,17,25,.82);backdrop-filter:blur(18px) saturate(1.3);
  -webkit-backdrop-filter:blur(18px) saturate(1.3);
  border-bottom:1px solid rgba(100,178,226,.16);
  transition:opacity .35s ease;
}
#nav.solido::before{opacity:1}
#nav.solido{padding:11px 0}
#nav .marca{display:flex;align-items:center;gap:12px;text-decoration:none;flex:0 0 auto}
#nav .marca img{height:54px;width:auto;transition:height .35s ease}
#nav.solido .marca img{height:40px}
#nav .links{display:flex;gap:28px;margin-left:auto;align-items:center}
#nav .links a{
  font-size:14px;text-decoration:none;color:var(--texto);opacity:.82;
  letter-spacing:.005em;position:relative;padding:4px 0;transition:opacity .25s;
}
#nav .links .bt{padding:11px 18px;border-radius:3px}
#nav .links a::after{
  content:'';position:absolute;left:0;bottom:0;height:1px;width:0;
  background:var(--azul);transition:width .3s cubic-bezier(.16,1,.3,1);
}
#nav .links a:hover{opacity:1}
#nav .links a:hover::after{width:100%}

.bt{
  display:inline-flex;align-items:center;gap:10px;text-decoration:none;
  font-family:var(--display);font-variation-settings:'wdth' 92,'wght' 700;
  font-size:15px;letter-spacing:-.01em;line-height:1;
  padding:15px 26px;border-radius:3px;border:0;cursor:pointer;
  background:var(--vermelho);color:#fff;
  box-shadow:0 0 0 rgba(212,55,47,0);
  transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s,box-shadow .3s;
}
.bt:hover{transform:translateY(-2px) scale(1.02);background:var(--vermelho-forte);box-shadow:0 14px 34px -12px rgba(212,55,47,.75)}
.bt svg{width:17px;height:17px;flex:0 0 auto}
.bt.pequeno{padding:11px 18px;font-size:13.5px}
/* secundario: subordinado de verdade, nunca do mesmo peso */
.bt2{
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  font-size:14px;color:var(--texto);opacity:.72;padding:6px 0;
  border-bottom:1px solid rgba(217,226,234,.35);transition:opacity .25s,border-color .25s,gap .25s;
}
.bt2:hover{opacity:1;border-color:var(--azul);gap:13px}

.menu-bt{display:none;margin-left:auto;background:none;border:0;color:var(--texto);cursor:pointer;padding:8px}
.menu-bt svg{width:26px;height:26px}

/* ── HERO ──────────────────────────────────────────────────── */
.hero{
  position:relative;min-height:100svh;display:flex;align-items:center;
  background:var(--bg);overflow:hidden;isolation:isolate;
}
.hero-img{
  position:absolute;top:0;right:0;bottom:0;left:38%;z-index:0;
  -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.4) 16%,#000 42%);
  mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.4) 16%,#000 42%);
  will-change:transform;
}
.hero-img img,.hero-img video{width:100%;height:100%;object-fit:cover;object-position:70% 58%;display:block}
/* legibilidade por gradiente, na cor de fundo, nunca caixa solida */
.hero-img::after{
  content:'';position:absolute;inset:0;
  background:
    linear-gradient(to right,var(--bg) 0%,rgba(23,39,55,.72) 22%,rgba(23,39,55,0) 58%),
    linear-gradient(to top,rgba(11,17,25,.55) 0%,rgba(11,17,25,0) 38%);
}
.hero-txt{position:relative;z-index:1;width:100%;padding:132px 0 92px}
.hero-col{max-width:46vw}
.hero h1{
  font-size:clamp(38px,5.4vw,78px);
  font-variation-settings:'wdth' 82,'wght' 850;
  letter-spacing:-.034em;line-height:1.0;color:#fff;
  text-shadow:0 2px 40px rgba(11,17,25,.5);
}
.hero h1 .l{display:block}
.hero h1 em{font-style:normal;color:var(--vermelho-forte)}
.hero .sub{
  margin-top:26px;max-width:39ch;font-size:clamp(15.5px,1.28vw,18.5px);
  line-height:1.58;color:#C9D6E2;
}
.hero .acoes{display:flex;align-items:center;gap:30px;margin-top:40px;flex-wrap:wrap}
.hero .servicos{
  display:flex;flex-wrap:wrap;gap:9px 22px;margin-top:52px;
  font-family:var(--mono);font-size:11.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--azul);opacity:.85;
}
.hero .servicos span{position:relative}
.hero .servicos span+span::before{content:'';position:absolute;left:-12px;top:50%;width:3px;height:3px;border-radius:50%;background:currentColor}
.rolar{
  position:absolute;left:50%;bottom:26px;z-index:1;transform:translateX(-50%);display:flex;align-items:center;gap:10px;
  width:min(1280px,100%);padding-inline:20px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--texto-fraco);
}
.rolar i{display:block;width:34px;height:1px;background:linear-gradient(to right,var(--azul),transparent);animation:puxa 2.4s cubic-bezier(.6,0,.3,1) infinite}
@keyframes puxa{0%{transform:scaleX(0);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}51%{transform-origin:right}100%{transform:scaleX(0);transform-origin:right}}

/* ── ELEMENTO UNICO · a regua de shift light ───────────────── */
#shift{
  position:fixed;left:18px;top:50%;transform:translateY(-50%);z-index:30;
  display:flex;flex-direction:column;gap:9px;opacity:0;pointer-events:none;
  transition:opacity .5s ease;
}
#shift.on{opacity:1;pointer-events:auto}
#shift a{display:flex;align-items:center;gap:9px;text-decoration:none;padding:2px 0}
#shift .led{
  width:22px;height:5px;border-radius:1px;flex:0 0 auto;
  background:rgba(255,255,255,.13);transition:background .45s ease,box-shadow .45s ease,width .35s ease;
}
#shift a.aceso .led{width:30px}
#shift a[data-t="a"].aceso .led{background:var(--azul);box-shadow:0 0 12px rgba(100,178,226,.85)}
#shift a[data-t="v"].aceso .led{background:var(--vermelho-forte);box-shadow:0 0 14px rgba(238,68,56,.9)}
/* o rotulo so aparece no hover: a regua nunca invade a coluna de texto */
#shift .nome{
  font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;opacity:0;transform:translateX(-6px);
  background:rgba(11,17,25,.9);padding:5px 9px;border-radius:2px;
  transition:opacity .3s,transform .3s;white-space:nowrap;
}
#shift a:hover .nome{opacity:1;transform:none}
#shift a.atual .led{height:6px}
body.claro #shift .led{background:rgba(11,17,25,.16)}
body.vermelho #shift .led{background:rgba(255,255,255,.28)}
body.vermelho #shift a.aceso .led{background:#fff;box-shadow:0 0 12px rgba(255,255,255,.7)}

/* ── revelacoes ────────────────────────────────────────────── */
.rev{opacity:0;transform:translateY(26px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}
.rev.vis{opacity:1;transform:none}
.rev-e{opacity:0;transform:scale(.965);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.rev-e.vis{opacity:1;transform:none}

/* ── 01 · DOR, coluna sticky ───────────────────────────────── */
#dor{background:var(--bg-fundo);padding:132px 0 40px;position:relative}
#dor::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,rgba(100,178,226,.35),transparent)}
.dor-grade{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);gap:78px;align-items:start}
.dor-fix{position:sticky;top:118px}
.dor-fix h2{font-size:clamp(30px,3.35vw,50px);color:#fff;font-variation-settings:'wdth' 86,'wght' 800;margin-top:20px}
.dor-fix p{margin-top:22px;max-width:36ch;color:#A9BCCC;font-size:16.5px}
.dor-fix figure{margin-top:40px;position:relative;overflow:hidden;border-radius:3px}
.dor-fix figure img{width:100%;height:290px;object-fit:cover;filter:saturate(.82) contrast(1.06)}
.dor-fix figure::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(16,28,40,.92),rgba(16,28,40,.1) 55%),rgba(23,39,55,.3);mix-blend-mode:multiply}
.dor-lista{display:flex;flex-direction:column}
.dor-item{
  min-height:29vh;display:flex;align-items:center;
  border-top:1px solid rgba(217,226,234,.12);padding:34px 0;
}
.dor-item:last-child{border-bottom:1px solid rgba(217,226,234,.12)}
.dor-item .n{
  font-family:var(--mono);font-size:12px;color:var(--vermelho-forte);
  letter-spacing:.14em;flex:0 0 58px;
}
.dor-item p{font-size:clamp(19px,1.7vw,26px);line-height:1.42;color:var(--marfim);font-weight:300}

/* ── 02 · MOMENTO ASSINATURA · o caminho do ar ─────────────── */
#ar{background:var(--asfalto);position:relative}
#ar .cab{padding:118px 0 0;max-width:820px}
#ar .cab h2{font-size:clamp(31px,3.6vw,56px);color:#fff;margin-top:20px;font-variation-settings:'wdth' 84,'wght' 800}
#ar .cab p{margin-top:22px;max-width:56ch;color:#93A7B8;font-size:17px}
#ar .cab .corpo{margin-top:26px;max-width:62ch;color:#7E93A5;font-size:15.5px}

.ar-trilho{position:relative;height:560vh}
.ar-palco{
  position:sticky;top:0;height:100svh;overflow:hidden;
  display:flex;flex-direction:column;justify-content:center;gap:30px;padding-top:64px;
}
.ar-palco::before{
  content:'';position:absolute;left:50%;top:46%;width:120vw;height:64vh;transform:translate(-50%,-50%);
  background:radial-gradient(ellipse at center,rgba(46,122,174,.26),transparent 66%);pointer-events:none;
}
/* canvas 3D nativo: o fundo continua pertencendo à própria seção */
.ar-desenho,
.jetta-canvas{background:transparent !important}

.ar-desenho{position:relative;width:100%;height:100vh;min-height:380px}
.jetta-canvas{
  position:absolute;inset:0;z-index:1;width:100%;height:100%;
  display:block;border:0;box-shadow:none;border-radius:0;pointer-events:none;
}
.ar-desenho>svg{display:none}
.ar-desenho[data-jetta-state="failed"]>.jetta-canvas{display:none}
.ar-desenho[data-jetta-state="failed"]>svg{display:block}

/* painel de leitura: fica embaixo do desenho, como legenda tecnica */
.ar-textos{
  width:min(1240px,100% - 48px);margin-inline:auto;position:relative;
  min-height:196px;display:grid;grid-template-columns:132px minmax(0,1fr);gap:34px;align-items:start;
}
.ar-beat{grid-column:2;grid-row:1;opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease;pointer-events:none}
.ar-beat.on{opacity:1;transform:none}
.ar-beat .rot{color:var(--vermelho-forte);display:block}
.ar-beat h3{font-size:clamp(21px,2vw,30px);color:#fff;margin:11px 0 12px;max-width:24ch;font-variation-settings:'wdth' 88,'wght' 800}
.ar-beat p{font-size:15.5px;color:#8FA3B4;line-height:1.6;max-width:62ch}
.ar-conta{
  grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:3px;padding-top:2px;
  font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:#5C7185;
}
.ar-conta b{color:var(--vermelho-forte);font-weight:500;font-size:30px;letter-spacing:.02em;line-height:1}
.ar-fecho{background:var(--asfalto);padding:0 0 132px;text-align:center}
.ar-fecho p{
  font-family:var(--display);font-variation-settings:'wdth' 86,'wght' 700;
  font-size:clamp(24px,3vw,46px);line-height:1.1;letter-spacing:-.028em;color:#fff;
  max-width:22ch;margin-inline:auto;
}
.ar-fecho p b{color:var(--azul);font-weight:inherit}
.ar-credito{display:block;margin:24px auto 0;max-width:70ch;color:#60788c;font:10px/1.5 var(--mono);letter-spacing:.04em}
.ar-credito a{color:#7e9db7;text-underline-offset:3px}
/* lista estatica: fallback sem JS e sob reduced-motion */
.ar-estatico{display:block;padding:0 0 110px}
.ar-estatico ol{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:34px}
.ar-estatico h3{font-size:20px;color:#fff;margin:10px 0 8px}
.ar-estatico p{font-size:15px;color:#8FA3B4}

/* ── 03 · BAIXADA, faixa azul ──────────────────────────────── */
#baixada{background:var(--azul);color:var(--preto);padding:74px 0 78px;overflow:hidden}
#baixada .rot{color:rgba(11,10,6,.62)}
#baixada h2{font-size:clamp(26px,2.7vw,40px);margin-top:14px;font-variation-settings:'wdth' 86,'wght' 800;color:var(--preto)}
#baixada p{margin-top:14px;max-width:52ch;color:rgba(11,10,6,.78);font-size:16px}
.marquee{margin-top:44px;position:relative;display:flex;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent)}
.marquee ul{display:flex;list-style:none;flex:0 0 auto;animation:corre 34s linear infinite}
.marquee li{
  font-family:var(--display);font-variation-settings:'wdth' 76,'wght' 800;
  font-size:clamp(32px,4.6vw,64px);letter-spacing:-.03em;color:var(--preto);
  padding-right:44px;white-space:nowrap;display:flex;align-items:center;gap:44px;
}
.marquee li::after{content:'';width:11px;height:11px;border-radius:50%;background:var(--vermelho);flex:0 0 auto}
@keyframes corre{from{transform:translateX(0)}to{transform:translateX(-100%)}}

/* ── 04 · ESTRUTURA, claro ─────────────────────────────────── */
#estrutura{background:var(--concreto);color:#1A2129;padding:126px 0 132px}
#estrutura .rot{color:var(--azul-fundo)}
#estrutura h2{font-size:clamp(30px,3.5vw,54px);color:#101820;margin-top:18px;max-width:19ch;font-variation-settings:'wdth' 84,'wght' 800}
#estrutura .sub{margin-top:22px;max-width:50ch;color:#4A5560;font-size:17px}
.gal{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:62px}
.gal figure{position:relative;overflow:hidden;border-radius:3px;background:#D6D2C9}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.16,1,.3,1);will-change:transform}
.gal figure:hover img{transform:scale(1.045)}
.gal figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:26px 24px 20px;
  background:linear-gradient(to top,rgba(11,17,25,.9),rgba(11,17,25,0));
  font-family:var(--display);font-variation-settings:'wdth' 88,'wght' 700;
  font-size:clamp(15px,1.35vw,20px);letter-spacing:-.015em;color:#fff;line-height:1.15;
}
.g1{grid-column:1/8;height:428px}
.g2{grid-column:8/13;grid-row:1/3}
.g3{grid-column:1/5;height:330px}
.g4{grid-column:5/8;height:330px}
.gal .pxy{height:118%;position:relative;top:-9%}

/* ── 05 · PROVA, lista numerada ────────────────────────────── */
#metodo{background:var(--bg);padding:0;position:relative}
.metodo-grade{display:grid;grid-template-columns:minmax(0,44%) minmax(0,56%);align-items:stretch;gap:0}
/* mesma regra do hero: a foto dissolve na cor de fundo, nunca encosta numa linha */
.metodo-foto{position:relative;overflow:hidden;min-height:520px}
.metodo-foto img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:saturate(.9) brightness(1.22) contrast(1.04);
  -webkit-mask-image:linear-gradient(to right,#000 0%,#000 44%,rgba(0,0,0,.45) 76%,transparent 99%);
  mask-image:linear-gradient(to right,#000 0%,#000 44%,rgba(0,0,0,.45) 76%,transparent 99%);
}
.metodo-foto::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to right,rgba(23,39,55,.25) 0%,rgba(23,39,55,.55) 62%,var(--bg) 99%);
}
.metodo-col{width:100%;min-width:0}
.metodo-txt{padding:118px 48px 118px 72px;max-width:860px}
.metodo-txt h2{font-size:clamp(29px,3.3vw,50px);color:#fff;margin-top:18px;max-width:18ch;font-variation-settings:'wdth' 84,'wght' 800}
.metodo-txt .sub{margin-top:20px;max-width:46ch;color:#A9BCCC;font-size:16.5px}
.passos{margin-top:52px;list-style:none;max-width:52ch}
.passos li{display:grid;grid-template-columns:64px 1fr;gap:8px;padding:26px 0;border-top:1px solid rgba(217,226,234,.14)}
.passos li:last-child{border-bottom:1px solid rgba(217,226,234,.14)}
.passos .n{font-family:var(--mono);font-size:12.5px;color:var(--azul);letter-spacing:.1em;padding-top:5px}
.passos h3{font-size:20.5px;color:#fff;font-variation-settings:'wdth' 90,'wght' 700;letter-spacing:-.018em}
.passos p{margin-top:8px;font-size:15.5px;color:#93A7B8}
.metodo-txt .acoes{margin-top:46px;display:flex;gap:28px;align-items:center;flex-wrap:wrap}

/* ── 06 · DUVIDAS, sanfona ─────────────────────────────────── */
#duvidas{background:var(--concreto);color:#1A2129;padding:96px 0 100px}
#duvidas .rot{color:var(--azul-fundo)}
#duvidas h2{font-size:clamp(29px,3.3vw,50px);color:#101820;margin-top:18px;max-width:17ch;font-variation-settings:'wdth' 84,'wght' 800}
#duvidas .sub{margin-top:20px;max-width:48ch;color:#4A5560;font-size:16.5px}
.sanfona{margin-top:58px;border-top:1px solid rgba(16,24,32,.16)}
.sanfona details{border-bottom:1px solid rgba(16,24,32,.16)}
.sanfona summary{
  list-style:none;cursor:pointer;padding:30px 56px 30px 0;position:relative;
  font-family:var(--display);font-variation-settings:'wdth' 88,'wght' 700;
  font-size:clamp(19px,1.9vw,27px);letter-spacing:-.022em;color:#101820;transition:color .25s;
}
.sanfona summary::-webkit-details-marker{display:none}
.sanfona summary:hover{color:var(--vermelho)}
.sanfona summary::after{
  content:'';position:absolute;right:6px;top:50%;width:15px;height:15px;margin-top:-7px;
  background:
    linear-gradient(var(--vermelho),var(--vermelho)) center/15px 2px no-repeat,
    linear-gradient(var(--vermelho),var(--vermelho)) center/2px 15px no-repeat;
  transition:transform .35s cubic-bezier(.16,1,.3,1);
}
.sanfona details[open] summary::after{transform:rotate(135deg)}
.sanfona .resp{padding:0 90px 32px 0;max-width:64ch;color:#4A5560;font-size:16.5px;animation:abre .45s cubic-bezier(.16,1,.3,1)}
@keyframes abre{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* ── 07 · FECHAMENTO, faixa vermelha ───────────────────────── */
#fechar{background:var(--vermelho);color:#fff;padding:126px 0 130px;position:relative;overflow:hidden}
#fechar::before{
  content:'';position:absolute;right:-8%;top:-30%;width:60vw;height:160%;
  background:radial-gradient(circle at 60% 50%,rgba(255,255,255,.14),transparent 62%);
}
.fechar-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,34%);gap:60px;align-items:center;position:relative}
#fechar .rot{color:rgba(255,255,255,.7)}
#fechar h2{font-size:clamp(32px,4.2vw,66px);margin-top:18px;max-width:15ch;color:#fff;font-variation-settings:'wdth' 82,'wght' 850;letter-spacing:-.034em}
#fechar .sub{margin-top:24px;max-width:46ch;font-size:17.5px;color:rgba(255,255,255,.9)}
#fechar .nota{margin-top:16px;max-width:46ch;font-size:15px;color:rgba(255,255,255,.72)}
#fechar .acoes{margin-top:42px;display:flex;gap:30px;align-items:center;flex-wrap:wrap}
#fechar .bt{background:#fff;color:var(--vermelho)}
#fechar .bt:hover{background:var(--preto);color:#fff;box-shadow:0 14px 34px -12px rgba(11,10,6,.6)}
#fechar .bt2{color:#fff;border-color:rgba(255,255,255,.5)}
#fechar .bt2:hover{border-color:#fff}
#fechar .selo{display:flex;align-items:center;justify-content:center;min-height:100%}
#fechar .selo img{width:min(290px,100%);height:auto;aspect-ratio:420/265;object-fit:contain;opacity:.97;filter:drop-shadow(0 14px 32px rgba(11,10,6,.32))}

/* ── rodape ────────────────────────────────────────────────── */
footer{background:var(--preto);padding:66px 0 40px;color:#8A8F94;font-size:14.5px}
.rodape{display:flex;gap:44px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.rodape p{max-width:44ch;line-height:1.65}
.rodape .nome{font-family:var(--display);font-variation-settings:'wdth' 88,'wght' 700;color:#fff;font-size:19px;letter-spacing:-.02em}
.rodape nav{display:flex;flex-direction:column;gap:9px}
.rodape nav a{text-decoration:none;color:#8A8F94;transition:color .25s}
.rodape nav a:hover{color:var(--azul)}
.rodape-fim{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.09);font-size:12.5px;color:#5E6367;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* ── botao flutuante ───────────────────────────────────────── */
.flutua{
  position:fixed;right:20px;bottom:20px;z-index:35;
  width:56px;height:56px;border-radius:50%;background:var(--vermelho);
  display:flex;align-items:center;justify-content:center;text-decoration:none;
  box-shadow:0 12px 32px -8px rgba(212,55,47,.8);
  opacity:0;transform:scale(.6);pointer-events:none;
  transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .4s cubic-bezier(.16,1,.3,1),background .3s;
}
.flutua.on{opacity:1;transform:none;pointer-events:auto}
.flutua:hover{background:var(--vermelho-forte);transform:scale(1.07)}
.flutua svg{width:27px;height:27px}

/* ═══ RESPONSIVO ═══════════════════════════════════════════ */
@media (max-width:1180px){
  #shift{display:none}
  .hero-col{max-width:56vw}
}
@media (max-width:980px){
  .dor-grade{grid-template-columns:1fr;gap:16px}
  .dor-fix{position:static}
  .dor-fix figure{display:none}
  .dor-item{min-height:0;padding:26px 0}
  .metodo-grade{grid-template-columns:1fr}
  .metodo-foto{min-height:280px}
  .metodo-txt{padding:76px 18px 88px}
  .fechar-grade{grid-template-columns:1fr;align-items:start}
  #fechar .selo{width:100%;min-height:0;margin-top:18px}
  #fechar .selo img{width:190px}
}
@media (max-width:860px){
  .env{width:calc(100% - 36px)}
  .nav-env{width:100%;padding-inline:18px}
  #nav{padding:14px 0}
  #nav.solido{padding:10px 0}
  #nav .links{
    position:fixed;inset:0;background:rgba(11,17,25,.97);backdrop-filter:blur(20px);
    flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;
    padding:0 32px;margin:0;opacity:0;pointer-events:none;transition:opacity .35s ease;
  }
  #nav .links.aberto{opacity:1;pointer-events:auto}
  #nav .links a{font-size:27px;font-family:var(--display);font-variation-settings:'wdth' 86,'wght' 700;padding:12px 0}
  #nav .links .bt{margin-top:22px;font-size:16px}
  .menu-bt{display:block;z-index:2}
  #nav .marca{z-index:2}

  /* hero no celular: foto e o fundo da tela, texto por cima, dissolucao vertical */
  .hero{min-height:100svh}
  .hero-img{left:0;top:0;
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.55) 52%,transparent 88%);
    mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.55) 52%,transparent 88%);
  }
  .hero-img img,.hero-img video{object-position:60% 56%}
  .hero-img::after{
    background:linear-gradient(to top,var(--bg) 22%,rgba(23,39,55,.55) 56%,rgba(23,39,55,.15) 100%);
  }
  .hero-txt{padding:0 0 46px;display:flex;align-items:flex-end;min-height:100svh}
  .hero-col{max-width:100%}
  .hero h1{font-size:clamp(31px,8.6vw,40px);letter-spacing:-.03em;line-height:1.06}
  .hero h1 .l{display:inline}
  .hero .sub{font-size:15.5px;margin-top:18px;max-width:34ch}
  .hero .acoes{margin-top:28px;gap:20px}
  .hero .servicos{margin-top:30px;font-size:10px;gap:7px 18px}
  .rolar{display:none}

  .ar-trilho{height:400vh}
  .ar-palco{gap:18px;padding-top:40px;justify-content:center}
  .ar-desenho{height:min(43svh,90vw);min-height:300px}
  .ar-textos{min-height:216px;grid-template-columns:1fr;gap:12px}
  .ar-beat{grid-column:1;grid-row:2}
  .ar-conta{grid-column:1;grid-row:1;flex-direction:row;align-items:baseline;gap:8px}
  .ar-conta b{font-size:20px}
  .ar-fecho{padding-bottom:88px}
  #ar .cab{padding-top:88px}

  .gal{grid-template-columns:repeat(6,1fr);gap:10px}
  .g1{grid-column:1/7;height:250px}
  .g2{grid-column:1/4;grid-row:auto;height:330px}
  .g3{grid-column:4/7;height:330px}
  .g4{grid-column:1/7;height:280px}
  .gal figcaption{padding:18px 16px 14px;font-size:15px}
  .gal .pxy{height:100%;top:0}

  .passos li{grid-template-columns:44px 1fr}
  .sanfona summary{padding:24px 44px 24px 0}
  .sanfona .resp{padding-right:20px}
  #estrutura,#duvidas{padding:86px 0 92px}
  #baixada{padding:56px 0 60px}
  #fechar{padding:88px 0 94px}
  #dor{padding-top:86px}
}

/* ── acessibilidade de movimento ───────────────────────────── */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .rev,.rev-e{opacity:1!important;transform:none!important}
  .ar-trilho{height:auto}
  .ar-palco{position:static;height:auto;padding:34px 0 0}
  .ar-desenho{display:none}
  .ar-textos{display:none}
  .ar-estatico{display:block}
  .marquee ul{animation:none}
  .rolar{display:none}
}

/* ══ ARCO · da manutencao ate a preparacao ══════════════════
   Imagem do carro como background full-bleed da secao, com overlay
   escuro; os tres blocos empilhados ficam por cima. */
.arco-sec{
  position:relative;padding:120px 0 110px;overflow:hidden;
  background:var(--bg-fundo);
}
.arco-bg{
  position:absolute;inset:0;z-index:0;
  background:url('/img/hero.webp') center/cover no-repeat fixed;
}
.arco-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(7,9,12,.94) 0%,rgba(7,9,12,.78) 42%,rgba(7,9,12,.45) 100%);
}
.arco-inner{position:relative;z-index:2}
.arco-titulo{
  font-size:clamp(24px,3vw,34px);
  font-variation-settings:'wdth' 84,'wght' 700;
  margin-bottom:34px;max-width:560px;
}
.arco-trilha{
  list-style:none;display:grid;gap:14px;
  grid-template-columns:1fr;align-content:start;
  max-width:520px;
}
.arco-etapa{
  position:relative;padding:20px 22px 22px;border-radius:3px;
  background:rgba(7,9,12,.55);
  backdrop-filter:blur(6px);
  border:1px solid rgba(217,226,234,.12);
  border-left:2px solid var(--azul);
}
.arco-etapa:nth-child(2){border-left-color:#9C7FB0}
.arco-etapa:nth-child(3){border-left-color:var(--vermelho)}
.arco-etapa + .arco-etapa::before{
  content:'';position:absolute;left:22px;top:-14px;width:1px;height:14px;
  background:linear-gradient(180deg,rgba(217,226,234,.15),rgba(217,226,234,.45));
}
.arco-etapa + .arco-etapa::after{
  content:'';position:absolute;left:19px;top:-6px;
  border-top:6px solid rgba(217,226,234,.45);
  border-left:3px solid transparent;border-right:3px solid transparent;
}
.arco-n{font-family:var(--mono);font-size:12px;color:var(--texto-fraco);letter-spacing:.14em}
.arco-etapa h3{font-size:19px;margin:6px 0 14px}
.arco-etapa ul{list-style:none;display:grid;gap:8px}
.arco-etapa ul li{
  position:relative;padding-left:16px;font-size:15px;line-height:1.5;
  color:var(--texto-fraco);
}
.arco-etapa ul li::before{
  content:'';position:absolute;left:0;top:.6em;width:6px;height:1px;background:currentColor;
}

/* galeria com tres ambientes */
.gal.tres .g3{grid-column:1/8;height:330px}
.gal.tres .g4{grid-column:1/7;height:340px}
.gal.tres .g5{grid-column:7/13;height:340px}

@media (max-width:860px){
  .arco-sec{padding:64px 0 56px}
  .arco-bg{background-attachment:scroll;background-position:center}
  .arco-overlay{background:linear-gradient(180deg,rgba(7,9,12,.92) 0%,rgba(7,9,12,.82) 100%)}
  .gal.tres .g3{grid-column:1/7}
  .gal.tres .g4{grid-column:1/7;height:260px}
  .gal.tres .g5{grid-column:1/7;height:260px}
}
