:root{
  /* Acento: Setor Oeste = laranja */
  --accent:var(--laranja-500);
  --accent-claro:var(--laranja-400);
  --accent-tag:var(--laranja-500);
  --accent-sombra:rgba(180,83,9,.25);
  --gd-light:var(--laranja-500);
  /* Mapa e simulador */
  --map-legend-bg:var(--c-6-17-10-095);
  --map-sidebar-bg:var(--dk2);
  --map-sidebar-header-bg:var(--dk3);
  --map-sidebar-select-bg:var(--dk2);
  --map-payment-card-bg:var(--c-0b2018);
  --price-card-bg:var(--wh);
  --simulator-wrapper-bg:var(--dk2);
  --simulator-card-bg:var(--c-10281e);
  --simulator-result-bg:var(--c-0b2018);
  --whatsapp-button-bg:var(--c-25d366);
  --whatsapp-button-hover-bg:var(--c-20b858);
  /* Sidebar: paineis internos */
  --map-sidebar-panel-bg:rgba(0,0,0,.22);
  --map-sidebar-panel-bg-strong:var(--c-10281e);
  --map-sidebar-panel-border:rgba(245,130,42,.32);
  /* Accent SO: laranja em todos os níveis */
  --so-card-text-accent-dark:var(--laranja-500);
  --so-card-text-accent-light:var(--laranja-400);
  /* Botões de prazo (simulador) — activo = laranja sólido */
  --so-simulator-action-bg:var(--laranja-500);
  --so-simulator-action-hover-bg:var(--laranja-400);
  --so-simulator-action-text:var(--branco);
  --so-simulator-border:rgba(245,130,42,.35);
  --so-simulator-border-soft:rgba(245,130,42,.2);
  /* Cards de preço (fundo branco, acento laranja) */
  --so-price-card-text:var(--tx);
  --so-price-card-muted:var(--mu);
  --so-price-card-accent:var(--laranja-500);
  --so-price-card-accent-soft:rgba(245,130,42,.22);
  /* Info box nos preços */
  --so-price-info-bg:rgba(21,128,61,.08);
  --so-price-info-border:var(--laranja-500);
  --so-price-info-text:var(--tx2);
  --so-price-info-strong:var(--tx);
  /* Seções */
  --so-section-alt-bg:var(--dk);
  --so-section-dark-bg:linear-gradient(170deg,var(--dk) 0%,var(--dk2) 100%);
}


*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--of);color:var(--tx);overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}

/* ── SEÇÃO: TAGS / LABELS ─────────────────────────── */
.tag{
  display:inline-flex;align-items:center;gap:7px;
  font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--gd-light);margin-bottom:16px;
}
.tag::before{display:none}
.tag.lt{color:var(--gd-light)}
.tag.lt::before{display:none}
.tag.or{color:var(--gd-light)}
.tag.or::before{display:none}
.s-title{
  font-size:clamp(28px,4vw,48px);font-weight:800;line-height:1.12;
  letter-spacing:-.02em;color:var(--tx);margin-bottom:14px;
}
.s-title.wh{color:var(--c-ffffff)}
.s-title em{font-style:normal;color:var(--gd3)}
.s-title.wh em{color:var(--gd3)}
.s-desc{font-size:16px;color:var(--mu);line-height:1.65;max-width:680px;margin:0 0 36px}
.s-desc.wh{color:var(--c-ffffff)}
.fu{padding-left:clamp(20px,5vw,80px);padding-right:clamp(20px,5vw,80px)}

/* ── SEÇÕES BASE ──────────────────────────────────── */
.sec{max-width:var(--mw);margin:0 auto;padding:80px 48px}
.sec-dk{background:var(--dk);padding:80px 48px}
.sec-dk .s-title,.sec-dk .s-desc{max-width:var(--mw);margin-left:auto;margin-right:auto}
.sec-alt{background:var(--of);padding:80px 48px}

