/* Foco no Carpete · estilos do site
   Cores e fontes: _contexto/marca/design-guide.md (identidade Foco no Carpete, 2026-11-06) */
:root{
  --azul:#0B2540;
  --azul-2:#123459;
  --ouro:#D4A24A;
  --ouro-claro:#E2B865;
  --ouro-texto:#8A6316;
  --azul-medio:#144E7B;
  --bege:#F5F1E7;
  --bege-2:#ECE6D8;
  --texto:#0B2540;
  --texto-2:#475569;
  --linha:#DCD5C5;
  --linha-escura:#1E3E66;
  --branco:#FFFFFF;
  --titulo:'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --sans:'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bege);color:var(--texto);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;display:block}
a{color:var(--ouro-texto)}
a:hover{color:var(--azul)}
h1,h2,h3{font-family:var(--titulo);font-weight:600;line-height:1.1;margin:0 0 .5em;color:inherit}
h1{font-size:clamp(2.4rem,5.2vw,4rem)}
h2{font-size:clamp(1.9rem,3.6vw,2.8rem)}
h3{font-size:1.55rem}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pular{position:absolute;left:-999px;top:8px;background:var(--azul);color:var(--bege);padding:10px 16px;z-index:100}
.pular:focus{left:8px}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}

/* topo */
.topo{background:var(--bege);border-bottom:1px solid var(--linha);position:sticky;top:0;z-index:50}
.topo-in{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--azul)}
.marca svg{width:46px;height:auto;flex-shrink:0}
.marca-txt{display:flex;flex-direction:column;line-height:1}
.marca-bt{font-family:var(--titulo);font-weight:600;font-size:30px;letter-spacing:.01em}
.marca-bt em,.bt em{font-style:normal;color:var(--ouro)}
.marca-sub{font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:600;color:var(--texto-2);margin-top:4px}
.menu{display:flex;align-items:center;gap:26px}
.menu a{color:var(--azul);text-decoration:none;font-size:14px;font-weight:500}
.menu a:hover{color:var(--ouro-texto)}
.menu a[aria-current="page"]{color:var(--ouro-texto)}
.menu-btn{display:none;background:none;border:1px solid var(--linha);border-radius:4px;width:46px;height:46px;align-items:center;justify-content:center;cursor:pointer;color:var(--azul)}
@media(max-width:980px){
  .menu-btn{display:flex}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;background:var(--bege);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 24px;border-bottom:1px solid var(--linha)}
  .menu.aberto{display:flex}
  .menu a{padding:14px 0;border-bottom:1px solid var(--linha);font-size:16px}
  .menu .btn{margin-top:16px;text-align:center;border-bottom:0}
}

/* botões */
.btn{display:inline-block;font-family:var(--sans);font-weight:600;font-size:15px;padding:15px 26px;border-radius:4px;text-decoration:none;border:1px solid transparent;cursor:pointer;line-height:1.2;transition:background .15s,color .15s}
.btn-verde{background:var(--azul);color:var(--bege)}
.btn-verde:hover{background:var(--azul-2);color:var(--bege)}
.btn-ouro{background:var(--ouro-claro);color:var(--azul)}
.btn-ouro:hover{background:var(--ouro);color:var(--azul)}
.menu .btn-ouro{color:var(--azul);padding:12px 20px}
.btn-linha{border-color:currentColor;color:inherit;background:transparent}
.btn-linha:hover{background:rgba(212,162,74,.12)}
.acoes{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}

