/* ============================================
   RESTAUROS CAR DETAIL — estilo.css
   CSS único de todas as páginas do site.
   Cores e fontes seguem o manual de marca.
   ============================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --preto:#0A0A0A;
  --fundo:#F1F1F3;
  --fundo-alt:#E8E8EB;
  --vermelho:#C0141A;
  --cinza:#6E6E73;
  --linha:#D5D5DA;
  --nav-h:72px;
  padding-top:env(safe-area-inset-top,0px);
  box-sizing:border-box;
}

html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + env(safe-area-inset-top,0px))}

body{
  font-family:'Barlow',-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--fundo);
  color:var(--preto);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

img{max-width:100%;display:block}
a{color:inherit}

.cond{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase}

/* ---------- NAV ---------- */
.nav{
  position:fixed;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:200;
  height:var(--nav-h);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(1.25rem,4vw,3rem);
  background:rgba(241,241,243,.92);
  backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--linha);
  transition:background .3s,border-color .3s;
}
.nav--over{background:transparent;border-color:transparent}
.nav--over .nav__logo{filter:invert(1) brightness(2)}
.nav--over .nav__links a{color:#fff}
.nav__logo{height:34px;width:auto}
.nav__links{display:flex;gap:clamp(1rem,2.5vw,2.25rem);align-items:center}
.nav__links a{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.8rem;letter-spacing:.14em;
  text-decoration:none;color:var(--preto);
  padding:.35rem 0;border-bottom:2px solid transparent;
  transition:border-color .2s,color .2s;
}
.nav__links a:hover{border-color:var(--vermelho)}
.nav__links a.is-cta{color:var(--vermelho);border-color:var(--vermelho)}
.nav--over .nav__links a.is-cta{color:#fff;border-color:var(--vermelho)}
@media(max-width:780px){
  .nav__links a:not(.is-cta){display:none}
}

/* ---------- HERO ---------- */
.hero{position:relative;height:100svh;min-height:520px;overflow:hidden}
.hero__img{width:100%;height:100%;object-fit:cover;object-position:center 42%}
.hero::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.78) 0%,rgba(0,0,0,.28) 45%,rgba(0,0,0,.35) 100%);
}
.hero__inner{
  position:absolute;z-index:2;left:0;right:0;
  bottom:clamp(3.5rem,9vh,7rem);
  padding:0 clamp(1.25rem,4vw,3rem);
}
.hero__eyebrow{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.72rem;letter-spacing:.34em;
  color:#fff;opacity:.72;display:block;margin-bottom:1.1rem;
}
.hero h1{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:800;font-size:clamp(2.6rem,7.4vw,6rem);
  line-height:.94;letter-spacing:.005em;color:#fff;
  margin-bottom:1.4rem;max-width:16ch;
}
.hero h1 em{font-style:normal;color:var(--vermelho)}
.hero__sub{
  font-size:clamp(.98rem,1.5vw,1.12rem);font-weight:300;
  color:rgba(255,255,255,.82);max-width:46ch;line-height:1.65;
  margin-bottom:2.2rem;
}
.hero__scroll{
  position:absolute;z-index:2;bottom:1.6rem;left:50%;transform:translateX(-50%);
  text-align:center;
}
.hero__scroll i{display:block;width:1px;height:44px;background:rgba(255,255,255,.5);margin:0 auto .5rem}
.hero__scroll span{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-size:.68rem;letter-spacing:.3em;color:rgba(255,255,255,.6);
}
@media(max-width:600px){.hero__scroll{display:none}}

/* Telas de notebook (pouca altura): título menor para não encostar no menu */
@media(max-height:860px) and (min-width:781px){
  .hero h1{font-size:clamp(2.4rem,5vw,4.4rem)}
  .hero__sub{margin-bottom:1.6rem}
}