/* ── LOT BLOCK ────────────────────────────────────── */
.lot-block{border-top:1px solid var(--bd)}
.lot-block-hdr{
  background:linear-gradient(180deg,var(--c-ffffff) 0%,var(--of) 100%);
  padding:116px 48px 56px;text-align:center;
}
.lot-block-hdr img{height:240px;object-fit:contain;filter:none;opacity:1;margin-bottom:20px;display:block;margin-left:auto;margin-right:auto}
.lot-block-hdr .s-title{color:var(--tx);margin-left:auto;margin-right:auto}
.lot-block-hdr .s-desc{color:var(--mu);margin-left:auto;margin-right:auto;margin-bottom:28px}
.lot-block-hdr .s-title em,.mapa-hdr .s-title em{white-space:nowrap}
.lot-subnav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:8px auto 0;
  width:min(100%,900px);
}
.lsn{
  padding:9px 20px;border-radius:var(--r8);
  font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  text-decoration:none;
  color:var(--tx2);border:1px solid var(--bd);background:var(--c-ffffff);
  display:flex;align-items:center;justify-content:center;text-align:center;
  min-width:0;
  min-height:40px;
  transition:all .2s;
}
.lsn:hover{background:var(--gr);color:var(--c-ffffff);border-color:var(--gr)}
.btn-share{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:8px 18px;border-radius:var(--r8);border:1px solid rgba(245,130,42,.45);background:transparent;color:rgba(255,255,255,.7);font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:all .2s}
.btn-share:hover{background:rgba(245,130,42,.15);border-color:var(--accent);color:var(--c-ffffff)}
.btn-share svg{flex-shrink:0;opacity:.85}
.btn-share.copiado{border-color:var(--gr2);color:var(--c-ffffff);background:rgba(21,128,61,.18)}
.mapa-hdr{
  max-width:var(--mw);margin:0 auto;
  padding:64px 48px 40px;
}
.mapa-hdr .s-title{color:var(--tx)}
.mapa-hdr .s-desc{color:var(--mu)}
.lot-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:24px 0 0;
  max-width:640px;
}
.lot-stat{
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  padding:12px 14px;
  background:rgba(255,255,255,.08);
}
.lot-stat span{
  display:block;
  font-size:24px;
  line-height:1;
  font-weight:900;
  color:var(--c-ffffff);
}
.lot-stat small{
  display:block;
  margin-top:6px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.72);
}
.mapa-body{
  display:grid;grid-template-columns:1fr 320px;
  height:720px;border-top:1px solid var(--c-255-255-255-006);
}
.map-cont{position:relative;overflow:hidden;background:var(--c-173426);display:flex;flex-direction:column}
.map-scroll{flex:1;overflow:auto;position:relative;cursor:grab}
.map-scroll.dragging{cursor:grabbing;user-select:none}
.map-scroll::-webkit-scrollbar{height:8px;width:8px}
.map-scroll::-webkit-scrollbar-track{background:var(--c-255-255-255-012);border-radius:4px}
.map-scroll::-webkit-scrollbar-thumb{background:var(--c-52-211-100-08);border-radius:4px;border:1px solid var(--c-0-0-0-02)}
.map-inner{position:relative;display:inline-block;min-width:100%}
.map-img{display:block;width:100%;min-width:900px;user-select:none}
/* Pin do lote e arcos da quadra: ver map-pin.css (canônico, compartilhado com Dashboard/Portal). */
.map-legend{background:var(--map-legend-bg);padding:10px 20px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;flex-shrink:0;border-top:1px solid var(--c-255-255-255-006)}
.mleg{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--c-ffffff);font-weight:500}
.mleg-dot{width:8px;height:8px;border-radius:50%}
.mleg-dots{display:flex;align-items:center;gap:4px}
.zoom-bar{position:absolute;bottom:52px;right:14px;display:flex;flex-direction:row;gap:4px;z-index:10}
.zb{width:32px;height:32px;background:var(--c-6-17-10-088);color:var(--c-ffffff);border:1px solid var(--c-255-255-255-015);border-radius:var(--r8);display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:background .15s;user-select:none;font-weight:600}
.zb:hover{background:var(--c-21-128-61-06)}
.zb-sep{width:1px;height:auto;background:var(--c-255-255-255-02);margin:4px 2px}
/* sidebar - fundo verde escuro integrado ao mapa */
.sidebar{
  background:var(--map-sidebar-bg);border-left:1px solid var(--c-255-255-255-008);
  display:flex;flex-direction:column;overflow:hidden;
}
.sb-hdr{padding:11px 10px 7px;border-bottom:1px solid var(--c-255-255-255-01);background:var(--map-sidebar-header-bg)}
.sb-hdr h3{font-size:15px;font-weight:700;color:var(--c-ffffff);letter-spacing:-.01em}
.sb-hdr h3 em{font-style:normal;color:var(--so-card-text-accent-light)}
.sb-hdr p{font-size:11px;color:var(--c-255-255-255-075);margin-top:3px;letter-spacing:.02em}
.sb-sel{display:grid;grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr);gap:4px;padding:7px;background:var(--map-sidebar-select-bg)}
.sbs{
  width:100%;padding:10px 12px;border-radius:var(--r8);
  border:1.5px solid var(--map-sidebar-panel-border);
  background:var(--map-sidebar-panel-bg);color:var(--c-ffffff);
  font-size:13px;font-family:var(--sans);
  appearance:none;cursor:pointer;outline:none;transition:border-color .2s,background .2s;
}
.sbs:hover{background:var(--map-sidebar-panel-bg-strong);border-color:var(--so-card-text-accent-light)}
.sbs:focus{border-color:var(--so-card-text-accent-light);background:var(--map-sidebar-panel-bg-strong)}
.sbs.sel{background:var(--map-sidebar-panel-bg-strong);border-color:var(--so-simulator-action-bg);box-shadow:0 0 0 3px var(--so-simulator-border-soft)}
.sb-sel .sbs{background:var(--map-sidebar-panel-bg-strong);border-color:var(--so-simulator-action-bg);box-shadow:0 0 0 3px var(--so-simulator-border-soft)}
.sbs:disabled{opacity:.55;cursor:not-allowed}
.sbs option{background:var(--map-sidebar-panel-bg-strong);color:var(--c-ffffff)}
.lc-status-row{display:none;grid-template-columns:minmax(76px,.58fr) minmax(0,1.42fr);gap:4px;padding:0 7px 7px;background:var(--map-sidebar-bg);border-bottom:1px solid var(--map-sidebar-panel-border)}
.lc-status-row.show{display:grid}
.lc-status-row .lc-badge,.lc-status-row .lc-status{min-height:30px;display:flex;align-items:center;justify-content:center;margin:0;text-align:center}
.lc-status-row .lc-badge,.lc-status-row .lc-status{border-radius:var(--r4);border:1px solid var(--map-sidebar-panel-border);box-shadow:none}
.lc-status-row .lc-badge{width:auto;padding:6px 7px;line-height:1.2;font-size:11px;letter-spacing:.05em;white-space:nowrap}
.lc-status-row .lc-status{padding:6px 8px;font-size:11px;line-height:1.25;letter-spacing:.02em}
.lc-status-row .lc-status.disp,.lc-status-row .lc-status.vend,.lc-status-row .lc-status.avista{box-shadow:none;font-size:11px;letter-spacing:.02em}
.sb-body{flex:1;overflow-y:auto;padding:0;background:var(--map-sidebar-bg);scrollbar-width:thin;scrollbar-color:var(--map-sidebar-panel-border) transparent}
.sb-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;gap:10px;height:100%;text-align:center;color:var(--c-255-255-255-075)}
.sb-empty-n{font-size:44px;font-weight:800;color:var(--so-card-text-accent-dark);line-height:1}
.sb-empty p{font-size:12px;line-height:1.65;max-width:200px}
.sb-empty-n{font-size:48px;font-weight:800;color:var(--so-card-text-accent-dark);line-height:1}
.sb-empty p{font-size:13px;line-height:1.6;max-width:220px}
/* lot card */
.lc{padding:3px;display:none;flex-direction:column;gap:2px}
.lc.show{display:flex}
/* BV2 card usa style.display inline - garantir espaçamento em block mode */
.lc-val,.lc-local,.lc-ent,.pr-lbl,.pr-grid,.parc-block,.btn-wha{margin-bottom:1px}
.lc-val,.lc-local,.lc-ent,.pr-lbl,.pr-grid,.parc-block{display:block}
.lc-badge{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--so-card-text-accent-light);background:var(--c-255-190-40-015);padding:2px 5px;border-radius:var(--r4);width:fit-content}
.lc-val{font-size:28px;font-weight:800;color:var(--so-card-text-accent-dark);letter-spacing:-.02em;line-height:1}
.lc-preco-m2{font-size:11px;font-weight:600;color:rgba(255,255,255,.45);letter-spacing:.03em;margin-bottom:6px;min-height:0}
.lc-local{font-size:12px;color:var(--so-card-text-accent-light);font-weight:500}
.lc-area{font-size:14px;font-weight:700;color:rgba(255,255,255,.75);letter-spacing:.01em;margin-bottom:4px}
.lc-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:6px}
.lc-info-cell{background:var(--c-255-190-40-015);border:1px solid var(--map-sidebar-panel-border);border-radius:var(--r4);padding:3px 5px;text-align:center}
.lc-info-lbl{display:none}
.lc-info-val{display:block;font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--so-card-text-accent-light)}
.sidebar .lc-val{background:var(--map-sidebar-panel-bg-strong);border:1px solid var(--map-sidebar-panel-border);border-radius:var(--r8);padding:8px 12px;text-align:center}
.lc-ent{
  background:var(--map-sidebar-panel-bg-strong);
  border-radius:var(--r8);
  padding:2px;
  border:1px solid var(--so-simulator-action-bg);
  box-shadow:0 0 0 3px var(--so-simulator-border-soft);
  text-align:center;
}
.lc-ent-lbl{font-size:10px;font-weight:600;color:var(--c-255-255-255-075);text-transform:uppercase;letter-spacing:.06em;margin-bottom:1px;line-height:1.2}
.lc-ent-val{font-size:20px;font-weight:800;color:var(--so-card-text-accent-dark);line-height:1.1}
.lc-ent-sub{font-size:10px;color:var(--c-255-255-255-065);margin-top:0;line-height:1.2}
.pr-lbl{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--so-card-text-accent-light)}
.pr-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:2px}
.sidebar .pr-grid{gap:4px}
.sidebar .pt{
  min-height:27px;
  border-radius:var(--r8);
  border:1px solid var(--map-sidebar-panel-border);
  background:var(--map-sidebar-panel-bg);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  padding:5px 4px;
  text-align:center;
  cursor:pointer;
  user-select:none;
  transition:background .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s;
}
.sidebar .pt:hover{
  background:var(--map-sidebar-panel-bg-strong);
  border-color:var(--so-simulator-action-hover-bg);
  color:var(--so-card-text-accent-dark);
}
.sidebar .pt.act{
  background:var(--map-sidebar-panel-bg-strong);
  border-color:var(--so-simulator-action-bg);
  box-shadow:0 0 0 3px var(--so-simulator-border-soft);
}
.sidebar .pt:active{transform:translateY(1px)}
.sidebar .pt .n{
  color:var(--c-255-255-255-075);
  font-size:11px;
  font-weight:700;
  line-height:1.05;
}
.sidebar .pt .v{
  color:var(--c-ffffff);
  font-size:14px;
  font-weight:800;
  line-height:1.2;
}
.sidebar .pt.act .n{color:var(--c-255-255-255-075)}
.sidebar .pt.act .v{color:var(--so-card-text-accent-dark)}
.parc-block{
  background:var(--map-sidebar-panel-bg-strong);
  border:1px solid var(--so-simulator-action-bg);
  border-radius:var(--r12);
  padding:7px;
  color:var(--c-ffffff);
  box-shadow:0 0 0 3px var(--so-simulator-border-soft);
}
.parc-title{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--so-card-text-accent-dark);margin-bottom:5px}
.parc-rows{display:grid;gap:4px}
.parc-row{display:grid;grid-template-columns:minmax(90px,.75fr) 1.25fr;gap:4px;align-items:start;padding-top:4px;border-top:1px solid var(--c-255-255-255-016)}
.parc-row:first-child{border-top:none;padding-top:0}
.parc-lbl{font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--so-card-text-accent-dark)}
.parc-val,.parc-info,.parc-ent{font-size:13px;font-weight:800;color:var(--c-ffffff);line-height:1.35;text-align:right}
.parc-val{font-size:13px;letter-spacing:-.01em}
.btn-wha{
  display:block;width:100%;padding:6px;border-radius:var(--r12);
  background:var(--whatsapp-button-bg);color:var(--c-ffffff);font-size:13px;font-weight:700;
  text-align:center;text-decoration:none;letter-spacing:.03em;
  transition:background .15s;
}
.btn-wha:hover{background:var(--whatsapp-button-hover-bg)}

