/* ============================================================================
   Garage Truck Center: tema do site (gerado por garage-truck/site/gerar_site.py)
   Marca: fundo #0D0D0D, azul #2B2ECC nos painéis, laranja #F7941D só em ação,
   ponteiro e luz âmbar. Sora 800-900 em maiúsculas + Plus Jakarta Sans. Sem sombra:
   profundidade por sobreposição, escala, desfoque e grão.
   ========================================================================== */

:root {
  --sc-canvas: #0D0D0D;
  --sc-surface: #141416;
  --sc-ink: #F5F5F2;
  --sc-ink-soft: #A7AAB3;
  --sc-accent: #F7941D;
  --sc-accent-ink: #0D0D0D;
  --sc-font-display: "Sora", system-ui, sans-serif;
  --sc-font-text: "Plus Jakarta Sans", system-ui, sans-serif;
  --sc-gutter: clamp(1.1rem, 4.4vw, 4.5rem);
  --sc-maxw: 84rem;

  --gt-azul: #2B2ECC;
  --gt-azul-2: #3538DE;
  --gt-azul-fundo: #121450;
  --gt-azul-claro: #A9ACFF;
  --gt-vermelho: #FF4B3E;
  --gt-verde: #35C97A;
  --gt-texto: #CDD0D7;
  --gt-sup: #141416;
  --gt-sup-2: #1A1A1D;
  --gt-linha: rgba(255, 255, 255, .09);
  --gt-linha-2: rgba(255, 255, 255, .16);
  --gt-r: 12px;
  --gt-r-btn: 8px;
  --gt-r-badge: 6px;
  --gt-topo-h: 76px;
  --gt-sec: clamp(3rem, 5.4vw, 5.6rem);
}

html { scroll-padding-top: calc(var(--gt-topo-h) + 16px); }
body { background: var(--sc-canvas); color: var(--sc-ink); font-size: 1.0625rem; line-height: 1.65; margin: 0; }
body.gt-menu-aberto { overflow: hidden; }
main { display: block; }
a { color: inherit; }
p { margin: 0; }
h1, h2, h3, h4 { margin: 0; }
ul, ol { margin: 0; padding: 0; }
figure { margin: 0; }
address { font-style: normal; }
img { height: auto; }

