/* Base compartilhada por todas as páginas: cores, tipografia, topo, rodapé, botões e movimento. */
:root{--tinta:#2B2622;--creme:#F5EFE6;--branco:#FFFFFF;--texto-2:#514840;--linha:#DED3C3;--salvia:#4B5A47;--salvia-escura:#384534;--argila:#93593B;--argila-escura:#7A4930;--bronze:#A0825A;--bronze-texto:#76603F;--areia:#E6CDB0;--sobre-argila:#F4E4D6;--sobre-salvia:#DCE0D3;--foto:#DDD2C3;--foto-3d:#D3D9CC;--foto-escura:#5A6956;--creme-claro:#F9F5EF;--foto-hover:#D3C7B6;--preto:#000000}
html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;scroll-padding-top:88px;scrollbar-color:var(--bronze) var(--creme)}
#conteudo:focus{outline:none}
body{margin:0;background:var(--creme);color:var(--tinta);font-family:'Archivo',system-ui,sans-serif;font-size:17px;line-height:1.6;font-variant-numeric:tabular-nums lining-nums}
::selection{background:var(--areia);color:var(--tinta)}
h1,h2,h3,p{margin:0}
a{color:var(--argila);text-decoration-thickness:1.5px;text-underline-offset:4px}
:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}
.escuro :focus-visible{outline-color:var(--areia)}
.petroleo :focus-visible{outline-color:var(--creme)}
button,a{touch-action:manipulation}
button,.btn,.nav a,.menu-cel a{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.pular{position:absolute;left:12px;top:-60px;z-index:30;background:var(--tinta);color:var(--creme);padding:12px 16px;border-radius:2px;font-weight:600;text-decoration:none}
.pular:focus{top:12px}
.wrap{max-width:1240px;margin:0 auto;padding-left:clamp(20px,4vw,40px);padding-right:clamp(20px,4vw,40px);box-sizing:border-box}
.titulo{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:-0.005em;line-height:1.04;text-wrap:balance}
.h2{font-size:clamp(40px,4.6vw,64px);line-height:1.04}
.h3{font-size:clamp(30px,2.8vw,40px);line-height:1.08}
.rotulo{display:block;font-size:12.5px;line-height:1.4;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--texto-2)}
.valor{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;line-height:1.12;font-weight:600;color:var(--tinta);font-variant-numeric:lining-nums tabular-nums}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;box-sizing:border-box;border:2px solid transparent;border-radius:2px;font-family:inherit;font-size:16px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color 140ms cubic-bezier(.2,.8,.2,1),color 140ms cubic-bezier(.2,.8,.2,1),border-color 140ms cubic-bezier(.2,.8,.2,1),transform 120ms cubic-bezier(.2,.8,.2,1)}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.4;cursor:default;transform:none}
.btn-escuro{background:var(--tinta);border-color:var(--tinta);color:var(--creme)}
.btn-contorno{background:transparent;border-color:var(--tinta);color:var(--tinta)}
.btn-terracota{background:var(--salvia);border-color:var(--salvia);color:var(--creme)}
.btn-petroleo{background:var(--salvia);border-color:var(--salvia);color:var(--creme)}
.btn-marrom{background:var(--argila);border-color:var(--argila);color:var(--creme)}
.btn-creme{background:var(--creme);border-color:var(--creme);color:var(--tinta)}
.btn-ver-proj{background:transparent;border-color:var(--argila);color:var(--argila)}
.btn-ver-obra{background:transparent;border-color:var(--salvia);color:var(--salvia)}
.btn-obra-ativo{background:var(--salvia);border-color:var(--salvia);color:var(--creme)}
.btn-pausa{min-height:44px;padding:0 2px;gap:9px;background:transparent;border:none;color:var(--texto-2);font-size:14.5px}
.btn-pausa .ico{width:16px;height:16px;color:var(--argila)}
/* setas das galerias: só o traço, sem caixa em volta */
.btn-seta{width:44px;min-height:44px;padding:0;background:transparent;border:none;color:var(--tinta)}
.btn-seta .ico{width:24px;height:24px}
.tela-cheia .btn-seta{color:var(--creme)}
.tela-cheia .btn-seta .ico{width:28px;height:28px}
.ico{width:18px;height:18px;flex:none}
.seta{transition:transform 160ms cubic-bezier(.2,.8,.2,1)}
.foto{background:var(--foto);color:var(--texto-2);display:flex;align-items:flex-end;padding:14px 16px;box-sizing:border-box;font-size:14px;line-height:1.35}
.foto-3d{background:var(--foto-3d);color:var(--salvia)}
.secao{padding-top:clamp(88px,9vw,120px)}
.sec-topo{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:16px 48px;align-items:end;margin-bottom:44px}
.sec-texto{font-size:18px;line-height:1.6;max-width:46ch;color:var(--texto-2)}
.escuro{background:var(--salvia-escura);color:var(--creme)}
.escuro .sec-texto{color:var(--sobre-salvia)}
.petroleo{background:var(--argila);color:var(--creme)}
.branco{background:var(--branco)}
.faixa-sec-cor{padding:clamp(88px,9vw,112px) 0;margin-top:clamp(88px,9vw,120px)}
.topo{position:sticky;top:0;z-index:20;background:var(--creme);border-bottom:1px solid var(--linha);padding-top:env(safe-area-inset-top,0px)}
.topo-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
/* logo: o símbolo oficial (assets/img/marca) e o nome em texto, montados como na arte da marca.
   A arte inteira em imagem deixaria "construtora" com 5px de altura no topo. */
