/* Torre Digital Flor do Cerrado, site em tres paginas (inicio, visite, eventos).
   03/11/2026. Mesma base visual do site de 26/10: preto com grade de fio,
   Bodoni Moda no display, Inter no texto, canto vivo, vinho so em bloco e fio.
   Verde-cerrado marca o caminho do visitante; vinho, o de eventos.
   Foto de fundo vai em <img class="fundo"> ou em style inline no HTML, nunca
   em url() aqui: caminho relativo dentro do CSS mudaria de pagina para pagina. */

:root{
  --fundo:#0A0A0A; --fundo-carta:#141414; --fundo-claro:#F1EFEA;
  --linha:rgba(255,255,255,.13); --linha-forte:rgba(255,255,255,.32);
  --tinta:#F3F1EC; --tinta-media:#B3AFA6; --tinta-fraca:#85817A; --tinta-escura:#0A0A0A;
  --vinho:#6E0F1F; --vinho-vivo:#8C1428; --bordo-escuro:#560B17;
  --cerrado:#9DB89A; --cerrado-escuro:#2C4A33;
  --largura:1280px; --margem:32px;
  --serif:'Bodoni Moda',Georgia,'Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
}
@media(max-width:820px){ :root{ --margem:20px } }
*{box-sizing:border-box;margin:0;padding:0;border-radius:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--fundo);color:var(--tinta);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:var(--largura);margin:0 auto;padding:0 var(--margem);position:relative}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* grade de doze colunas, fixa atras da pagina */
.grade{position:fixed;inset:0;pointer-events:none;z-index:0;display:flex;justify-content:center}
.grade div{width:100%;max-width:var(--largura);padding:0 var(--margem);display:grid;grid-template-columns:repeat(12,1fr)}
.grade span{border-left:1px solid rgba(255,255,255,.06)}
.grade span:last-child{border-right:1px solid rgba(255,255,255,.06)}
@media(max-width:820px){ .grade span:nth-child(n+5){display:none} .grade div{grid-template-columns:repeat(4,1fr)} }
main,header,footer{position:relative;z-index:1}

/* tipografia */
.rotulo{font:600 12px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--tinta-media)}
.rotulo b{color:var(--vinho-vivo);font-weight:600}
.pg-visite .rotulo b,.rotulo.tu b{color:var(--cerrado)}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.01em;line-height:1.08}
h1{font-size:clamp(40px,6.4vw,88px)}
h1 em,h2 em{font-style:italic;font-weight:400;color:var(--tinta-media)}
h2{font-size:clamp(32px,4.4vw,58px)}
h3{font-size:clamp(24px,2.6vw,34px)}
p.lead{font-size:clamp(18px,1.6vw,21px);color:var(--tinta-media);max-width:62ch}