/* ---------- BOTÃO ---------- */
.btn{
  display:inline-flex;align-items:center;gap:.6rem;
  background:var(--vermelho);color:#fff;text-decoration:none;
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.95rem;letter-spacing:.11em;
  padding:1rem 1.9rem;
  transition:background .2s,transform .2s;
}
.btn:hover{background:#9E1016;transform:translateY(-1px)}
.btn svg{width:17px;height:17px;fill:currentColor;flex-shrink:0}
.btn--ghost{background:transparent;color:var(--preto);border:1px solid var(--preto)}
.btn--ghost:hover{background:var(--preto);color:#fff}

/* ---------- MARQUEE ---------- */
.marquee{
  overflow:hidden;white-space:nowrap;
  padding:clamp(2.4rem,5vw,3.6rem) 0;
  border-bottom:1px solid var(--linha);
  background:var(--fundo);
}
.marquee__track{display:inline-flex;animation:slide 38s linear infinite}
.marquee span{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:800;font-size:clamp(2.4rem,6.5vw,5.2rem);
  letter-spacing:.01em;color:var(--preto);padding-right:.55em;
}
.marquee span b{color:var(--vermelho);font-weight:800}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee__track{animation:none}}

/* ---------- ESTRUTURA ---------- */
.sec{padding:clamp(4rem,9vw,7.5rem) clamp(1.25rem,4vw,3rem)}
.wrap{max-width:1180px;margin:0 auto}
.wrap--narrow{max-width:820px;margin:0 auto}

.eyebrow{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.72rem;letter-spacing:.32em;
  color:var(--vermelho);display:block;margin-bottom:1rem;
}
h2{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:800;font-size:clamp(2rem,4.8vw,3.6rem);
  line-height:1.02;letter-spacing:.005em;margin-bottom:1.5rem;
  max-width:20ch;
}
h3{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:1.06rem;letter-spacing:.055em;
  margin-bottom:.45rem;
}
.lead{font-size:1rem;color:var(--cinza);line-height:1.8;max-width:58ch}

/* ---------- SPLIT ---------- */
.split{
  display:grid;grid-template-columns:1fr 1fr;
  gap:clamp(2rem,5vw,4.5rem);align-items:center;
}
.split--rev .split__media{order:2}
@media(max-width:860px){
  .split{grid-template-columns:1fr}
  .split--rev .split__media{order:0}
}
.split__media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

/* ---------- VERTICAL ---------- */
.vtext{
  position:absolute;left:-.4em;top:0;
  writing-mode:vertical-rl;transform:rotate(180deg);
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:800;font-size:clamp(2.6rem,6vw,5rem);
  color:transparent;-webkit-text-stroke:1px var(--linha);
  letter-spacing:.02em;pointer-events:none;user-select:none;
}
.has-vtext{position:relative}
@media(max-width:1000px){.vtext{display:none}}

/* ---------- BENEFÍCIOS ---------- */
.bgrid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:clamp(1.75rem,3.5vw,3rem);margin-top:clamp(2.5rem,5vw,4rem);
}
.ben__n{
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800;font-size:.8rem;letter-spacing:.2em;
  color:var(--vermelho);display:block;margin-bottom:.9rem;
}
.ben p{font-size:.92rem;color:var(--cinza);line-height:1.7}