.btn-proposta{
  display:flex;align-items:center;justify-content:center;gap:7px;
  width:100%;padding:11px 14px;border-radius:var(--r12);border:1.5px solid var(--gd3);
  background:rgba(180,83,9,.18);color:var(--gd3);font-size:12px;font-weight:700;
  font-family:var(--sans);cursor:pointer;letter-spacing:.03em;
  transition:background .15s,color .15s,border-color .15s;
}
.btn-proposta:hover{background:var(--gd);color:#fff;border-color:var(--gd)}

.btn-share-sim{
  display:flex;align-items:center;justify-content:center;gap:7px;
  width:100%;margin:2px 0 10px;padding:10px 14px;border-radius:var(--r12);
  border:1.5px solid var(--accent);
  background:transparent;color:var(--accent);font-size:12px;font-weight:700;
  font-family:var(--sans);cursor:pointer;letter-spacing:.03em;
  transition:background .15s,color .15s,border-color .15s,opacity .15s;
}
.btn-share-sim:hover{background:var(--accent);color:#fff}
.btn-share-sim:disabled{opacity:.55;cursor:progress}
.sim-corretor-sep{display:flex;align-items:center;gap:10px;margin:16px 0 8px;color:var(--mu,#7a8a82);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}
.sim-corretor-sep span{flex:0 0 auto}
.sim-corretor-sep::before,.sim-corretor-sep::after{content:"";flex:1;height:1px;background:currentColor;opacity:.3}

/* ── PREÇOS ───────────────────────────────────────── */
.sec-alt.fu .tag,.sec-alt.fu .s-title,.sec-alt.fu .s-desc{max-width:var(--mw);display:block}
.prec-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:8px;max-width:var(--mw);
}
.pc{
  background:var(--price-card-bg);border:1px solid var(--bd);border-radius:var(--r16);
  padding:14px 12px;position:relative;overflow:hidden;
  box-shadow:0 2px 16px var(--c-0-0-0-008);
  transition:transform .2s,box-shadow .2s,border-color .2s;
}
.pc:hover{transform:translateY(-4px);box-shadow:0 8px 28px var(--c-0-0-0-012);border-color:var(--gd)}
.pc.ft{border-color:var(--gd);box-shadow:0 4px 20px var(--c-180-83-9-02)}
.pc.ft:hover{box-shadow:0 20px 48px var(--c-180-83-9-025)}
.pc-line{height:2px;width:24px;background:var(--gd);border-radius:2px;margin-bottom:10px}
.pc.ft .pc-line{background:var(--gd)}
.pc-tipo{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mu);margin-bottom:4px}
.pc-val{font-size:28px;font-weight:800;color:var(--tx);letter-spacing:-.02em;margin-bottom:4px}
.pc-m2{font-size:12px;font-weight:700;color:var(--mu);line-height:1.35;margin-bottom:7px}
.pc-desc{font-size:13px;color:var(--mu);line-height:1.55;margin-bottom:7px}
.pc-desc-part{white-space:nowrap}
.pc-parc{font-size:13px;font-weight:700;color:var(--gd);border-top:1px solid var(--bd);padding-top:6px}
.pc[data-valor]{cursor:pointer}
.pc[data-valor]:focus-visible{outline:3px solid var(--gd);outline-offset:3px}
.lot-value-panel{
  max-width:var(--mw);margin:14px auto 0;padding:14px;border-radius:var(--r12);
  background:var(--wh);border:1px solid var(--bd);box-shadow:0 2px 16px var(--c-0-0-0-008);
  display:none;
}
.lot-value-panel.show{display:block}
.lot-value-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.lot-value-title{font-size:15px;font-weight:800;color:var(--tx);line-height:1.3}
.lot-value-count{font-size:12px;font-weight:700;color:var(--mu);white-space:nowrap}
.lot-value-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}
.lot-value-btn{
  border:1px solid var(--bd);background:var(--c-255-255-255-085);color:var(--tx);
  border-radius:8px;padding:9px 10px;text-align:left;cursor:pointer;font-family:var(--sans);
  transition:border-color .15s,transform .15s,box-shadow .15s;
}
.lot-value-btn:hover{border-color:var(--gd);transform:translateY(-1px);box-shadow:0 6px 18px var(--c-0-0-0-008)}
.lot-value-main{display:block;font-size:13px;font-weight:800;line-height:1.3}
.lot-value-sub{display:block;font-size:11px;color:var(--mu);line-height:1.4;margin-top:2px}
.lot-value-empty{font-size:13px;color:var(--mu);line-height:1.5}
.lot-quadra-header{font-size:14px;font-weight:800;color:var(--gd);margin-top:14px;margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid var(--bd)}
.lot-quadra-group:first-child .lot-quadra-header{margin-top:0}

/* ── SIMULADOR ─────────────────────────────────────── */
.sec-dk .tag,.sec-dk .s-title,.sec-dk .s-desc{max-width:var(--mw);display:block;margin-left:auto;margin-right:auto}
.sim-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:12px;
  max-width:var(--mw);margin:0 auto;
}
.sim-card{
  background:var(--c-255-255-255-004);border:1px solid var(--c-255-255-255-01);
  border-radius:var(--r16);padding:36px 32px;
}
.sim-card .sf{gap:10px;margin-bottom:22px}
.sim-card .sf select,.sim-card .sf input{padding:14px 16px}
.sim-card .sr2{gap:16px}
.sim-res{
  background:var(--c-255-255-255-005);border:1px solid var(--c-255-255-255-01);
  border-radius:var(--r16);padding:14px;display:flex;flex-direction:column;gap:7px;
}
.sf{display:flex;flex-direction:column;gap:3px;margin-bottom:7px}
.sf label{font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--c-255-255-255-05)}
.sf select:not(.sbs),.sf input{
  padding:6px 7px;border-radius:var(--r8);
  border:1px solid var(--c-255-255-255-012);background:var(--c-255-255-255-006);
  color:var(--c-ffffff);font-size:13px;font-family:var(--sans);outline:none;
  transition:border-color .2s;appearance:none;cursor:pointer;
}
.sf select.sbs{
  padding:10px 12px;border-radius:var(--r8);
  border:1.5px solid var(--map-sidebar-panel-border);
  background:var(--map-sidebar-panel-bg);color:var(--c-ffffff);
  font-size:13px;font-family:var(--sans);outline:none;
  transition:border-color .2s,background .2s;appearance:none;cursor:pointer;
}
.sf select.sbs:hover{background:var(--map-sidebar-panel-bg-strong);border-color:var(--so-card-text-accent-light)}
.sf select.sbs:focus{border-color:var(--so-card-text-accent-light);background:var(--map-sidebar-panel-bg-strong)}
.sf select.sbs option{background:var(--map-sidebar-panel-bg-strong);color:var(--c-ffffff)}