/* botoes: canto vivo. .btn eh vinho (eventos); .btn.claro eh o do visitante */
.btn{display:inline-flex;align-items:center;gap:12px;padding:17px 30px;font:600 13px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:1px solid var(--vinho-vivo);color:#fff;background:var(--vinho);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.btn:hover{background:var(--bordo-escuro);border-color:var(--bordo-escuro);color:#fff}
.btn.claro{background:var(--tinta);border-color:var(--tinta);color:var(--tinta-escura)}
.btn.claro:hover{background:#fff;border-color:#fff;color:var(--tinta-escura)}
.btn.vazado{background:transparent;border-color:var(--linha-forte);color:var(--tinta)}
.btn.vazado:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #fff;outline-offset:3px}
.link{font:600 12px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--vinho-vivo);padding-bottom:6px;display:inline-block}
.link.tu{border-bottom-color:var(--cerrado)}
.link:hover{color:#fff;border-bottom-color:#fff}

/* cabecalho */
.topo{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.topo.solido{background:rgba(10,10,10,.92);backdrop-filter:blur(10px);border-bottom-color:var(--linha)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;height:76px}
.marca{text-decoration:none;display:flex;flex-direction:column;line-height:1}
.marca strong{font:500 21px/1 var(--serif);letter-spacing:.02em}
.marca small{font:600 9.5px/1 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--tinta-media);margin-top:7px}
.nav{display:flex;gap:34px;align-items:center}
.nav a{font:500 12.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--tinta-media);transition:color .2s}
.nav a:hover,.nav a[aria-current]{color:#fff}
.nav .btn{padding:13px 20px;color:#fff}
.nav .btn.claro{color:var(--tinta-escura)}
@media(max-width:900px){ .nav{gap:16px} .nav a:not(.btn):not(.fica){display:none} .nav .btn{padding:11px 14px;font-size:11px} .nav .fica{font-size:11px} }

/* heroi, com a foto num <img class="fundo"> */
.heroi{min-height:100svh;display:flex;align-items:flex-end;position:relative;isolation:isolate;padding:150px 0 90px;text-align:center}
.heroi.curto{min-height:78svh}
.heroi .fundo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 40%}
.heroi::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(10,10,10,.7) 0%,rgba(10,10,10,.45) 40%,rgba(10,10,10,.86) 80%,var(--fundo) 100%)}
.heroi h1{text-shadow:0 2px 30px rgba(0,0,0,.55);max-width:15ch;margin:0 auto}
.heroi h1 em{color:#E9E6DF}
.heroi .wrap{width:100%}
.heroi .rotulo{color:#fff;margin-bottom:28px;display:block}
.heroi p.lead{margin:30px auto 0;color:#E6E3DC;text-align:center}
.heroi .acoes{margin-top:44px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.rolar{position:absolute;left:50%;bottom:26px;width:1px;height:46px;background:linear-gradient(var(--tinta),transparent);transform:translateX(-50%)}

/* faixa de servico do visitante: hoje, ingresso, onde, como chegar */
.servico{border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);background:var(--fundo)}
.servico ul{list-style:none;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr}
.servico li{padding:34px 28px;border-left:1px solid var(--linha)}
.servico li:first-child{border-left:0;padding-left:0}
.servico .r{font:600 11.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--cerrado);display:block;margin-bottom:14px}
.servico .v{font:500 clamp(22px,2.2vw,28px)/1.2 var(--serif);display:block}
.servico .t{display:block;margin-top:8px;font-size:14px;color:var(--tinta-media);line-height:1.45}
.servico .t a{color:var(--tinta)}
.servico .mapas{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}
.servico .mapas .btn{padding:11px 16px;font-size:11.5px}
.ponto{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--tinta-fraca);margin-right:10px;vertical-align:2px}
.ponto.aberto{background:#5FBF7A;box-shadow:0 0 0 4px rgba(95,191,122,.18)}
@media(max-width:900px){ .servico ul{grid-template-columns:1fr 1fr} .servico li{border-top:1px solid var(--linha);padding:26px 18px} .servico li:nth-child(odd){border-left:0;padding-left:0} .servico li:nth-child(-n+2){border-top:0} }
@media(max-width:520px){ .servico ul{grid-template-columns:1fr} .servico li{border-left:0;padding-left:0;padding-right:0} .servico li:nth-child(2){border-top:1px solid var(--linha)} }

/* faixa de numeros (eventos) */
.faixa{border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);background:var(--fundo)}
.faixa ul{list-style:none;display:grid;grid-template-columns:repeat(4,1fr)}
.faixa li{padding:42px 28px;border-left:1px solid var(--linha)}
.faixa li:first-child{border-left:0;padding-left:0}
.faixa .n{font:500 clamp(40px,5vw,66px)/1 var(--serif);display:block}
.faixa .n small{font-size:.4em;font-style:italic;color:var(--tinta-media);margin-left:4px}
.faixa .t{display:block;margin-top:12px;font-size:14px;color:var(--tinta-media);line-height:1.45}
@media(max-width:820px){ .faixa ul{grid-template-columns:1fr 1fr} .faixa li{border-top:1px solid var(--linha)} .faixa li:nth-child(odd){border-left:0;padding-left:0} .faixa li:nth-child(-n+2){border-top:0} }

section{padding:clamp(80px,11vw,150px) 0;position:relative}
section.cola{padding-top:0}
.cab{display:grid;grid-template-columns:repeat(12,1fr);gap:0 24px;margin-bottom:64px}
.cab .rotulo{grid-column:1/-1;margin-bottom:22px}
.cab h2{grid-column:1/8}
.cab p{grid-column:8/-1;align-self:end}
@media(max-width:900px){ .cab h2,.cab p{grid-column:1/-1} .cab p{margin-top:22px} }

/* resposta rapida, para leitura por busca e por IA */
.resposta .quadro{display:grid;grid-template-columns:repeat(12,1fr);gap:0 24px}
.resposta .rotulo{grid-column:1/4}
.resposta p{grid-column:4/-1;font:400 clamp(22px,2.6vw,34px)/1.4 var(--serif);color:var(--tinta)}
.resposta p strong{font-weight:500;border-bottom:1px solid var(--vinho-vivo)}
.pg-visite .resposta p strong,.pg-inicio .resposta p strong{border-bottom-color:var(--cerrado)}
@media(max-width:900px){ .resposta .rotulo,.resposta p{grid-column:1/-1} .resposta .rotulo{margin-bottom:22px} }

/* faixas de foto ao fundo; a foto vem em <div class="bg" style="background-image:..."> */
.vista{min-height:78vh;display:flex;align-items:center;justify-content:center;text-align:center;isolation:isolate;overflow:hidden;background:#000}
.vista .bg{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed}
.vista::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(10,10,10,.5)}
.vista blockquote{font:italic 400 clamp(30px,4.6vw,64px)/1.14 var(--serif);max-width:20ch;margin:0 auto}
.vista .rotulo{display:block;margin-bottom:30px;color:#fff}
@media(hover:none),(max-width:900px){ .vista .bg{background-attachment:scroll} }

/* duas colunas: foto e texto (inicio e visite) */
.dupla{display:grid;grid-template-columns:repeat(12,1fr);gap:0 24px;align-items:center}
.dupla .foto{grid-column:1/7;aspect-ratio:4/5;overflow:hidden;background:var(--fundo-carta)}
.dupla .foto img{width:100%;height:100%;object-fit:cover}
.dupla .corpo{grid-column:8/-1}
.dupla.inverte .foto{grid-column:7/-1;grid-row:1}
.dupla.inverte .corpo{grid-column:1/6;grid-row:1}
.dupla h2{margin:22px 0 24px}
.dupla p{color:var(--tinta-media);margin-bottom:14px;max-width:52ch}
.dupla .acoes{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:900px){ .dupla .foto,.dupla .corpo,.dupla.inverte .foto,.dupla.inverte .corpo{grid-column:1/-1;grid-row:auto} .dupla .corpo{margin-top:36px} }

/* bloco de eventos dentro do inicio, e ponte entre paginas */
.porta-ev{isolation:isolate;overflow:hidden;text-align:left}
.porta-ev .bg{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover}
.porta-ev::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,10,10,.95) 0%,rgba(10,10,10,.8) 50%,rgba(86,11,23,.55) 100%)}
.porta-ev .corpo{max-width:640px}
.porta-ev h2{margin:22px 0 24px}
.porta-ev p{color:#D6D2CA;margin-bottom:12px}
.porta-ev ul{list-style:none;margin:30px 0 36px;border-top:1px solid var(--linha);max-width:520px}
.porta-ev li{padding:12px 0;border-bottom:1px solid var(--linha);font-size:15px;display:flex;justify-content:space-between;gap:16px;color:var(--tinta-media)}
.porta-ev li b{font-weight:500;color:var(--tinta)}
.ponte{border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);padding:48px 0}
.ponte .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.ponte p{font:400 clamp(22px,2.4vw,30px)/1.3 var(--serif)}
.ponte p small{display:block;font:400 15px/1.5 var(--sans);color:var(--tinta-media);margin-top:6px}