/* seções */
.secao{padding:96px 0}
.secao-escura{background:var(--azul);color:var(--bege)}
.secao-escura a:not(.btn){color:var(--ouro-claro)}
.secao-alt{background:var(--bege-2)}
.sobretitulo{font-family:var(--sans);font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--ouro-texto);margin:0 0 18px;display:flex;align-items:center;gap:12px}
.sobretitulo::before{content:"";width:28px;height:1px;background:currentColor}
.secao-escura .sobretitulo{color:var(--ouro-claro)}
.lead{font-size:1.15rem;color:var(--texto-2);max-width:680px}
.secao-escura .lead{color:#C5D0DC}
.cabeca{max-width:760px;margin-bottom:56px}
.fio{height:1px;background:var(--ouro);width:80px;margin:24px 0}

/* hero */
.hero{background:var(--azul);color:var(--bege);padding:104px 0 96px;position:relative;overflow:hidden}
.hero-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:64px;align-items:center}
.hero h1{color:var(--bege)}
.hero h1 em{font-style:italic;color:var(--ouro-claro)}
.hero .lead{color:#C5D0DC}
.hero-arte{position:relative}
.hero-arte svg{width:100%;height:auto}
.hero-arte img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:4px}
.hero-arte.com-foto::before{content:"";position:absolute;top:20px;left:20px;right:-20px;bottom:-20px;border:1px solid var(--ouro-claro);border-radius:4px}
@media(max-width:900px){.hero-arte img{aspect-ratio:4/3}.hero-arte.com-foto::before{right:-12px;bottom:-12px;top:12px;left:12px}}
.hero-com-foto{background:linear-gradient(90deg,rgba(11,37,64,.95) 0%,rgba(11,37,64,.86) 50%,rgba(11,37,64,.6) 100%),var(--foto) center/cover no-repeat}
@media(max-width:760px){.hero-com-foto{background:linear-gradient(rgba(11,37,64,.9),rgba(11,37,64,.9)),var(--foto) center/cover no-repeat}}
.cartao-foto{display:block;max-width:none;width:calc(100% + 56px);margin:-32px -28px 24px;aspect-ratio:16/10;object-fit:cover;border-radius:6px 6px 0 0}
.foto{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}
.faixa-foto{height:clamp(260px,38vw,460px);background:var(--foto) center/cover no-repeat}
.selos{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:40px;padding-top:28px;border-top:1px solid var(--linha-escura);font-size:14px;color:#C5D0DC}
.selos span{display:flex;align-items:center;gap:8px}
.selos svg{width:18px;height:18px;color:var(--ouro-claro)}
.hero-pagina{padding:80px 0 72px}
.trilha{font-size:13px;color:#A9B8C9;margin-bottom:22px}
.trilha a{color:#A9B8C9;text-decoration:none}
.trilha a:hover{color:var(--ouro-claro)}
@media(max-width:900px){.hero-in{grid-template-columns:1fr;gap:40px}.hero-arte{max-width:420px}.hero{padding:72px 0}}

/* grades e cartões */
.grade{display:grid;gap:24px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.cartao{background:var(--branco);border:1px solid var(--linha);border-radius:6px;padding:32px 28px;display:flex;flex-direction:column}
.cartao h3{margin-bottom:.4em}
.cartao p{color:var(--texto-2);font-size:15px}
.cartao .mais{margin-top:auto;font-weight:600;font-size:14px;text-decoration:none;color:var(--ouro-texto)}
.cartao .mais:hover{color:var(--azul)}
.icone{width:44px;height:44px;color:var(--ouro);margin-bottom:22px}
.secao-escura .cartao{background:var(--azul-2);border-color:var(--linha-escura)}
.secao-escura .cartao p{color:#C5D0DC}
.secao-escura .icone{color:var(--ouro-claro)}
a.cartao{text-decoration:none;color:inherit;transition:border-color .15s}
a.cartao:hover{border-color:var(--ouro)}

/* passos */
.passos{counter-reset:p;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
@media(max-width:980px){.passos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.passos{grid-template-columns:1fr}}
.passo{border-top:1px solid var(--ouro);padding-top:20px}
.passo::before{counter-increment:p;content:"0" counter(p);font-family:var(--titulo);font-size:2.4rem;color:var(--ouro);line-height:1;display:block;margin-bottom:12px}
.passo h3{font-size:1.3rem}
.passo p{font-size:14.5px;color:var(--texto-2)}
.secao-escura .passo p{color:#C5D0DC}

/* listas */
.check{list-style:none;padding:0;margin:0 0 1em}
.check li{position:relative;padding-left:30px;margin:10px 0}
.check li::before{content:"";position:absolute;left:0;top:.55em;width:14px;height:8px;border-left:2px solid var(--ouro);border-bottom:2px solid var(--ouro);transform:rotate(-45deg)}
.duas-colunas{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.duas-colunas.form-lado{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
@media(max-width:860px){.duas-colunas,.duas-colunas.form-lado{grid-template-columns:1fr;gap:40px}}

/* números */
.numeros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media(max-width:860px){.numeros{grid-template-columns:repeat(2,minmax(0,1fr))}}
.numero{border-left:1px solid var(--ouro);padding-left:20px}
.numero strong{display:block;font-family:var(--titulo);font-size:2.8rem;font-weight:600;line-height:1;color:var(--ouro-claro);margin-bottom:8px}
.numero span{font-size:14px;color:#C5D0DC}

/* regiões */
.regioes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--linha);border:1px solid var(--linha)}
@media(max-width:760px){.regioes{grid-template-columns:repeat(2,minmax(0,1fr))}}
.regioes a{background:var(--bege);padding:28px 24px;text-decoration:none;color:var(--azul);display:flex;flex-direction:column;gap:4px;transition:background .15s}
.regioes a:hover{background:var(--branco)}
.regioes strong{font-family:var(--titulo);font-size:1.6rem;font-weight:600}
.regioes span{font-size:13.5px;color:var(--texto-2)}

/* faq */
.faq{border-top:1px solid var(--linha)}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{cursor:pointer;list-style:none;padding:22px 40px 22px 0;font-family:var(--titulo);font-size:1.4rem;font-weight:600;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:18px;font-family:var(--sans);font-weight:400;font-size:1.6rem;color:var(--ouro)}
.faq details[open] summary::after{content:"–"}
.faq details>div{padding:0 0 22px;color:var(--texto-2);max-width:760px}

/* chamada final */
.chamada{background:var(--azul);color:var(--bege);padding:88px 0;text-align:center}
.chamada h2{color:var(--bege);max-width:760px;margin:0 auto .4em}
.chamada p{color:#C5D0DC;max-width:620px;margin:0 auto}
.chamada .acoes{justify-content:center}

/* texto corrido */
.texto{max-width:760px}
.texto h2{margin-top:1.4em}
.texto h3{margin-top:1.2em}
.texto p,.texto li{color:var(--texto-2)}
.nota{background:var(--bege-2);border-left:2px solid var(--ouro);padding:18px 22px;font-size:15px;color:var(--texto-2);margin:24px 0}

/* formulário */
.form{background:var(--branco);border:1px solid var(--linha);border-radius:6px;padding:40px}
@media(max-width:560px){.form{padding:24px}}
.campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media(max-width:640px){.campos{grid-template-columns:1fr}}
.campo{display:flex;flex-direction:column;gap:6px}
.campo.cheio{grid-column:1/-1}
.campo label,.grupo legend{font-size:14px;font-weight:600;color:var(--azul)}
.campo input,.campo select,.campo textarea{font:inherit;font-size:15px;padding:13px 14px;border:1px solid #C2C9D3;border-radius:4px;background:var(--bege);color:var(--texto);min-height:48px}
.campo textarea{min-height:120px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:2px solid var(--ouro);outline-offset:1px;border-color:var(--ouro)}
.grupo{border:0;padding:0;margin:0;grid-column:1/-1}
.opcoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.opcoes label{display:flex;align-items:center;gap:8px;border:1px solid #C2C9D3;border-radius:4px;padding:10px 14px;font-size:14.5px;cursor:pointer;min-height:44px;background:var(--bege)}
.opcoes input{accent-color:var(--azul);width:18px;height:18px}
.consentimento{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--texto-2);grid-column:1/-1}
.consentimento input{margin-top:3px;width:18px;height:18px;accent-color:var(--azul);flex-shrink:0}
.ajuda{font-size:13px;color:var(--texto-2)}

/* rodapé */
.rodape{background:#071A2E;color:#A9B8C9;padding:72px 0 32px;font-size:14px}
.rodape a{color:#DCE3EA;text-decoration:none}
.rodape a:hover{color:var(--ouro-claro)}
.rodape-grade{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
@media(max-width:860px){.rodape-grade{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.rodape-grade{grid-template-columns:1fr}}
.rodape h2{font-family:var(--sans);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-claro);margin-bottom:16px}
.rodape ul{list-style:none;padding:0;margin:0}
.rodape li{margin:8px 0}
.rodape .marca{color:var(--bege);margin-bottom:18px}
.rodape .marca-sub{color:#A9B8C9}
.rodape-base{border-top:1px solid #1B3350;margin-top:56px;padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}

/* whatsapp flutuante */
.wa-flutuante{position:fixed;right:20px;bottom:20px;z-index:60;background:var(--azul);color:var(--bege);border:1px solid var(--ouro);border-radius:999px;padding:12px 18px 12px 14px;display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;font-size:14px;box-shadow:0 6px 24px rgba(7,26,46,.25)}
.wa-flutuante:hover{background:var(--azul-2);color:var(--bege)}
.wa-flutuante svg{width:24px;height:24px;color:var(--ouro-claro)}
@media(max-width:560px){.wa-flutuante span{display:none}.wa-flutuante{padding:14px}}

/* ajustes da identidade Foco no Carpete */
h1,h2,h3{font-weight:800;letter-spacing:-.01em;line-height:1.12}
h1{font-size:clamp(2.2rem,4.8vw,3.6rem)}
h2{font-size:clamp(1.7rem,3.2vw,2.5rem)}
h3{font-size:1.25rem;font-weight:700}
.marca svg{width:42px}
.marca-bt{font-family:var(--titulo);font-weight:800;font-style:italic;font-size:21px;text-transform:uppercase;letter-spacing:0}
.marca-sub{font-size:9px;letter-spacing:.22em}
.hero h1 em{font-style:italic;color:var(--ouro)}
.faq summary{font-family:var(--titulo);font-size:1.1rem;font-weight:700}
.passo::before{font-family:var(--titulo);font-weight:800;font-size:2rem}
.numero strong{font-family:var(--titulo);font-weight:800;font-size:2.4rem;color:var(--ouro)}
.regioes strong{font-family:var(--titulo);font-weight:800;font-size:1.25rem}
.depoimentos{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;align-items:start}
@media(max-width:760px){.depoimentos{grid-template-columns:1fr}}
.depoimento{margin:0;background:var(--branco);border:1px solid var(--linha);border-radius:8px;padding:18px;box-shadow:0 4px 18px rgba(11,37,64,.06)}
.depoimento img{width:100%;height:auto;border-radius:4px}
.depoimento figcaption{font-size:13px;color:var(--texto-2);margin-top:12px}

/* carrossel de avaliações */
.carrossel{position:relative;max-width:820px;margin:0 auto;padding:0 64px}
.carrossel-trilho{display:grid;gap:24px}
.carrossel .depoimento{display:flex;flex-direction:column;align-items:center;padding:32px;min-height:340px;justify-content:center}
.carrossel .depoimento img{width:100%;max-width:640px;height:auto}
.carrossel .depoimento figcaption{font-size:15px;font-weight:600;color:var(--texto);margin-top:18px;text-align:center}
.js-carrossel .carrossel .depoimento{display:none}
.js-carrossel .carrossel .depoimento.ativo{display:flex;animation:aparece .35s ease}
@keyframes aparece{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.carrossel-seta{display:none;position:absolute;top:calc(50% - 40px);width:48px;height:48px;border-radius:999px;border:1px solid var(--linha);background:var(--branco);color:var(--azul);cursor:pointer;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(11,37,64,.12);transition:background .15s,color .15s}
.carrossel-seta svg{width:22px;height:22px}
.carrossel-seta:hover{background:var(--azul);color:var(--bege)}
.carrossel-seta.anterior{left:0}
.carrossel-seta.proxima{right:0}
.js-carrossel .carrossel-seta{display:flex}
.carrossel-pontos{display:flex;justify-content:center;gap:4px;margin-top:20px}
.carrossel-pontos button{width:44px;height:44px;border:0;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.carrossel-pontos button::before{content:"";width:10px;height:10px;border-radius:999px;background:var(--linha);transition:background .15s,width .15s}
.carrossel-pontos button[aria-current="true"]::before{background:var(--ouro);width:26px}
@media(max-width:640px){.carrossel{padding:0 0 8px}.carrossel .depoimento{padding:18px;min-height:0}.carrossel-seta{top:auto;bottom:-6px}.carrossel-seta.anterior{left:8px}.carrossel-seta.proxima{right:8px}}
@media(prefers-reduced-motion:reduce){.js-carrossel .carrossel .depoimento.ativo{animation:none}}

/* alinhamento com a identidade oficial (arte de 2026-11-06) */
.topo{background:#FAFAFA}
.menu.aberto{background:#FAFAFA}
.logo-img{height:62px;width:auto;display:block}
.logo-img-escuro{height:96px;width:auto;display:block;border-radius:10px}
@media(max-width:560px){.logo-img{height:50px}}
.btn{border-radius:999px}
.btn-ouro{background:var(--ouro);color:#0B2540}
.btn-ouro:hover{background:var(--ouro-claro);color:#0B2540}
.cartao{border-radius:14px;box-shadow:0 6px 22px rgba(11,37,64,.07)}
.hero-arte.banner img{aspect-ratio:auto;object-fit:contain;border-radius:12px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.hero-arte.banner::before{border-radius:12px}
.secao-escura,.chamada{background:linear-gradient(rgba(11,37,64,.93),rgba(11,37,64,.93)),url('/assets/img/fotos/carpete-sala-reuniao.webp') center/cover no-repeat}
.hero:not(.hero-com-foto){background:linear-gradient(100deg,#0B2540 0%,#0B2540 55%,#123459 100%)}
.rodape{background:#011a30}
