/* Modelo SYM — Imóveis de Primeira. Base (fonte, tokens, botões, data-rev) vem do estilo.css.
   Leitura da SYM: foto inteira com uma barra de busca só, muito branco, cartões limpos sem caixa,
   tipografia que faz o trabalho. Nenhum enfeite além disso. */
body.m-sym{background:#fff}
.m-sym .wrap{max-width:1180px}

/* cabeçalho sobre a foto; ao rolar vira grafite translúcido */
.s-topo{position:fixed;inset:0 0 auto;z-index:50;transition:background .35s,box-shadow .35s}
.s-topo .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;max-width:none;padding:0 28px}
.s-topo .logo img{height:30px;width:auto}
.s-topo .dir{display:flex;align-items:center;gap:14px}
.s-anunciar{height:36px;padding:0 18px;border-radius:999px;border:1.5px solid rgba(255,255,255,.75);color:#fff;font-size:14px;font-weight:600;display:inline-flex;align-items:center;transition:background .2s,color .2s,border-color .2s}
.s-anunciar:hover{background:var(--brand);border-color:var(--brand);color:var(--grafite)}
.s-menu{background:none;border:0;color:#fff;padding:6px;display:grid;place-items:center}
.s-menu svg.i{width:28px;height:28px}
.s-topo.rolou{background:rgba(46,46,46,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(255,255,255,.06)}

/* hero: foto inteira, escurecida, busca centralizada */
.s-hero{position:relative;height:100svh;min-height:600px;max-height:960px;display:grid;place-items:center;color:#fff;overflow:hidden;background:var(--grafite)}
.s-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.06);animation:s-respira 14s ease-out forwards}
@keyframes s-respira{to{transform:scale(1)}}
.s-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(46,46,46,.62) 0%,rgba(46,46,46,.38) 38%,rgba(46,46,46,.45) 70%,rgba(46,46,46,.7) 100%)}
.s-hero .meio{position:relative;z-index:1;width:min(760px,calc(100% - 40px));margin-top:-6vh}
.s-abas{display:flex;justify-content:center;align-items:center;gap:22px;margin-bottom:18px}
.s-abas button{background:none;border:0;color:rgba(255,255,255,.78);font-size:16px;font-weight:600;padding:6px 2px;position:relative}
.s-abas button:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--brand);transform:scaleX(0);transition:transform .3s}
.s-abas button[aria-pressed=true]{color:#fff}
.s-abas button[aria-pressed=true]:after{transform:none}
.s-abas i{width:1px;height:16px;background:rgba(255,255,255,.5)}
.s-busca{display:flex;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 24px 60px -20px rgba(0,0,0,.45)}
.s-busca select,.s-busca input{border:0;font:inherit;color:var(--ink);background:#fff;height:58px;padding:0 20px;font-size:14px;outline-offset:-3px}
.s-busca select{width:220px;border-right:1px solid var(--line);font-weight:600;appearance:none;-webkit-appearance:none;background:#fff}
.s-busca .sel{position:relative;display:flex}
.s-busca .sel svg{position:absolute;right:16px;top:50%;translate:0 -50%;pointer-events:none;color:var(--ink-soft)}
.s-busca input{flex:1;min-width:0}
.s-busca input::placeholder{color:var(--ink-muted)}
.s-busca button{border:0;background:var(--grafite);color:#fff;font-weight:700;font-size:14px;padding:0 28px;display:flex;align-items:center;gap:8px;transition:background .2s,color .2s}
.s-busca button:hover{background:var(--brand);color:var(--grafite)}
.s-hero .rolar{position:absolute;z-index:1;bottom:28px;left:50%;translate:-50% 0;width:26px;height:42px;border:1.5px solid rgba(255,255,255,.6);border-radius:14px}
.s-hero .rolar:after{content:"";position:absolute;left:50%;top:8px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:var(--brand);animation:s-rola 1.8s infinite}
@keyframes s-rola{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(12px)}}

/* títulos de seção: peso contra peso, régua amarela curta */
.s-sec{padding:96px 0 0}
.s-tit{font-size:clamp(30px,3.4vw,40px);font-weight:700;letter-spacing:-.03em;line-height:1.1}
.s-tit span{font-weight:300;color:var(--brand-legivel);letter-spacing:-.02em}
.s-sub{margin:8px 0 0;color:var(--ink-soft);font-size:15px}
.s-regua{display:block;width:48px;height:3px;background:var(--brand);margin:18px 0 40px;border-radius:2px}

/* cartões exclusivos */
.s-linha{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.s-linha+.s-linha{margin-top:48px}
.s-card{position:relative;display:block}
.s-card .foto{position:relative;aspect-ratio:1/.92;border-radius:8px;overflow:hidden;background:#eee}
.s-card .foto img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.s-card:hover .foto img{transform:scale(1.045)}
.s-selo{position:absolute;left:12px;top:12px;background:#fff;color:var(--ink);font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:5px}
.s-selo.amarelo{background:var(--brand);color:var(--grafite)}
.s-ir{position:absolute;right:12px;bottom:12px;width:40px;height:40px;border-radius:999px;background:#fff;color:var(--ink);display:grid;place-items:center;opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.s-card:hover .s-ir{opacity:1;transform:none}
.s-card .linha1{display:flex;justify-content:space-between;align-items:baseline;margin-top:16px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase}
.s-card .linha1 b{font-weight:800}
.s-card .linha1 span{color:var(--ink-muted);font-weight:600}
.s-card h3{font-size:21px;font-weight:700;letter-spacing:-.02em;margin-top:6px}
.s-specs{display:flex;flex-wrap:wrap;margin:8px 0 0;padding:0;list-style:none;font-size:13px;color:var(--ink-muted)}
.s-specs li+li:before{content:"";display:inline-block;width:1px;height:11px;background:var(--line-strong);margin:0 9px;vertical-align:-1px;opacity:.6}
.s-card .valor{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:15px;color:var(--ink-soft)}
.s-card .valor b{color:var(--ink);font-weight:800}
.s-fav{width:36px;height:36px;margin-right:-8px;border:0;background:none;color:var(--ink);display:grid;place-items:center;border-radius:999px;position:relative;z-index:2;transition:color .2s}
.s-fav:hover{color:var(--brand-legivel)}
.s-fav svg.i{width:20px;height:20px}
.s-card a.cobre:after{content:"";position:absolute;inset:0;z-index:1}
.s-botoes{display:flex;justify-content:center;gap:12px;margin-top:56px;flex-wrap:wrap}
.s-btn{height:46px;padding:0 24px;border-radius:6px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--grafite);transition:background .2s,color .2s,border-color .2s}
.s-btn.cheio{background:var(--grafite);color:#fff}
.s-btn.cheio:hover{background:var(--brand);border-color:var(--brand);color:var(--grafite)}
.s-btn:not(.cheio):hover{background:var(--grafite);color:#fff}

/* tour em vídeo: faixa inteira, um slide por vez, setas finas */
.s-reels{margin-top:40px;position:relative}
.s-reels .pista{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.s-reels .pista::-webkit-scrollbar{display:none}
.s-slide{flex:0 0 100%;scroll-snap-align:start;position:relative;height:min(640px,72vh);min-height:420px;overflow:hidden;color:#fff}
.s-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.s-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,46,46,.62),rgba(46,46,46,.05) 60%),linear-gradient(0deg,rgba(46,46,46,.55),transparent 45%)}
.s-slide .txt{position:absolute;z-index:1;left:max(28px,calc((100vw - 1180px)/2 + 24px));bottom:56px;max-width:440px}
.s-slide .txt small{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--brand)}
.s-slide .txt h3{font-size:clamp(28px,3vw,40px);font-weight:700;letter-spacing:-.03em;margin:8px 0 18px}
.s-slide .txt a{display:inline-flex;align-items:center;gap:10px;height:42px;padding:0 18px 0 8px;border-radius:6px;background:#fff;color:var(--ink);font-size:14px;font-weight:700}
.s-slide .txt a span{width:28px;height:28px;border-radius:999px;background:var(--brand);display:grid;place-items:center}
.s-slide .txt a svg.i{width:13px;height:13px;fill:var(--grafite);stroke:none}
.s-seta{position:absolute;top:50%;translate:0 -50%;z-index:2;width:48px;height:48px;border:0;background:none;color:#fff;display:grid;place-items:center;opacity:.85;transition:opacity .2s,transform .2s}
.s-seta:hover{opacity:1}
.s-seta svg.i{width:34px;height:34px;stroke-width:1.2}
.s-seta.ant{left:12px}.s-seta.prox{right:12px}
.s-dots{position:absolute;z-index:2;right:max(28px,calc((100vw - 1180px)/2 + 24px));bottom:64px;display:flex;gap:8px}
.s-dots button{width:22px;height:3px;border:0;padding:0;background:rgba(255,255,255,.45);border-radius:2px;transition:background .3s,width .3s}
.s-dots button[aria-current=true]{background:var(--brand);width:40px}

/* bairros como lista tipográfica */
.s-bairros{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.s-bairros a{display:grid;grid-template-columns:1fr auto 32px;align-items:center;gap:20px;padding:26px 4px;border-bottom:1px solid var(--line);transition:padding .35s cubic-bezier(.2,.7,.2,1),background .35s}
.s-bairros b{font-size:clamp(22px,2.6vw,32px);font-weight:600;letter-spacing:-.025em}
.s-bairros span{font-size:14px;color:var(--ink-muted)}
.s-bairros svg.i{width:22px;height:22px;transition:transform .35s;color:var(--brand-legivel)}
.s-bairros a:hover{padding-left:18px;background:var(--brand-soft)}
.s-bairros a:hover svg.i{transform:translateX(4px)}

/* anuncie: faixa neutra, foto ao lado */
.s-anuncie{margin-top:112px;background:#F6F5F2;padding:96px 0}
.s-anuncie .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.s-anuncie .foto{border-radius:8px;overflow:hidden;aspect-ratio:4/3.4}
.s-anuncie .foto img{width:100%;height:100%;object-fit:cover}
.s-anuncie ul{list-style:none;margin:24px 0 32px;padding:0;display:grid;gap:12px;font-size:15px;color:var(--ink-soft)}
.s-anuncie li{display:flex;gap:10px;align-items:flex-start}
.s-anuncie li svg.i{color:var(--brand-legivel);margin-top:3px}

/* rodapé */
.s-rodape{background:var(--grafite);color:#fff;padding:72px 0 32px;font-size:14px}
.s-rodape .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.s-rodape .logo img{height:32px;width:auto}
.s-rodape p{color:var(--noite-muted);margin:16px 0 0;max-width:30ch}
.s-rodape h4{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin:0 0 16px}
.s-rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;color:var(--noite-muted)}
.s-rodape ul a:hover{color:#fff}
.s-rodape .soc{display:flex;gap:10px;margin-top:22px}
.s-rodape .soc a{width:38px;height:38px;border-radius:999px;border:1px solid var(--noite-line);display:grid;place-items:center;color:#fff;transition:background .2s,color .2s}
.s-rodape .soc a:hover{background:var(--brand);color:var(--grafite);border-color:var(--brand)}
.s-rodape .base{margin-top:56px;padding-top:24px;border-top:1px solid var(--noite-line);display:flex;justify-content:space-between;gap:16px;color:var(--noite-muted);font-size:13px;flex-wrap:wrap}

@media(max-width:1023px){
  .s-linha{grid-template-columns:repeat(2,1fr)}
  .s-anuncie .wrap{grid-template-columns:1fr;gap:40px}
  .s-rodape .cols{grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
  .s-topo .wrap{height:64px;padding:0 18px}
  .s-topo .logo img{height:24px}
  .s-anunciar{height:32px;padding:0 14px;font-size:13px}
  .s-hero{height:auto;min-height:0;padding:120px 0 64px}
  .s-hero .meio{margin:0;width:calc(100% - 36px)}
  .s-busca{flex-direction:column;background:transparent;box-shadow:none;gap:10px;border-radius:0;overflow:visible}
  .s-busca .sel,.s-busca select,.s-busca input{width:100%;border-radius:6px;border:0;height:52px}
  .s-busca input{flex:none}
  .s-busca button{height:52px;justify-content:center;border-radius:6px}
  .s-hero .rolar{display:none}
  .s-sec{padding-top:64px}
  .m-sym .wrap{padding:0 18px}
  /* cartões viram fileira que desliza, com o próximo aparecendo (como na SYM) */
  .s-linha{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 18px;gap:16px;margin:0 -18px;padding:0 18px 4px;scrollbar-width:none}
  .s-linha::-webkit-scrollbar{display:none}
  .s-linha>*{flex:0 0 84%;scroll-snap-align:start}
  .s-linha+.s-linha{margin-top:36px}
  .s-ir{opacity:1;transform:none}
  .s-botoes{flex-direction:column;align-items:center}
  .s-btn{width:min(100%,300px);justify-content:center}
  .s-slide{height:480px;min-height:0}
  .s-slide .txt{left:20px;bottom:64px;right:20px}
  .s-dots{left:20px;right:auto;bottom:32px}
  .s-seta{display:none}
  .s-bairros a{padding:20px 2px;grid-template-columns:1fr auto 24px;gap:12px}
  .s-anuncie{margin-top:72px;padding:64px 0}
  .s-rodape .cols{grid-template-columns:1fr}
}