/* cartoes de informacao do visitante */
.infos{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linha-forte)}
.info{padding:40px 32px 44px;border-left:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.info:nth-child(3n+1){border-left:0;padding-left:0}
.info .rotulo{display:block;margin-bottom:22px;color:var(--cerrado)}
.info h3{font-size:clamp(22px,2.2vw,28px);margin-bottom:14px}
.info p{color:var(--tinta-media);font-size:16px;margin-bottom:8px}
.info p b{color:var(--tinta);font-weight:500}
@media(max-width:900px){ .infos{grid-template-columns:1fr} .info{border-left:0;padding-left:0;padding-right:0} }

/* indice de espacos */
.espacos{list-style:none;border-top:1px solid var(--linha-forte)}
.esp{display:grid;grid-template-columns:repeat(12,1fr);gap:0 24px;padding:54px 0;border-bottom:1px solid var(--linha);align-items:start}
.esp .num{grid-column:1/2;font:400 clamp(44px,5vw,72px)/1 var(--serif);color:var(--tinta-fraca);text-align:left}
.esp .foto{grid-column:2/7;aspect-ratio:4/3;overflow:hidden;background:var(--fundo-carta);position:relative}
.esp .foto img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.esp:hover .foto img{transform:scale(1.04)}
.esp .corpo{grid-column:7/-1;padding-left:20px}
.esp .cap{font:600 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--vinho-vivo);display:block;margin-bottom:18px}
.esp h3{margin-bottom:18px}
.esp p{color:var(--tinta-media);margin-bottom:12px;max-width:52ch}
.esp ul{list-style:none;margin:20px 0 28px;border-top:1px solid var(--linha)}
.esp li{padding:11px 0;border-bottom:1px solid var(--linha);font-size:15px;display:flex;justify-content:space-between;gap:16px;color:var(--tinta-media)}
.esp li b{font-weight:500;color:var(--tinta);text-align:right}
.esp.inverte .foto{grid-column:6/-1;grid-row:1}
.esp.inverte .corpo{grid-column:2/6;grid-row:1;padding-left:0;padding-right:20px}
.esp.inverte .num{grid-column:1/2;grid-row:1}
@media(max-width:900px){
  .esp,.esp.inverte{grid-template-columns:1fr;gap:22px;padding:42px 0}
  .esp .num,.esp .foto,.esp .corpo,.esp.inverte .foto,.esp.inverte .corpo,.esp.inverte .num{grid-column:1/-1;grid-row:auto;padding:0}
  .esp .num{font-size:40px}
}