.sf select:not(.sbs):focus,.sf input:focus{border-color:var(--gr3)}
.sr2{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.sim-prazos{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.sim-main{background:var(--c-255-255-255-004);border-radius:var(--r12);padding:9px;text-align:center}
.sim-main-lbl{font-size:10px;font-weight:700;letter-spacing:.02em;color:var(--c-255-255-255-045);margin-bottom:4px}
.sim-main-val{font-size:30px;font-weight:800;color:var(--gd3);letter-spacing:-.02em}
.sim-main-val span{font-size:16px;font-weight:600;color:var(--c-255-255-255-04)}
.sim-main-sub{font-size:12px;color:var(--c-255-255-255-045);margin-top:2px}
.sim-splits{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.ss{background:var(--c-255-255-255-004);border-radius:var(--r8);padding:6px}
.ss.wide{grid-column:1/-1}
.ss-lbl{font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--c-255-255-255-04);margin-bottom:2px}
.ss-val{font-size:16px;font-weight:700;color:var(--c-ffffff)}
.btn-sim{
  width:100%;padding:7px;border-radius:var(--r12);border:none;cursor:pointer;
  background:var(--gd);color:var(--c-ffffff);font-size:13px;font-weight:700;
  letter-spacing:.04em;transition:background .15s;font-family:var(--sans);
}
.btn-sim:hover{background:var(--c-ff9a2f)}

/* ── INFRAESTRUTURA ───────────────────────────────── */
.infra-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:16px;max-width:var(--mw);margin:0 auto;
}
.ic{
  display:flex;align-items:flex-start;gap:16px;
  background:var(--c-255-255-255-006);border:1px solid var(--c-255-255-255-01);
  border-radius:var(--r12);padding:20px;
  transition:background .2s,border-color .2s;
}
.ic:hover{background:var(--c-255-255-255-008);border-color:var(--c-255-190-40-05)}
.ic-ico{width:56px;min-width:56px;height:34px;border-radius:var(--r8);background:var(--c-228-182-83-012);border:1px solid var(--c-228-182-83-024);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;letter-spacing:.04em;color:var(--gd3);line-height:1;margin-top:1px}
.ic-nome{font-size:14px;font-weight:700;color:var(--c-ffffff);margin-bottom:4px;line-height:1.35}
.ic-st{font-size:12px;color:var(--gd3);font-weight:600;letter-spacing:.02em}

/* ── FAQ ──────────────────────────────────────────── */
.faq-wrap{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:8px}
.faq-item{
  border:1px solid var(--c-255-255-255-01);
  border-radius:var(--r12);overflow:hidden;
}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--c-255-255-255-004);color:var(--c-255-255-255-085);
  font-family:var(--sans);font-size:14px;font-weight:600;
  padding:18px 22px;border:none;cursor:pointer;text-align:left;
  transition:background .2s;line-height:1.45;
}
.faq-q:hover,.faq-q.open{background:var(--c-255-255-255-008);color:var(--c-ffffff)}
.faq-ico{font-size:20px;font-weight:300;flex-shrink:0;line-height:1;transition:transform .25s;color:var(--gd3)}
.faq-q.open .faq-ico{transform:rotate(45deg)}
.faq-a{background:var(--c-0-0-0-02);overflow:hidden;max-height:0;transition:max-height .35s ease}
.faq-a.open{max-height:300px}
.faq-ap{padding:16px 22px 20px;color:var(--c-255-255-255-06);font-size:14px;line-height:1.75}

