/* Vitrine Cariri — tema premium (azul-marinho e dourado, estilo limpo)
   Carregado DEPOIS de style.css. Troca as cores e a tipografia do tema anterior sem mexer na estrutura.
   Para voltar ao visual antigo: basta remover a linha <link rel="stylesheet" href="tema-premium.css"> do index.html.
   Paleta oficial: azul-marinho #09243D, dourado #F4BD4F, dourado escuro #8A6208 (texto), branco #FFFFFF, cinza-claro #EAF0F6. */

:root{
  --verde:#09243D;--verde-2:#12304E;--verde-3:#1B4A73;
  --ouro:#F4BD4F;--ouro-claro:#F7D58A;--ouro-escuro:#8A6208;
  --bege:#EAF0F6;--bege-2:#DCE5EF;
  --line:#DCE4EC;--text:#14202C;--muted:#4A5B6C;--r:20px;
  --sh:0 1px 3px rgba(9,36,61,.06),0 10px 28px -14px rgba(9,36,61,.22);
  --sh2:0 2px 6px rgba(9,36,61,.08),0 24px 48px -16px rgba(9,36,61,.30);
  --serif:-apple-system,"SF Pro Display",Inter,system-ui,"Segoe UI",Roboto,Arial,sans-serif;
  --sans:-apple-system,"SF Pro Text",Inter,system-ui,"Segoe UI",Roboto,Arial,sans-serif;
}
body{color:var(--text)}
h1,h2,h3{letter-spacing:-.025em}
h2{font-weight:700}

/* Cabeçalho */
.site-header{background:rgba(255,255,255,.84);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}
.logo-nome{font-weight:600;font-size:1.35rem;letter-spacing:-.02em}
.logo-nome b{font-style:normal;font-weight:700;color:var(--verde)}
.logo small{font-family:var(--sans);font-style:normal;font-weight:500;color:var(--ouro-escuro)}
#menu a::after{background:var(--ouro)}