/* ---------- SEÇÃO ESCURA ---------- */
.dark{background:var(--preto);color:#fff}
.dark h2{color:#fff}
.dark .lead{color:#8C8C92}
.dark .vtext{-webkit-text-stroke-color:#242428}

/* ---------- LISTA PERFIS ---------- */
.plist{margin-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid #1E1E22}
.plist__item{
  display:grid;grid-template-columns:minmax(150px,240px) 1fr;
  gap:clamp(1rem,4vw,3rem);
  padding:1.9rem 0;border-bottom:1px solid #1E1E22;
}
.plist__item h3{color:#fff;margin:0}
.plist__item p{font-size:.94rem;color:#8C8C92;line-height:1.75}
@media(max-width:700px){.plist__item{grid-template-columns:1fr;gap:.5rem}}

/* ---------- ETAPAS ---------- */
.steps{margin-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--linha)}
.step{
  display:grid;grid-template-columns:auto 1fr;
  gap:clamp(1.25rem,3vw,2.75rem);
  padding:2rem 0;border-bottom:1px solid var(--linha);
  align-items:start;
}
.step__n{
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800;font-size:clamp(2.2rem,4vw,3.4rem);
  line-height:.9;color:transparent;-webkit-text-stroke:1px var(--vermelho);
  min-width:1.6em;
}
.step p{font-size:.95rem;color:var(--cinza);line-height:1.75;max-width:62ch}

/* ---------- FICHA TÉCNICA ---------- */
.spec{
  margin-top:clamp(2.5rem,5vw,3.5rem);
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:1px;background:var(--linha);border:1px solid var(--linha);
}
.spec__i{background:var(--fundo);padding:1.6rem 1.5rem}
.spec__k{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.7rem;letter-spacing:.2em;
  color:var(--cinza);display:block;margin-bottom:.5rem;
}
.spec__v{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:800;font-size:1.32rem;letter-spacing:.02em;line-height:1.2;
}
.spec__v small{
  display:block;font-family:'Barlow',sans-serif;text-transform:none;
  font-weight:400;font-size:.82rem;color:var(--cinza);
  letter-spacing:0;margin-top:.35rem;line-height:1.55;
}

/* Ficha com 8 itens: grade fixa de 4 colunas, sem buraco no fim */
.spec--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.spec--4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.spec--4{grid-template-columns:1fr}}

/* ---------- FAQ ---------- */
.faq{margin-top:clamp(2.5rem,5vw,3.5rem);border-top:1px solid var(--linha)}
.faq__i{padding:1.9rem 0;border-bottom:1px solid var(--linha)}
.faq__i h3{margin-bottom:.6rem;font-size:1.1rem;letter-spacing:.03em}
.faq__i p{font-size:.95rem;color:var(--cinza);line-height:1.8;max-width:68ch}

/* ---------- CTA ---------- */
.cta{background:var(--preto);color:#fff;text-align:center;position:relative;overflow:hidden}
.cta h2{
  color:#fff;margin:0 auto 1.1rem;max-width:18ch;
  font-size:clamp(2.2rem,6vw,4.4rem);
}
.cta h2 em{font-style:normal;color:var(--vermelho)}
.cta p{color:#8C8C92;font-size:1rem;margin-bottom:2.4rem;max-width:44ch;margin-left:auto;margin-right:auto}
.cta .eyebrow{margin-bottom:1.2rem}
.cta__nap{
  margin-top:2.2rem;font-size:.82rem;color:#5A5A60;line-height:1.9;
}
.cta__nap a{color:#8C8C92;text-decoration:none;border-bottom:1px solid #2A2A2E}

/* ---------- OUTROS SERVIÇOS ---------- */
.svc{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:1px;background:var(--linha);border:1px solid var(--linha);
  margin-top:clamp(2rem,4vw,3rem);
}
.svc a{
  background:var(--fundo);padding:1.5rem 1.35rem;
  text-decoration:none;display:block;
  transition:background .2s;
}
.svc a:hover{background:#fff}
.svc span{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.95rem;letter-spacing:.05em;
  display:flex;justify-content:space-between;align-items:center;gap:.5rem;
}
.svc span::after{content:'→';color:var(--vermelho)}

/* ---------- FOOTER ---------- */
.ft{background:#060607;color:#5A5A60;padding:clamp(3rem,6vw,5rem) clamp(1.25rem,4vw,3rem) 2.5rem}
.ft__top{display:grid;grid-template-columns:1.4fr 1fr;gap:2.5rem;align-items:start}
@media(max-width:760px){.ft__top{grid-template-columns:1fr}}
.ft__logo{height:36px;filter:invert(1);opacity:.55;margin-bottom:1.5rem}
.ft__claim{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:800;font-size:clamp(1.9rem,4.5vw,3.2rem);
  line-height:.98;color:#fff;
}
.ft__claim b{color:var(--vermelho);font-weight:800}
.ft__info{font-size:.85rem;line-height:1.95}
.ft__info a{color:#8C8C92;text-decoration:none}
.ft__bot{
  margin-top:3rem;padding-top:1.5rem;border-top:1px solid #16161A;
  font-size:.75rem;letter-spacing:.06em;
}

/* ---------- WHATSAPP FLUTUANTE ---------- */
.wa{
  position:fixed;z-index:300;
  right:clamp(1rem,3vw,1.75rem);
  bottom:calc(clamp(1rem,3vw,1.75rem) + env(safe-area-inset-bottom,0px));
  background:#25D366;border-radius:999px;
  padding:.85rem 1.35rem;
  display:inline-flex;align-items:center;gap:.55rem;
  text-decoration:none;box-shadow:0 6px 22px rgba(37,211,102,.34);
  transition:transform .2s;
}
.wa:hover{transform:translateY(-2px)}
.wa svg{width:21px;height:21px;fill:#fff;flex-shrink:0}
.wa span{
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
  font-weight:700;font-size:.85rem;letter-spacing:.09em;color:#fff;
}
@media(max-width:600px){
  .wa{padding:.95rem;border-radius:50%}
  .wa span{display:none}
}

/* ---------- VARIAÇÕES DE SEÇÃO ---------- */
.sec--alt{background:var(--fundo-alt)}
.dark--join{border-top:1px solid #1E1E22}

/* ---------- DARK MODE DO VISUALIZADOR ---------- */
@media(prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --fundo:#0E0E10;--fundo-alt:#141417;--preto:#F3F3F5;
    --cinza:#9A9AA0;--linha:#26262B;
  }
  :root:not([data-theme="light"]) .spec__i,
  :root:not([data-theme="light"]) .svc a{background:#0E0E10}
  :root:not([data-theme="light"]) .svc a:hover{background:#18181B}
  :root:not([data-theme="light"]) .nav{background:rgba(14,14,16,.92)}
  :root:not([data-theme="light"]) .nav__logo{filter:invert(1) brightness(2)}
  :root:not([data-theme="light"]) .dark{background:#000}
}