/* ── LEADS FORM ──────────────────────────────────── */
.leads-wrap{
  display:grid;grid-template-columns:1fr 1fr;gap:64px;
  max-width:var(--mw);margin:0 auto;align-items:start;
  padding:80px 48px;
}
.leads-list{display:flex;flex-direction:column;gap:12px;margin-top:28px}
.lv{display:flex;align-items:flex-start;gap:12px}
.lv-ck{
  width:22px;height:22px;border-radius:50%;background:var(--gd);
  color:var(--c-ffffff);font-size:11px;font-weight:800;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;margin-top:1px;
}
.lv-t{font-size:14px;color:var(--c-255-255-255-075);line-height:1.55}
.frm{
  background:var(--c-255-255-255-004);border:1px solid var(--c-255-255-255-01);
  border-radius:var(--r20);padding:36px;
}
.frm-title{font-size:24px;font-weight:800;color:var(--c-ffffff);margin-bottom:6px;letter-spacing:-.01em}
.frm-title em{font-style:normal;color:var(--gd3)}
.frm-sub{font-size:13px;color:var(--c-255-255-255-045);margin-bottom:24px}
.fg{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.fg label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-255-255-255-045)}
.fg input,.fg select{
  padding:12px 14px;border-radius:var(--r8);
  border:1px solid var(--c-255-255-255-012);background:var(--c-255-255-255-007);
  color:var(--c-ffffff);font-size:14px;font-family:var(--sans);outline:none;
  transition:border-color .2s;
  appearance:none;-webkit-appearance:none;
}
.fg select option{background:var(--c-0d3b2e);color:var(--c-ffffff)}
.fg input:focus,.fg select:focus{border-color:var(--gr3)}
.fg input::placeholder{color:var(--c-255-255-255-025)}
.fr2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.btn-sub{
  width:100%;padding:15px;border-radius:var(--r12);border:none;cursor:pointer;
  background:var(--gd);color:var(--c-ffffff);font-size:14px;font-weight:700;
  letter-spacing:.04em;font-family:var(--sans);transition:background .15s;
}
.btn-sub:hover{background:var(--c-ff9a2f)}
.fsuc{display:none;color:var(--gd3);font-size:13px;text-align:center;margin-top:12px;font-weight:600}
.fnota{font-size:11px;color:var(--c-255-255-255-03);text-align:center;margin-top:10px}.pc-info{margin-top:16px;padding:13px 16px;background:var(--c-21-128-61-008);border-left:3px solid var(--gr2);border-radius:8px;font-size:12.5px;color:var(--tx2);line-height:1.8}
.btn-wpp .creci{font-size:11px;color:var(--c-255-255-255-045);margin-top:2px;font-weight:500}
.btn-wa-doc{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--c-25d366);color:var(--c-ffffff);font-size:14px;font-weight:700;
  padding:14px 28px;border-radius:var(--r12);text-decoration:none;
  transition:background .15s,transform .15s;
}
.btn-wa-doc:hover{background:var(--c-20b858);transform:translateY(-2px)}
.btn-wa-doc svg{flex-shrink:0}

/* ── SCROLL OFFSET ────────────────────────────────── */
[id]{scroll-margin-top:80px}

#so-disponibilidade{background:var(--dk)}
.lot-block-hdr{background:linear-gradient(170deg,var(--dk) 0%,var(--dk2) 100%)}
.mapa-hdr .s-title{color:var(--c-ffffff)}
.mapa-hdr .s-desc{color:var(--c-ffffff)}
.lot-block-hdr .s-title{color:var(--c-ffffff)}
.lot-block-hdr .s-desc{color:var(--c-ffffff)}
.lot-block-hdr .lsn{color:var(--c-ffffff);border-color:rgba(245,130,42,.45);background:var(--gd)}
.lot-block-hdr .lsn:hover{background:var(--c-b45309);color:var(--c-ffffff);border-color:var(--c-b45309)}

/* Seções claras (sec-alt): textos em verde escuro */
.sec-alt .s-title{color:var(--tx)}
.sec-alt .s-title.wh{color:var(--tx)}
.sec-alt .s-desc,.sec-alt .s-desc.wh{color:var(--mu)}
.sec-alt .tag{color:var(--gd-light)}
.sec-alt .tag::before{display:none}
.sec-alt .tag.lt{color:var(--gd-light)}
.sec-alt .tag.lt::before{display:none}
.sec-alt .tag.or{color:var(--gd-light)}
.sec-alt .tag.or::before{display:none}
#so-precos.sec-alt{background:var(--dk)}
#so-infra,
#so-faq{
  background:var(--map-sidebar-bg)!important;
}
#so-precos.sec-alt .s-title,
#so-precos.sec-alt .s-title.wh{color:var(--c-ffffff)}
#so-precos.sec-alt .s-desc,
#so-precos.sec-alt .s-desc.wh{color:var(--c-255-255-255-075)}
#so-precos.sec-alt .s-title em{color:var(--gd-light)!important}
#so-precos.sec-alt .tag,
#so-precos.sec-alt .tag.lt,
#so-precos.sec-alt .tag.or{color:var(--gd-light)}


#so-precos .pc{
  background:var(--price-card-bg);
  color:var(--so-price-card-text);
  border:1px solid var(--so-price-card-accent-soft);
}
#so-precos .pc:hover{
  border-color:var(--so-price-card-accent);
  box-shadow:0 10px 30px var(--c-180-83-9-02);
}
#so-precos .pc .pc-line{background:var(--so-card-text-accent-dark)}
#so-precos .pc .pc-tipo,
#so-precos .pc .pc-parc{color:var(--so-card-text-accent-dark)}
#so-precos .pc .pc-desc{color:var(--so-price-card-muted)}
#so-precos .pc .pc-val{color:var(--so-card-text-accent-dark)}
#so-precos .pc .pc-m2{color:var(--so-price-card-muted)}
#so-precos .pc .pc-parc{border-top-color:var(--bd)}
#so-precos .pc-info{
  background:var(--so-price-info-bg);
  border-left-color:var(--so-price-info-border);
  border-top:1px solid var(--so-simulator-border-soft);
  border-right:1px solid var(--so-simulator-border-soft);
  border-bottom:1px solid var(--so-simulator-border-soft);
  color:var(--c-ffffff);
}
#so-precos .pc-info strong{color:var(--c-ffffff)}