/* grão: o fundo escuro chapado faz banding em tela de verdade */
.gt-grao { position: fixed; inset: -50%; z-index: 90; pointer-events: none; opacity: .045; mix-blend-mode: overlay;
  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' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }

.gt-caixa { width: 100%; max-width: var(--sc-maxw); margin-inline: auto; padding-inline: var(--sc-gutter); }
.gt-secao { padding-block: var(--gt-sec); position: relative; }
.gt-pular { position: absolute; left: 12px; top: -60px; z-index: 200; background: var(--sc-accent); color: #0D0D0D; padding: 10px 16px; border-radius: var(--gt-r-btn); font-weight: 700; text-decoration: none; }
.gt-pular:focus { top: 12px; }

/* ---------------------------------------------------------------- tipografia */
.gt-h1, .gt-h2, .gt-heroi__frase, .gt-marcap__nome, .gt-marca-vis__nome, .gt-marca-card__nome, .gt-numero b {
  font-family: var(--sc-font-display); text-transform: uppercase; text-wrap: balance; font-synthesis: none; }
.gt-h1 { font-size: clamp(2.05rem, 1.35rem + 2.9vw, 4.1rem); font-weight: 800; line-height: 1; letter-spacing: -.02em; }
.gt-h2 { font-size: clamp(1.65rem, 1.2rem + 1.9vw, 2.9rem); font-weight: 800; line-height: 1.04; letter-spacing: -.015em; }
.gt-lead { font-size: clamp(1.05rem, .98rem + .3vw, 1.22rem); line-height: 1.6; color: var(--gt-texto); max-width: 60ch; text-wrap: pretty; }
.gt-rotulo { font-family: var(--sc-font-display); font-weight: 700; font-size: .76rem; letter-spacing: .16em; text-transform: uppercase;
  color: var(--sc-accent); margin-bottom: 14px; }
.gt-rotulo--claro { color: #fff; opacity: .85; }
.gt-cabeca { max-width: 52rem; margin-bottom: clamp(2rem, 4vw, 3.5rem); }
.gt-cabeca .gt-lead { margin-top: 18px; }
.gt-ic { width: 1.25em; height: 1.25em; flex: none; }

/* texto corrido com link */
.gt-prosa__corpo a, .gt-intro a, .gt-faq__resp a, .gt-sinais a, .gt-ficha a, .gt-lista a, .gt-post__corpo a, .gt-azul__extra a, .gt-sinais__extra a {
  color: #fff; text-decoration: underline; text-decoration-color: var(--sc-accent); text-decoration-thickness: 2px; text-underline-offset: .22em;
  transition: color 140ms var(--sc-ease-out); }
.gt-prosa__corpo a:hover, .gt-intro a:hover, .gt-faq__resp a:hover, .gt-sinais a:hover, .gt-ficha a:hover, .gt-lista a:hover, .gt-post__corpo a:hover { color: var(--sc-accent); }
strong { font-weight: 700; color: #fff; }

/* ---------------------------------------------------------------- botões */
.gt-acoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.gt-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 22px;
  border-radius: var(--gt-r-btn); font-family: var(--sc-font-text); font-weight: 700; font-size: 1rem; line-height: 1.1;
  text-decoration: none; white-space: nowrap; border: 1.5px solid transparent; cursor: pointer;
  transition: background-color 150ms var(--sc-ease-out), border-color 150ms var(--sc-ease-out), color 150ms var(--sc-ease-out), transform 120ms var(--sc-ease-out); }
.gt-btn .gt-ic { width: 20px; height: 20px; }
.gt-btn:active { transform: translateY(1px); }
.gt-btn--laranja { background: var(--sc-accent); color: #0D0D0D; }
.gt-btn--laranja:hover { background: #FFA53A; }
.gt-btn--linha { border-color: rgba(247, 148, 29, .6); color: var(--sc-accent); background: transparent; }
.gt-btn--linha:hover { background: rgba(247, 148, 29, .1); border-color: var(--sc-accent); }
.gt-btn--escuro { background: #0D0D0D; color: #fff; }
.gt-btn--escuro:hover { background: #1d1d21; }
.gt-btn--claro { border-color: rgba(255, 255, 255, .55); color: #fff; }
.gt-btn--claro:hover { background: rgba(255, 255, 255, .1); border-color: #fff; }

/* ---------------------------------------------------------------- topo */
.gt-topo { position: fixed; inset: 0 0 auto 0; z-index: 70; height: var(--gt-topo-h); display: flex; align-items: center;
  transition: background-color 220ms var(--sc-ease-out), border-color 220ms var(--sc-ease-out); border-bottom: 1px solid transparent; }
.gt-topo { background: rgba(13, 13, 13, .96); border-bottom-color: var(--gt-linha); }
/* logado no WordPress: a barra de administração tem 32px (46px no celular) */
.admin-bar .gt-topo { top: 32px; }
@media (max-width: 782px) { .admin-bar .gt-topo { top: 46px; } }
.gt-topo__in { display: flex; align-items: center; gap: 28px; }
.gt-topo__logo { flex: none; display: block; line-height: 0; }
.gt-logo { width: auto; height: 36px; }
.gt-nav { margin-left: auto; }
.gt-nav__lista { display: flex; align-items: center; gap: 4px; list-style: none; }
.gt-nav__item { position: relative; }
.gt-nav__btn, .gt-nav__link { display: inline-flex; align-items: center; gap: 6px; height: 44px; padding: 0 12px; border-radius: var(--gt-r-btn);
  background: none; border: 0; color: #E4E5EA; font-weight: 600; font-size: .95rem; text-decoration: none; cursor: pointer;
  transition: color 140ms var(--sc-ease-out), background-color 140ms var(--sc-ease-out); }
.gt-nav__btn:hover, .gt-nav__link:hover, .gt-nav__item.is-aberto .gt-nav__btn { color: #fff; background: rgba(255, 255, 255, .06); }
.gt-nav__link, .gt-nav__btn, .gt-btn { word-spacing: .06em; }
.gt-nav__seta { width: 16px; height: 16px; transition: transform 180ms var(--sc-ease-out); }
.gt-nav__item.is-aberto .gt-nav__seta { transform: rotate(180deg); }
.gt-topo__cta { min-height: 44px; padding: 0 16px; font-size: .95rem; }
.gt-topo__menu { display: none; margin-left: auto; align-items: center; gap: 10px; height: 44px; padding: 0 14px; border-radius: var(--gt-r-btn);
  background: rgba(255, 255, 255, .06); border: 1px solid var(--gt-linha-2); color: #fff; font-weight: 700; cursor: pointer; }
.gt-topo__menu-ic { width: 18px; height: 12px; border-block: 2px solid currentColor; position: relative; }
.gt-topo__menu-ic::after { content: ""; position: absolute; left: 0; right: 0; top: 3px; height: 2px; background: currentColor; }

.gt-mega, .gt-sub { position: absolute; top: calc(100% + 14px); left: -12px; z-index: 80; background: #141416; border: 1px solid var(--gt-linha-2);
  border-radius: var(--gt-r); padding: 22px; opacity: 0; visibility: hidden; transform: translateY(-6px);
  transition: opacity 160ms var(--sc-ease-out), transform 160ms var(--sc-ease-out), visibility 0s linear 160ms; box-shadow: inset 0 1px 0 rgba(255,255,255,.06); }
.gt-nav__item.is-aberto > .gt-mega, .gt-nav__item.is-aberto > .gt-sub { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.gt-mega { width: min(900px, 86vw); display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 24px; }
.gt-mega__t { font-family: var(--sc-font-display); font-size: .72rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--sc-ink-soft); margin: 4px 10px 8px; }
.gt-mega ul, .gt-sub ul { list-style: none; }
.gt-mega a, .gt-sub a { display: flex; align-items: center; gap: 12px; padding: 9px 10px; border-radius: var(--gt-r-btn); text-decoration: none; color: #E4E5EA; font-weight: 600; font-size: .95rem;
  transition: background-color 120ms var(--sc-ease-out), color 120ms var(--sc-ease-out); }
.gt-mega a .gt-ic { color: var(--sc-accent); width: 22px; height: 22px; }
.gt-mega a:hover, .gt-sub a:hover { background: rgba(255, 255, 255, .06); color: #fff; }
.gt-mega__todos { grid-column: 1 / -1; margin-top: 10px; border-top: 1px solid var(--gt-linha); padding-top: 14px !important; color: var(--sc-accent) !important; justify-content: flex-start; }
.gt-mega__todos .gt-ic { width: 18px; height: 18px; }
.gt-sub { width: 340px; }
.gt-sub a { flex-direction: column; align-items: flex-start; gap: 0; }
.gt-sub a strong { font-weight: 700; }
.gt-sub a span { font-size: .82rem; color: var(--sc-ink-soft); font-weight: 500; }
.gt-sub .gt-mega__todos { flex-direction: row; align-items: center; gap: 10px; }

/* gaveta (celular) */
.gt-gaveta { position: fixed; inset: 0; z-index: 120; background: #0D0D0D; overflow-y: auto; }
.gt-gaveta[hidden] { display: none; }
.gt-gaveta__in { padding: 14px var(--sc-gutter) 40px; display: flex; flex-direction: column; gap: 18px; min-height: 100%; }
.gt-gaveta__topo { display: flex; align-items: center; justify-content: space-between; height: 48px; }
.gt-gaveta__topo .gt-logo { height: 30px; }
.gt-gaveta__fechar { height: 44px; padding: 0 16px; border-radius: var(--gt-r-btn); background: rgba(255,255,255,.06); border: 1px solid var(--gt-linha-2); color: #fff; font-weight: 700; cursor: pointer; }
.gt-gaveta nav { display: flex; flex-direction: column; border-top: 1px solid var(--gt-linha); }
.gt-gaveta nav > a, .gt-gaveta__grupo > summary { display: flex; align-items: center; justify-content: space-between; min-height: 58px; border-bottom: 1px solid var(--gt-linha);
  font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.1rem; letter-spacing: -.01em; text-decoration: none; cursor: pointer; list-style: none; }
.gt-gaveta__grupo > summary::-webkit-details-marker { display: none; }
.gt-gaveta__grupo > summary::after { content: "+"; color: var(--sc-accent); font-size: 1.4rem; font-weight: 400; }
.gt-gaveta__grupo[open] > summary::after { content: "–"; }
.gt-gaveta__grupo ul { list-style: none; padding: 6px 0 14px; border-bottom: 1px solid var(--gt-linha); }
.gt-gaveta__grupo li a { display: block; padding: 9px 0; color: var(--gt-texto); text-decoration: none; font-weight: 600; }
.gt-gaveta .gt-btn { width: 100%; }
.gt-gaveta__info { list-style: none; color: var(--sc-ink-soft); font-size: .92rem; display: grid; gap: 8px; }
.gt-gaveta__info li { display: flex; gap: 10px; align-items: flex-start; }
.gt-gaveta__info .gt-ic { color: var(--sc-accent); margin-top: 3px; }

/* barra fixa no celular: WhatsApp, Ligar, Como chegar */
.gt-barra { display: none; }

/* ---------------------------------------------------------------- herói da home: azul da marca e as engrenagens do ícone */
.gt-heroi { position: relative; min-height: 100vh; min-height: 100svh; max-height: 1040px; display: flex; align-items: center; overflow: clip; isolation: isolate;
  padding: calc(var(--gt-topo-h) + 36px) 0 64px; background: var(--gt-azul); color: #fff; }
.gt-heroi__eng { position: absolute; right: -16vw; top: 52%; translate: 0 -50%; width: min(62vw, 980px); height: auto; z-index: 0; }
.gt-heroi__g1 path { fill: #2225B4; }
.gt-heroi__g2 path { fill: var(--sc-accent); }
.gt-heroi__g1 { transform: rotate(calc(var(--gt-giro, 0) * 1deg)); }
.gt-heroi__g2 { transform: rotate(calc(var(--gt-giro, 0) * -1.6deg + 18deg)); }
.gt-heroi__texto { position: relative; z-index: 2; }
.gt-heroi__h1 { font-family: var(--sc-font-display); font-weight: 700; font-size: clamp(.74rem, .7rem + .2vw, .86rem); letter-spacing: .18em; text-transform: uppercase;
  color: #fff; opacity: .86; margin-bottom: clamp(14px, 2.4vh, 22px); animation: gt-sobe .8s .05s var(--sc-ease-out) both; }
.gt-heroi__frase { margin: 0; font-weight: 900; }
.gt-heroi__l1 { display: block; font-size: clamp(2.8rem, 1.2rem + 5.2vw, 6.2rem); line-height: .92; letter-spacing: -.03em; color: #fff; max-width: 11em;
  animation: gt-sobe .8s .12s var(--sc-ease-out) both; }
.gt-heroi__l2 { display: block; margin-top: clamp(10px, 1.6vh, 16px); font-size: clamp(1.5rem, .8rem + 2.6vw, 3.1rem); line-height: 1; letter-spacing: -.02em;
  color: #fff; opacity: .94; max-width: 17em; animation: gt-sobe .8s .24s var(--sc-ease-out) both; }
.gt-heroi__texto .gt-acoes { margin-top: clamp(22px, 3.4vh, 36px); animation: gt-sobe .8s .36s var(--sc-ease-out) both; }
.gt-heroi .gt-btn--claro { color: #fff; border-color: rgba(255, 255, 255, .6); }
@keyframes gt-sobe { from { opacity: 0; translate: 0 18px; } to { opacity: 1; translate: 0 0; } }

/* fechamento com foto */
.gt-fecho__foto { border-radius: var(--gt-r); overflow: hidden; aspect-ratio: 4 / 3.1; }
.gt-fecho__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 35% 50%; }

/* frotas: cadastro interativo */
.gt-frota__campo + .gt-frota__campo { margin-top: 26px; }
.gt-frota .gt-orc__passo em { font-style: normal; font-family: var(--sc-font-text); font-weight: 600; text-transform: none; font-size: .86rem; color: #5F626A; letter-spacing: 0; }
.gt-probs--nec { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); }
.gt-prob--nec { min-height: 60px; align-items: center; grid-template-rows: auto; }
.gt-prob--nec .gt-prob__ic { grid-row: auto; width: 26px; height: 26px; margin: 0; }
.gt-painel-orc__lista--nec li strong { display: block; font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: .9rem; color: #fff; letter-spacing: -.005em; }
.gt-painel-orc__prova { margin-top: 18px; font-size: .92rem; line-height: 1.5; color: rgba(255, 255, 255, .88); }
.gt-frota .gt-selo b { font-size: clamp(1.15rem, .95rem + .8vw, 1.5rem); }

/* ---------------------------------------------------------------- autoridade: números e clientes (logo depois do herói) */
.gt-autoridade { padding-top: clamp(3.5rem, 6vw, 6rem); }
.gt-autoridade__t { max-width: 24ch; }
.gt-numeros--autoridade { margin-top: clamp(1.8rem, 3.4vw, 3rem); }
.gt-clientes--autoridade { margin-top: clamp(2.4rem, 4.4vw, 3.6rem); }
.gt-clientes--autoridade .gt-clientes__t { margin-bottom: 18px !important; max-width: 60ch; }
.gt-clientes--autoridade .gt-clientes__t { text-transform: none; letter-spacing: 0; font-family: var(--sc-font-text); font-weight: 600; font-size: 1rem; line-height: 1.5; color: var(--gt-texto); margin: 0; }

/* ---------------------------------------------------------------- orçamento interativo: problema + marca -> WhatsApp */
.gt-orc__cab { max-width: 50rem; margin-bottom: clamp(1.8rem, 3.4vw, 2.8rem); }
.gt-orc__cab .gt-lead { margin-top: 16px; }
.gt-orc__grade { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 40px); align-items: start; }
.gt-orc__passo { display: flex; align-items: center; gap: 12px; font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1rem; letter-spacing: -.005em; margin: 0 0 14px; padding: 0; }
.gt-orc__passo span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--gt-azul); color: #fff; font-size: .9rem; }
.gt-probs { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; }
.gt-prob { position: relative; display: grid; grid-template-columns: 34px 1fr; grid-template-rows: auto auto; column-gap: 12px; row-gap: 2px; align-items: start; text-align: left; cursor: pointer;
  padding: 14px 14px 14px 12px; min-height: 76px; background: #fff; border: 1.5px solid rgba(15, 15, 25, .12); border-radius: var(--gt-r); color: #171717;
  transition: border-color 140ms var(--sc-ease-out), background-color 140ms var(--sc-ease-out), color 140ms var(--sc-ease-out), transform 120ms var(--sc-ease-out); }
.gt-prob__ic { grid-row: 1 / 3; width: 30px; height: 30px; color: var(--gt-azul); margin-top: 2px; transition: color 140ms var(--sc-ease-out); }
.gt-prob__nome { font-family: var(--sc-font-display); font-weight: 800; font-size: .98rem; line-height: 1.15; text-transform: uppercase; letter-spacing: -.005em; }
.gt-prob__dica { font-size: .84rem; line-height: 1.35; color: #5F626A; }
.gt-prob:hover { border-color: var(--gt-azul); }
.gt-prob:active { transform: translateY(1px); }
.gt-prob[aria-pressed=true] { background: var(--gt-azul); border-color: var(--gt-azul); color: #fff; }
.gt-prob[aria-pressed=true] .gt-prob__ic { color: #fff; }
.gt-prob[aria-pressed=true] .gt-prob__dica { color: rgba(255, 255, 255, .85); }
.gt-orc__marca { border: 0; padding: 0; margin: 28px 0 0; min-width: 0; }
.gt-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.gt-chip { position: relative; display: inline-flex; align-items: center; min-height: 46px; padding: 0 18px; border-radius: 999px; cursor: pointer;
  background: #fff; border: 1.5px solid rgba(15, 15, 25, .14); color: #171717; font-weight: 700; font-size: .95rem;
  transition: border-color 140ms var(--sc-ease-out), background-color 140ms var(--sc-ease-out), color 140ms var(--sc-ease-out); }
.gt-chip:hover { border-color: var(--gt-azul); }
.gt-chip--radio input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.gt-chip--radio:has(input:checked) { background: #171717; border-color: #171717; color: #fff; }
.gt-chip--radio:has(input:focus-visible) { outline: 2px solid var(--gt-azul); outline-offset: 3px; }
.gt-painel-orc { position: sticky; top: calc(var(--gt-topo-h) + 20px); background: var(--gt-azul); color: #fff; border-radius: var(--gt-r); padding: clamp(22px, 2.6vw, 32px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18); }
.gt-painel-orc__rot { font-family: var(--sc-font-display); font-weight: 700; font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: rgba(255, 255, 255, .78); margin-bottom: 10px; }
.gt-painel-orc__t { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: clamp(1.3rem, 1.05rem + 1vw, 1.8rem); line-height: 1.06; letter-spacing: -.01em; margin-bottom: 14px; }
.gt-painel-orc__lista, .gt-comp { list-style: none; display: grid; gap: 10px; }
.gt-painel-orc__lista li { position: relative; padding-left: 24px; color: rgba(255, 255, 255, .94); line-height: 1.5; }
.gt-painel-orc__lista li::before { content: ""; position: absolute; left: 2px; top: .55em; width: 10px; height: 10px; border-radius: 3px; background: var(--sc-accent); }
.gt-comp li { display: grid; grid-template-columns: 22px 1fr; gap: 12px; align-items: start; }
.gt-comp .gt-ic { width: 22px; height: 22px; color: var(--sc-accent); margin-top: 2px; }
.gt-comp strong { display: block; font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: .98rem; color: #fff; }
.gt-comp span { color: rgba(255, 255, 255, .88); font-size: .95rem; }
.gt-painel-orc__marca { margin-top: 18px; padding: 14px 16px; border-radius: var(--gt-r-btn); background: rgba(13, 13, 13, .25); }
.gt-painel-orc__marca .gt-painel-orc__rot { margin-bottom: 6px; }
.gt-painel-orc__marca p:last-child { font-weight: 600; line-height: 1.5; }
.gt-painel-orc__link { display: inline-flex; align-items: center; gap: 8px; margin-top: 16px; color: #fff; font-weight: 700; text-decoration: underline; text-decoration-color: var(--sc-accent); text-decoration-thickness: 2px; text-underline-offset: .25em; }
.gt-painel-orc__link .gt-ic { width: 18px; height: 18px; transition: transform 140ms var(--sc-ease-out); }
.gt-painel-orc__link:hover .gt-ic { transform: translateX(3px); }
.gt-selo { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 22px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .22); }
.gt-selo li { display: grid; }
.gt-selo b { font-family: var(--sc-font-display); font-weight: 900; font-size: clamp(1.3rem, 1rem + 1vw, 1.7rem); line-height: 1; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.gt-selo span { font-size: .8rem; color: rgba(255, 255, 255, .82); margin-top: 4px; line-height: 1.3; }
.gt-painel-orc__msg { margin-top: 18px; padding: 14px 16px; border-radius: var(--gt-r-btn); background: rgba(13, 13, 13, .32); }
.gt-painel-orc__msg-t { font-size: .7rem; font-family: var(--sc-font-display); letter-spacing: .14em; text-transform: uppercase; font-weight: 700; opacity: .8; margin-bottom: 6px; }
.gt-painel-orc__msg p:last-child { font-size: .98rem; line-height: 1.5; }
.gt-painel-orc__enviar { width: 100%; margin-top: 14px; }

/* ---------------------------------------------------------------- prova: scanner e números */
.gt-prova__grade { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 80px); align-items: center; }
.gt-prova__foto { border-radius: var(--gt-r); overflow: hidden; aspect-ratio: 4 / 3.2; }
.gt-prova__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 38% 50%; }
.gt-prova__texto .gt-lead { margin-top: 18px; }
.gt-prova__porque { margin-top: 26px; padding-left: 20px; border-left: 2px solid var(--sc-accent); }
.gt-prova__porque h3 { font-family: var(--sc-font-display); text-transform: uppercase; font-weight: 800; font-size: 1rem; margin-bottom: 6px; }
.gt-prova__porque p { color: var(--gt-texto); }
.gt-numeros { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 0; margin-top: clamp(3rem, 6vw, 5.5rem); border-top: 1px solid var(--gt-linha); }
.gt-numero { padding: 26px 22px 6px 0; border-right: 1px solid var(--gt-linha); display: grid; align-content: start; }
.gt-numero + .gt-numero { padding-left: 24px; }
.gt-numero:last-child { border-right: 0; }
.gt-numero b { font-weight: 900; font-size: clamp(2.2rem, 1.1rem + 2.3vw, 3.4rem); line-height: 1; letter-spacing: -.03em; color: #fff; font-variant-numeric: tabular-nums; }
.gt-numero__u { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; color: var(--sc-accent); font-size: 1rem; margin-top: 8px; }
.gt-numero__t { color: var(--sc-ink-soft); font-size: .95rem; margin-top: 4px; max-width: 24ch; }

/* ---------------------------------------------------------------- marcas passando de lado */
.gt-marcasp__palco { height: 100vh; height: 100svh; display: flex; align-items: center; background: #0D0D0D; }
.gt-marcasp__trilho { align-items: stretch; gap: clamp(28px, 4vw, 64px); padding-inline: var(--sc-gutter); width: max-content; }
.gt-marcasp__abre { width: min(30rem, 78vw); flex: none; align-self: center; }
.gt-marcasp__abre p { color: var(--gt-texto); margin-top: 18px; }
.gt-marcap { flex: none; display: flex; flex-direction: column; justify-content: center; text-decoration: none; padding-right: clamp(12px, 2vw, 36px); border-right: 1px solid var(--gt-linha); }
.gt-marcap__nome { font-weight: 900; font-size: clamp(4.2rem, 2rem + 8vw, 10rem); line-height: .92; letter-spacing: -.04em; color: transparent;
  -webkit-text-stroke: 1.5px rgba(245, 245, 242, .55); transition: color 260ms var(--sc-ease-out), -webkit-text-stroke-color 260ms var(--sc-ease-out); }
.gt-marcap.is-centro .gt-marcap__nome, .gt-marcap:hover .gt-marcap__nome, .gt-marcap:focus-visible .gt-marcap__nome { color: #fff; -webkit-text-stroke-color: #fff; }
.gt-marcap__mod { display: inline-flex; align-items: center; gap: 10px; margin-top: 14px; color: var(--sc-ink-soft); font-weight: 600; font-size: 1.05rem; }
.gt-marcap__mod .gt-ic { color: var(--sc-accent); width: 18px; height: 18px; }
.gt-marcap.is-centro .gt-marcap__mod { color: #fff; }
.gt-marcasp__aviso { flex: none; width: min(24rem, 70vw); align-self: center; color: var(--sc-ink-soft); font-size: .9rem; }

/* ---------------------------------------------------------------- índice dos sistemas */
.gt-idx__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(20px, 3vw, 44px); }
.gt-idx__t { font-family: var(--sc-font-display); font-weight: 700; font-size: .76rem; letter-spacing: .16em; text-transform: uppercase; color: var(--sc-ink-soft); padding-bottom: 12px; border-bottom: 1px solid var(--gt-linha-2); }
.gt-linhas { list-style: none; }
.gt-linha { position: relative; display: flex; align-items: center; gap: 14px; min-height: 58px; padding: 10px 12px; margin-inline: -12px; border-radius: var(--gt-r-btn);
  text-decoration: none; color: #EDEEF1; font-weight: 700; font-size: 1.02rem; isolation: isolate; overflow: hidden; }
.gt-linha::before { content: ""; position: absolute; inset: 0; z-index: -1; background: var(--gt-azul); transform: scaleX(0); transform-origin: left; transition: transform 240ms var(--sc-ease-out); }
.gt-linha:hover::before, .gt-linha:focus-visible::before { transform: none; }
.gt-linhas li + li .gt-linha { box-shadow: 0 -1px 0 var(--gt-linha); }
.gt-linha__ic { width: 26px; height: 26px; color: var(--sc-accent); transition: color 200ms var(--sc-ease-out); }
.gt-linha:hover .gt-linha__ic, .gt-linha:focus-visible .gt-linha__ic { color: #fff; }
.gt-linha__nome { flex: 1; }
.gt-linha__seta { width: 20px; height: 20px; opacity: .45; transition: transform 200ms var(--sc-ease-out), opacity 200ms var(--sc-ease-out); }
.gt-linha:hover .gt-linha__seta { transform: translateX(4px); opacity: 1; }
.gt-secao--indice .gt-linhas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: clamp(20px, 3vw, 44px); }

/* ---------------------------------------------------------------- a OS carimbada (pin curto) */
.gt-osc__palco { height: 100vh; height: 100svh; display: flex; align-items: center; background: #0D0D0D; }
.gt-osc__grade { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 80px); align-items: center; padding-top: var(--gt-topo-h); }
.gt-osc__texto .gt-lead { margin-top: 18px; }
.gt-fos { position: relative; background: #F2F1EC; color: #16161A; border-radius: var(--gt-r); padding: clamp(20px, 2.4vw, 32px); overflow: hidden;
  --v0: clamp(0, (var(--sc-p, 1) - .06) * 7, 1); }
.gt-fos__cab { display: flex; justify-content: space-between; align-items: center; padding-bottom: 14px; border-bottom: 2px solid #16161A;
  font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: .82rem; }
.gt-fos__marca .gt-logo { height: 26px; filter: invert(1) hue-rotate(180deg) saturate(1.4); }
.gt-fos__lista { list-style: none; }
.gt-fos__l { --t: calc(.1 + var(--i) * .2); --v: clamp(0, (var(--sc-p, 1) - var(--t)) * 7, 1);
  display: grid; grid-template-columns: 44px 1fr 40px; gap: 14px; align-items: start; padding: 16px 0; border-bottom: 1px dashed rgba(22, 22, 26, .25);
  opacity: calc(.38 + var(--v) * .62); }
.gt-fos__n { font-family: var(--sc-font-display); font-weight: 800; font-size: 1.1rem; color: #16161A; padding-top: 2px; }
.gt-fos__l h3 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.05rem; letter-spacing: -.005em; }
.gt-fos__l p { font-size: .95rem; color: #3a3a42; margin-top: 4px; line-height: 1.5; }
.gt-fos__ok { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--gt-azul); color: #fff;
  transform: scale(calc(.4 + var(--v) * .6)) rotate(calc((1 - var(--v)) * -40deg)); opacity: var(--v); }
.gt-fos__ok .gt-ic { width: 20px; height: 20px; }
.gt-fos__carimbo { position: absolute; right: 64px; top: 58%; mix-blend-mode: multiply; --c: clamp(0, (var(--sc-p, 1) - .52) * 6, 1);
  transform: rotate(-14deg) scale(calc(1.6 - var(--c) * .6)); opacity: var(--c); pointer-events: none; }
.gt-fos__carimbo span { display: block; font-family: var(--sc-font-display); font-weight: 900; text-transform: uppercase; font-size: clamp(1.4rem, 1rem + 1.6vw, 2.4rem);
  letter-spacing: .08em; color: rgba(229, 72, 77, .85); border: 3px solid rgba(229, 72, 77, .85); border-radius: 8px; padding: 4px 16px; }

/* ---------------------------------------------------------------- sede, frotas, clientes */
.gt-sede__grade { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 80px); align-items: center; }
.gt-sede__quadro { border-radius: var(--gt-r); overflow: hidden; aspect-ratio: 4 / 4.4; }
.gt-sede__quadro img { width: 100%; height: 112%; object-fit: cover; margin-top: -6%; }
.gt-sede figcaption { margin-top: 12px; font-size: .88rem; color: var(--sc-ink-soft); }
.gt-sede__item + .gt-sede__item { margin-top: 34px; padding-top: 30px; border-top: 1px solid var(--gt-linha); }
.gt-sede__item .gt-lead { margin-top: 16px; }
.gt-sede__item h3 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.25rem; margin-bottom: 10px; }
.gt-sede__item p { color: var(--gt-texto); }
.gt-frotah { padding-top: 0; }
.gt-azul { background: var(--gt-azul); color: #fff; border-radius: var(--gt-r); padding: clamp(26px, 4vw, 56px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18); }
.gt-azul .gt-lead { color: rgba(255, 255, 255, .9); margin-top: 16px; }
.gt-azul .gt-lista { margin-top: 26px; }
.gt-azul .gt-lista__ic { color: #fff; }
.gt-azul strong { color: #fff; }
.gt-azul__extra { margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .2); color: rgba(255, 255, 255, .92); max-width: 72ch; }
.gt-azul__extra p + p { margin-top: 12px; }
.gt-azul__extra a { color: #fff; text-decoration-color: #fff; }
.gt-frotah__painel { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); align-items: center; }
.gt-frotah__lista { margin-top: 0 !important; background: rgba(13, 13, 13, .22); border-radius: var(--gt-r-btn); padding: 8px 20px; }
.gt-frotah__lista li { padding: 12px 0; }
.gt-frotah__lista li + li { border-top: 1px solid rgba(255, 255, 255, .16); }
.gt-clientes { margin-top: clamp(2.5rem, 5vw, 4rem); }
.gt-clientes__t { font-family: var(--sc-font-display); font-weight: 700; font-size: .76rem; letter-spacing: .16em; text-transform: uppercase; color: var(--sc-ink-soft); margin-bottom: 18px; }
.gt-clientes__lista { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.gt-clientes__lista li { display: flex; align-items: center; justify-content: center; text-align: center; min-height: 78px; padding: 14px 16px;
  border-radius: var(--gt-r); background: var(--gt-sup); border: 1px solid var(--gt-linha);
  font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: clamp(.92rem, .82rem + .35vw, 1.1rem); line-height: 1.15; color: #E4E5EA; letter-spacing: -.005em; }
.gt-secao--clientes .gt-lead { margin: 16px 0 26px; }

.gt-estrutura { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(24px, 5vw, 72px); align-items: center; }
.gt-estrutura__foto { border-radius: var(--gt-r); overflow: hidden; aspect-ratio: 4 / 3; }
.gt-estrutura__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 38% 50%; }
.gt-estrutura__texto p { color: var(--gt-texto); margin-top: 16px; }

/* ---------------------------------------------------------------- listas, sinais, fichas */
.gt-lista { list-style: none; display: grid; gap: 12px; }
.gt-lista li { display: grid; grid-template-columns: 22px 1fr; gap: 12px; align-items: start; color: var(--gt-texto); }
.gt-azul .gt-lista li { color: #fff; }
.gt-lista__ic { width: 22px; height: 22px; color: var(--sc-accent); margin-top: 2px; }
.gt-lista__ponto { width: 8px; height: 8px; border-radius: 50%; background: var(--sc-accent); margin: 10px 0 0 6px; }
.gt-lista--2col { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
.gt-lista--num { counter-reset: n; }
.gt-lista--num li { grid-template-columns: 1fr; counter-increment: n; }
.gt-sinais__lista { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: clamp(1.6rem, 3vw, 2.4rem); }
.gt-sinal { display: grid; grid-template-columns: 18px 1fr; gap: 14px; align-items: start; padding: 18px 20px; background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); color: var(--gt-texto); }
.gt-sinal__luz { width: 12px; height: 12px; border-radius: 50%; background: var(--sc-accent); margin-top: 7px; box-shadow: 0 0 0 4px rgba(247, 148, 29, .18); }
.gt-sinais__extra { margin-top: 26px; max-width: 64ch; color: var(--gt-texto); }
.gt-sinais__extra p + p { margin-top: 14px; }
.gt-fichas-sec__cab { max-width: 52rem; margin-bottom: clamp(1.6rem, 3vw, 2.6rem); }
.gt-fichas-sec__intro { color: var(--gt-texto); margin-top: 16px; }
.gt-fichas-sec__intro p + p { margin-top: 12px; }
.gt-fichas { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.gt-fichas--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gt-fichas--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gt-ficha { padding: clamp(20px, 2.2vw, 28px); background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); }
.gt-ficha h3 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.08rem; line-height: 1.15; letter-spacing: -.005em; margin-bottom: 8px; color: #fff; }
.gt-ficha p { color: var(--gt-texto); }
.gt-fichas--azul .gt-ficha { background: var(--gt-azul); border-color: transparent; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16); }
.gt-fichas--azul .gt-ficha p { color: rgba(255, 255, 255, .9); }
.gt-fichas--azul a { text-decoration-color: #fff !important; }

.gt-prosa { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(20px, 5vw, 80px); align-items: start; }
.gt-prosa__t { position: sticky; top: calc(var(--gt-topo-h) + 24px); display: flex; flex-direction: column; gap: 14px; }
.gt-prosa__ic { width: 34px; height: 34px; color: var(--sc-accent); }
.gt-prosa__corpo { color: var(--gt-texto); max-width: 64ch; font-size: 1.08rem; }
.gt-prosa__corpo p + p, .gt-prosa__corpo p + ul, .gt-prosa__corpo ul + p { margin-top: 16px; }
.gt-prosa__corpo h3 { font-family: var(--sc-font-display); text-transform: uppercase; font-weight: 800; font-size: 1.1rem; margin: 26px 0 8px; color: #fff; }
.gt-secao--prosa + .gt-secao--prosa { padding-top: 0; }
.gt-intro { max-width: 70ch; font-size: clamp(1.12rem, 1.02rem + .4vw, 1.35rem); line-height: 1.6; color: #E4E5EA; }
.gt-intro p + p { margin-top: 18px; }
.gt-secao--intro { padding-bottom: 0; }
.gt-chiplinks { list-style: none; display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.gt-chiplink { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 18px; border: 1px solid var(--gt-linha-2); border-radius: var(--gt-r-btn);
  text-decoration: none; font-weight: 700; color: #EDEEF1; transition: border-color 140ms var(--sc-ease-out), color 140ms var(--sc-ease-out); }
.gt-chiplink .gt-ic { width: 18px; height: 18px; color: var(--sc-accent); transition: transform 140ms var(--sc-ease-out); }
.gt-chiplink:hover { border-color: var(--sc-accent); color: #fff; }
.gt-chiplink:hover .gt-ic { transform: translateX(3px); }
.gt-aviso { font-size: .88rem; color: var(--sc-ink-soft); max-width: 80ch; border-top: 1px solid var(--gt-linha); padding-top: 18px; }
.gt-secao--aviso { padding-block: 0 var(--gt-sec); }

/* passos do atendimento */
.gt-passos { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.gt-passo { position: relative; padding: 26px 22px 24px; background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); }
.gt-passo__n { font-family: var(--sc-font-display); font-weight: 900; font-size: 2.6rem; line-height: 1; color: var(--sc-accent); display: block; margin-bottom: 18px; }
.gt-passo h3 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.1rem; margin-bottom: 8px; }
.gt-passo p { color: var(--gt-texto); font-size: .98rem; }

/* faixa de chamada */
.gt-faixa { position: relative; overflow: hidden; background: var(--gt-azul); color: #fff; }
.gt-faixa__in { position: relative; display: grid; grid-template-columns: minmax(0, 1.4fr) auto; gap: 28px; align-items: end; padding-block: clamp(3rem, 6vw, 5.5rem); }
.gt-faixa .gt-rotulo { color: #fff; opacity: .85; }
.gt-faixa .gt-lead { color: rgba(255, 255, 255, .9); margin-top: 14px; }
.gt-faixa .gt-acoes { margin-top: 0; }
.gt-faixa .gt-btn--linha { border-color: rgba(255, 255, 255, .6); color: #fff; }
.gt-faixa .gt-btn--linha:hover { background: rgba(255, 255, 255, .1); border-color: #fff; }
.gt-faixa__eng { position: absolute; right: -6%; top: 50%; width: min(36rem, 60vw); translate: 0 -50%; fill: rgba(255, 255, 255, .07); pointer-events: none; }

/* FAQ */
.gt-faq { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(20px, 5vw, 80px); align-items: start; }
.gt-faq__cab { position: sticky; top: calc(var(--gt-topo-h) + 24px); }
.gt-faq__cab .gt-lead { margin-top: 14px; }
.gt-faq__item { border-bottom: 1px solid var(--gt-linha); }
.gt-faq__item:first-child { border-top: 1px solid var(--gt-linha); }
.gt-faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 64px; padding: 16px 0; cursor: pointer; list-style: none;
  font-weight: 700; font-size: 1.05rem; color: #F0F0F2; transition: color 140ms var(--sc-ease-out); }
.gt-faq__item summary::-webkit-details-marker { display: none; }
.gt-faq__item summary:hover { color: var(--sc-accent); }
.gt-faq__mais { position: relative; flex: none; width: 28px; height: 28px; border-radius: 50%; border: 1px solid var(--gt-linha-2); }
.gt-faq__mais::before, .gt-faq__mais::after { content: ""; position: absolute; left: 50%; top: 50%; width: 11px; height: 1.8px; background: var(--sc-accent); translate: -50% -50%; transition: transform 200ms var(--sc-ease-out); }
.gt-faq__mais::after { transform: rotate(90deg); }
.gt-faq__item[open] .gt-faq__mais::after { transform: rotate(0deg); }
.gt-faq__resp { padding: 0 0 22px; color: var(--gt-texto); max-width: 66ch; }

/* depoimentos */
.gt-depos { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(20px, 5vw, 80px); align-items: start; }
.gt-depos__cab .gt-lead { margin-top: 14px; }
.gt-depos__lista { display: grid; gap: 14px; }
.gt-depo { padding: clamp(22px, 3vw, 36px); background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); }
.gt-depo blockquote { margin: 0; }
.gt-depo blockquote p { font-family: var(--sc-font-display); font-weight: 700; font-size: clamp(1.2rem, 1rem + .8vw, 1.65rem); line-height: 1.3; letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.gt-depo figcaption { display: flex; align-items: center; gap: 12px; margin-top: 20px; font-weight: 700; }
.gt-depo figcaption img { width: 44px; height: 44px; border-radius: 50%; }
.gt-depo__fonte { margin-left: auto; color: var(--sc-ink-soft); font-weight: 500; font-size: .86rem; }

/* nota do Google */
.gt-nota { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 16px; align-items: center; margin: 26px 0 22px;
  padding: 16px 20px; border-radius: var(--gt-r); background: var(--gt-sup); border: 1px solid var(--gt-linha); text-decoration: none; color: inherit; width: fit-content;
  transition: border-color 150ms var(--sc-ease-out); }
.gt-nota:hover { border-color: var(--gt-azul); }
.gt-nota__n { grid-row: 1 / 3; font-family: var(--sc-font-display); font-weight: 900; font-size: 2.6rem; line-height: 1; letter-spacing: -.03em; }
.gt-nota__estrelas { position: relative; display: inline-block; line-height: 0; }
.gt-nota__estrelas svg { width: 22px; height: 22px; display: inline-block; }
.gt-nota__vazias svg { fill: rgba(15, 15, 25, .16); }
.gt-nota__cheias { position: absolute; inset: 0 auto 0 0; overflow: hidden; white-space: nowrap; }
.gt-nota__cheias svg { fill: var(--sc-accent); }
.gt-nota__t { font-size: .88rem; font-weight: 600; color: var(--gt-texto); margin-top: 4px; }

/* onde estamos */
.gt-onde { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(24px, 5vw, 80px); align-items: start; }
.gt-onde__texto .gt-lead { margin-top: 14px; }
.gt-onde__end { display: flex; gap: 12px; align-items: flex-start; margin-top: 24px; font-family: var(--sc-font-display); font-weight: 700; font-size: clamp(1.1rem, 1rem + .5vw, 1.4rem); line-height: 1.35; color: #fff; }
.gt-onde__end .gt-ic { color: var(--sc-accent); width: 26px; height: 26px; margin-top: 4px; }
.gt-onde__ficha { background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); padding: clamp(22px, 2.6vw, 32px); }
.gt-onde__ficha h3 { display: flex; align-items: center; gap: 10px; font-family: var(--sc-font-display); font-weight: 700; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--sc-ink-soft); margin: 22px 0 10px; }
.gt-onde__ficha h3:first-child { margin-top: 0; }
.gt-onde__ficha h3 .gt-ic { color: var(--sc-accent); width: 18px; height: 18px; }
.gt-horario { list-style: none; display: grid; gap: 6px; }
.gt-horario li { display: flex; justify-content: space-between; gap: 16px; color: var(--gt-texto); }
.gt-horario strong { font-variant-numeric: tabular-nums; }
.gt-tels { list-style: none; display: grid; gap: 6px; }
.gt-tels a, .gt-onde__ficha p a { display: inline-flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; font-weight: 700; }
.gt-tels a:hover, .gt-onde__ficha p a:hover { color: var(--sc-accent); }
.gt-tels .gt-ic { width: 18px; height: 18px; color: var(--sc-accent); }

/* fechamento da home */
.gt-fecho { padding-block: clamp(4rem, 8vw, 8rem); border-top: 1px solid var(--gt-linha); background: radial-gradient(90% 80% at 80% 60%, #15163a 0%, #0D0D0D 60%); }
.gt-fecho__grade { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: clamp(24px, 5vw, 80px); align-items: center; }
.gt-fecho__t { font-size: clamp(2rem, 1.2rem + 2.3vw, 3.3rem); font-weight: 900; max-width: 18ch; }
.gt-fecho .gt-lead { margin-top: 18px; }
.gt-fecho__os { margin-top: 18px; font-size: .95rem; color: var(--gt-texto); padding: 12px 14px; border-radius: var(--gt-r-btn); background: #141416; border: 1px dashed var(--gt-linha-2); }
.gt-painel--pronto { width: 100%; height: auto; }

/* ---------------------------------------------------------------- aberturas das páginas internas */
.gt-heroi-int { position: relative; padding-top: calc(var(--gt-topo-h) + clamp(2rem, 5vw, 4.5rem)); padding-bottom: clamp(2.6rem, 5vw, 4.5rem); overflow: hidden;
  background: radial-gradient(80% 90% at 85% 30%, #16173a 0%, #0f0f16 48%, #0D0D0D 72%); border-bottom: 1px solid var(--gt-linha); }
.gt-heroi-int__grade { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: clamp(24px, 5vw, 72px); align-items: center; }
.gt-heroi-int__lead { margin-top: 20px; font-size: clamp(1.1rem, 1rem + .45vw, 1.35rem); line-height: 1.55; color: #E4E5EA; max-width: 52ch; text-wrap: pretty; }
.gt-heroi-int__apoio { margin-top: 14px; color: var(--gt-texto); max-width: 60ch; }
.gt-trilha { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 22px; font-size: .86rem; font-weight: 600; color: var(--sc-ink-soft); }
.gt-trilha a { text-decoration: none; color: var(--sc-ink-soft); }
.gt-trilha a:hover { color: var(--sc-accent); }
.gt-trilha span[aria-current] { color: #fff; }
.gt-heroi-int__visual { display: flex; justify-content: center; }
.gt-celula { position: relative; width: min(100%, 360px); aspect-ratio: 1; display: grid; place-items: center; border-radius: 28px; overflow: hidden;
  background: radial-gradient(circle at 50% 42%, #1b1c22 0%, #0d0d10 70%); border: 1px solid #22232a; box-shadow: inset 0 1px 0 rgba(255,255,255,.07); }
.gt-celula__eng { position: absolute; width: 118%; right: -34%; bottom: -34%; fill: rgba(255, 255, 255, .035); }
.gt-celula__luz { position: relative; display: grid; place-items: center; width: 58%; aspect-ratio: 1; border-radius: 24%; background: #09090b; border: 1px solid #1d1d22; color: var(--c); }
.gt-celula__ic { width: 64%; height: 64%; filter: drop-shadow(0 0 14px color-mix(in oklab, var(--c) 60%, transparent)); }
.gt-celula--ambar { --c: var(--sc-accent); }
.gt-celula--vermelho { --c: var(--gt-vermelho); }
.gt-celula--verde { --c: var(--gt-verde); }
.gt-celula__rot { position: absolute; bottom: 18px; left: 0; right: 0; text-align: center; font-family: var(--sc-font-display); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; color: var(--sc-ink-soft); }
.gt-celula.is-acendendo .gt-celula__luz { animation: gt-acende 1.4s var(--sc-ease-out) both; }
@keyframes gt-acende { 0% { color: #2a2b31; } 18% { color: var(--c); } 26% { color: #2a2b31; } 40%, 100% { color: var(--c); } }
.gt-foto--heroi { width: 100%; border-radius: var(--gt-r); overflow: hidden; aspect-ratio: 4 / 3.4; }
.gt-foto--heroi img { width: 100%; height: 100%; object-fit: cover; }
.gt-marca-vis { position: relative; width: 100%; min-height: 240px; display: flex; flex-direction: column; justify-content: center; }
.gt-marca-vis__nome { font-weight: 900; font-size: clamp(3.4rem, 1.6rem + 6vw, 7.5rem); line-height: .9; letter-spacing: -.04em; color: transparent; -webkit-text-stroke: 1.5px rgba(255, 255, 255, .7); position: relative; z-index: 1; }
.gt-marca-vis__mod { position: relative; z-index: 1; margin-top: 14px; font-weight: 700; color: var(--sc-accent); }
.gt-marca-vis__eng { position: absolute; right: -20%; top: 50%; translate: 0 -50%; width: 70%; fill: rgba(255, 255, 255, .04); }
.gt-heroi-int--marca .gt-marca-vis__nome { font-size: clamp(3rem, 1.4rem + 5vw, 6.4rem); }

/* serviços (/servicos/) */
.gt-grupo + .gt-grupo { margin-top: clamp(3rem, 6vw, 5rem); }
.gt-grupo__cab { display: flex; align-items: center; gap: 16px; margin-bottom: 22px; }
.gt-grupo__ic { width: 40px; height: 40px; color: var(--sc-accent); }
.gt-servs { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.gt-serv { position: relative; display: block; height: 100%; padding: 24px 60px 24px 24px; background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); text-decoration: none;
  transition: background-color 180ms var(--sc-ease-out), border-color 180ms var(--sc-ease-out); }
.gt-serv h3 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.12rem; margin-bottom: 8px; }
.gt-serv p { color: var(--gt-texto); font-size: .98rem; }
.gt-serv__ir { position: absolute; right: 20px; top: 22px; color: var(--sc-accent); transition: transform 180ms var(--sc-ease-out); }
.gt-serv__ir .gt-ic { width: 22px; height: 22px; }
.gt-serv:hover { background: var(--gt-azul); border-color: var(--gt-azul); }
.gt-serv:hover p { color: rgba(255, 255, 255, .92); }
.gt-serv:hover .gt-serv__ir { color: #fff; transform: translateX(4px); }

/* marcas (/caminhoes/) */
.gt-marcas-grade { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.gt-marca-card { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 190px; padding: 22px; background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); text-decoration: none; overflow: hidden;
  transition: background-color 180ms var(--sc-ease-out), border-color 180ms var(--sc-ease-out); }
.gt-marca-card__nome { font-weight: 900; font-size: clamp(1.6rem, 1.1rem + 1.4vw, 2.4rem); line-height: .95; letter-spacing: -.02em; }
.gt-marca-card__mod { color: var(--sc-ink-soft); font-size: .92rem; margin-top: 8px; }
.gt-marca-card .gt-ic { position: absolute; top: 20px; right: 20px; color: var(--sc-accent); width: 22px; height: 22px; transition: transform 180ms var(--sc-ease-out); }
.gt-marca-card:hover { background: var(--gt-azul); border-color: var(--gt-azul); }
.gt-marca-card:hover .gt-marca-card__mod { color: #fff; }
.gt-marca-card:hover .gt-ic { color: #fff; transform: translateX(4px); }

/* contato */
.gt-contatos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.gt-contato { padding: clamp(22px, 2.6vw, 32px); background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); }
.gt-contato h2 { display: flex; align-items: center; gap: 10px; font-family: var(--sc-font-display); font-weight: 700; font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--sc-ink-soft); margin: 22px 0 10px; }
.gt-contato h2:first-child { margin-top: 0; }
.gt-contato h2 .gt-ic { color: var(--sc-accent); width: 18px; height: 18px; }
.gt-contato ul { list-style: none; display: grid; gap: 8px; margin-bottom: 18px; }
.gt-contato ul a, .gt-contato p a { display: inline-flex; gap: 10px; align-items: center; color: #fff; font-weight: 700; text-decoration: none; }
.gt-contato ul a:hover, .gt-contato p a:hover { color: var(--sc-accent); }
.gt-contato ul .gt-ic { width: 18px; height: 18px; color: var(--sc-accent); }
.gt-contato--whats { background: var(--gt-azul); border-color: var(--gt-azul); }
.gt-contato--whats h2, .gt-contato--whats h2 .gt-ic, .gt-contato--whats ul .gt-ic { color: #fff; }
.gt-contato__grande { font-family: var(--sc-font-display); font-weight: 800 !important; font-size: 1.5rem; }
.gt-contato__redes { display: flex; gap: 16px; }
.gt-mapa { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(20px, 4vw, 56px); align-items: stretch; }
.gt-mapa__texto p { color: var(--gt-texto); margin-top: 14px; }
.gt-mapa__quadro { border-radius: var(--gt-r); overflow: hidden; min-height: 360px; background: #141416; border: 1px solid var(--gt-linha); }
.gt-mapa__quadro iframe { width: 100%; height: 100%; min-height: 360px; border: 0; filter: grayscale(.6) invert(.9) hue-rotate(180deg) contrast(.9); }

/* ---------------------------------------------------------------- blog */
.gt-artigos { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.gt-artigo { display: flex; flex-direction: column; height: 100%; background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); overflow: hidden; text-decoration: none;
  transition: border-color 180ms var(--sc-ease-out), background-color 180ms var(--sc-ease-out); }
.gt-artigo__img { aspect-ratio: 16 / 9; overflow: hidden; background: #1a1a1d; }
.gt-artigo__img img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.1) brightness(.85); transition: filter 300ms var(--sc-ease-out), transform 500ms var(--sc-ease-out); }
.gt-artigo:hover .gt-artigo__img img { filter: grayscale(.2) contrast(1.05); transform: scale(1.03); }
.gt-artigo__corpo { display: flex; flex-direction: column; gap: 10px; padding: 22px; flex: 1; }
.gt-artigo__cat { align-self: flex-start; font-family: var(--sc-font-display); font-weight: 700; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; padding: 6px 10px; border-radius: var(--gt-r-badge); background: var(--sc-accent); color: #0D0D0D; }
.gt-artigo h2 { font-family: var(--sc-font-display); font-weight: 800; font-size: 1.12rem; line-height: 1.25; letter-spacing: -.01em; color: #fff; }
.gt-artigo p { color: var(--gt-texto); font-size: .95rem; }
.gt-artigo__ler { margin-top: auto; padding-top: 6px; display: inline-flex; align-items: center; gap: 8px; color: var(--sc-accent); font-weight: 700; }
.gt-artigo__ler .gt-ic { width: 18px; height: 18px; transition: transform 160ms var(--sc-ease-out); }
.gt-artigo:hover { border-color: var(--gt-linha-2); }
.gt-artigo:hover .gt-artigo__ler .gt-ic { transform: translateX(3px); }
.gt-paginas { margin-top: 36px; display: flex; gap: 8px; }
.gt-paginas .page-numbers { display: inline-grid; place-items: center; min-width: 44px; height: 44px; padding: 0 12px; border-radius: var(--gt-r-btn); border: 1px solid var(--gt-linha-2); text-decoration: none; font-weight: 700; }
.gt-paginas .current { background: var(--sc-accent); color: #0D0D0D; border-color: var(--sc-accent); }

.gt-post__cab { padding-top: calc(var(--gt-topo-h) + clamp(2rem, 5vw, 4rem)); padding-bottom: clamp(2rem, 4vw, 3rem); background: radial-gradient(80% 90% at 85% 20%, #16173a 0%, #0f0f16 48%, #0D0D0D 72%); border-bottom: 1px solid var(--gt-linha); }
.gt-post__cab .gt-h1 { font-size: clamp(1.9rem, 1.3rem + 2.4vw, 3.4rem); max-width: 26ch; }
.gt-post__meta { margin-top: 18px; color: var(--sc-ink-soft); font-size: .95rem; display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; }
.gt-post__meta .gt-artigo__cat { font-size: .68rem; }
.gt-post__grade { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(28px, 5vw, 72px); align-items: start; padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.gt-post__corpo { max-width: 70ch; font-size: 1.1rem; line-height: 1.72; color: #D8DAE0; }
.gt-post__corpo > * + * { margin-top: 1.1em; }
.gt-post__corpo h2 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: clamp(1.35rem, 1.1rem + .9vw, 1.8rem); line-height: 1.12; letter-spacing: -.01em; color: #fff; margin-top: 2em; }
.gt-post__corpo h3 { font-family: var(--sc-font-display); font-weight: 800; font-size: 1.2rem; color: #fff; margin-top: 1.6em; }
.gt-post__corpo ul, .gt-post__corpo ol { padding-left: 1.3em; }
.gt-post__corpo li + li { margin-top: .5em; }
.gt-post__corpo li::marker { color: var(--sc-accent); }
.gt-post__corpo .wp-block-buttons { margin-top: 2em; display: flex; flex-wrap: wrap; gap: 12px; }
.gt-post__corpo .wp-block-button__link { display: inline-flex; align-items: center; min-height: 52px; padding: 0 22px !important; border-radius: var(--gt-r-btn) !important; background: var(--sc-accent) !important;
  color: #0D0D0D !important; font-weight: 700; text-decoration: none !important; }
.gt-post__corpo .wp-block-button__link:hover { background: #FFA53A !important; }
.gt-post__corpo table { width: 100%; border-collapse: collapse; font-size: .98rem; }
.gt-post__corpo th, .gt-post__corpo td { border-bottom: 1px solid var(--gt-linha-2); padding: 10px 12px; text-align: left; }
.gt-post__foto { border-radius: var(--gt-r); overflow: hidden; aspect-ratio: 21 / 9; margin-bottom: 2em; }
.gt-post__foto img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.08) brightness(.8); }
.gt-post__lado { position: sticky; top: calc(var(--gt-topo-h) + 24px); display: grid; gap: 12px; }
.gt-post__cta { background: var(--gt-azul); border-radius: var(--gt-r); padding: 26px; color: #fff; }
.gt-post__cta h2 { font-family: var(--sc-font-display); font-weight: 800; text-transform: uppercase; font-size: 1.3rem; line-height: 1.1; }
.gt-post__cta p { margin-top: 10px; color: rgba(255, 255, 255, .9); font-size: .98rem; }
.gt-post__cta .gt-btn { width: 100%; margin-top: 18px; }
.gt-post__luz { display: flex; gap: 14px; align-items: center; padding: 18px 20px; background: var(--gt-sup); border: 1px solid var(--gt-linha); border-radius: var(--gt-r); text-decoration: none; font-weight: 700; }
.gt-post__luz .gt-ic { width: 30px; height: 30px; color: var(--sc-accent); }
.gt-post__luz:hover { border-color: var(--sc-accent); }
.gt-relacionados { border-top: 1px solid var(--gt-linha); }

/* ---------------------------------------------------------------- rodapé */
.gt-rodape { position: relative; overflow: hidden; border-top: 1px solid var(--gt-linha); background: #0a0a0b; padding-top: clamp(3.5rem, 6vw, 5.5rem); }
.gt-rodape__eng { position: absolute; width: 34rem; right: -10rem; bottom: -12rem; fill: rgba(255, 255, 255, .025); pointer-events: none; }
.gt-rodape__grade { position: relative; display: grid; grid-template-columns: 1.3fr 1fr 1fr 1.2fr; gap: clamp(24px, 4vw, 56px); }
.gt-rodape__marca .gt-logo { height: 38px; }
.gt-rodape__marca p { margin-top: 18px; color: var(--sc-ink-soft); font-size: .95rem; max-width: 40ch; }
.gt-rodape h2 { font-family: var(--sc-font-display); font-weight: 700; font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; color: var(--sc-ink-soft); margin-bottom: 14px; }
.gt-rodape__h2b { margin-top: 26px; }
.gt-rodape ul { list-style: none; display: grid; gap: 7px; }
.gt-rodape ul a { text-decoration: none; color: #DADCE2; font-size: .95rem; }
.gt-rodape ul a:hover { color: var(--sc-accent); }
.gt-rodape__social { display: flex; gap: 18px; flex-wrap: wrap; }
.gt-rodape__social a { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; color: #DADCE2; font-weight: 600; font-size: .92rem; }
.gt-rodape__social a:hover { color: var(--sc-accent); }
.gt-rodape__social .gt-ic { width: 20px; height: 20px; }
.gt-rodape__contato .gt-btn { margin-bottom: 18px; }
.gt-rodape__contato address { margin: 14px 0; color: #DADCE2; font-size: .95rem; }
.gt-horario--rodape li { font-size: .92rem; }
.gt-rodape__base { position: relative; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: clamp(2.5rem, 5vw, 4rem); padding-block: 22px; border-top: 1px solid var(--gt-linha); font-size: .85rem; color: var(--sc-ink-soft); }
.gt-rodape__base a { color: var(--sc-ink-soft); }

/* 404 */
.gt-erro { padding-top: calc(var(--gt-topo-h) + 6rem); padding-bottom: 6rem; }
.gt-erro .gt-lead { margin-top: 16px; }

/* ---------------------------------------------------------------- seções claras */
.gt-secao { background: #FFFFFF; color: #171717;
  --sc-ink: #171717; --sc-ink-soft: #5F626A; --gt-texto: #3F424A; --gt-sup: #F3F3F0; --gt-linha: rgba(15, 15, 25, .1); --gt-linha-2: rgba(15, 15, 25, .2); }
.gt-secao--sinais, .gt-secao--passos, .gt-secao--onde, .gt-secao--depos, .gt-secao--intro, .gt-orc, .gt-sede, .gt-secao--grupos, .gt-secao--contatos {
  background: #F1F1EE; --gt-sup: #FFFFFF; }
.gt-secao--intro + .gt-secao--sinais { padding-top: var(--gt-sec); }
.gt-secao--intro { padding-bottom: var(--gt-sec); }
.gt-secao :focus-visible { outline-color: var(--gt-azul); }
.gt-secao .gt-rotulo { color: var(--gt-azul); }
.gt-secao strong { color: #171717; }
.gt-secao .gt-btn--linha { border-color: rgba(23, 23, 23, .35); color: #171717; }
.gt-secao .gt-btn--linha:hover { border-color: var(--gt-azul); color: var(--gt-azul); background: rgba(43, 46, 204, .06); }
.gt-secao .gt-prosa__corpo a, .gt-secao .gt-intro a, .gt-secao .gt-faq__resp a, .gt-secao .gt-sinais a, .gt-secao .gt-ficha a, .gt-secao .gt-lista a,
.gt-secao .gt-post__corpo a, .gt-secao .gt-sinais__extra a, .gt-secao .gt-mapa__texto a { color: #171717; text-decoration-color: var(--sc-accent); }
.gt-secao .gt-prosa__corpo a:hover, .gt-secao .gt-intro a:hover, .gt-secao .gt-faq__resp a:hover, .gt-secao .gt-sinais a:hover, .gt-secao .gt-ficha a:hover,
.gt-secao .gt-lista a:hover, .gt-secao .gt-post__corpo a:hover { color: var(--gt-azul); }
.gt-secao .gt-intro { color: #25272C; }
.gt-secao .gt-ficha h3, .gt-secao .gt-prosa__corpo h3 { color: #171717; }
.gt-secao .gt-linha { color: #171717; }
.gt-secao .gt-linha__ic { color: var(--gt-azul); }
.gt-secao .gt-linha:hover, .gt-secao .gt-linha:focus-visible, .gt-secao .gt-linha:hover .gt-linha__ic, .gt-secao .gt-linha:focus-visible .gt-linha__ic { color: #fff; }
.gt-secao .gt-chiplink { color: #171717; background: #fff; }
.gt-secao .gt-chiplink .gt-ic { color: var(--gt-azul); }
.gt-secao .gt-chiplink:hover { border-color: var(--gt-azul); color: var(--gt-azul); }
.gt-secao .gt-faq__item summary { color: #171717; }
.gt-secao .gt-faq__item summary:hover { color: var(--gt-azul); }
.gt-secao .gt-faq__mais::before, .gt-secao .gt-faq__mais::after { background: var(--gt-azul); }
.gt-secao .gt-depo blockquote p { color: #171717; }
.gt-secao .gt-onde__end { color: #171717; }
.gt-secao .gt-onde__end .gt-ic, .gt-secao .gt-onde__ficha h3 .gt-ic, .gt-secao .gt-tels .gt-ic { color: var(--gt-azul); }
.gt-secao .gt-tels a, .gt-secao .gt-onde__ficha p a { color: #171717; }
.gt-secao .gt-tels a:hover, .gt-secao .gt-onde__ficha p a:hover { color: var(--gt-azul); }
.gt-secao .gt-numero b { color: #171717; }
.gt-secao .gt-numero__u { color: var(--gt-azul); }
.gt-secao .gt-clientes__lista li { color: #171717; }
.gt-secao .gt-passo__n { color: var(--gt-azul); }
.gt-secao .gt-serv__ir { color: var(--gt-azul); }
.gt-secao .gt-serv:hover, .gt-secao .gt-serv:hover h3, .gt-secao .gt-serv:hover .gt-serv__ir { color: #fff; }
.gt-secao .gt-marca-card { color: #171717; }
.gt-secao .gt-marca-card .gt-ic { color: var(--gt-azul); }
.gt-secao .gt-marca-card:hover, .gt-secao .gt-marca-card:hover .gt-ic { color: #fff; }
.gt-secao .gt-contato a { color: #171717; }
.gt-secao .gt-contato a:hover { color: var(--gt-azul); }
.gt-secao .gt-contato h2 .gt-ic, .gt-secao .gt-contato ul .gt-ic { color: var(--gt-azul); }
.gt-secao .gt-contato--whats, .gt-secao .gt-contato--whats a, .gt-secao .gt-contato--whats h2, .gt-secao .gt-contato--whats .gt-ic { color: #fff; }
.gt-secao .gt-mapa__quadro { background: #E6E6E2; }
.gt-secao .gt-mapa__quadro iframe { filter: none; }
.gt-secao .gt-grupo__ic, .gt-secao .gt-prosa__ic { color: var(--gt-azul); }
.gt-secao .gt-lista__ic { color: var(--gt-azul); }
.gt-secao .gt-lista__ponto { background: var(--gt-azul); }
.gt-secao .gt-artigo h2 { color: #171717; }
.gt-secao .gt-artigo__ler { color: var(--gt-azul); }
.gt-secao .gt-artigo { background: #fff; }
.gt-secao .gt-prova__porque { border-left-color: var(--gt-azul); }
.gt-secao .gt-sinal { background: #fff; }
/* dentro dos painéis azuis o texto volta a ser branco */
.gt-secao .gt-azul, .gt-secao .gt-azul strong, .gt-secao .gt-azul .gt-lista li, .gt-secao .gt-azul .gt-lista__ic,
.gt-secao .gt-fichas--azul .gt-ficha h3, .gt-secao .gt-fichas--azul strong, .gt-secao .gt-painel-orc strong { color: #fff; }
.gt-secao .gt-azul .gt-rotulo { color: #fff; }
.gt-secao .gt-azul a, .gt-secao .gt-fichas--azul a { color: #fff; text-decoration-color: #fff; }
.gt-secao .gt-azul .gt-btn--claro { color: #fff; border-color: rgba(255, 255, 255, .6); }
.gt-secao .gt-azul .gt-btn--escuro { color: #fff; }
/* artigo do blog em fundo claro */
.gt-post .gt-post__grade { padding-block: 0; }
.gt-post .gt-post__corpo { color: #2A2C31; }
.gt-post .gt-post__corpo h2, .gt-post .gt-post__corpo h3 { color: #171717; }
.gt-post .gt-post__luz { background: #F3F3F0; color: #171717; }
.gt-post .gt-post__luz .gt-ic { color: var(--gt-azul); }
.gt-post .gt-post__foto img { filter: grayscale(1) contrast(1.05); }

/* ---------------------------------------------------------------- responsivo */
@media (hover: hover) and (pointer: fine) {
  .gt-nav__item:hover > .gt-mega, .gt-nav__item:hover > .gt-sub, .gt-nav__item:focus-within > .gt-mega, .gt-nav__item:focus-within > .gt-sub { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
}
@media (max-width: 1180px) {
  .gt-nav, .gt-topo__cta { display: none; }
  .gt-topo__menu { display: inline-flex; }
}
@media (max-width: 1024px) {
  .gt-orc__grade, .gt-prova__grade, .gt-sede__grade, .gt-estrutura, .gt-osc__grade, .gt-fecho__grade, .gt-frotah__painel, .gt-onde, .gt-faq, .gt-depos, .gt-prosa, .gt-mapa, .gt-heroi-int__grade, .gt-post__grade { grid-template-columns: 1fr; }
  .gt-painel-orc, .gt-prosa__t, .gt-faq__cab, .gt-post__lado { position: static; }
  .gt-idx__grade, .gt-secao--indice .gt-linhas { grid-template-columns: 1fr 1fr; }
  .gt-passos { grid-template-columns: 1fr 1fr; }
  .gt-marcas-grade { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gt-contatos, .gt-fichas--3 { grid-template-columns: 1fr 1fr; }
  .gt-artigos { grid-template-columns: 1fr 1fr; }
  .gt-rodape__grade { grid-template-columns: 1fr 1fr; }
  .gt-heroi-int__visual { justify-content: flex-start; }
  .gt-celula { width: min(100%, 240px); }
  .gt-marca-vis { min-height: 0; }
  .gt-sede__quadro { aspect-ratio: 16 / 11; }
  .gt-numeros { grid-template-columns: 1fr 1fr; }
  .gt-numero:nth-child(2n) { border-right: 0; }
  .gt-numero:nth-child(2n+1) { padding-left: 0; }
  .gt-numero:nth-child(n+3) { border-top: 1px solid var(--gt-linha); }
  .gt-numero:last-child:nth-child(odd) { grid-column: 1 / -1; border-right: 0; }
  .gt-osc__grade { padding-top: calc(var(--gt-topo-h) - 20px); gap: 22px; }
  .gt-fos__l { padding: 11px 0; }
  .gt-fos__l p { font-size: .9rem; }
}
@media (max-width: 860px) {
  :root { --gt-topo-h: 64px; }
  .gt-logo { height: 30px; }
  body { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }
  .gt-barra { display: grid; grid-template-columns: 1.3fr 1fr 1fr; position: fixed; left: 0; right: 0; bottom: 0; z-index: 75; background: #121214; border-top: 1px solid var(--gt-linha-2);
    padding: 8px 8px calc(8px + env(safe-area-inset-bottom)); gap: 8px; }
  .gt-barra a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; border-radius: var(--gt-r-btn); text-decoration: none; font-weight: 700; font-size: .92rem; color: #fff; background: #1c1c20; }
  .gt-barra a .gt-ic { width: 20px; height: 20px; color: var(--sc-accent); }
  .gt-barra .gt-barra__whats { background: var(--sc-accent); color: #0D0D0D; }
  .gt-barra .gt-barra__whats .gt-ic { color: #0D0D0D; }
  .gt-heroi-int__texto .gt-acoes .gt-btn:first-child { flex: 1 1 100%; }
}
@media (max-width: 720px) {
  .gt-heroi__sub { font-size: 1rem; }
  .gt-heroi__texto .gt-acoes { gap: 8px; }
  .gt-heroi__texto .gt-btn { min-height: 48px; padding: 0 16px; font-size: .95rem; }
  .gt-idx__grade, .gt-secao--indice .gt-linhas, .gt-passos, .gt-contatos, .gt-fichas, .gt-fichas--3, .gt-fichas--4, .gt-sinais__lista, .gt-servs, .gt-artigos, .gt-lista--2col { grid-template-columns: 1fr; }
  .gt-faixa__in { grid-template-columns: 1fr; }
  .gt-rodape__grade { grid-template-columns: 1fr; }
  .gt-marcas-grade { grid-template-columns: 1fr 1fr; }
  .gt-marca-card { min-height: 140px; }
  .gt-acoes .gt-btn { flex: 1 1 auto; }
  .gt-numero b { font-size: 2.3rem; }
  .gt-numero { padding-right: 12px; }
  .gt-numero + .gt-numero { padding-left: 14px; }
  .gt-marcap__nome { font-size: clamp(3.6rem, 16vw, 5rem); }
  .gt-fos__carimbo { right: 4%; top: 58%; }
  .gt-osc__texto .gt-lead { font-size: 1rem; }
  .gt-osc__grade .gt-h2 { font-size: 1.7rem; }
}
@media (max-width: 720px) and (max-height: 760px) {
  .gt-heroi__sub { display: none; }
  .gt-osc__texto .gt-lead { display: none; }
}

@media (max-width: 560px) {
  .gt-clientes__lista { grid-template-columns: 1fr 1fr; }
  .gt-clientes__lista li { min-height: 64px; padding: 12px; font-size: .86rem; }
  .gt-heroi-int__visual .gt-celula { width: 150px; border-radius: 20px; }
  .gt-heroi-int__visual .gt-celula__rot { display: none; }
  .gt-probs { grid-template-columns: 1fr 1fr; gap: 8px; }
  .gt-prob { grid-template-columns: 1fr; grid-template-rows: auto auto; padding: 12px; min-height: 0; row-gap: 8px; }
  .gt-prob__ic { grid-row: auto; width: 26px; height: 26px; margin: 0; }
  .gt-prob__nome { font-size: .9rem; }
  .gt-prob__dica { display: none; }
  .gt-selo { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .gt-heroi { align-items: flex-end; padding-bottom: calc(84px + env(safe-area-inset-bottom)); }
  /* no celular as duas engrenagens ficam lado a lado numa faixa no alto (o SVG gira 50° em torno da grande);
     --d é o diâmetro da grande, medido pela altura livre acima do texto */
  .gt-heroi { --d: clamp(84px, calc(100svh - 560px), 230px); }
  .gt-heroi__eng { width: calc(var(--d) * 2.167); right: calc(var(--d) * -0.851); top: calc(var(--gt-topo-h) + 14px - var(--d) * .2); bottom: auto;
    translate: 0 0; rotate: 50deg; transform-origin: 53.8% 40%; }
  .gt-heroi .gt-acoes .gt-btn { flex: 1 1 100%; }
}
/* ---------------------------------------------------------------- menos movimento */
@media (prefers-reduced-motion: reduce) {
  .gt-fos, .gt-fos__l { --v: 1; --v0: 1; }
  .gt-fos__carimbo { --c: 1; }
  .gt-linha::before { transition: none; }
  .gt-celula.is-acendendo .gt-celula__luz { animation: none; }
  .gt-heroi__h1, .gt-heroi__l1, .gt-heroi__l2, .gt-heroi__texto .gt-acoes { animation: none; }
}
.gt-menos .gt-heroi__frase > span { grid-area: auto; opacity: 1 !important; transform: none !important; }