/* ocasioes */
.ocasioes{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linha-forte)}
.oc{padding:44px 34px 48px;border-left:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.oc:first-child{border-left:0;padding-left:0}
.oc .rotulo{display:block;margin-bottom:26px}
.oc h3{margin-bottom:16px}
.oc p{color:var(--tinta-media);font-size:16px}
.oc .link{margin-top:24px}
@media(max-width:900px){ .ocasioes{grid-template-columns:1fr} .oc{border-left:0;padding-left:0;padding-right:0} }

/* tabelas: formatos da cupula, horario e ingresso */
.tabela{width:100%;border-collapse:collapse;border-top:1px solid var(--linha-forte)}
.tabela th,.tabela td{text-align:left;padding:26px 0;border-bottom:1px solid var(--linha);vertical-align:baseline}
.tabela th{font:400 clamp(22px,2.4vw,30px)/1.2 var(--serif);width:46%}
.tabela td{color:var(--tinta-media);font-size:16px}
.tabela td.q{font:400 clamp(34px,4vw,54px)/1 var(--serif);color:var(--tinta);text-align:right;width:20%;white-space:nowrap}
.tabela td.q.h{font-size:clamp(24px,2.6vw,34px)}
.tabela td.q small{font:600 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--tinta-media);display:block;margin-bottom:8px}
@media(max-width:700px){ .tabela,.tabela tbody,.tabela tr,.tabela th,.tabela td{display:block;width:100%!important} .tabela tr{border-bottom:1px solid var(--linha);padding:22px 0} .tabela th,.tabela td{border:0;padding:0} .tabela td.q{text-align:left;margin:12px 0} }
.lista-meia{list-style:none;columns:2;column-gap:40px;margin-top:28px;max-width:860px}
.lista-meia li{padding:10px 0;border-bottom:1px solid var(--linha);color:var(--tinta-media);font-size:15.5px;break-inside:avoid}
@media(max-width:700px){ .lista-meia{columns:1} }
.obs{margin-top:22px;font-size:15px;color:var(--tinta-media);max-width:70ch}
.obs b{color:var(--tinta);font-weight:500}