/* Simulador dentro de sec-alt: layout sem card externo */
.sec-alt .sim-grid{background:transparent;border-radius:0;padding:0;margin-top:8px}
/* SO: sem card externo — apenas os dois cards internos lado a lado */
#so-precos .sim-grid{
  margin-top:8px;
}
#so-precos .sf select:not(#simCorretor){
  background:var(--gd)!important;
  color:var(--c-ffffff)!important;
  font-weight:800;
  border-color:var(--gd3)!important;
  box-shadow:0 0 0 3px var(--c-180-83-9-02);
}
#so-precos .sf select:not(#simCorretor):focus{
  background:var(--gd)!important;
  color:var(--c-ffffff)!important;
  border-color:var(--gd3)!important;
  box-shadow:0 0 0 3px var(--c-180-83-9-02);
}
#so-precos .sf select:not(#simCorretor) option{
  background:var(--bg-branco);
  color:var(--tx);
}
#so-precos #simCorretor{
  background:var(--laranja-500)!important;
  color:var(--c-ffffff)!important;
  font-weight:800;
  border-color:var(--laranja-500)!important;
  box-shadow:none;
}
#so-precos #simCorretor:invalid{
  background:rgba(245,130,42,.14)!important;
  border-color:rgba(245,130,42,.45)!important;
  color:var(--laranja-500)!important;
  box-shadow:none;
}
#so-precos #simCorretor:valid:focus{
  background:var(--laranja-500)!important;
  color:var(--c-ffffff)!important;
  border-color:var(--laranja-400)!important;
  box-shadow:0 0 0 3px rgba(245,130,42,.18);
}
#so-precos #simCorretor option{
  background:var(--bg-branco);
  color:var(--tx);
}
#so-precos .btn-wha{background:var(--laranja-500)!important;color:#fff!important}
#so-precos .btn-wha:hover{background:#b45309!important}
#so-precos .sim-card,
#so-precos .sim-res{
  background:var(--price-card-bg);
  border:1px solid var(--so-simulator-border-soft);
  box-shadow:0 2px 16px var(--c-0-0-0-008);
  color:var(--tx);
}
#so-precos .sim-prazos{
  align-items:stretch;
}
#so-precos .spt{
  min-height:58px;
  padding:11px 10px;
  border-radius:var(--r8);
  border:1px solid var(--so-simulator-border-soft);
  background:var(--of);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  justify-content:center;
  text-align:center;
  transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;
}
#so-precos .spt:hover{
  background:rgba(245,130,42,.06);
  border-color:var(--gd);
}
#so-precos .spt.act{
  background:var(--gd);
  border-color:var(--gd3);
  box-shadow:0 0 0 3px var(--c-180-83-9-02);
}
#so-precos .spt .n{
  order:1;
  color:var(--mu);
  font-size:11px;
  font-weight:700;
  line-height:1.1;
}
#so-precos .spt .v{
  order:2;
  color:var(--so-card-text-accent-dark);
  font-size:15px;
  font-weight:800;
  line-height:1.35;
  margin-top:4px;
}
#so-precos .spt.act .n{
  color:var(--c-255-255-255-075);
}
#so-precos .spt.act .v{
  color:var(--c-ffffff);
}
#so-precos .sim-main,
#so-precos .ss{
  background:var(--of);
  border:1px solid var(--so-simulator-border-soft);
}
#so-precos .sim-main-lbl,
#so-precos .ss-lbl,
#so-precos .sf label,
#so-precos .sim-prazo-label{
  color:var(--mu)!important;
}
#so-precos .sim-main-val,
#so-precos .ss-val{
  color:var(--so-card-text-accent-dark);
}
#so-precos .sim-main-sub,
#so-precos .sim-main-val span,
#so-precos .sim-ent-2x{
  color:var(--mu);
}
#so-precos .sim-note{
  font-size:11px;
  color:var(--mu)!important;
  line-height:1.8;
  padding:10px 14px;
  margin-top:8px;
  border-radius:var(--r8);
  background:var(--of)!important;
  border:1px solid var(--so-simulator-border-soft)!important;
}
#so-precos .sim-note-title{
  color:var(--so-simulator-action-bg);
}
#so-precos .sim-validation-note{
  font-size:10px;
  color:var(--mu);
  text-align:center;
  margin:0;
  line-height:1.5;
}
#so-precos .btn-sim{
  background:var(--gd);
  color:var(--c-ffffff);
  box-shadow:0 6px 18px var(--c-180-83-9-025);
}
#so-precos .btn-sim:hover{
  background:var(--gd2);
  color:var(--c-ffffff);
}
#so-precos .btn-mapa{
  display:inline-flex;
  align-items:center;
  margin-top:28px;
  background:var(--laranja-500);
  color:var(--c-ffffff);
  padding:13px 32px;
  border-radius:var(--r12);
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  transition:background .15s;
}
#so-precos .btn-mapa:hover{
  background:#b45309;
  color:var(--c-ffffff);
}

#so-aereo{
  background:var(--dk);
  border-top:1px solid var(--c-255-255-255-008);
}
.so-aereo-wrap{
  max-width:1180px;
  margin:0 auto;
  padding:64px 20px;
}
.so-aereo-frame{
  position:relative;
  overflow:hidden;
  border-radius:12px;
  border:1px solid var(--c-255-255-255-014);
  background:var(--c-061710);
  box-shadow:0 18px 48px var(--c-0-0-0-024);
}
.so-aereo-frame img{
  display:block;
  width:100%;
  aspect-ratio:21/8;
  object-fit:cover;
  object-position:center;
}
.so-aereo-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin-top:18px;
}
.so-aereo-note{
  color:var(--c-255-255-255-075);
  font-size:12px;
  line-height:1.6;
}
.so-aereo-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:12px 22px;
  border-radius:var(--r12);
  background:var(--gd);
  color:var(--c-ffffff);
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  box-shadow:0 8px 22px var(--c-180-83-9-025);
  transition:background .15s,transform .15s;
}
.so-aereo-btn:hover{
  background:var(--gd2);
  color:var(--c-ffffff);
  transform:translateY(-1px);
}
@media(max-width:720px){
}

/* Mapa: legenda e qlbl */
.map-cont{background:var(--dk)}
.map-legend{background:var(--map-legend-bg)}
footer{background:var(--dk)}
.mleg{color:var(--c-255-255-255-086)}
.map-download{
  order:-1;
  flex-shrink:0;
  padding:8px 12px;
  border-radius:8px;
  background:var(--c-255-255-255-008);
  border:1px solid var(--c-255-255-255-018);
  color:var(--c-ffffff);
  font-size:11px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
  transition:background .15s,border-color .15s;
}
.map-download:hover{
  background:var(--c-255-255-255-016);
  border-color:var(--c-255-255-255-032);
}
.qlbl{
  position:absolute;transform:translate(-50%,-50%);
  background:transparent;color:transparent;border:none;
  font-size:0;padding:0;width:0;height:0;overflow:visible;
  pointer-events:none;z-index:5;
}

