/* Ajustes específicos do site institucional sobre a base compartilhada (../_shared/base.css) */

/* Largura de conteúdo do institucional — mais generosa que o padrão de 1180px
   da base compartilhada, pra aproveitar melhor telas grandes (tela cheia).
   .wrap e os "inner" de header/footer usam a mesma medida, assim tudo —
   logo, nav, títulos de seção, footer — fica alinhado na mesma borda. */
:root{--container-max:1320px;--container-pad:clamp(16px, 4.5vw, 28px);--edge-pad:max(var(--container-pad), calc((100vw - var(--container-max)) / 2 + var(--container-pad)));}
.wrap{max-width:var(--container-max);padding:0 var(--container-pad);}
.site-header-inner,.site-footer-inner{max-width:var(--container-max);}

/* Rodapé institucional ganha uma 4ª coluna ("Serviços", com os 7 links de
   3D/IT) que os outros sites da rede não têm — por isso o grid muda aqui,
   não em base.css (que fica idêntico em todos os sites). Só no desktop:
   abaixo de 880px o base.css já derruba pra 1 coluna, e essa regra teria a
   mesma especificidade — teria que vir DEPOIS pra não quebrar o empilhamento
   mobile, então preferimos travar num media query próprio em vez de disputar
   ordem de cascata. */
@media (min-width:881px){
  .site-footer-inner{grid-template-columns:1.1fr 0.9fr 1fr 0.9fr;}
}

/* A faixa de status (topo, com o nome do site e os ícones sociais) é uma
   barra de fundo edge-to-edge — isso é intencional, ela deve pintar até a
   borda da janela. O problema era o CONTEÚDO dela: base.css usa um padding
   fixo de 28px, então o texto/ícones ficavam bem mais pra fora do que o
   menu principal logo abaixo (que já segue a régua de --container-max).
   Aqui só o padding lateral muda pra acompanhar essa régua — o fundo
   continua indo de ponta a ponta normalmente. */
.status-ribbon{padding-left:var(--edge-pad);padding-right:var(--edge-pad);}

/* Evita que o header fixo cubra o topo das seções ao navegar por âncora
   (#mais-vendidos, #catalogo, #sustentabilidade). */
html{scroll-padding-top:78px;}

/* Hero em vídeo — mesmo esquema de banner da Vincere (vincere.lafym.studio),
   adaptado à paleta do institucional. Troque assets/video/hero.mp4 pelo vídeo definitivo.
   Altura e tipografia usam clamp() (escala contínua entre um mínimo e um
   máximo, com base na largura da viewport) em vez de um salto único de
   breakpoint em 880px — isso evita tanto "vídeo gigante" em celulares
   grandes quanto um corte abrupto exatamente em 880px.
   IMPORTANTE: usamos min-height (não height fixo) + o próprio .hero.hero-video
   como flex container centralizando o conteúdo. Com height fixo + overflow:hidden,
   num celular estreito o conteúdo (eyebrow + título + texto + 2 botões) podia
   precisar de mais altura do que o clamp reservava, e a sobra ficava cortada
   em cima e embaixo (o eyebrow sumia, o botão "nosso_compromisso" aparecia
   partido). Com min-height, a seção nunca fica menor que o clamp, mas cresce
   se o conteúdo precisar — nunca corta nada. */
