/* =========================================================
   Localyze · estilo
   Escuro (preto + azul-marinho) com azul vivo para destacar.
   ========================================================= */

@font-face{font-family:"Barlow Condensed";font-weight:600;font-style:normal;font-display:swap;src:url("fonts/barlow-condensed-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:700;font-style:normal;font-display:swap;src:url("fonts/barlow-condensed-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-weight:400;font-style:normal;font-display:swap;src:url("fonts/barlow-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-weight:500;font-style:normal;font-display:swap;src:url("fonts/barlow-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-weight:600;font-style:normal;font-display:swap;src:url("fonts/barlow-latin-600-normal.woff2") format("woff2")}

:root{
  --preto:#05080D;       /* fundo principal */
  --noite:#09121D;       /* fundo alternado */
  --marinho:#0E1B2B;     /* cartões */
  --marinho-2:#152A41;
  --linha:rgba(157,210,246,.14);
  --linha-forte:rgba(157,210,246,.28);
  --texto:#EAF3FB;
  --texto-2:#9AB1C7;
  --azul:#3FA4FF;        /* destaque */
  --azul-hover:#66B8FF;
  --gelo:#9DD2F6;        /* azul claro da marca */
  --brilho:0 24px 60px -24px rgba(63,164,255,.55);

  --f-titulo:"Barlow Condensed","Arial Narrow","Roboto Condensed",Impact,sans-serif;
  --f-texto:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --raio:10px;
  --lente:var(--preto);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--preto);color:var(--texto);font-family:var(--f-texto);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
h1,h2,h3,p,ol,ul,figure,fieldset{margin:0}
ol,ul{padding:0;list-style:none}
fieldset{border:0;padding:0;min-width:0}
button,input,textarea{font:inherit;color:inherit}
::selection{background:var(--azul);color:var(--preto)}

.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px}
.pular{position:absolute;left:-9999px;top:10px;z-index:100;background:var(--azul);color:var(--preto);padding:10px 16px;border-radius:6px}
.pular:focus{left:10px}
:focus-visible{outline:3px solid var(--azul);outline-offset:3px}

h1,h2,h3{font-family:var(--f-titulo);font-weight:700;text-transform:uppercase;line-height:.95;letter-spacing:.005em;text-wrap:balance}
h2{font-size:clamp(2.5rem,8.6vw,4.4rem)}
.destaque{color:var(--azul)}
.rotulo{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;
  font-family:var(--f-titulo);font-weight:600;font-size:1rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gelo);
}
.rotulo::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--azul);box-shadow:0 0 0 4px rgba(63,164,255,.18)}

/* ---------- marca ---------- */
.marca{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--f-titulo);font-weight:700;font-size:1.6rem;letter-spacing:.06em;text-transform:uppercase;line-height:1}
.marca__simbolo{color:var(--gelo);width:22px;height:27px}

/* ---------- topo ---------- */
.topo{position:sticky;top:0;z-index:30;background:rgba(5,8,13,.92);border-bottom:1px solid transparent;transition:border-color .2s}
@supports (backdrop-filter:blur(1px)){.topo{background:rgba(5,8,13,.8);backdrop-filter:blur(10px)}}
.topo.rolou{border-bottom-color:var(--linha)}
.topo__in{display:flex;align-items:center;gap:20px;min-height:64px}
.menu{display:none;gap:28px;margin-left:auto}
.menu a{text-decoration:none;font-weight:500;color:var(--texto-2);padding:6px 0;transition:color .15s}
.menu a:hover{color:var(--texto)}
.topo__cta{
  margin-left:auto;display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:99px;
  background:var(--azul);color:var(--preto);text-decoration:none;font-weight:600;font-size:.95rem;transition:background-color .15s;
}
.topo__cta:hover{background:var(--azul-hover)}

/* ---------- botões ---------- */
.botao{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:54px;padding:12px 26px;border-radius:99px;border:2px solid transparent;
  font-weight:600;font-size:1.04rem;line-height:1.2;text-decoration:none;cursor:pointer;
  transition:transform .15s,background-color .15s,color .15s,border-color .15s,box-shadow .15s;
}
.botao:hover{transform:translateY(-2px)}
.botao:active{transform:none}
.botao--azul{background:var(--azul);color:var(--preto);box-shadow:var(--brilho)}
.botao--azul:hover{background:var(--azul-hover)}
.botao--linha{border-color:var(--linha-forte);color:var(--texto)}
.botao--linha:hover{border-color:var(--texto)}
.botao--escuro{background:var(--preto);color:var(--texto)}
.botao--escuro:hover{background:var(--marinho-2)}
.botao--largo{width:100%}