/* Card lateral do mapa: estados e complementos */
.parc-block{background:var(--map-sidebar-panel-bg-strong);color:var(--c-ffffff);border-color:var(--so-simulator-action-bg)}
.lc-status{border-radius:6px;padding:10px 14px;text-align:center;margin:6px 0;font-size:12px;font-weight:700;line-height:1.5}
.lc-status.disp{background:rgba(34,197,94,.13);color:#4ade80;border:1px solid rgba(34,197,94,.4);box-shadow:0 0 0 3px rgba(74,222,128,.1);font-size:11px;letter-spacing:.5px}
.lc-status.vend{background:rgba(239,68,68,.13);color:#fc8181;border:1px solid rgba(239,68,68,.4);box-shadow:0 0 0 3px rgba(239,68,68,.1)}
.lc-status.avista{background:var(--c-255-190-40-015);color:var(--so-card-text-accent-light);border:1px solid var(--map-sidebar-panel-border)}
.parc-ent{color:var(--c-ffffff)}
.lc-ent-2x{font-size:10px;color:var(--c-255-255-255-075);margin-top:5px;line-height:1.6;padding:6px 8px;background:var(--map-sidebar-panel-bg-strong);border-radius:5px;border:1px solid var(--map-sidebar-panel-border)}
.lc-ent-2x b{color:var(--so-card-text-accent-light);font-weight:700}
/* header dos grupos de prazo */
.pr-grp-hdr{color:rgba(255,255,255,.42);border-bottom:1px solid rgba(255,255,255,.08)}

/* ── MAPA SO: Variante 4 — sidebar branca + cards laranja ─────── */
#so-disponibilidade .sidebar{background:#fff!important;border-left-color:rgba(0,0,0,.08)!important}
#so-disponibilidade .sb-hdr{background:#fff!important;border-bottom-color:rgba(0,0,0,.08)!important}
#so-disponibilidade .sb-hdr h3{color:var(--tx)!important}
#so-disponibilidade .sb-hdr p{color:var(--mu)!important}
#so-disponibilidade .sb-sel{background:#f8fafc!important;border-bottom:1px solid rgba(0,0,0,.06)}
#so-disponibilidade .sb-sel .sbs{background:var(--laranja-500)!important;border-color:#b45309!important;color:#fff!important;font-weight:700!important;box-shadow:0 0 0 3px rgba(180,83,9,.15)!important}
#so-disponibilidade .sb-sel .sbs:disabled{opacity:.55!important}
#so-disponibilidade .lc-status-row{background:#fff!important;border-bottom-color:rgba(0,0,0,.06)!important}
#so-disponibilidade .sb-body{background:#fff!important;scrollbar-color:rgba(0,0,0,.12) transparent!important}
#so-disponibilidade .sb-empty{color:var(--mu)!important}
#so-disponibilidade .sb-empty-n{color:var(--laranja-500)!important}
#so-disponibilidade .lc-badge{color:var(--laranja-500)!important;background:rgba(245,130,42,.1)!important}
#so-disponibilidade .lc-val{color:#fff!important;background:var(--laranja-500)!important;border:1px solid #b45309!important;padding:8px 12px!important;border-radius:var(--r8)!important;box-shadow:0 4px 14px rgba(180,83,9,.3)!important}
#so-disponibilidade .lc-local{color:var(--mu)!important}
#so-disponibilidade .lc-area{color:var(--tx2)!important}
#so-disponibilidade .lc-info-cell{background:rgba(245,130,42,.1)!important;border-color:rgba(245,130,42,.28)!important}
#so-disponibilidade .lc-info-val{color:var(--laranja-500)!important}
#so-disponibilidade .lc-preco-m2{color:var(--mu)!important}
#so-disponibilidade .lc-ent{background:var(--laranja-500)!important;border-color:#b45309!important;box-shadow:0 4px 14px rgba(180,83,9,.25)!important}
#so-disponibilidade .lc-ent-lbl{color:rgba(255,255,255,.7)!important}
#so-disponibilidade .lc-ent-val{color:#fff!important}
#so-disponibilidade .lc-ent-sub{color:rgba(255,255,255,.65)!important}
#so-disponibilidade .lc-ent-2x{background:rgba(245,130,42,.08)!important;border-color:rgba(245,130,42,.2)!important;color:var(--mu)!important}
#so-disponibilidade .lc-ent-2x b{color:var(--laranja-500)!important}
#so-disponibilidade .pr-lbl{color:var(--laranja-500)!important}
#so-disponibilidade .pr-grp-hdr{color:var(--mu)!important;border-bottom-color:rgba(0,0,0,.08)!important}
#so-disponibilidade .sidebar .pt{background:#f8fafc!important;border-color:#e2e8f0!important;box-shadow:none!important}
#so-disponibilidade .sidebar .pt .n{color:var(--mu)!important}
#so-disponibilidade .sidebar .pt .v{color:var(--laranja-500)!important}
#so-disponibilidade .sidebar .pt:hover{background:rgba(245,130,42,.06)!important;border-color:var(--laranja-500)!important}
#so-disponibilidade .sidebar .pt.act{background:var(--laranja-500)!important;border-color:#b45309!important;box-shadow:0 4px 14px rgba(180,83,9,.25)!important}
#so-disponibilidade .sidebar .pt.act .n{color:rgba(255,255,255,.75)!important}
#so-disponibilidade .sidebar .pt.act .v{color:#fff!important}
#so-disponibilidade .parc-block{background:var(--laranja-500)!important;border-color:#b45309!important;box-shadow:0 4px 18px rgba(180,83,9,.3)!important;color:#fff!important}
#so-disponibilidade .parc-title{color:#fff!important}
#so-disponibilidade .parc-row{border-top-color:rgba(255,255,255,.2)!important}
#so-disponibilidade .parc-lbl{color:rgba(255,255,255,.8)!important}
#so-disponibilidade .parc-val,#so-disponibilidade .parc-info,#so-disponibilidade .parc-ent{color:#fff!important}
#so-disponibilidade .lc .sbs{background:#f8fafc!important;border-color:#e2e8f0!important;color:var(--tx)!important;box-shadow:none!important}
#so-disponibilidade .lc-status.avista{background:rgba(245,130,42,.12)!important;color:var(--laranja-500)!important;border-color:rgba(245,130,42,.3)!important;box-shadow:none!important}
#so-disponibilidade .parc-block p{color:rgba(255,255,255,.8)!important}
#so-disponibilidade .sf label{color:var(--mu)!important}
#so-disponibilidade #mapCorretorSO{
  background:var(--laranja-500)!important;
  border-color:var(--laranja-500)!important;
  color:var(--c-ffffff)!important;
  font-weight:800;
  box-shadow:none;
}
#so-disponibilidade #mapCorretorSO:invalid{
  background:rgba(245,130,42,.14)!important;
  border-color:rgba(245,130,42,.45)!important;
  color:var(--laranja-500)!important;
  box-shadow:none;
}
#so-disponibilidade #mapCorretorSO:valid:focus{
  background:var(--laranja-500)!important;
  border-color:var(--laranja-400)!important;
  color:var(--c-ffffff)!important;
  box-shadow:0 0 0 3px rgba(245,130,42,.18);
}
#so-disponibilidade #mapCorretorSO option{background:#fff;color:var(--tx)}
#so-disponibilidade .btn-wha{background:var(--laranja-500)!important;color:#fff!important}
#so-disponibilidade .btn-wha:hover{background:#b45309!important}
.sim-ent-2x{grid-column:1/-1;font-size:10px;color:var(--c-255-255-255-045);margin-top:4px;line-height:1.6}
.sim-ent-2x b{color:var(--gd3);font-weight:700}

/* Inputs/selects em seções escuras */
.sec-dk .sf select,.sec-dk .sf input,.frm .fg input,.frm .fg select{background:var(--c-255-255-255-008);color:var(--c-ffffff);border-color:var(--c-255-255-255-015)}
.sec-dk .sf label,.sec-dk .fg label,.sim-main-lbl,.ss-lbl{color:var(--c-255-255-255-065)}
.faq-ap,.lv-t{color:var(--c-ffffff)}
.ss-val,.frm-title,.ic-nome{color:var(--c-ffffff)}
.sim-main-sub,.sim-main-val span,.frm-sub,.fnota{color:var(--c-255-255-255-055)}
.btn-wha{background:var(--whatsapp-button-bg);color:var(--c-ffffff)}

.btn-sub,.btn-sim{background:var(--gr2);color:var(--c-ffffff)}
.btn-sub:hover,.btn-sim:hover{background:var(--gr3)}

