
body.home{--serif:"Cormorant Garamond","Georgia",serif;--sans:"DM Sans","Segoe UI",system-ui,sans-serif;--ouro:var(--c2);--noite:#0a1a30;font-family:var(--sans);background:var(--fundo);color:#243142}
body.home h1,body.home h2,body.home h3{font-family:var(--serif);font-weight:600;letter-spacing:-.01em}

/* topo */
body.home .faixa{border-bottom:0;background:#fff}
body.home .faixa .wrap{min-height:92px}
body.home .faixa .tel{border-color:rgba(15,42,74,.14);font-weight:500;letter-spacing:.01em;transition:border-color .25s,transform .25s}
body.home .faixa .tel:hover{border-color:#25d366;transform:translateY(-1px)}
body.home .faixa .soc a{border:0;padding:6px 4px;font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:var(--c1);position:relative}
body.home .faixa .soc a:after{content:"";position:absolute;left:4px;right:4px;bottom:0;height:1px;background:var(--ouro);transform:scaleX(0);transform-origin:left;transition:transform .3s}
body.home .faixa .soc a:hover:after{transform:scaleX(1)}
body.home nav.menu{border-bottom:1px solid rgba(15,42,74,.08);background:#fff}
body.home nav.menu .wrap{gap:14px}
body.home nav.menu a{font-size:12.5px;text-transform:uppercase;letter-spacing:.18em;font-weight:500;color:var(--c1);padding:16px 18px;border-bottom:2px solid transparent;transition:border-color .25s,color .25s}
body.home nav.menu a:hover{border-color:var(--ouro)}

/* capa */
body.home .hero{min-height:min(82vh,760px);display:flex;align-items:center;padding:96px 0 150px;background-position:center 42%;background-size:cover}
body.home .hero:before{background:linear-gradient(100deg,rgba(10,26,48,.9) 0%,rgba(10,26,48,.62) 52%,rgba(10,26,48,.22) 100%)}
body.home .hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:140px;background:linear-gradient(0deg,var(--fundo),transparent);opacity:.0}
body.home .hero .wrap{width:100%;position:static}
body.home .hero .eyebrow,body.home .hero h1,body.home .hero p{position:relative;z-index:2}
body.home .hero .filtros{z-index:3}
body.home .hero .eyebrow{margin:0 0 18px;font-size:12.5px;font-weight:500;text-transform:uppercase;letter-spacing:.3em;color:var(--ouro);display:flex;align-items:center;gap:14px}
body.home .hero .eyebrow:before{content:"";width:46px;height:1px;background:var(--ouro)}
body.home .hero h1{font-size:clamp(40px,6.4vw,84px);line-height:1.02;font-weight:500;max-width:880px;margin:0 0 22px;text-wrap:balance}
body.home .hero p:not(.eyebrow){font-size:clamp(16px,1.6vw,19px);line-height:1.65;font-weight:400;opacity:.92;max-width:600px;margin:0}

/* busca: cartão claro sobreposto à capa */
body.home .filtros{position:absolute;left:20px;right:20px;bottom:-46px;max-width:1180px;margin:0 auto;background:#fff;border-radius:3px;border-top:3px solid var(--ouro);padding:22px;gap:12px;box-shadow:0 30px 60px -20px rgba(10,26,48,.45)}
body.home .filtros select,body.home .filtros input{border:0;border-bottom:1px solid rgba(15,42,74,.22);border-radius:0;padding:13px 4px;background:transparent;font-size:15px;transition:border-color .2s}
body.home .filtros select:focus,body.home .filtros input:focus{outline:none;border-bottom-color:var(--ouro)}
body.home .filtros .btn{border-radius:2px;background:var(--c1);color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;font-weight:700;padding:15px 22px;transition:background .25s,transform .25s}
body.home .filtros .btn:hover{background:var(--ouro);color:var(--noite);transform:translateY(-1px)}
body.home .filtros .btn.cont{background:transparent;color:var(--c1);border:1px solid rgba(15,42,74,.3)}
body.home .hero{position:relative}

/* seções */
body.home .secao{padding-top:112px;padding-bottom:40px}
body.home .secao.wrap{padding-left:20px;padding-right:20px}
body.home #imoveis{padding-top:150px}
body.home .secao h2{font-size:clamp(34px,4.4vw,56px);line-height:1.05;font-weight:500;margin:0 0 10px;color:var(--c1)}
body.home #imoveis h2:before,body.home #sobre h2:before,body.home #contato h2:before{display:block;margin-bottom:14px;font-family:var(--sans);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.3em;color:var(--ouro)}
body.home #imoveis h2:before{content:"Seleção"}
body.home #sobre h2:before{content:"Quem atende você"}
body.home #contato h2:before{content:"Contato"}
body.home .secao .sub{color:#5d6b7c;font-size:16px;margin:0 0 44px}

/* cartões de imóvel */
body.home .grade{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:44px 34px}
body.home .cartao{border:0;border-radius:0;background:transparent;overflow:visible;box-shadow:none;transform:none}
body.home .cartao:hover{box-shadow:none;transform:none}
body.home .cartao .foto{aspect-ratio:4/5;border-radius:2px;overflow:hidden;position:relative;background-size:cover;transition:filter .5s}
body.home .cartao .foto:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,26,48,.38),transparent 46%);opacity:.9;transition:opacity .4s}
body.home .cartao:hover .foto{filter:saturate(1.08) brightness(1.04)}
body.home .cartao .tags{left:14px;top:14px;z-index:2}
body.home .tag{background:rgba(255,255,255,.94);color:var(--c1);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;border-radius:1px;padding:5px 9px}
body.home .tag.dest{background:var(--ouro);color:var(--noite)}
body.home .cartao .corpo{padding:20px 2px 0;gap:8px}
body.home .cartao h3{font-size:25px;line-height:1.14;font-weight:600;color:var(--c1);transition:color .25s;text-wrap:balance}
body.home .cartao:hover h3{color:#7c5f1d}
body.home .cartao .local{font-size:12.5px;text-transform:uppercase;letter-spacing:.14em;color:#6b7a8c}
body.home .cartao .specs{gap:6px 14px;font-size:13.5px;color:#4a5a6c}
body.home .cartao .specs span+span:before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--ouro);margin:0 14px 3px 0;vertical-align:middle}
body.home .cartao .preco{font-family:"Bebas Neue","Saira Condensed",sans-serif;font-size:30px;font-weight:400;letter-spacing:.04em;color:var(--c1);padding-top:12px;margin-top:6px;border-top:1px solid rgba(15,42,74,.14);position:relative}
body.home .cartao .preco:before{content:"";position:absolute;left:0;top:-1px;width:44px;height:1px;background:var(--ouro);transition:width .4s}
body.home .cartao:hover .preco:before{width:100%}

/* sobre */
body.home .sobre{gap:64px;align-items:stretch}
body.home .sobre .desc{font-size:18px;line-height:1.8;color:#34414f}
body.home .sobre .cartao-c{background:var(--c1);color:#fff;border-radius:2px;padding:44px 40px;position:relative;display:flex;flex-direction:column;justify-content:center;gap:2px}
body.home .sobre .cartao-c:before{content:"";position:absolute;inset:12px;border:1px solid rgba(200,162,74,.5);pointer-events:none}
body.home .sobre .cartao-c p{margin:4px 0;font-size:15px;opacity:.92}
body.home .sobre .cartao-c p:first-child{font-family:var(--serif);font-size:32px;font-weight:600;opacity:1;line-height:1.1}
body.home .btn.wa{background:#25d366;color:#052e16;border-radius:2px;text-transform:uppercase;letter-spacing:.12em;font-size:12.5px;font-weight:700;padding:14px 22px}

/* guia de busca (links internos e perguntas) mais discreto */
body.home #guia{padding-top:70px;border-top:1px solid rgba(15,42,74,.1);margin-top:70px}
body.home #guia h2{font-size:26px}
body.home #guia .links a{border:1px solid rgba(15,42,74,.16);border-radius:1px;background:transparent;font-size:13.5px;padding:8px 14px;transition:border-color .2s,color .2s,background .2s}
body.home #guia .links a:hover{border-color:var(--ouro);color:var(--c1);background:rgba(200,162,74,.08)}

/* contato */
body.home .contato{background:var(--noite);margin-top:90px;padding:110px 0;position:relative;overflow:hidden}
body.home .contato:before{content:"";position:absolute;right:-12%;top:-30%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(200,162,74,.18),transparent 65%)}
body.home .contato .wrap{position:relative}
body.home .contato h2{color:#fff}
body.home .contato .sub{color:rgba(255,255,255,.72)}
body.home .contato .caixa{border-radius:2px;border-top:3px solid var(--ouro);padding:30px;max-width:580px}
body.home .form input:not([type=checkbox]),body.home .form textarea{border:0;border-bottom:1px solid rgba(15,42,74,.25);border-radius:0;padding:13px 2px;background:transparent}
body.home .form input:focus,body.home .form textarea:focus{outline:none;border-bottom-color:var(--ouro)}
body.home .form .btn.esc{border-radius:2px;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;font-weight:700;padding:16px}

body.home footer.rodape{background:#07111f;padding:44px 0}
body.home .flut{background:#25d366;box-shadow:0 14px 30px -8px rgba(0,0,0,.5)}

/* entrada suave ao rolar (só com JavaScript ativo) */
.js body.home .rv{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.js body.home .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js body.home .rv{opacity:1;transform:none;transition:none}}

@media(max-width:900px){
 body.home .sobre{gap:30px}
 body.home .secao{padding-top:84px}
 body.home .hero{min-height:auto;display:block;padding:64px 0 56px}
 body.home .hero .wrap{position:relative}
 body.home .filtros{position:relative;left:auto;right:auto;bottom:auto;margin:36px 0 0;padding:18px}
 body.home #imoveis{padding-top:84px}
}
@media(max-width:560px){
 body.home .faixa .wrap{min-height:74px}
 body.home nav.menu a{padding:13px 10px;font-size:11px;letter-spacing:.12em}
 body.home .hero{padding:48px 0 44px}
 body.home .hero .eyebrow{letter-spacing:.2em;font-size:11px}
 body.home .grade{gap:38px}
 body.home .cartao .foto{aspect-ratio:4/4.4}
 body.home .sobre .cartao-c{padding:34px 26px}
 body.home .contato{padding:80px 0}
}