/* ---------- abertura ---------- */
.hero{
  position:relative;padding:40px 0 64px;overflow:hidden;
  background:
    radial-gradient(60rem 34rem at 85% -10%,rgba(63,164,255,.20),transparent 60%),
    var(--preto);
}
.hero__grade{display:grid;gap:44px}
.selo{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;padding:7px 14px;border:1px solid var(--linha-forte);border-radius:99px;
  font-family:var(--f-titulo);font-weight:600;font-size:.98rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gelo);
}
.selo__ponto{width:8px;height:8px;border-radius:50%;background:#FF4B4B;animation:piscar 1.4s steps(1) infinite}
.hero h1{font-size:clamp(3rem,13vw,6.4rem);line-height:1;margin-bottom:22px}
.hero h1 mark{
  background:var(--azul);color:var(--preto);padding:0 .12em;margin:0 -.02em;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
}
.hero__sub{font-size:1.16rem;color:var(--texto-2);max-width:33em;margin-bottom:28px}
.acoes{display:flex;flex-wrap:wrap;gap:12px}
.hero__lista{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:30px}
.hero__lista li{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-titulo);font-weight:600;font-size:1.1rem;letter-spacing:.1em;text-transform:uppercase;color:var(--texto-2)}
.hero__lista li::before{content:"";width:6px;height:6px;background:var(--azul);transform:rotate(45deg)}