.hero.hero-video{position:relative;overflow:hidden;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;min-height:clamp(320px, 52vw, 520px);}
.hero-video-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(46,32,24,.55) 0%, rgba(46,32,24,.78) 100%);z-index:1;}
.hero-video .hero-inner{position:relative;z-index:2;width:100%;max-width:720px;margin:0 auto;padding:clamp(24px, 6vw, 36px) clamp(20px, 5vw, 28px);text-align:center;display:flex;flex-direction:column;align-items:center;}
.hero-video .eyebrow.on-dark{color:var(--blue-light);}
.hero-video h1{color:#fff;font-size:clamp(23px, 4.4vw + 8px, 42px);line-height:1.16;margin:0 0 clamp(10px, 2vw, 18px);max-width:640px;}
.hero-video h1 .accent{color:var(--blue-light);}
.hero-video .sub{color:#E7DFD3;font-size:clamp(13px, 1.6vw + 9px, 16px);max-width:560px;margin:0 0 clamp(16px, 3vw, 30px);}
.hero-video .hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.btn-outline-dark{background:transparent;color:#fff;border-color:rgba(255,255,255,0.45);}
.btn-outline-dark:hover{background:rgba(255,255,255,0.08);border-color:#fff;}

/* Hero compacto — mesmo componente do banner da Home (vídeo + scrim +
   texto centralizado), só que com ~metade da altura. Usado no topo das
   páginas internas (FAQ, Contato) pra dar a mesma identidade visual da
   Home nelas — sem isso, essas páginas tinham pouco conteúdo cobrindo a
   área do topo e a grade sutil de fundo do body (--grid-line) ficava
   grande e visível ("quadriculado"). Com o hero cobrindo essa área com
   fundo opaco, o efeito some, igual já acontecia na Home. */
.hero-video.hero-video--compact{min-height:clamp(180px, 22vw, 260px);}
.hero-video--compact .hero-inner{padding-top:clamp(16px, 3vw, 22px);padding-bottom:clamp(16px, 3vw, 22px);}
.hero-video--compact .eyebrow{margin-bottom:10px;}
.hero-video--compact h1{font-size:clamp(21px, 2.2vw + 12px, 30px);margin:0 0 clamp(6px, 1.2vw, 10px);}
.hero-video--compact .sub{margin:0 0 clamp(10px, 2vw, 16px);}

/* Vitrines em thumb — usado no "Top 10 mais vendidos" e em "Nossas coleções",
   pra manter a mesma linguagem visual nas duas seções: cartão com cor/foto
   sólida que dá lugar a um trecho de vídeo no hover, dentro de uma esteira
   com rolagem horizontal e setas prev/next. Troque cores/fotos/vídeos pelos
   definitivos assim que tiver os assets reais de cada item. */
.thumb-showcase{background:var(--ink);padding:clamp(40px, 8vw, 70px) 0 clamp(32px, 6vw, 60px);overflow:hidden;}
.thumb-showcase + .thumb-showcase{padding-top:10px;}
.thumb-showcase-head h2{color:#fff;font-size:clamp(22px, 4vw + 10px, 30px);margin:0 0 6px;}
.thumb-showcase-head h2 .thin{font-weight:400;color:#C9BCA8;}
.thumb-showcase-head p{margin:0;font-size:14px;color:#A8917E;}
/* O texto de apoio muda conforme o dispositivo: "passe o mouse" não faz
   sentido em quem só tem toque (não existe preview em vídeo no celular,
   ver app.js/setupThumbHoverVideo). Por padrão mostra a versão de toque;
   a media query troca pra versão de mouse só quando hover real existe. */
.mouse-copy{display:none;}
.touch-copy{display:inline;}
@media (hover:hover) and (pointer:fine){
  .mouse-copy{display:inline;}
  .touch-copy{display:none;}
}
/* A esteira antes era full-bleed (ia até a borda real da janela, com cards
   "vazando" pra fora da coluna central que alinha o resto do site). Agora
   o wrapper fica contido na mesma largura de --container-max, centralizado
   e com overflow:hidden — nenhum card aparece além dessa borda, nem em
   repouso nem no meio da rolagem. O fundo escuro da seção continua
   full-bleed (isso é só cor, não conteúdo), só os cards ficam contidos. */
.thumb-scroll-wrap{position:relative;margin:clamp(22px, 4vw, 36px) auto 0;max-width:var(--container-max);overflow:hidden;}
.thumb-track{display:flex;align-items:center;gap:clamp(10px, 2.5vw, 22px);overflow-x:auto;scroll-behavior:smooth;padding:clamp(16px, 4vw, 24px) var(--container-pad);scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-padding-left:var(--container-pad);}
/* Esmaecimento nas pontas — sinaliza visualmente que sempre pode ter mais
   um card pra rolar ali (agora que a rolagem é só por arrasto/toque, sem
   setas). Sobre o fundo escuro vazio ele é invisível, só aparece por cima
   dos cards. Também escala com clamp(): em 70px fixo, num card de celular
   de ~120px de largura o esmaecimento cobria mais da metade do card
   (ficava com cara de "cortado"/apagado). Agora acompanha a largura da tela. */
.thumb-scroll-wrap::before,.thumb-scroll-wrap::after{content:"";position:absolute;top:0;bottom:0;width:clamp(26px, 8vw, 70px);z-index:4;pointer-events:none;}
.thumb-scroll-wrap::before{left:0;background:linear-gradient(to right, var(--ink) 10%, rgba(46,32,24,0) 100%);}
.thumb-scroll-wrap::after{right:0;background:linear-gradient(to left, var(--ink) 10%, rgba(46,32,24,0) 100%);}
.thumb-track::-webkit-scrollbar{display:none;}
/* Cursor de "mão" sinaliza que dá pra clicar e arrastar (ver app.js) —
   no touch isso não aparece, a rolagem por toque já é nativa. */
.thumb-track{cursor:grab;}
.thumb-track.is-dragging{cursor:grabbing;}
.thumb-track.is-dragging .thumb-item{pointer-events:none;}
/* Em telas de toque, o carrossel se comporta como uma prateleira de app de
   streaming: o dedo solta e o card mais próximo "encaixa" (scroll-snap),
   em vez de parar num ponto qualquer no meio de dois cards. Só ativa em
   pointer:coarse pra não interferir no arrasto de mouse do desktop, que já
   foi testado e funciona sem snap. */
@media (pointer:coarse){
  .thumb-track{scroll-snap-type:x mandatory;}
  .thumb-item{scroll-snap-align:start;}
}
/* .thumb-rank era um irmão flex antes do card (com margem negativa pra
   "espiar" por trás dele) — isso empurrava a caixa do .thumb-item pra
   direita em ~22px, então a fileira do Top 10 nunca alinhava com o título
   ou com a fileira "Nossas coleções" (que não tem numeração) por baixo.
   Agora o número é um selo posicionado por cima/atrás do card (não ocupa
   espaço no layout), então a borda esquerda do .thumb-item é a borda do
   card em ambas as vitrines — mesma referência de alinhamento nas duas. */
.thumb-item{flex:0 0 auto;position:relative;text-decoration:none;}
/* Selo do número (Top 10) — escala com clamp() em vez de pular de 68px pra
   48px exatamente em 880px; assim celulares grandes (ex: 820px) não ficam
   nem "gigante demais" nem "cortado de repente". */
.thumb-rank{position:absolute;left:clamp(-20px, calc(-1.5vw - 8px), -14px);top:50%;transform:translateY(-50%);font-family:var(--display);font-weight:700;font-size:clamp(42px, 10vw, 68px);line-height:1;color:var(--blue);opacity:.9;user-select:none;pointer-events:none;z-index:1;}
/* Card — largura fluida (clamp) + aspect-ratio fixo (mantém a proporção
   150:195 sem precisar recalcular a altura em cada breakpoint). Piso
   subiu de 104px pra 124px: card pequeno demais não parece catálogo de
   streaming, parece lista de ícone — 124px com o gap mais justo (acima)
   deixa ~2,5 cards visíveis por vez no celular, que é a proporção usada
   por apps tipo Netflix/Spotify nas prateleiras horizontais. */
.thumb-card{position:relative;z-index:2;width:clamp(124px, 32vw, 150px);aspect-ratio:150/195;border-radius:8px;overflow:hidden;background:#0d0d0d;box-shadow:0 18px 34px rgba(0,0,0,.45);flex:0 0 auto;}
.thumb-card-color{position:absolute;inset:0;transition:opacity .35s ease;}
.thumb-card-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .35s ease;}
.thumb-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s ease;}
/* O preview em vídeo só existe em dispositivos com mouse de verdade
   (hover:hover + pointer:fine) — em telas de toque não há JS ligando o
   vídeo (ver app.js), então sem essa media query um "hover fantasma" de
   toque deixaria o card com opacity:1 num <video> nunca carregado (tela
   preta em cima da cor/foto). No mobile o toque simplesmente navega. */
@media (hover:hover) and (pointer:fine){
  .thumb-item:hover .thumb-card video{opacity:1;}
  .thumb-item:hover .thumb-card-color,
  .thumb-item:hover .thumb-card-photo{opacity:0;}
}
/* Sombra por trás do rótulo — sem isso, o texto branco some quando a foto/logo
   de fundo é clara (ex: fundo branco). Fica sutil o bastante pra não aparecer
   sobre fotos/cores já escuras, mas garante contraste em qualquer imagem. */
.thumb-card::after{content:"";position:absolute;top:0;left:0;right:0;height:64px;z-index:2;pointer-events:none;background:linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,0) 100%);}
.thumb-card-label{position:absolute;top:14px;left:0;right:0;z-index:3;text-align:center;font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#fff;padding:0 12px;line-height:1.4;text-shadow:0 2px 8px rgba(0,0,0,.55);}

/* Faixa escura contínua — une "Quem somos", "Como cada peça nasce",
   "Sustentabilidade" e o CTA final num só fundo (var(--ink)), emendando
   direto com o "Nossas coleções" logo acima. .dark-band (base.css) já
   recolore eyebrow/h2/muted/process-step; aqui só adaptamos os componentes
   que ainda não tinham uma versão escura (fact-card, about-grid). */
.story-band{padding-bottom:70px;}
/* Card do ícone da Lafym no "Quem somos" — reaproveita a moldura do
   .fact-card (borda + cantos "+", já com a versão escura logo abaixo)
   só que centralizando a imagem em vez das linhas Fundação/Propósito/
   Modelo que tinha antes. */
.fact-card--icon{display:flex;align-items:center;justify-content:center;min-height:220px;padding:32px;}
.about-icon{width:100%;max-width:190px;height:auto;display:block;}
.dark-band.story-band .about-grid p{color:#C9BCA8;}
.dark-band.story-band .fact-card{background:rgba(247,239,228,0.05);border-color:rgba(247,239,228,0.25);}
.dark-band.story-band .fact-card .corner{color:var(--blue-light);}
.dark-band.story-band .fact-row{border-bottom-color:rgba(247,239,228,0.12);}
.dark-band.story-band .fact-row span:first-child{color:#B7A892;}
.dark-band.story-band .fact-row span:last-child{color:#fff;}
/* Clientes — vitrine de logos em loop infinito, entre "Quem somos" e "Como
   cada peça nasce". Bem diferente dos carrosséis de Top10/Coleções:
   - Sem interação nenhuma (não arrasta, não clica, não tem vídeo no hover/
     toque) — só fica rodando sozinha.
   - Tamanho do logo é livre: em vez de um card de dimensão fixa, cada
     .client-logo tem uma ALTURA fixa e a LARGURA acompanha o formato do
     logo (retangular, quadrado, redondo — troque a largura no style="" de
     cada item, ou use uma <img style="height:100%;width:auto;"> real ali
     dentro no lugar do placeholder).
   - "Infinito, sem começo nem fim": a trilha (.clients-track) contém os
     mesmos logos DUAS vezes seguidas (.clients-group repetido) e uma
     animação desloca a trilha em exatamente 50% da largura total. Como os
     dois grupos são idênticos, no instante em que a animação "reinicia" o
     visual é indistinguível do frame anterior — não dá pra perceber a
     costura. O segundo grupo tem aria-hidden="true" pra leitor de tela não
     ler os logos duas vezes.
   Os itens abaixo são placeholders (caixa com nome "Cliente 0X") — assim
   que você me passar os logos reais eu troco pelo mesmo processo das
   thumbs de coleções. */
.clients-head h2{color:#fff;font-size:clamp(22px, 4vw + 10px, 30px);margin:0 auto;max-width:560px;}
.clients-marquee{position:relative;overflow:hidden;max-width:var(--container-max);margin:clamp(28px, 5vw, 44px) auto 0;}
.clients-marquee::before,.clients-marquee::after{content:"";position:absolute;top:0;bottom:0;width:clamp(30px, 8vw, 90px);z-index:2;pointer-events:none;}
.clients-marquee::before{left:0;background:linear-gradient(to right, var(--ink) 10%, rgba(46,32,24,0) 100%);}
.clients-marquee::after{right:0;background:linear-gradient(to left, var(--ink) 10%, rgba(46,32,24,0) 100%);}
.clients-track{display:flex;width:max-content;animation:clients-scroll 34s linear infinite;}
.clients-group{display:flex;align-items:center;flex:0 0 auto;gap:clamp(28px, 5vw, 56px);padding:10px clamp(28px, 5vw, 56px) 10px 0;}
.client-logo{
  flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  height:clamp(52px, 8vw, 64px);padding:0 18px;
  background:rgba(247,239,228,0.06);border:1px dashed rgba(247,239,228,0.28);border-radius:10px;
  font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:#B7A892;white-space:nowrap;
}
.client-logo--round{border-radius:50%;padding:0;}
/* Pausa a rolagem se o mouse passar por cima — só facilita ler um logo
   específico; em touch não existe hover então no celular ela nunca pausa
   sozinha (mantém "rodando infinito" como pedido). */
@media (hover:hover) and (pointer:fine){
  .clients-marquee:hover .clients-track{animation-play-state:paused;}
}
@keyframes clients-scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
@media (prefers-reduced-motion:reduce){
  .clients-track{animation:none;}
}

.story-divider{border-top:1px solid rgba(247,239,228,0.12);padding-top:56px;margin-top:56px;}
.story-cta{text-align:center;border-top:1px solid rgba(247,239,228,0.12);padding-top:56px;margin-top:56px;}
.story-cta h2{max-width:560px;margin:0 auto 14px;font-size:clamp(22px, 4vw + 10px, 30px);}
.story-cta p{max-width:480px;margin:0 auto 26px;color:#C9BCA8;font-size:14px;}
.story-cta .hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
@media (max-width:880px){
  .story-divider,.story-cta{padding-top:40px;margin-top:40px;}
  /* .about-grid não tinha uma versão de 1 coluna no base.css compartilhado —
     no mobile a coluna do fact-card ficava cortada. Corrigido aqui, só nesta página. */
  .about-grid{grid-template-columns:1fr;gap:28px;}
}

/* Dropdown "Serviços" no menu principal — diferente do .brand-switcher (que
   é idêntico em todos os sites da rede e por isso mora em base.css), este
   dropdown reúne as duas frentes do estúdio (3D e IT) e só existe aqui no
   institucional, então fica no style.css. Reaproveita o mesmo padrão visual
   do brand-switcher (details/summary, caixa com borda, sem JS extra). */
.nav-dropdown{position:relative;display:flex;align-items:center;}
.nav-dropdown-toggle{list-style:none;cursor:pointer;display:flex;align-items:center;gap:5px;font-family:var(--display);font-weight:500;font-size:14px;color:var(--ink-soft);}
.nav-dropdown-toggle::-webkit-details-marker{display:none;}
.nav-dropdown-toggle::marker{content:"";}
.nav-dropdown-toggle:hover,
.nav-dropdown[open] .nav-dropdown-toggle{color:var(--ink);}
.nav-dropdown .chevron{font-size:10px;color:var(--ink-faint);display:inline-block;transition:transform .15s ease;position:relative;top:1px;}
.nav-dropdown[open] .chevron{transform:rotate(180deg);}
.nav-dropdown-menu{
  background:var(--bg-card);border:1px solid var(--ink);
  padding:16px;display:grid;grid-template-columns:repeat(2,190px);gap:24px;
}
.nav-dropdown-group-title{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:0 0 8px;}
.nav-dropdown-group .nav-link{display:block;}

@media (min-width:881px){
  .nav-dropdown-menu{
    position:absolute;top:calc(100% + 14px);left:0;
    z-index:60;box-shadow:0 12px 24px rgba(46,32,24,.12);
  }
}
@media (max-width:880px){
  /* No painel mobile o .main-nav já vira uma coluna (ver base.css); aqui o
     dropdown some da posição absoluta e passa a abrir "no lugar", empurrando
     o resto da lista pra baixo — igual um accordion comum. */
  .nav-dropdown{display:block;}
  .nav-dropdown-toggle{padding:13px 4px;border-bottom:1px solid var(--line-soft);font-size:16px;}
  .nav-dropdown-menu{
    grid-template-columns:1fr;border:none;background:transparent;
    padding:4px 0 4px 14px;gap:4px;
  }
  .nav-dropdown-group{margin-bottom:6px;}
  .nav-dropdown-group-title{margin-top:10px;}
  /* base.css limita o painel mobile a max-height:340px — dava conta da lista
     plana de 6 links, mas com o "Serviços" aberto (7 links + 2 títulos a
     mais) o conteúdo passa disso e ficava cortado, sem como rolar até
     Clientes/Sustentabilidade/FAQ/Contato. Aqui a régua vira relativa à
     altura da tela, com rolagem própria, então qualquer combinação de itens
     abertos sempre cabe (ou rola) em vez de cortar. */
  .main-nav.is-open{max-height:calc(100vh - 64px);overflow-y:auto;}
}

/* Indica, nas páginas de serviço, que o visitante está em algum item do
   dropdown — mesma cor que .nav-link.active já usa no resto do site. */
.nav-dropdown-toggle.active{color:var(--ink);}

/* Cartões de plano — usados nas páginas de Hospedagem e E-mail Corporativo
   pra comparar opções sem citar preço (a Lafym decide preço caso a caso).
   Reaproveita a moldura com cantos "+" do .fact-card/.spec-card e o mesmo
   bullet "›" do .btn, só que como lista de recursos por plano. */
.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;}
.plan-card{position:relative;background:var(--bg-card);border:1px solid var(--brown);padding:30px 26px 26px;display:flex;flex-direction:column;}
.plan-card .corner{position:absolute;font-family:var(--mono);font-size:14px;color:var(--blue);line-height:1;}
.plan-card .corner.tl{top:-7px;left:-7px;} .plan-card .corner.tr{top:-7px;right:-7px;}
.plan-card .corner.bl{bottom:-9px;left:-7px;} .plan-card .corner.br{bottom:-9px;right:-7px;}
.plan-card.featured{border-color:var(--blue);}
.plan-card-status{position:absolute;top:-11px;right:16px;font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);background:var(--blue-light);padding:3px 8px;}
.plan-tag{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue);margin:0 0 10px;}
.plan-card h3{font-family:var(--display);font-weight:700;font-size:20px;margin-bottom:8px;}
.plan-desc{font-size:13px;color:var(--ink-soft);margin:0 0 18px;}
.plan-features{list-style:none;margin:0 0 22px;padding:0;flex:1;}
.plan-features li{font-size:13px;color:var(--ink-soft);padding:8px 0;border-bottom:1px solid var(--line-soft);}
.plan-features li:last-child{border-bottom:none;}
.plan-features li::before{content:"\203A";color:var(--blue);margin-right:8px;font-family:var(--mono);}
.plan-card .btn{align-self:flex-start;}

/* Linha de "outros serviços" ao final de cada página de serviço — links
   pros itens irmãos do mesmo grupo (3D ou IT), pra facilitar descoberta
   sem depender só do dropdown do menu. */
.related-services{text-align:center;}
.related-services .hero-cta{justify-content:center;}

/* ===================================================================
   Páginas de serviço — TUDO entre o banner e o bloco de FAQ fica dentro
   de uma única faixa escura (.dark-band, mesma cor de fundo/fonte que a
   home usa em "Quem somos"/Sustentabilidade). Só o bloco de FAQ, no fim,
   continua claro. As regras abaixo dão a versão escura pros componentes
   que essas páginas usam e que .dark-band (base.css) ainda não cobria
   (usecase-card, plan-card, btn-outline) — eyebrow/h2/muted/process-step
   já vêm cobertos pelas regras de .dark-band do base.css.
   =================================================================== */
.dark-band .btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,0.45);}
.dark-band .btn-outline:hover{background:rgba(255,255,255,0.08);border-color:#fff;}

.dark-band .usecase-card{border-color:rgba(247,239,228,0.28);}
.dark-band .usecase-card h3{color:#fff;}
.dark-band .usecase-card p{color:#B7A892;}

.dark-band .plan-card{background:rgba(247,239,228,0.05);border-color:rgba(247,239,228,0.25);}
.dark-band .plan-card.featured{border-color:var(--blue-light);}
.dark-band .plan-card .corner{color:var(--blue-light);}
.dark-band .plan-tag{color:var(--blue-light);}
.dark-band .plan-card h3{color:#fff;}
.dark-band .plan-desc{color:#B7A892;}
.dark-band .plan-features li{color:#B7A892;border-bottom-color:rgba(247,239,228,0.12);}

/* FAQ organizado por tópico — chips de navegação por âncora logo abaixo do
   banner (Geral / Serviços 3D / IT & Tecnologia), e sub-cabeçalhos dentro de
   cada tópico pra agrupar as perguntas por serviço específico (ex: dentro de
   "Serviços 3D", um grupo pra Fabricação personalizada, outro pra Produção
   em lote etc.) — facilita achar rápido o tipo de dúvida sem ler tudo. */
.faq-topics{display:flex;gap:10px;flex-wrap:wrap;}
.faq-topic-link{font-family:var(--mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);border:1px solid var(--line);padding:9px 16px;background:var(--bg-card);}
.faq-topic-link:hover{color:var(--ink);border-color:var(--blue);}

.faq-subhead{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:32px 0 4px;padding-top:20px;border-top:1px solid var(--line);}
.faq-subhead--first{margin-top:0;padding-top:0;border-top:none;}

/* Página de FAQ agora fica dentro da mesma faixa escura (.dark-band) que as
   páginas de serviço — mesmo padrão visual do site inteiro. Versão escura
   dos chips de tópico, dos itens de pergunta/resposta e dos sub-cabeçalhos. */
.dark-band .faq-topic-link{color:#B7A892;border-color:rgba(247,239,228,0.28);background:rgba(247,239,228,0.05);}
.dark-band .faq-topic-link:hover{color:#fff;border-color:var(--blue-light);}

.dark-band .faq-item{border-bottom-color:rgba(247,239,228,0.16);}
.dark-band .faq-item summary{color:#fff;}
.dark-band .faq-item p{color:#B7A892;}

.dark-band .faq-subhead{color:var(--blue-light);border-top-color:rgba(247,239,228,0.16);}