/* galeria */
.galeria{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.galeria figure{position:relative;overflow:hidden;background:var(--fundo-carta)}
.galeria img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.galeria figure:hover img{transform:scale(1.04)}
.galeria figcaption{position:absolute;left:0;bottom:0;right:0;padding:44px 18px 16px;font:600 11px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.g1{grid-column:span 7;aspect-ratio:16/10}.g2{grid-column:span 5;aspect-ratio:4/5;grid-row:span 2}
.g3{grid-column:span 7;aspect-ratio:16/10}.g4{grid-column:span 4;aspect-ratio:1}.g5{grid-column:span 4;aspect-ratio:1}.g6{grid-column:span 4;aspect-ratio:1}
@media(max-width:820px){ .galeria{grid-template-columns:1fr 1fr} .g1,.g3{grid-column:1/-1} .g2,.g4,.g5,.g6{grid-column:span 1;grid-row:auto;aspect-ratio:3/4} }

/* como funciona */
.passos{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linha-forte);counter-reset:p}
.passos li{padding:40px 34px 44px 0;counter-increment:p;border-right:1px solid var(--linha)}
.passos li+li{padding-left:34px}
.passos li:last-child{border-right:0}
.passos li::before{content:"0" counter(p);font:400 56px/1 var(--serif);color:var(--tinta-fraca);display:block;margin-bottom:26px}
.passos h3{font-size:26px;margin-bottom:12px}
.passos p{color:var(--tinta-media);font-size:16px}
@media(max-width:900px){ .passos{grid-template-columns:1fr} .passos li,.passos li+li{padding:32px 0;border-right:0;border-bottom:1px solid var(--linha)} }

/* faq */
.faq{border-top:1px solid var(--linha-forte);max-width:920px}
.faq details{border-bottom:1px solid var(--linha)}
.faq summary{list-style:none;cursor:pointer;padding:28px 56px 28px 0;font:500 clamp(20px,2vw,26px)/1.3 var(--serif);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font:300 30px/1 var(--sans);color:var(--tinta-media);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);color:var(--vinho-vivo)}
.pg-visite .faq details[open] summary::after,.pg-inicio .faq details[open] summary::after{color:var(--cerrado)}
.faq details p{padding:0 56px 30px 0;color:var(--tinta-media);max-width:68ch}
.faq-mais{margin-top:34px}