/* fotos da equipe */
.hero__fotos{position:relative;display:grid;gap:14px}
.quadro{position:relative;border-radius:var(--raio);overflow:hidden;background:var(--marinho);box-shadow:0 30px 60px -30px rgba(0,0,0,.9)}
.quadro img{width:100%;height:100%;object-fit:cover}
.quadro--a{aspect-ratio:5/4}
.quadro--a img{object-position:40% 40%}
.quadro--b{aspect-ratio:3/2;outline:2px solid var(--azul);outline-offset:-2px}
.quadro figcaption{
  position:absolute;left:12px;bottom:12px;padding:5px 11px;border-radius:99px;background:rgba(5,8,13,.78);
  font-family:var(--f-titulo);font-weight:600;font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;
}
.quadro__hud{position:absolute;inset:12px;pointer-events:none;color:#fff;font-family:var(--f-titulo);font-weight:600;font-size:.92rem;letter-spacing:.12em;text-shadow:0 1px 3px rgba(0,0,0,.6);
  --c:rgba(255,255,255,.9);--w:2px;--t:20px;
  background:
    linear-gradient(var(--c),var(--c)) top left/var(--t) var(--w) no-repeat,
    linear-gradient(var(--c),var(--c)) top left/var(--w) var(--t) no-repeat,
    linear-gradient(var(--c),var(--c)) top right/var(--t) var(--w) no-repeat,
    linear-gradient(var(--c),var(--c)) top right/var(--w) var(--t) no-repeat;
}
.hud-rec{position:absolute;top:10px;left:12px;display:flex;align-items:center;gap:7px;padding:3px 10px;border-radius:99px;background:rgba(5,8,13,.6)}
.hud-rec i{width:9px;height:9px;border-radius:50%;background:#FF4B4B;animation:piscar 1.2s steps(1) infinite}
.hud-rec b{font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.06em;margin-left:4px}
@keyframes piscar{50%{opacity:.15}}

/* faixa */
.faixa{background:var(--gelo);color:var(--preto);overflow:hidden}
.faixa__trilho{display:flex;width:max-content;animation:rolar 34s linear infinite}
.faixa span{display:flex;align-items:center;gap:28px;padding:14px 0 14px 28px;white-space:nowrap;font-family:var(--f-titulo);font-weight:700;font-size:1.45rem;letter-spacing:.08em;text-transform:uppercase}
.faixa span::after{content:"";width:9px;height:9px;background:currentColor;transform:rotate(45deg)}
@keyframes rolar{to{transform:translateX(-50%)}}

/* ---------- seções ---------- */
.secao{padding:80px 0}
.cab{margin-bottom:40px;max-width:46rem}
.cab__intro{margin-top:18px;color:var(--texto-2);font-size:1.12rem}

/* serviços */
.servicos{display:grid;gap:16px}
.servico{
  position:relative;display:flex;flex-direction:column;gap:16px;padding:26px 22px;
  background:var(--marinho);border:1px solid var(--linha);border-radius:var(--raio);
  transition:border-color .2s,transform .2s,box-shadow .2s;
}
.servico:hover{border-color:var(--azul);transform:translateY(-4px);box-shadow:var(--brilho)}
.servico--destaque{background:linear-gradient(180deg,var(--marinho-2),var(--marinho));border-color:rgba(63,164,255,.5)}
.servico__topo{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.servico__icone{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:rgba(63,164,255,.14);color:var(--azul)}
.servico h3{font-size:2.3rem}
.etiqueta{margin-left:auto;padding:4px 11px;border-radius:99px;background:var(--azul);color:var(--preto);font-weight:600;font-size:.82rem}
.servico > p{color:var(--texto-2)}
.itens{display:grid;gap:8px;padding-top:14px;border-top:1px solid var(--linha)}
.itens li{position:relative;padding-left:24px}
.itens li::before{content:"";position:absolute;left:2px;top:.55em;width:11px;height:6px;border-left:2px solid var(--azul);border-bottom:2px solid var(--azul);transform:rotate(-45deg)}
.servico__prova{padding:10px 14px;border-radius:8px;background:rgba(157,210,246,.08);color:var(--gelo)!important;font-weight:500;font-size:.98rem}
.servico__link{margin-top:auto;align-self:flex-start;display:inline-flex;gap:8px;padding:6px 0;font-weight:600;color:var(--azul);text-decoration:none;border-bottom:2px solid currentColor}
.servico__link span{transition:transform .2s}
.servico__link:hover span{transform:translateX(4px)}

/* pacotes (faixa azul) */
.secao--pacote{background:var(--azul);color:var(--preto)}
.secao--pacote .rotulo{color:var(--preto)}
.secao--pacote .rotulo::before{background:var(--preto);box-shadow:0 0 0 4px rgba(5,8,13,.18)}
.secao--pacote .destaque{color:var(--texto);-webkit-text-stroke:0;background:var(--preto);padding:0 .12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.secao--pacote :focus-visible{outline-color:var(--preto)}
.pacote{display:grid;gap:44px;align-items:center}
.pacote__texto h2{margin-bottom:20px;line-height:1.08}
.pacote__texto > p{font-size:1.14rem;max-width:32em}
.pacote__preco{margin:16px 0 28px;padding-left:14px;border-left:4px solid var(--preto)}
.secao--pacote .botao--azul{background:var(--preto);color:var(--texto);box-shadow:0 20px 40px -20px rgba(5,8,13,.8)}
.secao--pacote .botao--azul:hover{background:var(--marinho-2)}
.combo{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.combo__peca{
  padding:12px 18px;border-radius:12px;background:var(--preto);color:var(--texto);
  font-family:var(--f-titulo);font-weight:700;font-size:1.6rem;text-transform:uppercase;letter-spacing:.03em;
}
.combo__mais,.combo__igual{font-family:var(--f-titulo);font-weight:700;font-size:2rem;line-height:1}
.combo__peca--final{display:flex;align-items:center;gap:12px;width:100%;justify-content:center;padding:18px;line-height:1.05;background:var(--preto);color:var(--gelo);font-size:1.8rem}
.combo__peca--final svg{color:var(--gelo);flex:none}

/* passos */
.passos{display:grid;gap:14px;counter-reset:p}
.passos li{padding:24px 22px;border:1px solid var(--linha);border-radius:var(--raio);background:var(--noite)}
.passos__n{display:block;margin-bottom:10px;font-family:var(--f-titulo);font-weight:700;font-size:3.4rem;line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--azul)}
.passos h3{font-size:1.75rem;margin-bottom:8px}
.passos p{color:var(--texto-2)}

/* equipe */
.secao--equipe{background:var(--noite);border-block:1px solid var(--linha)}
.equipe{display:grid;gap:36px;align-items:center}
.equipe__texto h2{margin-bottom:20px}
.equipe__texto p:not(.rotulo){color:var(--texto-2);max-width:36em;font-size:1.1rem}
.equipe__texto p + p{margin-top:14px}
.nomes{display:grid;gap:12px}
.nomes li{display:flex;align-items:center;gap:16px;padding:16px 18px;border-radius:var(--raio);background:var(--marinho);border:1px solid var(--linha)}
.nomes__inicial{width:52px;height:52px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--azul);color:var(--preto);font-family:var(--f-titulo);font-weight:700;font-size:1.35rem;letter-spacing:.04em}
.nomes strong{font-family:var(--f-titulo);font-weight:700;font-size:1.8rem;text-transform:uppercase;line-height:1}
.nomes__base{background:transparent!important;border-style:dashed!important;color:var(--gelo);font-family:var(--f-titulo);font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.nomes__base svg{color:var(--gelo);margin-left:16px;margin-right:16px}

/* dúvidas */
.perguntas{border-top:1px solid var(--linha-forte);max-width:52rem}
.perguntas details{border-bottom:1px solid var(--linha)}
.perguntas summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-family:var(--f-titulo);font-weight:700;font-size:1.55rem;text-transform:uppercase;line-height:1.1;transition:color .15s}
.perguntas summary:hover{color:var(--gelo)}
.perguntas summary::-webkit-details-marker{display:none}
.perguntas summary::after{
  content:"";flex:none;width:32px;height:32px;border-radius:50%;
  background:linear-gradient(var(--preto),var(--preto)) center/12px 2px no-repeat,linear-gradient(var(--preto),var(--preto)) center/2px 12px no-repeat,var(--azul);
  transition:transform .2s;
}
.perguntas details[open] summary::after{transform:rotate(45deg)}
.perguntas details p{padding:0 48px 22px 0;color:var(--texto-2);max-width:40em}

/* contato */
.secao--contato{background:radial-gradient(50rem 30rem at 10% 110%,rgba(63,164,255,.16),transparent 60%),var(--preto);border-top:1px solid var(--linha)}
.contato{display:grid;gap:44px}
.contato__intro h2{margin-bottom:16px}
.contato__intro > p:not(.rotulo){color:var(--texto-2);font-size:1.12rem;max-width:28em}
.canais{margin-top:30px;border-top:1px solid var(--linha-forte)}
.canais li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding:16px 0;border-bottom:1px solid var(--linha)}
.canais span{font-family:var(--f-titulo);font-weight:600;font-size:.95rem;letter-spacing:.14em;text-transform:uppercase;color:var(--texto-2)}
.canais a{font-weight:600;font-size:1.1rem;text-decoration:none;overflow-wrap:anywhere}
.canais a:hover{color:var(--azul)}
.canais__valor{font-weight:600;font-size:1.1rem;overflow-wrap:anywhere}

.pedido{display:grid;gap:18px;padding:26px 22px;border-radius:14px;background:var(--marinho);border:1px solid var(--linha-forte);box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.pedido__titulo{font-family:var(--f-titulo);font-weight:700;font-size:1.8rem;text-transform:uppercase;line-height:1}
.campo{display:grid;gap:8px}
.campo > span,.campo legend{font-weight:600;font-size:.97rem;padding:0}
.campo em{font-style:normal;font-weight:400;color:var(--texto-2)}
.campo input,.campo textarea{width:100%;padding:12px 14px;border:1.5px solid var(--linha-forte);border-radius:8px;background:var(--preto);font-size:1rem;transition:border-color .15s}
.campo textarea{resize:vertical;min-height:90px}
.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--azul)}
.campo input::placeholder,.campo textarea::placeholder{color:var(--texto-2);opacity:.65}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.chips label{position:relative;cursor:pointer}
.chips input{position:absolute;opacity:0;width:1px;height:1px}
.chips span{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:8px 16px;border-radius:99px;border:1.5px solid var(--linha-forte);font-weight:500;font-size:.97rem;transition:all .15s}
.chips label:hover span{border-color:var(--gelo)}
.chips input:checked + span{background:var(--azul);color:var(--preto);border-color:var(--azul)}
.chips input:checked + span::before{content:"✓";font-weight:700}
.chips input:focus-visible + span{outline:3px solid var(--azul);outline-offset:2px}