.marca{display:inline-flex;align-items:center;gap:12px;padding:4px 0;text-decoration:none;color:var(--tinta)}
.marca-simbolo{display:block;flex:none;width:auto;height:44px}
.marca-txt{display:flex;flex-direction:column;gap:5px}
.marca-nome{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1}
.marca-sub{display:flex;align-items:center;gap:7px;font-size:9.5px;font-weight:600;line-height:1;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze-texto)}
.marca-sub::before,.marca-sub::after{content:"";flex:1;height:1px;background:var(--bronze)}
.nav{display:flex;gap:28px;font-size:16px}
.nav a{color:var(--tinta);text-decoration:none;padding:10px 0}
.nav a[aria-current="page"]{text-decoration:underline;text-decoration-color:var(--bronze);text-decoration-thickness:1.5px;text-underline-offset:8px}
.topo-acoes{display:flex;gap:10px}
.btn-topo{min-height:44px;padding:0 18px;font-size:15px}
.btn-menu{display:none;min-height:44px;width:44px;padding:0}
.menu-cel{display:none}
.barra-cel{display:none}
.rodape{border-top:1px solid var(--linha);margin-top:clamp(72px,8vw,104px);padding:44px 0 calc(48px + env(safe-area-inset-bottom,0px));font-size:15px;line-height:1.55;color:var(--texto-2)}
.sem-margem{margin-top:0}
.rodape-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:24px 40px}
.rodape .rotulo{color:var(--tinta);font-weight:600}
.rodape p{margin-top:6px}
.rodape a{display:inline-block;padding:11px 0;margin:-11px 0}
.rodape a:active,.migalhas a:active{opacity:.7}
.menu-cel a:active{background:var(--linha)}
.nw{white-space:nowrap}
.comp{position:relative;aspect-ratio:16/9;overflow:hidden}
.comp .foto{position:absolute;inset:0;padding:20px;font-size:15px}
.comp-obra{justify-content:flex-end;text-align:right}
.comp-linha{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--creme)}
.comp-tag{position:absolute;top:16px;font-size:13px;font-weight:600;line-height:1.2;padding:6px 12px;border-radius:2px}
.tag-proj{left:16px;background:var(--argila);color:var(--creme)}
.tag-obra{right:16px;background:var(--salvia);color:var(--creme)}
.comp-ctrl{display:flex;align-items:center;gap:12px;margin-top:14px}
.comp-ctrl input{flex:1;min-width:0;height:44px;margin:0;accent-color:var(--salvia);cursor:pointer}
.comp-ctrl .btn{min-height:44px;padding:0 16px;font-size:15px}
.legenda{margin-top:10px;font-size:15px;color:var(--texto-2)}
.etapas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.etapa{display:flex;flex-direction:column;gap:10px;padding-top:14px;border-top:1px solid var(--bronze)}
.etapa-n{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze-texto)}
.etapa-nome{font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;font-weight:600;line-height:1.15}
.etapa .foto{aspect-ratio:1/1;margin-top:4px}
.escuro .etapa-n{color:var(--areia)}
.escuro .foto{background:var(--foto-escura);color:var(--sobre-salvia)}
.lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px}
.lista-item{display:flex;flex-direction:column;gap:8px;padding:24px 0 28px;border-top:1px solid var(--tinta)}
.lista-tit{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:600;line-height:1.15}
.lista-txt{font-size:16.5px;line-height:1.6;color:var(--texto-2);max-width:48ch}
.selo{position:absolute;top:16px;left:16px;font-size:13px;font-weight:600;line-height:1.2;padding:6px 12px;border-radius:2px}
.selo-venda{background:var(--salvia);color:var(--creme)}
.selo-acab{background:var(--creme);color:var(--tinta)}
.selo-feito{background:var(--argila);color:var(--creme)}
.hero{padding-top:clamp(56px,7vw,88px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:end}
.hero-titulo{font-size:clamp(46px,6.2vw,92px);line-height:1;max-width:13ch}
.hero-titulo-longo{font-size:clamp(44px,5.6vw,84px);max-width:15ch}
.hero-lado{display:flex;flex-direction:column;gap:24px;padding-bottom:8px}
.hero-texto{font-size:19px;line-height:1.55;max-width:40ch}
.hero-acoes{display:flex;gap:12px;flex-wrap:wrap}
.fatos{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:0 32px;margin-top:56px}
.fato{display:flex;flex-direction:column;gap:4px;padding-top:14px;border-top:1px solid var(--bronze)}
.fato p{font-size:15px;line-height:1.5}
.cta-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:40px 56px;align-items:end}
.cta-in .h2{color:var(--creme);max-width:16ch}
.cta-txt{margin-top:18px;font-size:18px;line-height:1.6;color:var(--sobre-argila);max-width:44ch}
.cta-pessoa{display:flex;flex-direction:column;gap:6px;padding-top:18px;border-top:1px solid var(--areia)}
.cta-pessoa .rotulo,.cta-pessoa .pessoa-reg{color:var(--sobre-argila)}
.pessoa-reg{display:block;font-size:15px;line-height:1.45;color:var(--texto-2)}
.cta-nome{font-size:clamp(34px,3.2vw,44px);color:var(--creme)}
.tel{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;font-weight:600;line-height:1.25;font-variant-numeric:lining-nums tabular-nums}
.cta-pessoa .btn{margin-top:12px;align-self:flex-start}
@media (hover:hover) and (pointer:fine){
.btn-escuro:hover{background:var(--preto);border-color:var(--preto)}
.btn-contorno:hover{background:var(--tinta);color:var(--creme)}
.btn-terracota:hover{background:var(--salvia-escura);border-color:var(--salvia-escura)}
.btn-petroleo:hover{background:var(--salvia-escura);border-color:var(--salvia-escura)}
.btn-marrom:hover{background:var(--argila-escura);border-color:var(--argila-escura)}
.btn-creme:hover{background:var(--branco);border-color:var(--branco)}
.btn-ver-proj:hover{background:var(--argila);color:var(--creme)}
.btn-ver-obra:hover{background:var(--salvia);color:var(--creme)}
.btn[disabled]:hover{background:transparent;color:var(--tinta)}
.btn-seta:not([disabled]):hover{color:var(--argila)}
.tela-cheia .btn-seta:not([disabled]):hover{color:var(--areia)}
.tela-cheia .btn-seta[disabled]:hover{color:var(--creme)}
.btn-pausa:hover{color:var(--tinta);text-decoration:underline;text-decoration-color:var(--bronze);text-decoration-thickness:1.5px;text-underline-offset:5px}
.nav a:hover{text-decoration:underline;text-decoration-color:var(--bronze);text-decoration-thickness:1.5px;text-underline-offset:8px}
a:hover .seta{transform:translateX(4px)}
}
@media (max-width:960px){
.nav{display:none}
.btn-menu{display:inline-flex}
.menu-cel{display:flex;flex-direction:column;border-top:1px solid var(--linha);background:var(--creme)}
.menu-cel a{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 20px;border-bottom:1px solid var(--linha);color:var(--tinta);font-size:18px;font-weight:500;text-decoration:none}
.menu-cel a:last-child{border-bottom:none}
.etapas{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
.hero-grid{grid-template-columns:1fr;gap:28px;align-items:start}
}
@media (max-width:760px){
.topo-in{height:64px}
.marca{gap:10px}
.marca-simbolo{height:38px}
.marca-nome{font-size:23px}
.marca-sub{font-size:8.5px}
.btn-topo span{display:none}
.btn-topo{width:44px;padding:0}
.comp{aspect-ratio:4/5}
.etapa-nome{font-size:22px}
.lista{grid-template-columns:1fr}
.lista-tit{font-size:24px}
.barra-cel{display:flex;align-items:center;gap:12px;position:sticky;bottom:0;z-index:15;padding:10px 20px calc(10px + env(safe-area-inset-bottom,0px));background:var(--creme);border-top:1px solid var(--linha)}
.barra-cel .btn{flex:1}
.sec-texto{font-size:17px}
.sec-topo{margin-bottom:32px}
.hero-titulo{font-size:46px}
.hero-texto{font-size:17px}
.hero-acoes .btn{flex:1 1 100%}
.so-tela-grande{display:none}
.fatos{grid-template-columns:1fr;gap:0;margin-top:36px;border-bottom:1px solid var(--linha)}
.fato{flex-direction:row;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-top:1px solid var(--linha)}
.fato .rotulo{white-space:nowrap}
.fato:first-child{border-top:1px solid var(--bronze)}
.fato .valor{font-size:22px;text-align:right}
.fato-largo{flex-direction:column;align-items:flex-start;gap:4px}
.valor{font-size:24px}
.cta-pessoa .btn{align-self:stretch}
}
@media (prefers-reduced-motion:reduce){.btn,.seta{transition:none}}
/* movimento: títulos sobem ao entrar na tela; o topo entra ao carregar */
@keyframes p-subir{from{opacity:0;transform:translateY(.32em)}to{opacity:1;transform:none}}
@keyframes p-abrir{from{transform:scaleX(0)}to{transform:none}}
@media (prefers-reduced-motion:no-preference){
@supports (animation-timeline:view()){
.titulo{animation:p-subir linear both;animation-timeline:view();animation-range:entry 5% entry 75%}
}
.titulo.hero-titulo{animation:p-subir .95s cubic-bezier(.2,.8,.2,1) .05s both;animation-timeline:auto}
.hero-texto,.hero-lado{animation:p-subir .9s cubic-bezier(.2,.8,.2,1) .25s both}
.h-palavra,.h-sub{animation:p-subir .95s cubic-bezier(.2,.8,.2,1) both}
.h-titulo .h-sub:nth-child(2){animation-delay:.12s}
.h-div{animation:p-abrir .8s cubic-bezier(.2,.8,.2,1) .25s both}
.h-titulo .h-palavra:nth-child(4){animation-delay:.3s}
.h-titulo .h-sub:nth-child(5){animation-delay:.42s}
.h-texto,.h-acoes{animation:p-subir .9s cubic-bezier(.2,.8,.2,1) .55s both}
}
/* esconde o menu do celular, a tela cheia e afins quando fechados */
[hidden]{display:none!important}
/* páginas curtas: o rodapé fica no pé da tela */
.tela-inteira{min-height:100svh}
/* impressão: as mesmas regras que o Claude Design aplicava. Imprime as cores de fundo
   e leva cada animação direto ao estado final, para nada sair invisível no papel. */
@media print{
@page{margin:.5cm}
figure,table{break-inside:avoid}
*,*::before,*::after{print-color-adjust:exact;-webkit-print-color-adjust:exact;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;animation-delay:-99s!important;animation-duration:.001s!important;animation-iteration-count:1!important;animation-fill-mode:both!important;animation-play-state:running!important;transition-duration:0s!important}
}