/* ══════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════ */
@media(max-width:1024px){
  .prec-grid{grid-template-columns:repeat(2,1fr)}
  .leads-wrap{gap:40px;padding:64px 28px}
  .sec{padding:64px 28px}
  .sec-dk{padding:64px 28px}
  .sec-alt{padding:64px 28px}
  .mapa-hdr{padding:48px 28px 32px}
  .mapa-body{grid-template-columns:1fr 300px}
  .lot-block-hdr{padding:104px 28px 40px}
}

@media(max-width:768px){
.mapa-body{grid-template-columns:1fr;height:auto}
  .mapa-hdr{padding:40px 20px 28px}
  .lot-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .lot-stat{padding:10px 8px}
  .lot-stat span{font-size:20px}
  .prec-grid{grid-template-columns:1fr}
  .sim-grid{grid-template-columns:1fr}
  .sr2{grid-template-columns:1fr}
  .leads-wrap{grid-template-columns:1fr;gap:32px;padding:48px 20px}
  .infra-grid{grid-template-columns:1fr 1fr}
  .lot-block-hdr{padding:48px 20px 32px}
  .lot-subnav{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
  .lsn{font-size:11px;padding:8px 14px}
  .sec{padding:48px 20px}
  .sec-dk{padding:48px 20px}
  .sec-alt{padding:48px 20px}
  .fu{padding-left:20px;padding-right:20px}
  .fr2{grid-template-columns:1fr}
  [id]{scroll-margin-top:68px}
}

@media(max-width:480px){
.infra-grid{grid-template-columns:1fr}
  .prec-grid{gap:12px}
  .sim-prazos{grid-template-columns:repeat(2,1fr)}
  .pr-grid{grid-template-columns:1fr 1fr}
}

/* Labels de quadra: ocultos por padrão; selecionada mostra anel pulsante */
.qlbl{visibility:hidden;opacity:0;transition:opacity .2s}
.qlbl.hl{visibility:visible;opacity:1}
/* Arcos do rótulo de quadra: ver map-pin.css (canônico, cor por empreendimento). */

/* ── TEXTOS BRANCOS EM FUNDOS ESCUROS ──────────────────── */
/* Fundos verde escuro (sec-dk, lot-block-hdr, mapa) */
.sec-dk .s-title,.sec-dk .s-desc,.sec-dk .s-title.wh,.sec-dk .s-desc.wh,.sec-dk .tag,.sec-dk .tag.lt,.sec-dk .tag.or,.sec-dk .faq-q,.sec-dk .faq-ap,.sec-dk p,.sec-dk span:not(.faq-ico),.sec-dk .ic-nome,.sec-dk .ic-st,.sec-dk .lv-t,.sec-dk h2,.sec-dk h3,.lot-block-hdr .s-title,.lot-block-hdr .s-desc,.lot-block-hdr .tag{color:var(--c-ffffff)}
.sec-dk .tag,.sec-dk .tag.lt,.sec-dk .tag.or,.lot-block-hdr .tag{color:var(--gd-light)}
.sec-dk .tag::before,.sec-dk .tag.lt::before,.sec-dk .tag.or::before,.lot-block-hdr .tag::before{display:none}
#setor-oeste .tag,
#setor-oeste .tag.lt,
#setor-oeste .tag.or,
#setor-oeste .lot-block-hdr .tag{
  color:var(--gd)!important;
}
/* ── MOBILE: touch e ajustes de mapa ────────────────────────────────────── */
/* touch-action: permite panning no mapa sem interferir com o scroll da página */
.map-scroll{touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}

@media(max-width:768px){
  /* select: 16px evita zoom automático do iOS Safari no foco */
  .sbs{font-size:16px;padding:12px 10px}
  /* zoom buttons: mínimo 44px de toque (guideline Apple/Google) */
  .zb{width:44px;height:44px;font-size:20px}
  .zoom-bar{top:auto;bottom:50px;right:10px;gap:6px}
  /* legenda: scroll horizontal em vez de quebrar em 2 linhas */
  .map-legend{flex-wrap:nowrap;overflow-x:auto;gap:12px;padding:8px 14px;scrollbar-width:none}
  .map-legend::-webkit-scrollbar{display:none}
  .map-legend .mleg:last-of-type{white-space:nowrap;flex-shrink:0}
  /* painel seletor: linha única em mobile */
  .sb-sel{grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr);gap:6px;padding:10px}
  .sb-hdr{padding:14px 16px 10px}
  .lc{padding:4px}
  /* parcelas: 2 colunas em vez de linha única que transborda */
  .pr-grid{grid-template-columns:repeat(3,1fr);gap:4px}
  .pt{font-size:11px;padding:5px 4px;text-align:center}
}

@media(max-width:480px){
  .mapa-hdr{padding:28px 16px 18px}
  .lot-stats{grid-template-columns:repeat(3,1fr)}
  .sb-sel{grid-template-columns:minmax(92px,.72fr) minmax(0,1.28fr)}
  .pr-grid{grid-template-columns:repeat(2,1fr)}
}

/* Mobile final: estabiliza mapa, cards e simuladores */
@media(max-width:768px){
  body{min-width:0}
  .lot-block-hdr{
    padding-top:98px!important;
  }
  .lot-block-hdr img{
    height:auto!important;
    max-height:150px!important;
    max-width:82%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .lot-block-hdr .s-title,
  .s-title{
    font-size:clamp(26px,8vw,36px)!important;
    line-height:1.15!important;
    letter-spacing:0!important;
  }
  .s-desc{
    font-size:14px!important;
    line-height:1.6!important;
  }
  .lot-subnav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    gap:8px;
    margin-left:0;
    margin-right:0;
    padding:0;
    overflow:visible;
  }
  .lot-subnav::-webkit-scrollbar{display:none}
  .lsn{
    width:100%;
    min-height:40px;
    padding:9px 10px!important;
    justify-content:center;
  }
  .mapa-body{
    display:grid;
    grid-template-columns:1fr!important;
    height:auto!important;
  }
  .map-cont{
    min-width:0;
    height:70vh!important;
    max-height:620px;
    min-height:260px;
  }
  .map-img{min-width:760px}
  .sidebar{
    width:100%;
    min-height:auto!important;
    border-left:0!important;
    border-top:1px solid var(--c-255-255-255-008);
  }
  .lc.show{display:flex}
  .sim-splits{
    grid-template-columns:1fr 1fr!important;
  }
  .sim-grid{
    grid-template-columns:1fr!important;
    padding:18px!important;
    border-radius:12px!important;
  }
  .sim-card,.sim-res,.frm{
    padding:18px!important;
    min-width:0;
  }
  .sim-prazos{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .spt,.pt{
    min-width:0;
    word-break:normal;
    overflow-wrap:anywhere;
  }
  .sf select,.sf input,.fg input,.fg select,.btn-sim,.btn-sub,.btn-wha{
    min-height:48px;
    font-size:16px!important;
  }
  .leads-wrap{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:380px){
  .map-cont{height:70vh!important;min-height:240px}
  .sim-splits,.pr-grid{
    grid-template-columns:1fr!important;
  }
  .sim-prazos{
    grid-template-columns:1fr!important;
  }
}

/* ── RODAPÉ: cores e ícones ───────────────────────────────────── */
footer{background:var(--c-071a0e)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