/* formulario, sobre foto */
#proposta{isolation:isolate;overflow:hidden}
#proposta .bg{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat;background-attachment:fixed}
#proposta::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,10,10,.96) 0%,rgba(10,10,10,.86) 55%,rgba(10,10,10,.72) 100%)}
@media(hover:none),(max-width:900px){ #proposta .bg{background-attachment:scroll} }
.proposta{display:grid;grid-template-columns:repeat(12,1fr);gap:0 24px}
.proposta .lado{grid-column:1/6}
.proposta .lado h2{margin:22px 0 26px}
.proposta .lado ul{list-style:none;margin-top:38px;border-top:1px solid var(--linha)}
.proposta .lado li{padding:14px 0;border-bottom:1px solid var(--linha);font-size:15px;color:var(--tinta-media)}
.proposta .lado li b{color:var(--tinta);font-weight:500;display:block}
form{grid-column:7/-1;background:rgba(10,10,10,.78);border:1px solid var(--linha-forte);padding:clamp(26px,3vw,44px);backdrop-filter:blur(8px)}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px}
.campo{display:flex;flex-direction:column;gap:9px}
.campo.cheio{grid-column:1/-1}
label,legend{font:600 11.5px/1.2 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--tinta-media)}
label i{color:var(--vinho-vivo);font-style:normal}
input,select,textarea{font:400 16px/1.4 var(--sans);color:var(--tinta);background:rgba(255,255,255,.04);border:1px solid var(--linha-forte);padding:15px 16px;width:100%;appearance:none;-webkit-appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,#B3AFA6 50%),linear-gradient(135deg,#B3AFA6 50%,transparent 50%);background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
select option{background:#141414;color:#F3F1EC}
textarea{min-height:110px;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--tinta-fraca)}
input:focus,select:focus,textarea:focus{border-color:#fff;background:rgba(255,255,255,.07)}
.invalido{border-color:#E0524F!important}
.erro{font-size:13px;color:#F28B88;display:none}
.campo.tem-erro .erro{display:block}
.aceite{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;color:var(--tinta-media);line-height:1.5;text-transform:none;letter-spacing:0;font-weight:400}
.aceite input{width:20px;height:20px;margin-top:2px;flex:none;appearance:auto;-webkit-appearance:checkbox;accent-color:var(--vinho-vivo)}
.honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
form .btn{width:100%;justify-content:center;margin-top:8px}
.nota{font-size:13px;color:var(--tinta-fraca);margin-top:16px;text-align:center}
.obrigado{display:none;grid-column:7/-1;border:1px solid var(--linha-forte);padding:clamp(30px,4vw,56px);background:rgba(10,10,10,.82)}
.obrigado h3{margin:18px 0 14px}
.obrigado p{color:var(--tinta-media);margin-bottom:26px}
@media(max-width:900px){ .proposta .lado,form,.obrigado{grid-column:1/-1} form,.obrigado{margin-top:40px} .campos{grid-template-columns:1fr} }

/* rodape */
footer{border-top:1px solid var(--linha);padding:70px 0 40px;background:var(--fundo)}
footer .linhas{display:grid;grid-template-columns:repeat(12,1fr);gap:40px 24px}
footer .col1{grid-column:1/5}
footer .col2{grid-column:5/9}
footer .col3{grid-column:9/-1}
footer h4{font:600 11.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--tinta-media);margin-bottom:18px}
footer p,footer a{font-size:15px;color:var(--tinta-media);text-decoration:none;display:block;margin-bottom:8px}
footer a:hover{color:#fff}
footer .chegar{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 16px}
footer .chegar .btn{display:inline-flex;padding:11px 16px;font-size:11.5px;margin:0;color:#fff}
footer .pe{margin-top:56px;padding-top:24px;border-top:1px solid var(--linha);font-size:13px;color:var(--tinta-fraca);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:900px){ footer .col1,footer .col2,footer .col3{grid-column:1/-1} }

.wa-fixa{position:fixed;right:20px;bottom:20px;z-index:60;background:var(--vinho);color:#fff;text-decoration:none;padding:15px 22px;font:600 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;border:1px solid var(--vinho-vivo);display:none}
.wa-fixa.on{display:inline-flex}

/* entrada suave, so com JS */
.js .rev{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.js .rev.vis{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){ html{scroll-behavior:auto} .js .rev{opacity:1;transform:none;transition:none} .esp .foto img,.galeria img{transition:none} }

/* logo oficial (img\logo-torre-digital-claro.svg, recortada do vetor enviado pelo Felipe em 03/11/2026) */
.marca{align-items:flex-start}
.marca img{display:block;height:52px;width:auto}
footer .marca img{height:64px}
@media(max-width:520px){ .marca img{height:36px} }

/* celular (03/11/2026): area de toque de pelo menos 44 px e topo sem encavalar */
.nav .btn{white-space:nowrap}
@media(max-width:900px){ .nav a:not(.btn){padding:16px 0} }
@media(max-width:520px){ .pg-eventos .nav .fica{display:none} }
.link{padding-top:18px}
@media(max-width:900px){ .nav .btn{min-height:44px} }
.servico .mapas .btn{min-height:44px}