/* Botões arredondados */
.btn{border-radius:999px;padding:.8rem 1.5rem}
.btn-sm{border-radius:999px}
.btn-primary{box-shadow:0 8px 20px -8px rgba(9,36,61,.45)}
.btn-ouro{box-shadow:0 8px 20px -8px rgba(244,189,79,.6)}
.btn-ouro:hover{background:#F7C866}
.btn-outline{background:#EAF0F6;border-color:transparent}
.btn-outline:hover{background:#DCE5EF}

/* ---------- Hero ---------- */
.hero{background:#FFFFFF;padding:3.5rem 0 3rem}
.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:3rem}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.6rem);line-height:1.02;letter-spacing:-.04em;max-width:none;margin-bottom:0}
.hero h1 em{display:block;font-style:normal;font-weight:700;color:var(--ouro-escuro)}
.hero-sub{display:flex;align-items:center;gap:.75rem;margin:1.1rem 0 1.1rem;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:600;letter-spacing:-.015em;color:var(--verde)}
.hero-sub::before{content:"";width:28px;height:2px;border-radius:2px;background:var(--ouro);flex:none}
.lead{color:var(--muted)}
.chips{color:var(--muted)}

/* Filme da obra */
.hero-obra{margin:0;width:100%;min-width:0}
.obra-cena{position:relative;overflow:hidden;border-radius:26px;aspect-ratio:1280/721;max-width:100%;background:#EAF0F6;box-shadow:var(--sh2)}
.obra-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.1s ease}
.obra-foto:first-child{opacity:1}
.obra-foto.on{opacity:1}
.obra-cena.zoom .obra-foto{animation:obra-zoom 11s ease-out both}
@keyframes obra-zoom{from{transform:scale(1.06)}to{transform:scale(1)}}
.obra-etapa,.obra-final,.obra-ilus{position:absolute;border-radius:999px;pointer-events:none}
.obra-etapa{left:14px;top:14px;padding:.4rem .9rem;background:rgba(9,36,61,.8);color:#fff;font-size:.82rem;font-weight:600;transition:opacity .4s}
.obra-final{left:14px;top:14px;padding:.45rem 1rem;background:var(--ouro);color:var(--verde);font-size:.85rem;font-weight:700;opacity:0;transform:translateY(8px);transition:opacity .5s .5s,transform .5s .5s}
.obra-cena.pronta .obra-etapa{opacity:0}
.obra-cena.pronta .obra-final{opacity:1;transform:none}
.obra-ilus{left:12px;bottom:12px;padding:.2rem .6rem;background:rgba(9,36,61,.6);color:#fff;font-size:.7rem;font-weight:500}
.obra-replay{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:.4rem;min-height:40px;padding:0 1rem;border:0;border-radius:999px;background:rgba(255,255,255,.94);color:var(--verde);font:600 .85rem var(--sans);cursor:pointer;box-shadow:0 6px 18px -8px rgba(0,0,0,.45)}
.obra-replay svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.obra-replay[hidden]{display:none}
.obra-passos{list-style:none;margin:.9rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem}
.obra-passos button{width:100%;min-height:44px;display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;padding:0;border:0;background:none;color:var(--muted);font:500 .8rem/1.25 var(--sans);text-align:left;cursor:pointer}
.obra-passos button[aria-current=step]{color:var(--verde);font-weight:700}
.obra-barra{display:block;width:100%;height:3px;border-radius:3px;background:var(--line);overflow:hidden}
.obra-barra i{display:block;height:100%;width:0;background:var(--ouro)}
.obra-passos button.feito .obra-barra i,.obra-passos button.cheio .obra-barra i{width:100%}
.obra-passos button.rodando .obra-barra i{animation:obra-barra 2.6s linear forwards}
@keyframes obra-barra{to{width:100%}}
.obra-cena.sem-movimento .obra-foto{transition:none}

/* Busca */
.search{border-radius:26px;border-top:0;box-shadow:0 1px 3px rgba(9,36,61,.06),0 24px 50px -22px rgba(9,36,61,.35);border:1px solid var(--line)}
.seg{background:#EAF0F6;border-color:transparent}
.seg-btn[aria-pressed=true]{background:var(--verde)}
select,input,textarea{border-color:#C9D5E2;border-radius:14px}
select:focus,input:focus,textarea:focus{border-color:var(--verde-3);outline:3px solid rgba(244,189,79,.45)}
:focus-visible{outline-color:var(--ouro)}

/* Faixa decorativa: mesmo desenho, nas cores novas */
.trim{background:#EAF0F6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 14'%3E%3Cpath d='M0 14 14 0 28 14 42 0 56 14' fill='none' stroke='%2309243D' stroke-width='3'/%3E%3Cpath d='M0 14 14 4 28 14 42 4 56 14' fill='none' stroke='%23F4BD4F' stroke-width='2'/%3E%3C/svg%3E") repeat-x center/56px 14px}

/* Números */
.stat b{font-family:var(--sans);font-weight:700;color:var(--ouro)}
.stat span{color:#C9D6E3}

/* Seções */
.section{padding:5rem 0}
.kicker{color:var(--ouro-escuro)}
.man-quote{font-family:var(--sans);font-style:normal;font-weight:500;color:var(--verde-3)}
.pillar,.step,.fin-opt,.calc form,.calc-out{border-radius:22px}
.pillar-ic{background:var(--verde)}
.pillar-ic svg{stroke:var(--ouro)}
.step::before{font-family:var(--sans)}

/* Categorias com ícones */
.cats button{border-radius:22px;box-shadow:none;background:#EAF0F6;border-color:transparent}
.cats button:hover{border-color:transparent;box-shadow:var(--sh2)}
.cats button span{background:#FFFFFF;font-size:1rem}
.cats button span svg{width:28px;height:28px;fill:none;stroke:var(--verde);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}

/* Regiões */
.muni{border-left-color:var(--ouro);border-radius:16px}
.muni strong{font-family:var(--sans);font-weight:700}
.muni.vazio{background:#F4F7FA;border-left-color:#C9D5E2}
.muni.principal{--bgc:linear-gradient(160deg,#1B4A73,#09243D)}
.muni.principal.city-j{--bgc:radial-gradient(circle at 82% 20%,#F4BD4F 0 4%,transparent 4.6%),linear-gradient(160deg,#1B4A73,#09243D 80%)}
.muni.principal.city-c{--bgc:radial-gradient(circle at 82% 20%,#F4BD4F 0 4%,transparent 4.6%),linear-gradient(160deg,#245A86,#0B2742 80%)}
.muni.principal.city-b{--bgc:radial-gradient(circle at 82% 20%,#F4BD4F 0 4%,transparent 4.6%),linear-gradient(160deg,#2C6290,#0E2D4A 80%)}
.muni.principal::after{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200' preserveAspectRatio='none'%3E%3Cpath d='M0 200V110h60l30-30h150l40 30 60 6 60-14v98z' fill='%23061A2C' fill-opacity='.55'/%3E%3C/svg%3E") bottom/100% 100% no-repeat,linear-gradient(0deg,rgba(6,26,44,.8),transparent)}
.muni.principal .muni-desc{color:#DCE5EF}
.reg-count{background:#EAF0F6}

/* Cartões de imóveis */
.card{border-radius:24px}
.card:hover{border-color:var(--line)}
.card-media{background:#EAF0F6}
.card-media::after{background:linear-gradient(0deg,rgba(9,36,61,.5),transparent)}
.price{font-family:var(--sans);font-weight:700;letter-spacing:-.02em}
.ribbon{background:rgba(9,36,61,.85)}
.ribbon.aluguel{background:rgba(138,98,8,.95)}
.empty-t{font-family:var(--sans)}

/* Anúncios locais, sonho e chamada final */
.ad{background:#FFFFFF;border-left-color:var(--ouro)}
.ad h3,.sonho-card strong{font-family:var(--sans)}
.ad .ad-badge-demo{background:#FFF6DD;color:#6B5114}
.ads-cta{border-color:#C9D5E2;border-radius:20px}
.band{background:linear-gradient(135deg,#09243D,#12304E)}
.band p{color:#C9D6E3}

/* Rodapé */
.footer{background:#061A2C;color:#C9D6E3}
.copy{border-top-color:#1B3B5C}
.logo-f,.foot-tag{font-family:var(--sans)}
.foot-tag{font-style:normal;color:var(--ouro)}

/* Modais e chat */
dialog::backdrop{background:rgba(6,26,44,.7)}
.vc-fab{box-shadow:0 10px 26px -6px rgba(9,36,61,.5)}
.vc-win{box-shadow:0 24px 60px rgba(9,36,61,.35)}
.toast{background:var(--verde)}

/* ---------- Celular e tablet ---------- */
@media(max-width:960px){
  .hero{padding:1.6rem 0 2.2rem}
  .hero h1{order:1;font-size:clamp(2.2rem,9.6vw,3rem);max-width:none}
  .hero-sub{order:2;margin:.7rem 0 0;font-size:1.15rem}
  .hero-obra{order:3;margin-top:1.3rem;max-width:none}
  .hero .lead{order:4;margin-top:1.4rem}
  .hero .cta{order:5}
  .hero .search{order:6}
  .hero .chips{order:7}
}
@media(max-width:520px){
  .obra-cena{border-radius:20px}
  .obra-passos button{font-size:.72rem}
  .obra-etapa,.obra-final{font-size:.75rem}
}