/* rodapé */
.rodape{padding:34px 0 30px;border-top:1px solid var(--linha);color:var(--texto-2);font-size:.95rem}
.rodape__in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.marca--rodape{color:var(--texto);margin-right:auto}
.rodape a{text-decoration:none}
.rodape p a:hover{color:var(--azul)}

/* botão fixo no celular */
.barra{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 16px calc(12px + env(safe-area-inset-bottom));transform:translateY(130%);transition:transform .3s ease}
.barra.mostrar{transform:none}
.barra .botao{width:100%;box-shadow:0 12px 30px -8px rgba(0,0,0,.8)}

/* entrada suave (só com JS) */
.js .revela{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.js .revela.entrou{opacity:1;transform:none}

/* ---------- telas maiores ---------- */
@media (min-width:640px){
  .hero__fotos{grid-template-columns:1fr 1fr;align-items:end}
  .servicos{grid-template-columns:1fr 1fr}
  .servico{padding:30px 28px}
  .passos{grid-template-columns:1fr 1fr}
  .pedido{padding:32px 30px}
  .combo__peca--final{width:auto}
}
@media (min-width:960px){
  .barra{display:none}
  .menu{display:flex}
  .topo__cta{margin-left:8px}
  .hero{padding:70px 0 96px}
  .hero__grade{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px}
  .hero__fotos{display:block;height:560px}
  .quadro--a{position:absolute;top:0;left:0;width:78%}
  .quadro--b{position:absolute;right:0;bottom:0;width:72%}
  .secao{padding:112px 0}
  .servicos{gap:20px}
  .pacote{grid-template-columns:1.1fr .9fr;gap:70px}
  .passos{grid-template-columns:repeat(4,1fr)}
  .equipe{grid-template-columns:1.2fr .8fr;gap:80px}
  .duvidas{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}
  .duvidas .cab{margin-bottom:0;position:sticky;top:110px}
  .contato{grid-template-columns:1fr 1fr;gap:70px;align-items:start}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .revela{opacity:1;transform:none}
}
