:root{
  --paper:#f7f6f4; --paper-2:#EDEAE5; --card:#FFFFFF; --ink:#0f172a; --ink-2:#334155; --muted:#5b6475;
  --line:#E6E2DC; --accent:#F24822; --accent-ink:#FFFFFF; --accent-soft:#FDE6DF; --clay:#a63417;
  --r:18px; --ease:cubic-bezier(.16,1,.3,1);
  --sh-1:0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.06);
  --sh-2:0 2px 4px rgba(15,23,42,.06),0 18px 40px -12px rgba(15,23,42,.22);
  --serif:"Cal Sans","Outfit",system-ui,sans-serif; --sans:"Poppins","Outfit",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0}
body{background:var(--paper);color:var(--ink);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}

/* Header */
.top{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid transparent;transition:border-color .3s}
.top.scrolled{border-color:var(--line)}
.top-in{max-width:none;margin:0 auto;padding:14px 28px;display:flex;align-items:center;gap:20px}
.brand img{height:30px;display:block}.brand{font:500 22px/1 var(--serif);letter-spacing:-.02em;display:flex;align-items:baseline;gap:6px}
.brand i{font-style:normal;color:var(--clay)}
.top-sp{flex:1}
.count{color:var(--muted);font-size:13px}
.fbtn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--ink);color:var(--paper);font-weight:500;font-size:14px;transition:transform .4s var(--ease),background .2s}
.fbtn:hover{background:#1e293b;transform:translateY(-1px)}
.fbtn .n{background:var(--accent);color:#fff;border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:12px;padding:0 6px}

/* Language Switcher */
.lang-switch{display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:var(--card);border:1px solid var(--line)}
.lang-btn{padding:6px 12px;border-radius:999px;font-size:13px;font-weight:600;color:var(--ink-2);transition:background .2s,color .2s,transform .2s var(--ease)}
.lang-btn:hover{color:var(--ink)}
.lang-btn.active{background:var(--accent);color:var(--accent-ink)}
.lang-btn:active{transform:scale(.95)}

/* Hero */
.hero{max-width:none;margin:0 auto;padding:28px 28px 20px}
.quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}

/* Chips */
.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);font-size:14px;color:var(--ink-2);transition:background .25s var(--ease),border-color .25s,color .25s,transform .35s var(--ease)}
.chip:hover{border-color:var(--ink-2);color:var(--ink)}
.chip:active{transform:scale(.96)}
.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.chip .dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.5}
.chip[aria-pressed=true] .dot{opacity:1}

/* Active filter bar */
.actives{max-width:none;margin:0 auto;padding:0 28px 12px;display:flex;flex-wrap:wrap;gap:6px;min-height:8px}
.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 12px;border-radius:999px;background:var(--accent-soft);color:#872a10;font-size:13px;font-weight:500;animation:pop .45s var(--ease) both}
.pill button{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:14px;line-height:1}
.pill button:hover{background:rgba(242,72,34,.15)}
.clear{font-size:13px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:5px 8px}

/* Drawer */
.scrim{position:fixed;inset:0;background:rgba(15,23,42,.36);z-index:40;opacity:0;pointer-events:none;transition:opacity .4s var(--ease)}
.scrim.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);background:var(--paper);z-index:86;display:flex;flex-direction:column;transform:translateX(104%);transition:transform .55s var(--ease);box-shadow:-24px 0 60px -20px rgba(15,23,42,.3)}
.drawer.open{transform:none}
.d-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px 14px}
.d-head h2{font:500 26px/1 var(--serif);letter-spacing:-.02em}
.x{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:20px}
.x:hover{background:var(--paper-2)}
.d-body{flex:1;overflow:auto;padding:4px 26px 24px}
.sec{padding:20px 0;border-top:1px solid var(--line);opacity:0;transform:translateY(8px)}
.drawer.open .sec{animation:rise .6s var(--ease) both}
.sec h3{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;display:flex;justify-content:space-between}
.sec h3 span{text-transform:none;letter-spacing:0;color:var(--ink);font-weight:500;font-size:13px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.d-foot{padding:16px 26px 22px;border-top:1px solid var(--line);display:flex;gap:10px;background:var(--paper)}
.btn{flex:1;padding:14px;border-radius:14px;font-weight:600;transition:transform .35s var(--ease),background .2s}
.btn.pri{background:var(--accent);color:var(--accent-ink)}
.btn.pri:hover{background:#a63417}
.btn.sec2{flex:0 0 auto;padding:14px 18px;border:1px solid var(--line);background:var(--card)}
.btn:active{transform:scale(.98)}

/* Stepper */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.step label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:6px}
.seg{display:flex;border:1px solid var(--line);border-radius:12px;background:var(--card);overflow:hidden}
.seg button{flex:1;padding:8px 0;font-size:14px;color:var(--ink-2);transition:background .2s,color .2s}
.seg button+button{border-left:1px solid var(--line)}
.seg button[aria-pressed=true]{background:var(--ink);color:var(--paper)}

/* Dual range */
.range{position:relative;height:28px;margin:4px 6px 0}
.range .track{position:absolute;left:0;right:0;top:12px;height:4px;border-radius:4px;background:var(--line)}
.range .fill{position:absolute;top:12px;height:4px;border-radius:4px;background:var(--accent)}
.range input{position:absolute;inset:0;width:100%;appearance:none;-webkit-appearance:none;background:none;pointer-events:none;height:28px}
.range input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:22px;height:22px;border-radius:50%;background:var(--card);border:2px solid var(--accent);box-shadow:var(--sh-1);cursor:grab;transition:transform .3s var(--ease)}
.range input::-webkit-slider-thumb:active{transform:scale(1.15);cursor:grabbing}
.range input::-moz-range-thumb{pointer-events:auto;width:18px;height:18px;border-radius:50%;background:var(--card);border:2px solid var(--accent);cursor:grab}
.range input::-moz-range-track{background:none}
.rlabels{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:6px}

/* Grid */
main{max-width:none;margin:0 auto;padding:8px 28px 80px}
.masonry{display:flex;gap:20px;align-items:flex-start}
.col{flex:1;display:flex;flex-direction:column;gap:20px;min-width:0}

.card{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-1);transition:transform .6s var(--ease),box-shadow .6s var(--ease);animation:rise .8s var(--ease) both;cursor:pointer}
.card:hover{transform:translateY(-4px);box-shadow:var(--sh-2)}
.media{position:relative;overflow:hidden;background:var(--paper-2)}
.media img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.001);transition:transform 1.2s var(--ease),opacity .6s;opacity:0}
.media img.ok{opacity:1}
.card:hover .media img{transform:scale(1.06)}
.tag{position:absolute;top:12px;left:12px;background:var(--card);color:var(--ink);font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;box-shadow:var(--sh-1)}
.tag.hot{background:var(--accent);color:#fff}
.save{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;background:var(--card);display:grid;place-items:center;opacity:0;transform:translateY(-4px);transition:opacity .35s,transform .45s var(--ease);box-shadow:var(--sh-1)}
.card:hover .save,.save[aria-pressed=true]{opacity:1;transform:none}
.save[aria-pressed=true] svg{fill:var(--clay);stroke:var(--clay)}
.body{padding:14px 16px 16px}
.loc{font-size:12px;color:var(--muted);letter-spacing:.02em}
.ttl{font:500 16px/1.35 var(--sans);letter-spacing:-.01em;margin:4px 0 10px;color:var(--ink)}
.facts{display:flex;gap:14px;font-size:13px;color:var(--ink-2);flex-wrap:wrap}
.facts b{font-weight:600;color:var(--ink)}
.amen{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.amen span{font-size:11.5px;padding:3px 8px;border-radius:6px;background:var(--paper);color:var(--ink-2)}
.price{display:flex;justify-content:space-between;align-items:baseline;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.price strong{font:600 15px var(--sans);color:#a63417}
.price small{font-size:12px;color:var(--muted)}

/* Skeleton */
.sk{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-1)}
.sk .m,.sk .l{background:linear-gradient(100deg,var(--paper-2) 30%,#F7F5F1 50%,var(--paper-2) 70%);background-size:300% 100%;animation:shim 1.6s ease-in-out infinite}
.sk .b{padding:14px 16px 18px}
.sk .l{height:10px;border-radius:6px;margin-top:10px}

.state{text-align:center;padding:80px 20px;color:var(--ink-2)}
.state h3{font:400 30px/1.1 var(--serif);letter-spacing:-.02em;color:var(--ink);margin-bottom:8px}
.state .btn{display:inline-block;flex:none;margin-top:18px;padding:12px 22px}
.end{text-align:center;color:var(--muted);font-size:13px;padding:30px 0}
.sentinel{height:1px}

@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes pop{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
@keyframes shim{from{background-position:100% 0}to{background-position:0 0}}

@media (max-width:720px){
  .top-in,.hero,main,.actives{padding-left:16px;padding-right:16px}
  .hero{padding-top:32px}
  .masonry,.col{gap:12px}
  .count{display:none}
  .drawer{top:auto;width:100%;height:88vh;border-radius:24px 24px 0 0;transform:translateY(104%)}
  .drawer.open{transform:none}
  .d-head::before{content:"";position:absolute;left:50%;top:8px;width:40px;height:4px;border-radius:4px;background:var(--line);transform:translateX(-50%)}
  .body{padding:10px 12px 12px}.ttl{font-size:15px}.amen{display:none}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.brand img{height:28px;width:auto}
.brand b{font:600 22px/1 var(--serif);letter-spacing:-.02em;color:var(--ink)}
.brand b i{font-style:normal;color:var(--accent)}
.foot{border-top:1px solid var(--line);color:var(--muted);font-size:13px;text-align:center;padding:28px 16px}

/* Header logos: icon + wordmark (permutese layout) */
.brand{align-items:center;gap:8px}.brand .lm{height:30px}.brand .lw{height:22px}
.brand .lw+b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* Blur-to-sharp image */
.img{position:absolute;inset:0;overflow:hidden;background:linear-gradient(100deg,var(--paper-2) 30%,#F7F5F1 50%,var(--paper-2) 70%);background-size:300% 100%;animation:shim 1.6s ease-in-out infinite}
.img.ok,.img.fail{animation:none}
.img>img{display:block;width:100%;height:100%;object-fit:cover;opacity:0;filter:blur(18px);transform:scale(1.06);transition:opacity .7s var(--ease),filter .9s var(--ease),transform 1.2s var(--ease)}
.img.ok>img{opacity:1;filter:none;transform:scale(1.001)}
.card:hover .img.ok>img{transform:scale(1.06)}
.ph{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(120% 90% at 20% 10%,#ffd9cc 0%,#f7a58f 40%,#F24822 100%)}
.ph img{width:44px;opacity:.55;filter:brightness(0) invert(1)}
.media{min-height:120px}
/* Stat icons */
.facts span{display:inline-flex;align-items:center;gap:5px}
.ico{width:15px;height:15px;opacity:.75;flex:none}
.card{outline-offset:3px}
/* Detail modal */
.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px}
.m-scrim{position:absolute;inset:0;background:rgba(15,23,42,.5);opacity:0;transition:opacity .38s var(--ease)}
.m-panel{position:relative;width:min(1080px,100%);max-height:calc(100vh - 48px);background:var(--paper);border-radius:24px;overflow:hidden;display:grid;grid-template-columns:1.15fr 1fr;box-shadow:0 40px 90px -30px rgba(15,23,42,.5);opacity:0;transform:translateY(24px) scale(.97);transition:opacity .38s var(--ease),transform .5s var(--ease)}
.modal.open .m-scrim{opacity:1}.modal.open .m-panel{opacity:1;transform:none}
.m-x{position:absolute;top:14px;right:14px;z-index:3;background:var(--card);box-shadow:var(--sh-1)}
.gal{background:var(--ink);display:flex;flex-direction:column;min-height:0}
.gal-main{position:relative;flex:1;min-height:320px}
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;padding:10px;max-height:150px;overflow-y:auto;background:#0b1220}
.th{position:relative;width:100%;aspect-ratio:4/3;border-radius:10px;overflow:hidden;opacity:.55;transition:opacity .25s,box-shadow .25s}
.th.on,.th:hover{opacity:1}.th.on{box-shadow:0 0 0 2px var(--accent)}
.m-body{overflow:auto;padding:28px 30px 32px}
.m-ttl{font:600 26px/1.15 var(--serif);letter-spacing:-.02em;margin:6px 0 12px}
.m-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.m-tags span{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:#872a10}
.m-price{display:flex;flex-direction:column;gap:2px;margin:16px 0 6px;padding:14px 16px;border-radius:14px;background:var(--card)}
.m-price strong{font:600 18px var(--sans);color:#a63417}.m-price span{font-size:13px;color:var(--muted)}
.m-body section{padding-top:18px;margin-top:18px;border-top:1px solid var(--line)}
.m-body h4{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.m-body p{color:var(--ink-2);line-height:1.6}
.m-body dl{display:grid;gap:8px}.kv{display:grid;grid-template-columns:44% 1fr;gap:10px;font-size:14px}
.kv dt{color:var(--muted)}.kv dd{color:var(--ink);word-break:break-word}
.m-body a{color:#a63417;text-underline-offset:3px}.links{list-style:none;display:grid;gap:6px;font-size:14px}
@media (max-width:820px){.modal{padding:0;place-items:end stretch}.m-panel{grid-template-columns:1fr;max-height:94vh;border-radius:24px 24px 0 0;overflow:auto}.gal-main{min-height:260px}.m-body{overflow:visible}}
@media (prefers-reduced-motion:reduce){.img>img{filter:none;transform:none}}


/* Permute-se dual logo — matches permutese.com.br header */
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.brand .lm{height:36px;width:36px;display:block;object-fit:contain;flex:0 0 auto}
.brand .lw{display:none;height:24px;width:auto}
@media (min-width:768px){.brand .lw{display:block}}
.nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.9);color:var(--ink);font-size:26px;line-height:1;cursor:pointer;box-shadow:var(--sh-1);transition:transform .2s var(--ease),background .2s}
.nav:hover{background:#fff;transform:translateY(-50%) scale(1.08)}.nav.prev{left:12px}.nav.next{right:12px}
.gcount{position:absolute;bottom:12px;right:12px;z-index:2;font-size:12px;font-weight:600;color:#fff;background:rgba(15,23,42,.6);padding:4px 10px;border-radius:999px}
.sec h4{display:flex;align-items:center;gap:8px}.sico{flex:none}
.map{height:240px;border-radius:14px;overflow:hidden;background:var(--card);z-index:0}
.map.empty{display:flex;align-items:center;justify-content:center;gap:10px;height:120px;color:var(--muted);font-size:14px;border:1px dashed var(--line)}
.pin span{display:block;width:26px;height:26px;background:#F24822;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 4px 10px rgba(0,0,0,.3)}
.hint{font-size:13px;color:var(--muted);margin-top:8px}
.bools{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;margin-top:12px}
.bool{display:flex;align-items:center;gap:8px;font-size:13px;padding:7px 10px;border-radius:10px;background:var(--card);color:var(--muted)}
.bool i{font-style:normal;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:var(--line)}
.bool b{margin-left:auto;font-weight:600}.bool.yes{color:var(--ink);background:var(--accent-soft)}.bool.yes i{background:#F24822;color:#fff}.bool.yes b{color:#a63417}

/* gal-main stable frame */
.gal-main{position:relative;width:100%;aspect-ratio:4/3;flex:0 0 auto;min-height:0!important;height:auto;overflow:hidden;background:#0b1220}
.gal-main>.img{position:absolute;inset:0;width:100%;height:100%}
.gal-main .nav,.gal-main .gcount{z-index:2}
@media (max-width:820px){.gal-main{aspect-ratio:5/4;min-height:0!important}}

/* modal roomy desktop — Google Maps on right, fixed gallery aspect */
.modal{padding:clamp(12px,2.5vh,28px) clamp(12px,3vw,36px);place-items:center}
.m-panel{
  width:min(90vw,1680px);max-width:90vw;
  height:min(92vh,980px);max-height:92vh;
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  border-radius:28px;overflow:hidden;align-items:stretch;
}
.gal{
  height:100%;min-height:0;display:flex;flex-direction:column;
  background:var(--paper);overflow:hidden;
}
.gal-main{
  position:relative;flex:0 0 auto;width:100%;
  aspect-ratio:4/3;min-height:0!important;height:auto;
  overflow:hidden;background:#0b1220;
}
.gal-main>.img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.thumbs{
  flex:0 0 auto;max-height:130px;padding:10px 12px;gap:8px;
  grid-template-columns:repeat(auto-fill,minmax(76px,1fr));
  background:#0b1220;border-top:1px solid rgba(255,255,255,.06);
}
.m-body{
  min-height:0;height:100%;overflow-y:auto;overflow-x:hidden;
  padding:clamp(20px,2.4vw,36px) clamp(22px,2.6vw,40px) clamp(28px,3vw,48px);
  display:block;-webkit-overflow-scrolling:touch;
}
.m-body .m-ttl{font-size:clamp(22px,2.1vw,30px);line-height:1.15;margin:.15em 0 .45em}
.m-body section{padding-top:18px;margin-top:14px;border-top:1px solid var(--line)}
/* Google Maps — rounded clip */
.map,.map-gmaps{
  height:min(28vh,280px);min-height:220px;width:100%;
  border-radius:14px;overflow:hidden;
  background:var(--card);z-index:0;
  border:1px solid var(--line);
}
.map.empty{
  display:flex;align-items:center;justify-content:center;gap:10px;
  height:140px;min-height:140px;padding:16px;text-align:center;
  color:var(--muted);font-size:14px;line-height:1.45;
  border:1px dashed var(--line);background:var(--card);
}
.map.empty code{font-size:12px;color:#a63417}

@media (max-width:980px){
  .m-panel{width:100%;max-width:100%;height:auto;max-height:94vh;grid-template-columns:1fr;border-radius:24px 24px 0 0;overflow:auto}
  .modal{padding:0;place-items:end stretch}
  .gal{height:auto;background:#0b1220}
  .gal-main{aspect-ratio:16/11;flex:0 0 auto;min-height:0!important}
  .m-body{height:auto;overflow:visible}
  .map,.map-gmaps{height:220px}
}

.agency{font-size:12px;font-weight:600;color:#a63417;margin:.15rem 0 .35rem;letter-spacing:.01em}
.m-agency{font-size:13px;margin:6px 0 2px}
.m-agency strong{color:var(--ink);font-weight:600}
.card .agency{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;background:rgba(242,72,34,.08);color:#a63417;font-size:11px;font-weight:600}

.agency-ico{width:14px;height:14px;object-fit:contain;flex:0 0 auto}
.agency-letter{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:9px;font-weight:700;line-height:1}
.m-agency .agency-letter{width:18px;height:18px;font-size:11px}
.card .agency{gap:6px}
.m-agency{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:rgba(242,72,34,.08)}
.m-agency span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}

/* ===== Detail modal v3 (dm-) ===== */
.dm{padding:0;place-items:center}
.dm .m-scrim{background:rgba(20,16,14,.55);backdrop-filter:blur(6px)}
.dm-panel{width:90vw;max-width:1680px;height:90vh;max-height:none;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(400px,1fr);background:#f7f6f4;border-radius:28px;overflow:hidden;transform:translateY(28px) scale(.96);transition:opacity .4s var(--ease),transform .55s cubic-bezier(.2,.9,.25,1.1)}
.dm.open .dm-panel{transform:none}
.dm-grab{display:none}
.dm-x{position:absolute;top:18px;right:18px;z-index:5;width:42px;height:42px;border-radius:50%;background:#fff;font-size:22px;box-shadow:0 6px 20px -6px rgba(0,0,0,.3);transition:transform .2s,background .2s}
.dm-x:hover{transform:rotate(90deg);background:#F24822;color:#fff}
.dm-gal{display:flex;flex-direction:column;gap:14px;padding:22px;overflow:auto;background:#efece8;min-height:0}
.dm-main{position:relative;width:100%;min-height:320px;max-height:none;flex:1 1 auto;border-radius:20px;overflow:hidden;background:#1d1a18}
.dm-main img{width:100%;height:100%;object-fit:cover}
.dm-main .nav{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);color:#1d1a18;font-size:24px;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.dm-main .nav:hover{background:#F24822;color:#fff}
.dm-main .gcount{background:rgba(20,16,14,.65);color:#fff;border-radius:999px;padding:5px 12px;font:600 12px var(--sans)}
.dm-thumbs{display:flex;gap:10px;overflow-x:auto;padding:2px;flex:none;background:none}
.dm-thumbs .th{flex:0 0 96px;aspect-ratio:4/3;height:auto;border-radius:12px;overflow:hidden;border:2px solid transparent;opacity:.65;transition:opacity .2s,border-color .2s}
.dm-thumbs .th.on,.dm-thumbs .th:hover{opacity:1;border-color:#F24822}
.dm-summary{display:flex;flex-direction:column;gap:12px;margin:14px 0 4px;padding:0;background:none}
.dm-price{display:flex;flex-direction:column;gap:4px}
.dm-price small{font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.dm-price strong{font:600 clamp(24px,2.2vw,34px)/1.1 "Cal Sans",var(--serif);color:#F24822;letter-spacing:-.01em}
.dm-price span{font-size:13px;color:var(--muted)}
.dm-body{height:100%;overflow-y:auto;padding:0;scroll-behavior:smooth;min-height:0}
.dm-head{position:sticky;top:0;z-index:2;padding:30px 80px 20px 36px;background:linear-gradient(#f7f6f4 85%,rgba(247,246,244,0));display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.dm-loc{font:500 13px "Poppins",var(--sans);color:var(--muted)}
.dm-ttl{font:600 clamp(24px,2.2vw,34px)/1.12 "Cal Sans","Outfit",var(--serif)!important;margin:0!important;letter-spacing:-.02em}
.dm-tags{margin:2px 0 0}
.dm-agency{margin:0}
.dm-secs{padding:4px 36px 40px;display:grid;gap:14px}
.dm-secs section.sec{opacity:1;transform:none;margin:0!important;padding:20px 22px!important;border:0!important;border-radius:18px;background:#fff;animation:rise .5s var(--ease) both}
.dm-secs section.sec h4{font:600 12px "Outfit",var(--sans);letter-spacing:.09em;text-transform:uppercase;color:#1d1a18;margin-bottom:14px}
.dm-secs section.sec h4 .sico{color:#F24822}
.dm-secs p{font:400 15px/1.7 "Poppins",var(--sans);color:var(--ink-2)}
.dm-secs dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 18px}
.dm-secs .kv{display:flex;flex-direction:column;gap:2px;font-size:14px;padding-bottom:8px;border-bottom:1px dashed var(--line)}
.dm-secs .kv dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.dm-secs .kv dd{font-weight:500;color:var(--ink);word-break:break-word}
.dm-secs .bools{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px}
.dm-secs .map{height:320px;border-radius:14px;overflow:hidden}
@media (max-width:900px){
  .dm{place-items:end stretch}
  .dm-panel{width:100%;height:94vh;grid-template-columns:1fr;grid-template-rows:auto;overflow-y:auto;border-radius:24px 24px 0 0;transform:translateY(100%)}
  .dm.open .dm-panel{transform:none}
  .dm-grab{display:block;position:sticky;top:8px;z-index:6;width:44px;height:5px;border-radius:9px;background:rgba(0,0,0,.25);margin:8px auto 0;grid-column:1}
  .dm-gal{overflow:visible;padding:12px 14px}
  .dm-summary{flex:none}
  .dm-body{height:auto;overflow:visible}
  .dm-head{position:static;padding:8px 18px 8px}
  .dm-secs{padding:4px 14px 32px}
  .dm-secs .map{height:260px}
}

.dm-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;padding:12px 20px;border-radius:999px;background:#F24822;color:#fff!important;font:600 14px "Outfit","Poppins",var(--sans);text-decoration:none;letter-spacing:.01em;box-shadow:0 8px 22px -10px rgba(242,72,34,.7);transition:transform .15s,background .15s,box-shadow .15s}
.dm-cta:hover{background:#d93b1a;transform:translateY(-1px);box-shadow:0 12px 28px -10px rgba(242,72,34,.75);color:#fff!important}
.dm-cta:active{transform:translateY(0)}

/* search bar */
.sbar{position:relative;max-width:820px}
.sbox{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 6px 6px 18px;box-shadow:0 10px 30px -18px rgba(15,23,42,.35);transition:border-color .2s,box-shadow .2s}
.sbox:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px rgba(242,72,34,.12)}
.sbox svg{color:var(--ink-2);flex:none}
.sbox input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:16px;padding:10px 0;color:var(--ink)}
.sbox input::-webkit-search-cancel-button{display:none}
.sclear{width:28px;height:28px;border-radius:50%;font-size:18px;color:var(--ink-2)}
.sclear:hover{background:var(--line)}
.sugs{position:absolute;left:0;right:0;top:calc(100% + 6px);list-style:none;margin:0;padding:6px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 40px -20px rgba(15,23,42,.4);z-index:30}
.sugs button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:12px;text-align:left;font-size:15px}
.sugs button:hover{background:var(--accent-soft)}
.sugs .dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}
.sugs small{margin-left:auto;color:var(--ink-2);font-size:12px}
.quick{margin-top:16px}
.qsep{width:1px;height:24px;background:var(--line);align-self:center;margin:0 4px}
.csearch,.pinputs input{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;background:var(--card);outline:0}
.csearch:focus,.pinputs input:focus{border-color:var(--accent)}
.csearch{margin-bottom:10px}
.chips.cities{max-height:220px;overflow:auto;padding-right:4px}
.pinputs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.pinputs label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--ink-2)}
.chip:disabled{opacity:.5;cursor:not-allowed}
.chip .soon{font-size:10px;opacity:.8}
@media (max-width:640px){.sfbtn span:not(.n){display:none}.sbox input{font-size:15px}}

.dm-gal{overflow:hidden}
@media (max-width:900px){.dm-main{flex:none;aspect-ratio:4/3;min-height:0}.dm-gal{overflow:visible}}

/* lightbox */
.dm-zoom{position:absolute;inset:0;cursor:zoom-in}
.dm-zoom img{width:100%;height:100%;object-fit:cover}
.dm-expand{position:absolute;top:12px;left:12px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;font-size:18px;cursor:pointer}
.dm-expand:hover{background:#F24822}
.lb{position:fixed;inset:0;z-index:9999;background:rgba(8,8,10,.94);display:flex;align-items:center;justify-content:center;animation:lbIn .2s ease}
@keyframes lbIn{from{opacity:0}to{opacity:1}}
.lb-img{max-width:92vw;max-height:78vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.6);user-select:none;animation:lbIn .25s ease}
.lb-x{position:absolute;top:16px;right:20px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:28px;cursor:pointer}
.lb-count{position:absolute;top:26px;left:24px;color:#fff;font:600 14px system-ui;background:rgba(255,255,255,.12);padding:4px 12px;border-radius:99px}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:34px;cursor:pointer}
.lb-nav:hover,.lb-x:hover{background:#F24822}
.lb-prev{left:20px}.lb-next{right:20px}
.lb-strip{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:6px;max-width:92vw;overflow-x:auto;padding:4px}
.lb-th{flex:0 0 64px;height:46px;border:2px solid transparent;border-radius:6px;padding:0;overflow:hidden;opacity:.55;cursor:pointer;background:none}
.lb-th.on{border-color:#F24822;opacity:1}
.lb-th img{width:100%;height:100%;object-fit:cover}
@media(max-width:640px){.lb-nav{width:42px;height:42px;font-size:26px}.lb-prev{left:6px}.lb-next{right:6px}}
.dm-zoom{z-index:1}.dm-zoom>.img{position:absolute;inset:0;width:100%;height:100%}.dm-zoom>.img img{width:100%;height:100%;object-fit:cover}

/* ---- Auth (Phase 1) ---- */
.ua{display:inline-flex;gap:8px;align-items:center}
.ua button{padding:10px 14px;border-radius:999px;font-size:14px;font-weight:500;transition:background .2s}
.ua-in,.ua-name{background:transparent;border:1px solid var(--line);color:var(--ink)}
.ua-in:hover,.ua-name:hover{background:var(--paper-2)}
.ua-reg{background:var(--accent);color:var(--accent-ink)}
.ua-reg:hover{background:var(--clay)}
.ua-out{background:transparent;color:var(--muted)}
.am{position:fixed;inset:0;z-index:200;display:grid;place-items:center;background:rgba(20,16,14,.55);backdrop-filter:blur(6px);padding:16px}
.am-card{position:relative;width:100%;max-width:400px;background:var(--card);border-radius:24px;padding:32px 28px;display:flex;flex-direction:column;gap:12px;box-shadow:0 30px 80px -20px rgba(0,0,0,.4)}
.am-card h3{font:400 28px/1.1 var(--serif);letter-spacing:-.02em;margin-bottom:6px}
.am-card input{padding:13px 14px;border:1px solid var(--line);border-radius:12px;font:inherit;background:var(--paper)}
.am-card input:focus{outline:2px solid var(--accent);border-color:transparent}
.am-card .btn{flex:none;margin-top:4px}
.am-card .btn:disabled{opacity:.6}
.am-x{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;font-size:20px;background:var(--paper-2)}
.am-sub,.am-alt{color:var(--muted);font-size:14px}
.am-alt a{color:var(--accent);font-weight:600}
.am-err{background:var(--accent-soft);color:var(--clay);padding:10px 12px;border-radius:10px;font-size:14px}
@media (max-width:640px){.ua-in{display:none}.count{display:none}}

/* ---- Auth pages (#/entrar, #/cadastrar, #/confirmar) ---- */
.ap{position:fixed;inset:0;z-index:200;display:grid;grid-template-columns:minmax(320px,44%) 1fr;background:#f7f6f4;animation:apIn .2s ease;overflow:auto}
@keyframes apIn{from{opacity:0}to{opacity:1}}
.ap-side{background:linear-gradient(155deg,#F24822 0%,#d8361a 60%,#b22a12 100%);color:#fff;padding:40px 48px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.ap-side:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:rgba(255,255,255,.08);right:-180px;bottom:-160px}
.ap-logo img{height:34px;filter:brightness(0) invert(1)}
.ap-pitch h2{font-family:"Cal Sans","Outfit",sans-serif;font-size:42px;line-height:1.08;margin:0 0 24px;font-weight:600}
.ap-pitch em{font-style:normal;text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.ap-pitch ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;font-family:"Poppins",sans-serif;font-size:15px;opacity:.95}
.ap-pitch li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.2);margin-right:10px;font-size:12px}
.ap-side small{opacity:.7;position:relative;z-index:1}
.ap-main{display:grid;place-items:center;padding:48px 24px;position:relative}
.ap-x{position:absolute;top:18px;right:22px;width:40px;height:40px;border-radius:50%;border:0;background:#fff;font-size:24px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.ap-card{width:100%;max-width:420px;background:#fff;border-radius:20px;padding:36px 34px;box-shadow:0 20px 60px rgba(30,20,10,.08);display:flex;flex-direction:column;gap:14px;font-family:"Outfit","Poppins",sans-serif}
.ap-logo-m{display:none;height:28px;align-self:center}
.ap-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f2efeb;border-radius:12px;padding:4px}
.ap-tabs button{border:0;background:none;padding:10px;border-radius:9px;font:600 14px "Outfit",sans-serif;color:#6b625b;cursor:pointer}
.ap-tabs button.on{background:#fff;color:#1d1a17;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.ap-mail{width:56px;height:56px;border-radius:16px;background:#fde7e1;color:#F24822;display:grid;place-items:center;font-size:26px;align-self:center}
.ap-card h1{font-family:"Cal Sans","Outfit",sans-serif;font-size:28px;margin:6px 0 0;color:#1d1a17}
.ap-sub{margin:-6px 0 4px;color:#6b625b;font-size:15px}
.ap-f{display:flex;flex-direction:column;gap:6px}
.ap-f>span{font-size:13px;font-weight:600;color:#3a332d}
.ap-in{width:100%;box-sizing:border-box;height:48px;border:1.5px solid #e4dfd9;border-radius:12px;padding:0 14px;font:16px "Outfit",sans-serif;background:#fff;transition:border .15s,box-shadow .15s}
.ap-in:focus{outline:0;border-color:#F24822;box-shadow:0 0 0 4px rgba(242,72,34,.12)}
.ap-in.bad{border-color:#d93025}.ap-in.ok{border-color:#cfc8c0}
.ap-code{text-align:center;letter-spacing:.6em;font-size:26px;height:60px;font-weight:600}
.ap-fe{color:#d93025;font-size:12.5px}
.ap-pw{position:relative}.ap-pw .ap-in{padding-right:84px}
.ap-eye{position:absolute;right:8px;top:8px;height:32px;padding:0 10px;border:0;border-radius:8px;background:#f2efeb;font:600 12px "Outfit",sans-serif;cursor:pointer;color:#3a332d}
.ap-meter{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:4px;align-items:center}
.ap-meter i{height:4px;border-radius:2px;background:#ece7e1}
.ap-meter em{font-style:normal;font-size:12px;color:#6b625b;margin-left:6px}
.ap-meter.s1 i:nth-child(-n+1){background:#d93025}.ap-meter.s2 i:nth-child(-n+2){background:#f29d22}
.ap-meter.s3 i:nth-child(-n+3){background:#7cb342}.ap-meter.s4 i{background:#2e9d57}
.ap-err{background:#fdecea;color:#b3261e;border-radius:10px;padding:10px 12px;font-size:14px}
.ap-info{background:#e8f5ec;color:#1e7a43;border-radius:10px;padding:10px 12px;font-size:14px}
.ap-dev{margin:0;font-size:13px;color:#6b625b;background:#f7f6f4;border-radius:8px;padding:8px 10px;text-align:center}
.ap-cta{height:50px;border:0;border-radius:12px;background:#F24822;color:#fff;font:600 16px "Outfit",sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .15s,transform .05s}
.ap-cta:hover{background:#d93d1a}.ap-cta:active{transform:translateY(1px)}.ap-cta:disabled{opacity:.65;cursor:wait}
.ap-spin{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:apSp .7s linear infinite}
@keyframes apSp{to{transform:rotate(360deg)}}
.ap-terms{font-size:12px;color:#8a8079;margin:0;text-align:center}
.ap-alt{text-align:center;margin:4px 0 0;color:#6b625b;font-size:14px}
.ap-alt a{color:#F24822;font-weight:600;text-decoration:none}
@media (max-width:860px){.ap{grid-template-columns:1fr}.ap-side{display:none}.ap-logo-m{display:block}.ap-main{padding:64px 16px 32px;align-items:start}.ap-card{padding:28px 22px;box-shadow:none;background:transparent}}

/* Auth page layout: the form sits on the panel itself, with no card around it.
   Everything is scoped to .ap because .ap-in, .ap-cta, .ap-tabs and .ap-f are also
   used by the listing wizard, the profile and the demand filters. */
.ap{grid-template-columns:minmax(360px,42%) 1fr;background:#fff}
.ap .ap-main{display:flex;flex-direction:column;align-items:center;padding:96px clamp(24px,7vw,112px) 28px;background:#fff}
.ap .ap-card{max-width:480px;margin-block:auto;padding:0;gap:18px;background:none;box-shadow:none;border-radius:0}
.ap .rg-card{max-width:600px}
.ap .ap-x{top:24px;right:28px;width:44px;height:44px;background:#f4f1ed;box-shadow:none;color:#3a332d;transition:background .15s}
.ap .ap-x:hover{background:#e9e4dd}
.ap .ap-tabs{display:flex;gap:32px;padding:0;margin-bottom:14px;background:none;border-radius:0;border-bottom:1px solid #e9e4dd}
.ap .ap-tabs button{padding:0 2px 14px;margin-bottom:-1px;border-radius:0;border-bottom:2px solid transparent;background:none;box-shadow:none;font-size:16px;color:#8a8079;transition:color .15s,border-color .15s}
.ap .ap-tabs button:hover{color:#3a332d}
.ap .ap-tabs button.on{color:#1d1a17;border-bottom-color:#F24822;background:none;box-shadow:none}
.ap .ap-card h1{font-size:clamp(34px,3.4vw,46px);line-height:1.04;letter-spacing:-.02em;margin:6px 0 0}
.ap .rg h1{font-size:clamp(28px,2.6vw,34px)}
.ap .ap-sub{max-width:40ch;margin:-4px 0 10px;font-size:17px;line-height:1.5}
.ap .ap-f{gap:8px}
.ap .ap-f>span:first-child{font-size:14px}
.ap .ap-in{height:56px;padding:0 16px;border-width:1.5px;border-radius:14px;background-color:#faf9f7;font-size:16px}
.ap .rg .ap-in{height:52px}
.ap .ap-in:focus{background-color:#fff}
.ap .ap-in.bad{border-color:#d93025;background-color:#fff}
.ap .ap-pw .ap-in{padding-right:100px}
.ap .ap-eye{top:10px;right:10px;height:36px;padding:0 12px;font-size:13px}
.ap .ap-fe{font-size:13.5px;font-weight:500;color:#b3261e}
.ap .ap-code{height:68px}
.ap .ap-cta{height:56px;margin-top:6px;border-radius:14px;font-size:17px}
.ap .ap-alt,.ap .ap-terms,.ap .rg-person{text-align:left}
.ap .ap-alt{margin-top:6px;font-size:15px}
.ap .ap-mail{align-self:flex-start}
.ap-foot{align-self:center;width:100%;max-width:480px;margin-top:28px;color:#8a8079;font:500 14px "Outfit",sans-serif;text-decoration:none}
.ap-foot:hover{color:#3a332d}
.ap .rg-card+.ap-foot{max-width:600px}
@media (max-width:860px){
  .ap .ap-main{padding:84px 22px 24px}
  .ap .ap-card{margin-block:0 auto;padding:0}
  .ap .ap-logo-m{align-self:flex-start;height:30px;margin-bottom:14px}
  .ap .ap-card h1{font-size:34px}
}

/* B2B register */
.rg-card{max-width:560px}
.rg{display:flex;flex-direction:column;gap:14px}
.rg h1{font-family:"Cal Sans","Outfit",sans-serif;font-size:26px;margin:4px 0 0;color:#1d1a17}
.rg-kinds{display:grid;gap:12px;margin-top:4px}
.rg-kind{display:flex;align-items:center;gap:16px;text-align:left;border:1.5px solid #e4dfd9;background:#fff;border-radius:16px;padding:18px;cursor:pointer;font-family:"Outfit",sans-serif;transition:border .15s,box-shadow .15s,transform .1s}
.rg-kind:hover{border-color:#F24822;box-shadow:0 0 0 4px rgba(242,72,34,.1);transform:translateY(-1px)}
.rg-ic{width:52px;height:52px;flex:none;border-radius:14px;background:#fde7e1;display:grid;place-items:center;font-size:26px}
.rg-tx{display:flex;flex-direction:column;gap:4px;flex:1}.rg-tx b{font-size:17px;color:#1d1a17}.rg-tx small{font-size:13.5px;color:#6b625b;line-height:1.35}
.rg-go{font-size:28px;color:#F24822}
.rg-person{text-align:center;font-size:13.5px;color:#8a8079;margin:4px 0 0}.rg-person a{color:#6b625b;font-weight:600}
.rg-head{display:flex;justify-content:space-between;align-items:center}
.rg-back{border:0;background:none;color:#6b625b;font:600 14px "Outfit",sans-serif;cursor:pointer;padding:4px 0}
.rg-badge{background:#fde7e1;color:#b22a12;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600}
.rg-steps{list-style:none;padding:0;margin:0;display:flex;gap:6px}
.rg-steps li{flex:1;display:flex;flex-direction:column;gap:6px;font-size:12px;color:#8a8079;border-top:4px solid #ece7e1;padding-top:8px}
.rg-steps li i{display:none}.rg-steps li.on{border-color:#F24822;color:#1d1a17;font-weight:600}.rg-steps li.done{border-color:#f7a58f;color:#6b625b}
.rg-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rg-grid>*{grid-column:1/-1}.rg-grid>.half{grid-column:auto}
.rg-row{display:grid;grid-template-columns:1fr 92px;gap:12px}
.ap-f select.ap-in{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%236b625b'/%3E%3C/svg%3E") no-repeat right 12px center}
.rg-sep{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a8079;border-top:1px solid #ece7e1;padding-top:12px;margin-top:2px}
.rg-note{font-size:13px;color:#6b625b;background:#f7f6f4;border-radius:10px;padding:10px 12px}
.rg-terms{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#3a332d;line-height:1.4;cursor:pointer}
.rg-terms input{width:18px;height:18px;accent-color:#F24822;margin-top:1px;flex:none}.rg-terms a{color:#F24822}
@media (max-width:560px){.rg-grid{grid-template-columns:1fr}.rg-grid>.half{grid-column:1/-1}}

.ap-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;padding:12px 16px;margin:6px 0 4px;border:1px solid #dadce0;border-radius:12px;background:#fff;color:#3c4043;font-weight:600;font-size:15px;text-decoration:none;transition:background .15s,box-shadow .15s}
.ap-google:hover{background:#f8f9fa;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.ap-google:focus-visible{outline:2px solid #F24822;outline-offset:2px}
.ap-or{display:flex;align-items:center;gap:12px;color:#9aa0a6;font-size:13px;margin:12px 0}
.ap-or::before,.ap-or::after{content:"";flex:1;height:1px;background:#e5e7eb}

/* ---- Phase 2: wizard + meus imóveis ---- */
.ua-ann{background:var(--accent);color:#fff}.ua-ann:hover{background:var(--clay)}
.pg{position:fixed;inset:0;z-index:70;background:#f7f4f0;overflow-y:auto;font-family:"Outfit","Poppins",sans-serif;animation:pgIn .35s var(--ease)}
@keyframes pgIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.pg-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:14px;padding:14px 24px;background:rgba(247,244,240,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.pg-logo{height:26px}.pg-top b{font-weight:600;color:#6b625b;border-left:1px solid var(--line);padding-left:14px}
.pg-x{position:static;margin-left:auto}
.pg-empty{max-width:420px;margin:12vh auto;background:#fff;border-radius:20px;padding:36px;text-align:center;display:grid;gap:12px;box-shadow:0 20px 60px rgba(30,20,10,.08)}
.pg-empty.in{margin:40px auto}.pg-empty h2{font-family:var(--serif);font-size:24px}.pg-empty p{color:#6b625b}
.pg-link{color:#6b625b;text-decoration:underline}
.wz-bar{height:4px;background:#ece6df}.wz-bar i{display:block;height:100%;background:#F24822;transition:width .4s var(--ease)}
.wz-dots{list-style:none;display:flex;justify-content:center;gap:6px;padding:22px 16px 6px;flex-wrap:wrap}
.wz-dots button{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;font-size:13.5px;font-weight:500;color:#8a817a}
.wz-dots span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#ece6df;font-size:12px;font-weight:600}
.wz-dots li.on button{background:#fff;color:#1d1a17;box-shadow:0 1px 4px rgba(0,0,0,.06)}.wz-dots li.on span{background:#F24822;color:#fff}
.wz-dots li.done span{background:#1d1a17;color:#fff}.wz-dots li.done button{color:#3a332d}
.wz-card{max-width:680px;margin:18px auto 60px;background:#fff;border-radius:22px;padding:34px 36px;box-shadow:0 20px 60px rgba(30,20,10,.08);display:flex;flex-direction:column;gap:16px;animation:pgIn .35s var(--ease)}
.wz-card h1{font-family:var(--serif);font-size:30px;color:#1d1a17}
.wz-card small{font-weight:400;color:#8a817a}
.wz-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.wz-types button,.wz-feats button{padding:14px 10px;border:1.5px solid #e4dfd9;border-radius:14px;font-weight:500;background:#fff;transition:all .15s}
.wz-types button:hover,.wz-feats button:hover{border-color:#cfc8c0}
.wz-types button.on,.wz-feats button.on{border-color:#F24822;background:#fde7e1;color:#b22a12}
.wz-feats{display:flex;flex-wrap:wrap;gap:8px}.wz-feats button{padding:9px 14px;border-radius:999px;font-size:14px}
.wz-ta{height:120px;padding:12px 14px;resize:vertical;line-height:1.5}
.wz-row{display:flex;gap:12px}.wz-row>*{flex:1;min-width:0}.wz-uf{flex:0 0 96px}.wz-num{flex:0 0 120px}
select.ap-in{appearance:auto}
.wz-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wz-step{border:1.5px solid #e4dfd9;border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.wz-step>span{font-size:13px;font-weight:600;color:#3a332d}
.wz-step div{display:flex;align-items:center;justify-content:space-between}
.wz-step button{width:34px;height:34px;border-radius:50%;border:1.5px solid #e4dfd9;font-size:18px}.wz-step button:hover{border-color:#F24822;color:#F24822}
.wz-step b{font-size:20px}
.wz-money{position:relative}.wz-money em{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-style:normal;color:#8a817a;font-weight:600}
.wz-money .ap-in{padding-left:44px}.wz-money.big .ap-in{height:64px;font-size:28px;font-weight:600;padding-left:56px}.wz-money.big em{font-size:20px}
.wz-drop{position:relative;border:2px dashed #e4dfd9;border-radius:18px;padding:34px;text-align:center;display:grid;gap:4px;cursor:pointer;transition:border .2s,background .2s}
.wz-drop:hover{border-color:#F24822;background:#fffaf8}.wz-drop.busy{opacity:.7}
.wz-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.wz-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}
.wz-photos figure{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#eee}
.wz-photos img{width:100%;height:100%;object-fit:cover}
.wz-photos .cover{position:absolute;left:8px;top:8px;background:#F24822;color:#fff;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px}
.wz-photos figure div{position:absolute;inset:auto 0 0 0;display:flex;justify-content:center;gap:6px;padding:6px;background:linear-gradient(transparent,rgba(0,0,0,.5));opacity:0;transition:opacity .2s}
.wz-photos figure:hover div{opacity:1}
.wz-photos figure div button{width:28px;height:28px;border-radius:50%;background:#fff;font-weight:700}
.wz-review{display:grid;grid-template-columns:220px 1fr;gap:18px;border:1.5px solid #ece6df;border-radius:16px;padding:12px}
.wz-review img,.wz-noimg{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#f2efeb;display:grid;place-items:center;color:#8a817a}
.wz-review h3{font-family:var(--serif);font-size:20px;margin:4px 0}.wz-price{font-size:22px;color:#F24822}.wz-review p{color:#6b625b;margin-top:6px}.wz-mini{font-size:13px}
.wz-nav{display:flex;justify-content:space-between;align-items:center;margin-top:6px}
.wz-nav .ap-cta{width:auto;padding:0 28px}
.wz-back{font-weight:600;color:#6b625b;padding:12px}
.ap-spin.dark{border-color:rgba(0,0,0,.15);border-top-color:#F24822}
.mi{max-width:1180px;margin:0 auto;padding:28px 24px 60px;display:flex;flex-direction:column;gap:18px}
.mi-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}.mi-head h1{font-family:var(--serif);font-size:32px}
.mi-new{width:auto;padding:0 22px}
.mi-tabs{max-width:420px;grid-template-columns:repeat(3,1fr)}.mi-tabs small{opacity:.6;margin-left:4px}
.mi-load{color:#6b625b;display:flex;gap:10px;align-items:center}
.mi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.mi-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--sh-1);display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s}
.mi-card:hover{transform:translateY(-2px);box-shadow:var(--sh-2)}
.mi-card.off .mi-img img{filter:grayscale(.8);opacity:.7}
.mi-img{position:relative;aspect-ratio:4/3;background:#f2efeb;display:grid;place-items:center;color:#8a817a}.mi-img img{width:100%;height:100%;object-fit:cover}
.mi-st{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#fff}
.mi-st.active{color:#137333}.mi-st.inactive{color:#8a817a}
.mi-body{padding:14px 16px;display:grid;gap:3px;flex:1}.mi-body small{color:#8a817a}.mi-body h3{font-size:16px;font-weight:600;line-height:1.3}.mi-body b{color:#F24822;font-size:18px}.mi-body p{color:#6b625b;font-size:13.5px}
.mi-act{display:flex;border-top:1px solid #f0ebe5}.mi-act button{flex:1;padding:12px 6px;font-size:13.5px;font-weight:600;color:#3a332d}
.mi-act button:hover{background:#faf7f4}.mi-act button+button{border-left:1px solid #f0ebe5}.mi-act .del{color:#d93025}
@media (max-width:640px){.wz-card{margin:10px;padding:24px 18px}.wz-row{flex-direction:column}.wz-uf,.wz-num{flex:1}.wz-review{grid-template-columns:1fr}.wz-dots button{font-size:0;padding:4px}.wz-dots span{font-size:12px}.mi-head{flex-direction:column;align-items:stretch}}
.ua-admin{text-decoration:none;display:inline-flex;align-items:center;color:#F24822!important;border-color:#F24822!important}
@media (max-width:640px){.ua-in.ua-admin{display:inline-flex}}
/* header nav: always show Anunciar / Meus imóveis / Admin */
.ua-mine{display:inline-flex!important}
@media (max-width:640px){.ua{gap:4px;flex-wrap:wrap;justify-content:flex-end}.ua button,.ua a{padding:7px 10px!important;font-size:12px!important}.ua-name{display:none}.fbtn{padding:8px 10px}.top-in{gap:8px}}
/* ---- wizard v2 ---- */
.wz{padding-bottom:96px}
.wz-bar{position:sticky;top:55px;z-index:2}
.wz-dots{gap:4px;padding:26px 16px 4px}
.wz-dots li{display:flex;align-items:center}
.wz-dots li+li::before{content:"";width:22px;height:2px;background:#e4dfd9;margin-right:4px;border-radius:2px}
.wz-dots li.done+li::before,.wz-dots li.on::before{background:#F24822}
.wz-dots li.done button{cursor:pointer}.wz-dots li.done button:hover{background:#fff}
.wz-card{max-width:720px;margin:20px auto 24px;padding:40px 44px;gap:20px;border:1px solid #efe9e2;box-shadow:0 1px 2px rgba(30,20,10,.04),0 24px 64px rgba(30,20,10,.07)}
.wz-eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#F24822}
.wz-card h1{font-family:"Cal Sans",var(--serif);font-size:34px;line-height:1.1;margin-top:-8px}
.wz-card .ap-sub{margin-top:-10px;color:#6b625b}
.wz-types{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.wz-types button{padding:18px 12px;font-size:15px}
.wz-types button.on,.wz-feats button.on{box-shadow:0 0 0 3px rgba(242,72,34,.12)}

.wz-step{background:#faf8f6;border-color:#efe9e2;padding:14px 16px}
.wz-step button{background:#fff}
.wz-step b{font-family:"Cal Sans",var(--serif);font-size:24px}
.wz-money.big .ap-in{height:72px;font-size:32px}
.wz-drop{padding:44px 24px;background:#fcfaf8;gap:8px;justify-items:center}
.wz-drop-ic{width:56px;height:56px;border-radius:50%;background:#fde7e1;color:#F24822;display:grid;place-items:center;font-size:26px;margin-bottom:4px}
.wz-drop b{font-size:17px}.wz-drop small{color:#8a817a}
.wz-drop-btn{margin-top:8px;padding:9px 18px;border-radius:999px;border:1.5px solid #1d1a17;font-weight:600;font-size:14px}
.wz-drop:hover .wz-drop-btn{background:#1d1a17;color:#fff}
.wz-photos{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.wz-photos figure{border-radius:14px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.wz-photos figure:first-child{grid-column:span 2;grid-row:span 2}
@media (hover:none){.wz-photos figure div{opacity:1}}
.wz-review{grid-template-columns:240px 1fr;padding:14px;background:#faf8f6;border-color:#efe9e2}
.wz-sum{display:grid;border:1px solid #efe9e2;border-radius:16px;overflow:hidden}
.wz-sum div{display:grid;grid-template-columns:140px 1fr auto;gap:12px;align-items:center;padding:12px 16px;border-top:1px solid #f2ede7}
.wz-sum div:first-child{border-top:0}
.wz-sum dt{font-size:13px;color:#8a817a;font-weight:500}.wz-sum dd{color:#1d1a17;font-weight:500}
.wz-sum button{font-size:13px;color:#F24822;font-weight:600}
.wz-nav{position:fixed;left:0;right:0;bottom:0;z-index:3;margin:0;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-top:1px solid #efe9e2;display:block}
.wz-nav-in{max-width:720px;margin:0 auto;padding:14px 20px;display:flex;justify-content:space-between;align-items:center}
.wz-nav .ap-cta{min-width:180px}
.wz-back{border-radius:999px;padding:12px 18px}.wz-back:hover{background:#f2efeb}
@media (max-width:640px){.wz-card{padding:26px 18px}.wz-card h1{font-size:26px}.wz-dots li+li::before{width:8px}.wz-sum div{grid-template-columns:1fr auto}.wz-sum dt{grid-column:1/-1}.wz-photos figure:first-child{grid-column:span 2;grid-row:auto}.wz-nav .ap-cta{min-width:0;flex:1;margin-left:10px}}
/* Phase 4 — favoritos + propostas */
.pp-acts{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.pp-acts .dm-cta{margin-top:0}
.pp-fav{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font:600 14px "Outfit","Poppins",sans-serif;cursor:pointer;transition:border-color .15s,color .15s}
.pp-fav:hover{border-color:#F24822}.pp-fav.on{border-color:#F24822;color:#F24822}.pp-fav.on svg{fill:#F24822;stroke:#F24822}
.pp-hint{font-size:13px}
.pp-ov{position:fixed;inset:0;z-index:90;background:rgba(20,14,10,.5);backdrop-filter:blur(4px);display:grid;place-items:center;padding:16px;animation:pgIn .25s var(--ease)}
.pp-box{position:relative;width:min(520px,100%);max-height:92vh;overflow-y:auto;background:#fff;border-radius:22px;padding:28px;font-family:"Outfit","Poppins",sans-serif;box-shadow:0 30px 80px rgba(20,10,5,.25)}
.pp-box form{display:grid;gap:10px}.pp-box h2{font-family:var(--serif);font-size:22px;line-height:1.2;padding-right:30px}
.pp-k{color:#F24822;font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:11px}
.pp-l{font-weight:600;font-size:13px;color:#3d3631;margin-top:6px}
.pp-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:#f3efea;padding:4px;border-radius:12px}
.pp-seg button{padding:9px;border-radius:9px;font-weight:600;color:#6b625b}.pp-seg button.on{background:#fff;color:#F24822;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.pp-in{width:100%;border:1.5px solid var(--line);border-radius:12px;padding:11px 13px;font:inherit;resize:vertical}.pp-in:focus{outline:none;border-color:#F24822}
.pp-give{display:grid;gap:6px;max-height:200px;overflow-y:auto}
.pp-give label{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;cursor:pointer}
.pp-give label.on{border-color:#F24822;background:#fff6f3}.pp-give input{accent-color:#F24822}
.pp-give span{display:grid;font-weight:500}.pp-give small{color:#8a8178;font-weight:400}
.pr-list{display:grid;gap:14px}
.pr-card{background:#fff;border-radius:18px;padding:18px;display:grid;gap:12px;box-shadow:0 6px 24px rgba(30,20,10,.06)}
.pr-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pr-h small{color:#6b625b;margin-left:auto}
.pr-t{font-weight:600;background:#fff1ec;color:#F24822;padding:4px 10px;border-radius:999px;font-size:12px}
.pr-st{font-weight:600;padding:4px 10px;border-radius:999px;font-size:12px;background:#eee}
.pr-st.active{background:#fff7e0;color:#9a6b00}.pr-st.accepted{background:#e6f6ec;color:#1d7a43}.pr-st.rejected{background:#fdeaea;color:#b42318}.pr-st.cancelled{background:#efefef;color:#777}
.pr-assets{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.pr-as{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px}
.pr-as img,.pr-as i{width:56px;height:56px;border-radius:9px;object-fit:cover;background:#f0ece7;flex:none}
.pr-as span{display:grid;font-weight:600;font-size:14px;min-width:0}.pr-as small{color:#F24822;font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.pr-as em{font-style:normal;color:#8a8178;font-weight:400;font-size:12px}
.pr-cash{font-size:14px}.pr-notes{color:#4a423c;background:#faf7f4;padding:10px 12px;border-radius:10px;font-size:14px}.pr-notes.rj{background:#fdf2f2}
.mi-act button.ok{color:#1d7a43}
/* ---- perfil ---- */
.pf{max-width:1080px;margin:0 auto;padding:28px 24px 60px;display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}
.pf-side{position:sticky;top:80px;display:grid;gap:14px}
.pf-card{background:#fff;border-radius:22px;padding:28px 22px;text-align:center;box-shadow:0 20px 60px rgba(30,20,10,.08);display:grid;gap:8px;justify-items:center}
.pf-av{position:relative;width:112px;height:112px;border-radius:50%;overflow:hidden;background:#fde7e1;color:#b22a12;font:600 36px var(--serif);display:grid;place-items:center;box-shadow:0 0 0 4px #fff,0 0 0 6px #F24822}
.pf-av img{width:100%;height:100%;object-fit:cover}
.pf-av em{position:absolute;inset:auto 0 0;padding:6px 0 8px;background:rgba(29,26,23,.62);color:#fff;font:500 11.5px "Outfit",sans-serif;font-style:normal;opacity:0;transition:opacity .15s;display:grid;place-items:center}
.pf-av:hover em,.pf-av:focus-visible em,.pf-av:disabled em{opacity:1}
.pf-card h2{font-family:var(--serif);font-size:22px;margin-top:8px;color:#1d1a17}
.pf-mail{color:#6b625b;font-size:13.5px;word-break:break-all}.pf-ok{color:#1e7a43;font-weight:600;white-space:nowrap}
.pf-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.pf-tags span{padding:4px 10px;border-radius:999px;background:#f3eee8;font-size:12.5px;font-weight:600;color:#3a332d}.pf-tags span.r{background:#1d1a17;color:#fff}
.pf-meta{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;border-top:1px solid #eee7df;padding-top:14px;text-align:left}
.pf-meta dt,.pf-ro dt{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:#8a817a}.pf-meta dd,.pf-ro dd{font-size:14px;font-weight:500;color:#1d1a17;margin:2px 0 0}
.pf-nav{background:#fff;border-radius:18px;padding:6px;box-shadow:0 10px 30px rgba(30,20,10,.06);display:grid}
.pf-nav button,.pf-nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;font-weight:500;color:#1d1a17;text-decoration:none;text-align:left}
.pf-nav button:hover,.pf-nav a:hover{background:#faf6f2}.pf-nav span{width:30px;height:30px;border-radius:9px;background:#fde7e1;color:#F24822;display:grid;place-items:center;font-size:14px}
.pf-nav i{margin-left:auto;font-style:normal;color:#b5aca4;font-size:18px}
.pf-main{display:grid;gap:18px}.pf-main .wz-card{margin:0;max-width:none}
.pf-h2{font-size:24px!important}
.pf-tipos{grid-template-columns:repeat(4,1fr)}
.pf-cnt{align-self:flex-end;color:#8a817a;font-size:12px}
.pf-ro{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#faf6f2;border-radius:14px;padding:14px 16px}.pf-ro dd{word-break:break-all}
.pf-actions{display:flex;justify-content:flex-end;align-items:center;gap:16px}.pf-actions .ap-cta{min-width:180px}
.ua-name{display:inline-flex;align-items:center;gap:8px}.ua-av{width:24px;height:24px;border-radius:50%;object-fit:cover}
@media (max-width:860px){.pf{grid-template-columns:1fr;padding:18px 14px 40px}.pf-side{position:static}.pf-tipos{grid-template-columns:repeat(2,1fr)}.pf-ro{grid-template-columns:1fr}}
/* Fase 5 — demandas */
.dd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.dd-card{background:#fff;border-radius:18px;padding:18px;display:grid;gap:8px;align-content:start;box-shadow:0 6px 24px rgba(30,20,10,.06)}
.dd-city{font-family:var(--serif);font-size:22px;margin:2px 0 0}.dd-city span{color:#8a8178;font-size:16px}
.dd-bairros{color:#6b625b;font-size:14px}.dd-res{font-size:14px;color:#4a423c}.dd-price{font-weight:700;color:#F24822}
.dd-chips{display:flex;flex-wrap:wrap;gap:6px}.dd-chips span,.dd-chips button{font-size:12px;padding:5px 10px;border-radius:999px;background:#f3eee9;color:#4a423c;border:1px solid transparent}
.dd-chips.sel button{cursor:pointer;font-size:13px;padding:8px 14px;background:#fff;border-color:var(--line)}.dd-chips.sel button.on{background:#fff1ec;border-color:#F24822;color:#F24822;font-weight:600}
.dd-head-act{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.dd-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 16px}
.dd-filters select,.dd-filters input{height:42px;border:1px solid var(--line);border-radius:12px;padding:0 12px;background:#fff;font:inherit}
.dd-filters .ap-tabs{margin:0}
.pr-st.dd-ativa,.pr-st.r-aceita{background:#e6f6ec;color:#1d7a43}.pr-st.dd-pausada,.pr-st.r-pendente{background:#fff7e0;color:#9a6b00}.pr-st.dd-encerrada{background:#efefef;color:#777}.pr-st.r-recusada{background:#fdeaea;color:#b42318}
.dd-stats{display:flex;gap:18px;font-size:14px;color:#4a423c}.dd-stats em{font-style:normal;background:#F24822;color:#fff;border-radius:999px;padding:1px 8px;font-size:11px;margin-left:4px}
.dd-open{border-top:1px solid var(--line);padding-top:12px;display:grid;gap:10px}.dd-open h4{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:#8a8178}
.dd-match{cursor:pointer;background:#fff;text-align:left;font:inherit}.dd-match:hover,.pr-as.on{border-color:#F24822;box-shadow:0 0 0 2px #fff1ec}
.dw{position:relative;background:#fff;border-radius:22px;padding:28px;width:min(620px,94vw);max-height:92vh;overflow:auto;display:grid;gap:14px;font-family:"Outfit","Poppins",sans-serif}
.dw h2{font-family:var(--serif);font-size:26px}
.dw-steps{display:flex;gap:8px;list-style:none;padding:0;margin:0;flex-wrap:wrap}.dw-steps li{display:flex;gap:6px;align-items:center;font-size:13px;color:#8a8178}
.dw-steps b{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f3eee9;font-size:12px}.dw-steps li.on{color:#1d1a17;font-weight:600}.dw-steps li.on b,.dw-steps li.done b{background:#F24822;color:#fff}
.dw-body{display:grid;gap:12px}.dw label{display:grid;gap:6px;font-size:13px;font-weight:600;color:#4a423c}
.dw input,.dw select,.dw textarea{border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;font-weight:400}
.dw-row{display:flex;gap:10px;flex-wrap:wrap}.dw-row label{flex:1;min-width:120px}.dw-row .grow{flex:3}
.dw-opts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.dw-opts button{padding:18px;border-radius:14px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:600;cursor:pointer}.dw-opts button.on{border-color:#F24822;background:#fff1ec;color:#F24822}
.dw-foot{display:flex;justify-content:space-between;align-items:center;margin-top:4px}
.dw-pick{display:grid;gap:8px;max-height:280px;overflow:auto}.dw-pick .pr-as{background:#fff;text-align:left;font:inherit;cursor:pointer}
.ap-ok{background:#e6f6ec;color:#1d7a43;padding:10px 14px;border-radius:12px}

/* ---- Phase 6: planos + imobiliária ---- */
.lim-warn{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;justify-content:space-between;background:#FFF4EF;border:1px solid #F9C4AE;color:#7a2a10;border-radius:12px;padding:12px 16px;margin:10px 0;font-size:14px}
.lim-warn a{color:#F24822;font-weight:700;text-decoration:none;white-space:nowrap}
.pl,.im6{max-width:1080px;margin:0 auto;padding:32px 20px 80px}
.pl-head{text-align:center;max-width:640px;margin:0 auto 24px}.pl-head h1{font-size:clamp(26px,4vw,38px);line-height:1.1;margin:6px 0 10px;letter-spacing:-.02em}
.pl-stub{margin-top:14px;display:inline-block;background:#F4F4F5;border:1px dashed #c9c9cf;border-radius:10px;padding:8px 14px;font-size:13px;color:#444}
.pl-usage{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;font-size:14px;color:#555;margin:0 0 22px}
.pl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;align-items:stretch}
.pl-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #e7e7ea;border-radius:20px;padding:28px 24px 24px;transition:transform .2s,box-shadow .2s}
.pl-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(20,20,30,.08)}
.pl-card.hot{border:2px solid #F24822;box-shadow:0 14px 40px rgba(242,72,34,.14)}
.pl-card.cur{background:#FFFAF7}
.pl-badge{position:absolute;top:-12px;left:24px;background:#F24822;color:#fff;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px}.pl-badge.alt{background:#1d1d22}
.pl-card h2{margin:0;font-size:20px}.pl-price{font-size:34px;font-weight:800;letter-spacing:-.02em;margin:8px 0 16px}.pl-price small{font-size:14px;font-weight:500;color:#777;margin-left:4px}
.pl-card ul{list-style:none;padding:0;margin:0 0 22px;flex:1;display:grid;gap:9px;font-size:14px;color:#333}
.pl-card li{padding-left:24px;position:relative}.pl-card li:before{content:"✓";position:absolute;left:0;color:#F24822;font-weight:800}
.pl-btn{width:100%;justify-content:center}.pl-btn.on{background:#F4F4F5;color:#555;border:0;border-radius:12px;padding:12px;font-weight:700}
.pl-btn:disabled{opacity:.7;cursor:default}
.im6-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.im6-head h1{margin:4px 0}
.im6-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:16px}
.im6 .wz-card h3{margin:0 0 10px;font-size:16px}.im6 .wz-card h3 small{color:#888;font-weight:500}
.im6-st{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#eee;color:#555;white-space:nowrap}
.im6-st.approved{background:#E7F7EE;color:#16784a}.im6-st.pending{background:#FFF4E0;color:#9a6000}.im6-st.rejected,.im6-st.suspended{background:#FDECEC;color:#b42318}
.im6-tok{display:flex;gap:10px;align-items:center;background:#F7F7F8;border-radius:10px;padding:10px 12px;margin-bottom:12px}.im6-tok code{flex:1;overflow:auto;font-size:13px}
.im6-team{display:grid;gap:8px}.im6-m{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #eee;border-radius:12px}
.im6-m>div:first-child{flex:1;min-width:0}.im6-m small{display:block;color:#777;font-size:12px;overflow:hidden;text-overflow:ellipsis}
.im6-act{display:flex;gap:8px;align-items:center}
.im6-join{display:flex;gap:10px;margin-top:14px}.im6-join .ap-in{flex:1}
@media (max-width:640px){.im6-m{flex-wrap:wrap}.im6-join{flex-direction:column}}

/* Phase 7 — feed prefs bar, QR share */
.prefs-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px auto 0;max-width:1400px;padding:8px 14px;border-radius:12px;background:#fff4f0;color:#9a2a10;font-size:13px;font-weight:600}
.prefs-bar button{border:0;background:#fff;color:#F24822;border-radius:999px;padding:4px 12px;font-weight:700;cursor:pointer;box-shadow:0 0 0 1px #f9c6b6}
.qr-box{display:flex;gap:16px;align-items:center;margin-top:14px;padding:12px;border:1px solid #eee;border-radius:14px;flex-wrap:wrap}
.qr-box img{border-radius:8px;background:#fff}
.qr-side{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.qr-side code{font-size:12px;word-break:break-all;color:#475569}
.qr-acts{display:flex;gap:12px;align-items:center}
.fp .chips{margin:4px 0 10px}
.fp-acts{display:flex;gap:14px;align-items:center;margin-top:12px}

/* ---- Profile pass 2 ---- */
.pf3{background:var(--paper);overflow-x:hidden}
.pf3-wrap{max-width:840px;margin:0 auto;padding:32px 24px 96px}
.pf-hero{display:grid;grid-template-columns:auto 1fr minmax(240px,300px);gap:24px;align-items:start;padding-bottom:24px}
.pf-av{position:relative;width:96px;height:96px;border-radius:50%;border:0;padding:0;background:var(--accent-soft);color:var(--clay);font:600 32px/1 var(--serif);overflow:hidden;cursor:pointer;box-shadow:0 0 0 4px var(--card),var(--sh-1)}
.pf-av img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s var(--ease)}
.pf-av>span{display:grid;place-items:center;height:100%}
.pf-av em{position:absolute;inset:0;display:grid;place-items:center;background:rgba(15,23,42,.45);color:#fff;opacity:0;transition:opacity .2s}
.pf-av:hover em,.pf-av:focus-visible em,.pf-av.busy em{opacity:1}.pf-av:hover img{transform:scale(1.04)}
.pf-id{min-width:0;padding-top:8px}
.pf-id h1{font:600 28px/1.15 var(--serif);letter-spacing:-.01em;margin:0 0 4px;color:var(--ink)}
.pf-mail{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 16px;color:var(--muted);font-size:14px;word-break:break-all}
.pf-verif{color:#15803d;font-size:12px;font-weight:600}
.pf-pend{border:0;background:none;padding:0;color:var(--clay);font:600 12px inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.pf-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pf-badges>span,.pf-planchip{font-size:12px;font-weight:500;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px 10px;line-height:1.3}
.pf-planchip{font-family:inherit;cursor:pointer;border-color:var(--accent-soft);color:var(--clay);background:#fff8f5}
.pf-planchip:hover{border-color:var(--accent)}
.pf-badges .pf-since{border:0;background:none;color:var(--muted);padding-left:0}
.pf-okmsg{display:block;margin-top:8px;color:#15803d;font-size:12px;font-weight:600}
.pf-next{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--sh-1)}
.pf-next-h{display:flex;gap:12px;align-items:center}
.pf-next-h strong{display:block;font-size:14px}.pf-next-h small{color:var(--muted);font-size:12px}
.pf-ring{position:relative;width:48px;height:48px;flex:none}
.pf-ring svg{width:48px;height:48px;transform:rotate(-90deg)}.pf-ring circle{fill:none;stroke-width:3.4}
.pf-ring .bg{stroke:var(--paper-2)}.pf-ring .fg{stroke:var(--accent);stroke-linecap:round;transition:stroke-dasharray .5s var(--ease)}
.pf-ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:12px}
.pf-next ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:4px}
.pf-next li button{position:relative;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:8px 28px 8px 8px;cursor:pointer;display:grid;gap:2px}
.pf-next li button:hover{background:var(--paper)}
.pf-next li span{font-size:13px;font-weight:600;color:var(--ink)}.pf-next li small{font-size:12px;color:var(--muted);line-height:1.35}
.pf-next li i{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--muted);transition:transform .2s}
.pf-next li button:hover i{transform:translate(3px,-50%);color:var(--accent)}
.pf-tabs{position:sticky;top:57px;z-index:1;display:flex;gap:24px;margin:0 -24px;padding:0 24px;background:rgba(247,246,244,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.pf-tabs::-webkit-scrollbar{display:none}
.pf-tabs button{position:relative;background:none;border:0;padding:14px 0;font:500 14px inherit;color:var(--muted);cursor:pointer;white-space:nowrap}
.pf-tabs button::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent);border-radius:2px;transform:scaleX(0);transition:transform .25s var(--ease)}
.pf-tabs button:hover{color:var(--ink)}
.pf-tabs button[aria-selected=true]{color:var(--ink)}.pf-tabs button[aria-selected=true]::after{transform:scaleX(1)}
.pf3-body{display:grid;gap:16px;padding-top:24px}
.pf-sec{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px;scroll-margin-top:120px}
#pf-feed{scroll-margin-top:120px}
.pf-sec-h{margin-bottom:24px}.pf-sec-h h2{font:600 17px/1.3 var(--sans);margin:0;color:var(--ink)}.pf-sec-h p{margin:4px 0 0;color:var(--muted);font-size:13px}
.pf-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.pf-field{position:relative;display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
.pf-field>label,.pf-field>span{font-size:13px;font-weight:500;color:var(--ink-2)}.pf-field small{font-weight:400}
.pf-field>label small,.pf-field>span small{color:var(--muted);margin-left:4px}
.pf-in{width:100%;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:10px 12px;font-size:15px;transition:border-color .15s,box-shadow .15s}
.pf-in::placeholder{color:#a3a9b5}
.pf-in:hover{border-color:#d4cec6}
.pf-in:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(242,72,34,.14)}
.pf-ta{min-height:96px;resize:vertical;line-height:1.5}
.pf-field.bad .pf-in{border-color:#e9b9a5;box-shadow:none}.pf-field.bad .pf-in:focus{box-shadow:0 0 0 3px rgba(194,65,12,.12)}
.pf-inwrap{position:relative}.pf-inwrap i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-style:normal;pointer-events:none}.pf-inwrap i~.pf-in{padding-left:28px}
.pf-okic{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#15803d;font-size:13px}
.pf-hint,.pf-fe{font-size:12px;min-height:16px;line-height:1.35}.pf-hint{color:var(--muted)}.pf-fe{color:#b45309}
.pf-fe::before{content:"• ";}
.pf-cnt{text-align:right}
.pf-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.pf-seg{display:flex;flex-wrap:wrap;gap:8px}
.pf-seg button{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 16px;font:500 13px inherit;color:var(--ink-2);cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.pf-seg button:hover{border-color:#cfc8bf;color:var(--ink)}
.pf-seg button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.pf-combo{display:flex;flex-wrap:wrap;gap:8px;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:6px 8px;cursor:text;transition:border-color .15s,box-shadow .15s}
.pf-combo:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(242,72,34,.14)}
.pf-combo input{flex:1;min-width:120px;border:0;outline:0;padding:4px;font-size:14px;background:none}
.pf-tag{display:inline-flex;align-items:center;gap:4px;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:2px 4px 2px 8px;font-size:13px}
.pf-tag button{border:0;background:none;width:20px;height:20px;border-radius:6px;cursor:pointer;color:var(--muted);line-height:1}.pf-tag button:hover{background:var(--paper-2);color:var(--ink)}
.pf-list{position:absolute;z-index:3;left:0;right:0;top:100%;margin:4px 0 0;padding:4px;list-style:none;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-2);max-height:264px;overflow:auto}
.pf-list li{padding:8px 12px;border-radius:8px;font-size:14px;cursor:pointer}.pf-list li[aria-selected=true]{background:var(--paper)}
.pf-save{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid #f1eee9;flex-wrap:wrap}
.pf-st{margin-right:auto;font-size:13px;color:var(--muted);transition:color .2s}.pf-st.saved{color:#15803d;font-weight:600;animation:pfFlash .6s var(--ease)}.pf-st.error{color:#b45309}.pf-st.saving{color:var(--ink-2)}
@keyframes pfFlash{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.pf-btn{border:0;background:var(--accent);color:#fff;border-radius:10px;padding:10px 20px;font:600 14px inherit;cursor:pointer;min-height:40px;transition:background .15s,opacity .15s}
.pf-btn:hover:not(:disabled){background:#d93d18}.pf-btn:disabled{background:var(--paper-2);color:#9aa1ad;cursor:default}
.pf-ghost{border:0;background:none;color:var(--muted);font:500 14px inherit;padding:10px 12px;border-radius:10px;cursor:pointer}.pf-ghost:hover{background:var(--paper);color:var(--ink)}
.pf-tip{background:#fff8f5;border:1px solid var(--accent-soft);border-radius:10px;padding:12px;font-size:13px;color:var(--ink-2);margin-bottom:16px}
.pf-walink{display:inline-block;font-size:13px;font-weight:500;color:#15803d;text-decoration:none;margin-bottom:8px}
.pf-ro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 16px}
.pf-ro dt{font-size:12px;color:var(--muted)}.pf-ro dd{margin:4px 0 0;font-size:14px;font-weight:500;overflow-wrap:anywhere}
.pf-pw{border-top:1px solid #f1eee9;padding-top:16px}
.pf-pw summary{cursor:pointer;font-size:14px;font-weight:600;list-style:none;display:flex;justify-content:space-between}.pf-pw summary::-webkit-details-marker{display:none}
.pf-pw summary::after{content:"›";color:var(--muted);transition:transform .2s}.pf-pw[open] summary::after{transform:rotate(90deg)}
.pf-pw form{padding-top:16px}
.pf-note{border-radius:10px;padding:8px 12px;font-size:13px;margin-bottom:16px}.pf-note.ok{background:#f0fdf4;color:#166534}.pf-note.bad{background:#fff7ed;color:#9a3412}
.pf-meter{display:flex;gap:4px}.pf-meter i{flex:1;height:3px;border-radius:2px;background:var(--paper-2);transition:background .2s}
.pf-meter.s1 i:nth-child(1){background:#ea580c}.pf-meter.s2 i:nth-child(-n+2){background:#f59e0b}.pf-meter.s3 i:nth-child(-n+3){background:#65a30d}.pf-meter.s4 i{background:#15803d}
.pf-chk{margin-right:auto;font-size:13px;display:flex;gap:8px;align-items:center;color:var(--muted)}
.pf-usage{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.pf-u-t{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--ink-2);margin-bottom:8px}.pf-u-t b{font-size:15px}.pf-u-t small{font-weight:400;color:var(--muted);font-size:12px}
.pf-bar{height:4px;border-radius:2px;background:var(--paper-2);overflow:hidden}.pf-bar i{display:block;height:100%;background:var(--ink-2);border-radius:2px;transition:width .5s var(--ease)}.pf-bar.warn i{background:var(--accent)}
.pf-links{display:flex;flex-wrap:wrap;gap:8px;padding-top:8px}
.pf-links button,.pf-links a{border:0;background:none;color:var(--muted);font:500 13px inherit;padding:8px 12px;border-radius:8px;cursor:pointer;text-decoration:none}.pf-links button:hover,.pf-links a:hover{background:var(--card);color:var(--ink)}
.pf-skel{height:16px;border-radius:6px;background:linear-gradient(90deg,var(--paper) 0,var(--paper-2) 50%,var(--paper) 100%);background-size:200% 100%;animation:pfSk 1.2s infinite;margin-bottom:8px}.pf-skel.s{width:60%}
@keyframes pfSk{to{background-position:-200% 0}}
.pf3 :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pf3 .pf-in:focus-visible,.pf-combo input:focus-visible{outline:0}
@media (max-width:760px){
  .pf-hero{grid-template-columns:auto 1fr}.pf-next{grid-column:1/-1}
}
@media (max-width:560px){
  .pf3-wrap{padding:24px 16px 96px}
  .pf-hero{grid-template-columns:1fr;justify-items:center;text-align:center;gap:16px}
  .pf-id{padding-top:0}.pf-mail,.pf-badges{justify-content:center}.pf-id h1{font-size:24px}
  .pf-next{width:100%;text-align:left}
  .pf-tabs{margin:0 -16px;padding:0 16px;gap:20px}
  .pf-sec{padding:16px;border-radius:14px}
  .pf-grid,.pf-ro,.pf-usage{grid-template-columns:1fr}
  .pf-row{flex-direction:column}.pf-row .pf-btn{width:100%}
  .pf-save{position:sticky;bottom:0;z-index:2;background:var(--card);margin:8px -16px -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-radius:0 0 14px 14px}
  .pf-save .pf-btn{flex:1;min-height:48px}
}
@media (prefers-reduced-motion:reduce){.pf3 *,.pf3 *::after{transition:none!important;animation:none!important}}
/* pass2 iteration after screenshots */
.pf-in,.pf-ta,.pf-combo input{font-family:inherit}
.pf-hint:empty{display:none}.pf-field{gap:6px}
.pf-hero{align-items:center}
@media (max-width:560px){.pf-save:not(.live){position:static;margin:8px 0 0;padding:16px 0 0;background:none}.pf-save:not(.live) .pf-btn{display:none}}
/* header-slim */
.top .count{display:none}
.ua-in{border:0!important}
.um{position:relative}
.um>summary{list-style:none;cursor:pointer}.um>summary::-webkit-details-marker{display:none}
.um-btn{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;color:#1C1A17;font-size:14px;font-weight:500}
.um-btn:hover,.um[open] .um-btn{background:#F3F1EE}
.um-btn .ua-av,.um-ini{width:32px;height:32px;border-radius:50%;object-fit:cover}
.um-ini{display:grid;place-items:center;background:#F24822;color:#fff;font-weight:600}
.um-car{font-size:11px;color:#6B6660}
.um-pop{position:absolute;right:0;top:calc(100% + 8px);min-width:240px;background:#fff;color:#1C1A17;border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.14);padding:6px;z-index:60;display:flex;flex-direction:column}
.um-hd{padding:10px 12px 8px;display:flex;flex-direction:column;gap:2px;border-bottom:1px solid #EEE;margin-bottom:4px}
.um-hd b{font-size:14px}.um-hd small{font-size:12px;color:#6B6660;overflow:hidden;text-overflow:ellipsis}
.ua .um-i{display:block;text-align:left;background:transparent;border:0;border-radius:8px;padding:9px 12px;font-size:14px;color:#1C1A17;text-decoration:none;width:100%}
.ua .um-i:hover{background:#F3F1EE}
.ua .um-warn{color:#F24822;padding:4px 0 0}
.ua .um-adm{color:#F24822}
.um-sep{height:1px;background:#EEE;margin:4px 0}
.ua .um-out{color:#6B6660}
@media (max-width:640px){.um-nm{display:none}.ua .ua-ann{padding:9px 12px}}

/* filters-ui v2 */
.hero .sbar{max-width:760px}
.sbox{border:0;box-shadow:0 1px 2px rgba(15,23,42,.06),0 12px 32px -20px rgba(15,23,42,.35);padding:6px 6px 6px 20px}
.sbox:focus-within{box-shadow:0 0 0 2px var(--accent),0 12px 32px -20px rgba(15,23,42,.35)}
.sfbtn{background:var(--paper-2);color:var(--ink)}
.sfbtn:hover{background:var(--line);transform:none}
.qf{display:flex;flex-direction:column;gap:14px;margin-top:22px}
.qg{display:flex;align-items:baseline;gap:14px;min-width:0}
.ql{flex:none;width:72px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.qrow{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.qf .chip{border:0;background:transparent;padding:7px 12px;font-size:14px;color:var(--ink-2)}
.qf .chip:hover{background:var(--paper-2);color:var(--ink)}
.qf .qc[aria-pressed=true]{background:var(--ink);color:#fff}
.qseg{background:var(--paper-2);border-radius:999px;padding:3px;gap:2px}
.qf .qt{padding:6px 14px}
.qf .qt:hover{background:rgba(255,255,255,.6)}
.qf .qt[aria-pressed=true]{background:var(--card);color:var(--accent);font-weight:600;box-shadow:0 1px 3px rgba(15,23,42,.12)}
.qf .qmore{color:var(--accent);font-weight:500}
.actives .pill{border:0;background:var(--accent-soft);color:var(--clay)}
@media (max-width:640px){
  .qg{flex-direction:column;gap:6px}
  .ql{width:auto}
  .qseg{border-radius:14px}
  .qf .chip{padding:6px 10px;font-size:13px}
}

/* city-search */
.cp{position:relative;flex:1;min-width:0;max-width:760px}
.cp-box{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:6px 10px 6px 14px;background:var(--card);border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.06),0 8px 24px -18px rgba(15,23,42,.3);cursor:text;transition:box-shadow .2s}
.cp-box:focus-within{box-shadow:0 0 0 2px var(--accent)}
.cp-box>svg{color:var(--muted);flex:none}
.cp-box input{flex:1;min-width:140px;border:0;outline:0;background:transparent;font:inherit;font-size:15px;padding:6px 2px;color:var(--ink)}
.cp-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 4px 4px 10px;border-radius:999px;background:var(--ink);color:#fff;font-size:13px;font-weight:500}
.cp-tag button{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;color:#fff;opacity:.7;font-size:14px;line-height:1}
.cp-tag button:hover{opacity:1;background:rgba(255,255,255,.15)}
.cp-clr{font-size:12px;color:var(--muted);padding:4px 8px;border-radius:8px}
.cp-clr:hover{color:var(--accent)}
.cp-list{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 6px);max-height:300px;overflow:auto;margin:0;padding:6px;list-style:none;background:var(--card);border-radius:14px;box-shadow:0 18px 40px -16px rgba(15,23,42,.35),0 0 0 1px rgba(15,23,42,.04)}
.cp-list li{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border-radius:10px;font-size:14px;color:var(--ink-2);cursor:pointer}
.cp-list li b{color:var(--accent);font-weight:600}
.cp-list li small{font-size:11px;color:var(--muted);letter-spacing:.05em}
.cp-list li.on{background:var(--accent-soft);color:var(--ink)}
.cp-list .cp-empty{color:var(--muted);cursor:default}
.qg:has(.cp){align-items:center}

/* ---- OpenUI forms (tema claro forçado, accent #F24822) ---- */
html[data-openui-theme="light"]{color-scheme:light}
.oui-f{--openui-text-primary:#1C1A17;--openui-text-secondary:#4B5563;color:#1C1A17}
.oui-f,.oui-f *{color-scheme:light}
.oui-f .openui-card{background:#fff;border:1px solid #eee8e1;border-radius:18px;box-shadow:none}
.oui-f .openui-header-top-left,.oui-f .openui-step-title,.oui-f .openui-callout-title{color:#1C1A17!important}
.oui-f .openui-header-bottom,.oui-f .openui-step-details,.oui-f .openui-callout-description{color:#4B5563!important}
.oui-f .openui-step-number-inner{background:#F24822;color:#fff}
.oui-f .openui-tag{background:#fdf1ec;color:#a8361b;border-color:#f8d7ca}
.oui-callout .openui-callout{border-radius:12px}
.wz-side{max-width:720px;margin:0 auto 110px;padding:0 0}
.wz-side .openui-card{padding:18px}
@media (min-width:1260px){.wz-side{position:fixed;top:150px;right:max(24px,calc(50vw - 690px));width:320px;margin:0;max-height:calc(100vh - 260px);overflow:auto}
  .wz .wz-card{transform:translateX(-120px)}}
@media (max-width:640px){.wz-side{margin:0 10px 110px}}
.pp-oui{margin:4px 0 6px}.pp-oui .openui-card{padding:14px}
/* inputs no padrão OpenUI */
.ap-in,.pp-in{border:1px solid #e3ddd6;border-radius:10px;background:#fff;color:#1C1A17;transition:border-color .15s,box-shadow .15s}
.ap-in:hover,.pp-in:hover{border-color:#cfc6bd}
.ap-in:focus,.pp-in:focus{outline:0;border-color:#F24822;box-shadow:0 0 0 3px rgba(242,72,34,.14)}
.ap-f>span:first-child,.pp-l{font-size:13px;font-weight:600;color:#3d3833;letter-spacing:.01em}
.ap-cta{border-radius:10px;box-shadow:0 1px 2px rgba(242,72,34,.25)}
.ap-cta:hover:not(:disabled){background:#e03d18}
.wz-card,.ap-card,.pp-box{border-radius:20px}

/* filters-oneline */
.tbar{display:flex;align-items:stretch;gap:0;background:var(--card);border-radius:999px;padding:5px;box-shadow:0 1px 2px rgba(15,23,42,.06),0 12px 32px -20px rgba(15,23,42,.35);max-width:1040px}
.tbar>*{position:relative;min-width:0}
.tbar>*+*:not(.tb-f)::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:var(--line)}
.tb-seg,.tbar .cp-box{display:flex;align-items:center;gap:8px;height:46px;padding:0 14px;border-radius:999px;background:transparent;box-shadow:none;min-height:0;flex-wrap:nowrap;transition:background .2s}
.tb-seg:hover,.tbar .cp-box:hover{background:var(--paper)}
.tb-seg:focus-within,.tbar .cp-box:focus-within{background:var(--paper);box-shadow:none}
.tb-seg svg,.tbar .cp-box>svg{color:var(--accent);flex:none}
.tb-q{flex:1.6;margin:0;max-width:none}
.tb-q input,.tbar .cp-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:15px;color:var(--ink);padding:0}
.tb-q input::-webkit-search-cancel-button{display:none}
.tb-city{flex:1.2;padding:0}
.tbar .cp{max-width:none;width:100%;position:static}
.tbar .cp-box{width:100%}
.tbar .cp-box input.tb-hide{width:0;min-width:0;flex:0;opacity:0}
.tb-sum{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:15px;font-weight:500;color:var(--ink);text-align:left}
.tb-sum em{font-style:normal;margin-left:6px;font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:1px 7px;border-radius:999px}
.tb-ph{flex:1;text-align:left;font-size:15px;color:var(--muted)}
.tb-x{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:var(--muted);font-size:16px;line-height:1}
.tb-x:hover{background:var(--paper-2);color:var(--ink)}
.tb-seg-w{flex:.9}
.tm{position:static;height:100%}
.tm-btn{width:100%;font:inherit;cursor:pointer}
.tm-btn .car{color:var(--muted)!important;margin-left:auto}
.tm-btn[aria-expanded=true] .car{transform:rotate(180deg)}
.tbar{position:relative}
.tbar .cp-list{top:calc(100% + 8px)}
.tbar .tb-city .cp-list{left:auto;right:auto;width:min(380px,92vw)}
.tm-list{left:auto!important;right:auto!important;width:240px}
.tb-city,.tb-seg-w{position:relative}
.cp-list .ck{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:10px;border-radius:6px;box-shadow:inset 0 0 0 1.5px var(--line);font-style:normal;font-size:11px;color:#fff;vertical-align:-3px}
.cp-list .ck.on{background:var(--accent);box-shadow:none}
.cp-list li span{display:inline-flex;align-items:center}
.cp-list .cp-sel{color:var(--ink);font-weight:500}
.cp-list .cp-sel small{opacity:0}.cp-list .cp-sel:hover small{opacity:1}
.cp-list .cp-foot{justify-content:center;color:var(--accent);font-weight:500;border-top:1px solid var(--paper-2);border-radius:0 0 10px 10px;margin-top:4px}
.tm-list li.on{background:transparent;color:var(--ink);font-weight:500}
.tm-list li:hover,.tm-list li:focus{background:var(--paper);outline:0}
.tb-f{flex:none;display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 18px;border-radius:999px;background:var(--accent);color:#fff;font-weight:600;font-size:14px;transition:background .2s,transform .3s var(--ease)}
.tb-f:hover{background:var(--clay)}
.tb-f .n{background:#fff;color:var(--accent);border-radius:999px;min-width:20px;height:20px;display:grid;place-items:center;font-size:12px;padding:0 6px}
.tbar .sugs{top:calc(100% + 8px)}
@media (max-width:860px){.tb-f span:not(.n){display:none}.tb-f{padding:0 14px}.tb-seg,.tbar .cp-box{padding:0 10px}}
@media (max-width:640px){
  .tbar{flex-wrap:wrap;border-radius:22px;row-gap:4px}
  .tb-q{flex:1 1 100%}
  .tb-city{flex:1 1 0}.tb-seg-w{flex:1 1 0}
  .tbar>.tb-city::before{display:none}
  .tbar .tb-city .cp-list,.tm-list{position:fixed!important;left:12px!important;right:12px!important;top:auto!important;bottom:12px;width:auto!important;max-height:60vh}
}
.wz-side .openui-step-item{padding-bottom:4px}.wz-side .openui-step-details{font-size:12px}
.oui-f .openui-callout-error{border-color:#d93025}.oui-f .openui-callout-info{border-color:#F24822}

/* footer igual permutese.com.br */
.sfoot{background:#0d1b3e;color:#fff;font-family:Outfit,Inter,system-ui,sans-serif;margin-top:24px}
.sfoot a{color:inherit;text-decoration:none;transition:color .2s,opacity .2s,border-color .2s,background .2s}
.sfoot-in{max-width:1280px;margin:0 auto;padding:56px 40px}
.sfoot-grid{display:grid;grid-template-columns:4fr 5fr 3fr;gap:32px}
.sfoot-logo{display:inline-flex;align-items:center;gap:12px}.sfoot-logo:hover{opacity:.85}
.sfoot-logo img:last-child{height:20px;width:auto}
.sfoot-brand p{margin:20px 0 0;max-width:20rem;font-size:14px;line-height:1.65;color:rgba(255,255,255,.6)}
.sfoot-soc{display:flex;gap:10px;margin-top:24px}
.sfoot-soc a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.15)}
.sfoot-soc a:hover{border-color:var(--accent,#f97316);background:rgba(249,115,22,.1)}
.sfoot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.sfoot h3{font-size:14px;font-weight:700;margin:0;color:#fff}
.sfoot ul{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:14px;font-size:14px;color:rgba(255,255,255,.55)}
.sfoot ul a:hover,.sfoot-legal a:hover{color:#fff}
.sfoot-app p{margin:20px 0 0;font-size:14px;line-height:1.65;color:rgba(255,255,255,.55)}
.sfoot-badges{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:20px}
.sfoot-badges img{width:150px;height:50px;object-fit:contain;display:block}.sfoot-badges a:hover{opacity:.85}
.sfoot-bot{margin-top:56px;border-top:1px solid rgba(255,255,255,.1);padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.sfoot-bot p{margin:0;font-size:14px;color:rgba(255,255,255,.45)}.sfoot-bot b{color:rgba(255,255,255,.7);font-weight:600}
.sfoot-legal{display:flex;align-items:center;gap:28px;font-size:14px;color:rgba(255,255,255,.55)}
.sfoot-aeres{opacity:.4}.sfoot-aeres:hover{opacity:.8}.sfoot-aeres img{height:16px;width:auto;display:block}
@media(max-width:1023px){.sfoot-grid{grid-template-columns:1fr;gap:48px}.sfoot-badges{flex-direction:row;flex-wrap:wrap}}
@media(max-width:640px){.sfoot-in{padding:56px 24px}.sfoot-cols{grid-template-columns:1fr 1fr}.sfoot-bot{flex-direction:column}.sfoot-legal{flex-wrap:wrap;justify-content:center;gap:18px}}
/* sticky footer: sem faixa branca abaixo */
#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
#root>div{flex:1 0 auto;display:flex;flex-direction:column}
#root>div>main{flex:1 0 auto}
#root>div>.sfoot{margin-top:auto}

/* ---- Notificações ---- */
.nt-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:0;background:transparent;color:#1C1A17;cursor:pointer;transition:background .15s}
.nt-bell:hover{background:rgba(28,26,23,.06)}
.nt-bell:focus-visible{outline:2px solid #F24822;outline-offset:2px}
.nt-badge{position:absolute;top:3px;right:2px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#F24822;color:#fff;font:600 10px/17px Outfit,system-ui,sans-serif;text-align:center;box-shadow:0 0 0 2px #fff}
.nt{max-width:780px;margin:0 auto;padding:28px 20px 60px}
.nt-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.nt-head h1{margin:4px 0;font-size:28px;color:#1C1A17}
.nt-all{border:1px solid #E7E3DD;background:#fff;color:#1C1A17;border-radius:999px;padding:9px 16px;font:500 14px Outfit,sans-serif;cursor:pointer}
.nt-all:hover:not(:disabled){border-color:#F24822;color:#F24822}
.nt-all:disabled{opacity:.45;cursor:default}
.nt-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:14px;scrollbar-width:none}
.nt-tab{flex:none;border:0;background:#F1EEE9;color:#4B5563;border-radius:999px;padding:7px 14px;font:500 14px Outfit,sans-serif;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.nt-tab span{background:rgba(0,0,0,.08);border-radius:999px;padding:0 7px;font-size:12px}
.nt-tab.on{background:#1C1A17;color:#fff}.nt-tab.on span{background:#F24822;color:#fff}
.nt-list{list-style:none;margin:0;padding:0;background:#fff;border-radius:18px;box-shadow:0 1px 2px rgba(0,0,0,.04),0 6px 24px rgba(0,0,0,.05);overflow:hidden}
.nt-it{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid #F1EEE9;position:relative}
.nt-it:last-child{border-bottom:0}
.nt-it.unread{background:#FFF6F3}
.nt-it.unread::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#F24822}
.nt-ic{flex:none;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;background:#F1EEE9;color:#1C1A17}
.t-proposta .nt-ic{background:#FDE3DA;color:#F24822}.t-demanda .nt-ic{background:#E0ECFF;color:#2563EB}.t-match .nt-ic{background:#FEF3C7;color:#B45309}.t-system .nt-ic{background:#ECEAE6;color:#4B5563;font-family:Georgia,serif;font-style:italic}
.nt-main{flex:1;min-width:0;text-align:left;border:0;background:none;padding:0;cursor:pointer;display:flex;flex-direction:column;gap:3px;color:#1C1A17;font:inherit}
.nt-top{display:flex;justify-content:space-between;gap:10px}
.nt-top b{font-weight:600}.nt-it:not(.unread) .nt-top b{font-weight:500}
.nt-top time{flex:none;color:#6B7280;font-size:12px}
.nt-body{color:#4B5563;font-size:14px}
.nt-tag{color:#6B7280;font-size:12px}
.nt-main:hover .nt-tag{color:#F24822}
.nt-rd{flex:none;border:0;background:none;color:#F24822;font-size:12px;width:28px;height:28px;border-radius:50%;cursor:pointer}
.nt-it:not(.unread) .nt-rd{color:#C9C3BA}
.nt-rd:hover{background:rgba(242,72,34,.08)}
.nt-empty{text-align:center;background:#fff;border-radius:18px;padding:48px 24px;color:#4B5563}
.nt-empty-ic{font-size:40px}.nt-empty h3{color:#1C1A17;margin:10px 0 6px}.nt-empty p{max-width:380px;margin:0 auto 16px}
@media (max-width:600px){.nt{padding:18px 12px 40px}.nt-head h1{font-size:22px}.nt-it{padding:12px}}

/* modal-share */
.dm-tools{position:absolute;top:14px;right:64px;z-index:6;display:flex;gap:8px}
.dm-tool{position:relative;width:40px;height:40px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 4px 14px -6px rgba(0,0,0,.35);border:0;cursor:pointer;transition:transform .2s,color .2s}
.dm-tool:hover{transform:scale(1.06)}
.dm-tool svg{width:18px;height:18px}
.dm-tool.on{color:var(--accent)}.dm-tool.on svg{fill:currentColor}
.dm-tool.ok{color:#15803d}
.dm-tool[data-tip]::after{content:attr(data-tip);position:absolute;top:calc(100% + 8px);right:0;white-space:nowrap;background:#1C1A17;color:#fff;font-size:12px;padding:5px 9px;border-radius:8px}
/* filter-bar-expand */
.hero .tbar{width:100%;max-width:1180px;margin-left:auto;margin-right:auto;box-sizing:border-box}
.tb-q{flex:2.4 1 340px;min-width:300px}
.tb-q input{text-overflow:clip}
.tb-city{flex:1.2 1 200px;min-width:180px}
.tb-seg-w{flex:.9 1 160px;min-width:150px}
@media (max-width:860px){.tb-q{min-width:220px}.tb-city{min-width:140px}.tb-seg-w{min-width:120px}}
@media (max-width:640px){.tb-q,.tb-city,.tb-seg-w{min-width:0}}
/* full-width responsive feed */
.top-in,.hero,.actives,main{padding-left:clamp(14px,2.2vw,40px)!important;padding-right:clamp(14px,2.2vw,40px)!important}
.masonry{width:100%;gap:clamp(12px,1.4vw,22px)}.col{gap:clamp(12px,1.4vw,22px)}
.masonry .card{width:100%}
@media (max-width:560px){.masonry,.col{gap:10px}}

/* header-shared: mesmo topo em Imóveis e Institucional */
.top-in{position:relative}
.top-nav{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:4px}
.top-nav a{color:#6b625b;text-decoration:none;font-weight:500;padding:8px 14px;border-radius:999px;font-size:14px;transition:.2s;white-space:nowrap}
.top-nav a:hover{color:#1C1A17;background:#fff}.top-nav a.on{color:#1C1A17;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.top-in .ua{margin-left:auto}
.top.on-inst{position:fixed;left:0;right:0;top:0;z-index:90;background:rgba(247,244,240,.92)}
@media(max-width:900px){.top-nav{display:none}}
.top-in .fbtn{display:none}
header.top .top-in > .fbtn{display:none!important}

/* ── scroll: filter docks into header, pills → hamburger ── */
:root{--org:cubic-bezier(.22,1,.36,1);--hd-h:70px}
.top{transition:border-color .3s,box-shadow .5s var(--org),background .5s var(--org)}
.top.compact{box-shadow:0 8px 28px -22px rgba(28,26,23,.45)}
.top-nav{transition:opacity .35s var(--org),transform .55s var(--org),filter .45s var(--org),visibility 0s linear 0s}
.top.compact .top-nav{opacity:0;transform:translate(-50%,-10px) scale(.94);filter:blur(4px);pointer-events:none;visibility:hidden;transition:opacity .3s var(--org),transform .5s var(--org),filter .4s var(--org),visibility 0s linear .5s}
.hb-wrap{position:relative;margin-left:auto;order:0;display:flex;align-items:center}
.top-in .hb-wrap + .count + .ua,.top-in .hb-wrap ~ .ua{margin-left:12px}
.hb{width:42px;height:42px;border-radius:50%;display:grid;place-content:center;gap:4px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08);opacity:0;transform:scale(.6) rotate(-90deg);pointer-events:none;transition:opacity .35s var(--org),transform .6s var(--org)}
.hb span{display:block;width:18px;height:2px;border-radius:2px;background:#1C1A17;transition:transform .45s var(--org),opacity .3s}
.top.compact .hb{opacity:1;transform:none;pointer-events:auto;transition-delay:.08s}
.hb.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}.hb.open span:nth-child(2){opacity:0;transform:scaleX(.2)}.hb.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.hb-menu{position:absolute;right:0;top:calc(100% + 10px);min-width:210px;background:#fff;border-radius:18px;padding:8px;box-shadow:0 18px 48px -18px rgba(28,26,23,.4),0 0 0 1px rgba(28,26,23,.05);display:flex;flex-direction:column;opacity:0;transform:translateY(-8px) scale(.96);transform-origin:top right;pointer-events:none;visibility:hidden;transition:opacity .25s var(--org),transform .45s var(--org),visibility 0s linear .45s}
.hb-menu.open{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition:opacity .3s var(--org),transform .5s var(--org),visibility 0s}
.hb-menu a{padding:11px 14px;border-radius:12px;color:#3b3631;text-decoration:none;font-weight:500;font-size:15px;opacity:0;transform:translateY(-4px);transition:background .2s,opacity .35s var(--org),transform .45s var(--org)}
.hb-menu.open a{opacity:1;transform:none;transition-delay:calc(var(--i)*35ms + 60ms)}
.hb-menu a:hover{background:#F7F4F0}.hb-menu a.on{color:#F24822;background:#FEEDE8}
/* hero becomes sticky; its bar rises and condenses into the header row */
.hero{position:sticky;top:calc((var(--hd-h) - 46px)/2 - 28px);z-index:31;pointer-events:none}
.hero .tbar{pointer-events:auto;transition:max-width .6s var(--org),margin .6s var(--org),padding .5s var(--org),box-shadow .5s var(--org),transform .6s var(--org)}
.hero .tb-seg,.hero .tbar .cp-box,.hero .tb-f{transition:height .5s var(--org),padding .5s var(--org),font-size .4s var(--org),background .2s}
.hero.docked .tbar{max-width:min(620px,calc(100vw - 640px));margin-left:calc(50% - min(310px,calc(50vw - 320px)));padding:4px;box-shadow:0 1px 2px rgba(15,23,42,.08),0 6px 18px -12px rgba(15,23,42,.35)}
.hero.docked .tb-seg,.hero.docked .tbar .cp-box,.hero.docked .tb-f{height:38px}
.hero.docked .tb-q input,.hero.docked .tb-sum,.hero.docked .tb-ph{font-size:14px}
.hero.docked .tb-f{padding:0 14px}
.hero.docked .tb-f span:not(.n){display:none}
.hero.docked{animation:dockIn .6s var(--org)}
@keyframes dockIn{from{transform:translateY(8px)}to{transform:none}}
@media(max-width:1100px){.hero.docked .tbar{max-width:none;margin-left:0}.hero{top:calc(var(--hd-h) - 28px + 6px)}.hero.docked .tbar{box-shadow:0 10px 24px -16px rgba(15,23,42,.45)}}
@media(max-width:900px){.hb-wrap{display:none}}
@media(prefers-reduced-motion:reduce){.top,.top *,.hero,.hero *{transition-duration:.01ms!important;animation:none!important;transition-delay:0s!important}}
.hero.docked .tbar{max-width:520px;margin-left:calc(50% - 260px)}
.hero .tb-seg-w{transition:flex .5s var(--org),opacity .3s var(--org)}
.hero.docked .tb-seg-w{flex:0 0 0;opacity:0;overflow:hidden;pointer-events:none}
.hero.docked .tb-seg-w::before{display:none}
@media(max-width:1180px){.hero.docked .tbar{max-width:none;margin-left:0}}
.hero{width:100%;box-sizing:border-box;align-self:stretch}
.hero.docked .tbar{margin-left:calc(50% - 260px);margin-right:calc(50% - 260px)}
@media(max-width:1180px){.hero.docked .tbar{margin-left:0;margin-right:0}}
.hero.docked .tbar>.tb-q,.hero.docked .tbar>.tb-city{flex:1 1 0!important;min-width:0!important;max-width:none!important;width:auto!important}
.hero.docked .tbar>.tb-seg-w{flex:0 0 0!important;width:0!important;min-width:0!important;max-width:0!important;padding:0!important}

/* favorite lists */
.fl-ov{z-index:1200}.fl-box{max-width:420px;animation:flIn .32s cubic-bezier(.2,.8,.2,1)}
@keyframes flIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.fl-ok{display:flex;gap:12px;align-items:center;margin:4px 0 14px}.fl-ok b{display:block;font-size:17px}.fl-ok small{color:#64748b}
.fl-hrt{width:40px;height:40px;border-radius:50%;background:#FFF0EB;display:grid;place-items:center}.fl-hrt svg{fill:#F24822;stroke:#F24822}
.fl-ul{list-style:none;margin:0 0 12px;padding:0;max-height:260px;overflow:auto;display:grid;gap:6px}
.fl-row{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;text-align:left;font:inherit;transition:border-color .2s,background .2s}
.fl-row:hover{border-color:#F24822}.fl-row.on{border-color:#F24822;background:#FFF6F2}
.fl-ck{width:20px;height:20px;border-radius:6px;border:1.5px solid #cbd5e1;display:grid;place-items:center;font-size:13px;color:#fff;flex:none}
.fl-row.on .fl-ck{background:#F24822;border-color:#F24822}.fl-nm{flex:1;font-weight:600}.fl-row small{color:#64748b}
.fl-new{display:flex;gap:8px;margin-bottom:6px}.fl-new .pp-in{flex:1;margin:0}.fl-new .ap-cta{width:auto;margin:0;padding:0 16px}
.fl-foot{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:12px}.fl-foot .fl-done{width:auto;margin:0 0 0 auto;padding:10px 20px}
.fl-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px;align-items:center}
.fl-tabs>button{border:1px solid #e2e8f0;background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-weight:600;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.fl-tabs>button span{background:#f1f5f9;border-radius:999px;padding:0 7px;font-size:12px}
.fl-tabs>button.on{background:#F24822;border-color:#F24822;color:#fff}.fl-tabs>button.on span{background:rgba(255,255,255,.25)}
.fl-add{display:inline-flex;gap:4px}.fl-add input{border:1px dashed #cbd5e1;border-radius:999px;padding:8px 14px;font:inherit;width:150px}
.fl-add button{border:0;background:#0f172a;color:#fff;border-radius:999px;padding:0 14px;cursor:pointer}
.fl-acts{display:flex;gap:12px}.fl-del{color:#dc2626!important}
.mi-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}

/* account menu icons */
.um-pop .um-i{display:flex;align-items:center;gap:12px}
.um-ic{flex:0 0 18px;width:18px;height:18px;color:#8a8f98;transition:color .15s}
.um-i:hover .um-ic,.um-i:focus-visible .um-ic{color:#1f2328}
.um-adm .um-ic,.um-adm:hover .um-ic{color:#F24822}
.um-out .um-ic{color:#8a8f98}.um-out:hover .um-ic{color:#d33}
.top:has(.um[open]){z-index:120}.um[open] .um-pop{z-index:121}

/* notif modal */
.ntm-bd{position:fixed;inset:0;z-index:1200;background:rgba(17,17,17,.42);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding:72px 16px 16px;animation:ntmF .22s ease}
.ntm{position:relative;width:min(560px,100%);max-height:calc(100vh - 96px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 64px rgba(0,0,0,.22);animation:ntmU .32s cubic-bezier(.2,.8,.2,1)}
.ntm .nt{padding:24px 22px 18px;max-width:none;margin:0}
.ntm .nt-head h1{font-size:22px;margin:0 0 4px}
.ntm .nt-head{padding-right:36px}
.ntm-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:0;background:#f3f3f3;font-size:20px;cursor:pointer;z-index:2}
.ntm-x:hover{background:#F24822;color:#fff}
.ntm .nt-tabs{overflow-x:auto;flex-wrap:nowrap}
@keyframes ntmF{from{opacity:0}}@keyframes ntmU{from{opacity:0;transform:translateY(-12px) scale(.98)}}

/* Negócio filter */
.neg-list .neg-hd{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#8a8a8a;padding:8px 14px 4px;cursor:default;pointer-events:none}
.neg-list .ck.rd{border-radius:50%}
.tm-btn.neg-on .tb-sum{color:#F24822;font-weight:600}
.tm-btn.neg-on>svg:first-child{color:#F24822}

/* negocio badges */
.neg-badges{display:inline-flex;gap:4px;vertical-align:middle}
.neg-badges.on-card{position:absolute;left:10px;bottom:10px;z-index:2}
.neg{font-style:normal;font-size:11px;font-weight:600;line-height:1;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.92);color:#1f2937;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.neg-aluguel{background:#e0f2fe;color:#075985}.neg-permuta{background:#fef3c7;color:#92400e}
.dm-price small .neg-badges{margin-left:6px}
.wz-neg{margin:14px 0}.wz-permuta{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:14px;cursor:pointer}
/* ---- Anunciar como modal ---- */
.wzm-ov{position:fixed;inset:0;z-index:80;background:rgba(29,26,23,.46);backdrop-filter:blur(6px);display:grid;place-items:center;padding:3vh 2vw;animation:wzmFade .3s ease}
@keyframes wzmFade{from{opacity:0}to{opacity:1}}
@keyframes wzmUp{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
.wzm{position:relative;width:min(1120px,100%);height:min(900px,94vh);background:#f7f4f0;border-radius:24px;box-shadow:0 30px 90px rgba(20,12,6,.35);display:flex;flex-direction:column;overflow:hidden;padding:0!important;font-family:"Outfit","Poppins",sans-serif;animation:wzmUp .42s cubic-bezier(.22,1,.36,1)}
.wzm-top{display:flex;align-items:center;gap:12px;padding:16px 22px;background:#fff;border-bottom:1px solid #efe9e2}
.wzm-badge{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fde7e1;color:#F24822;transition:transform .3s}
.wzm-ttl{display:grid;line-height:1.2}.wzm-ttl b{font-size:17px;color:#1d1a17}
.wzm-ttl small{font-size:12.5px;color:#8a817a;display:flex;align-items:center;gap:5px}.wzm-ttl small.ok{color:#2f7d4f}
.wzm-x{margin-left:auto;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#3a332d;transition:background .2s}.wzm-x:hover{background:#f1ece6}
.wzm-restored{display:flex;align-items:center;gap:10px;margin:12px 22px 0;padding:10px 14px;border-radius:12px;background:#fff6e8;border:1px solid #f6dcb0;color:#7a5410;font-size:14px;animation:wzmUp .35s ease}
.wzm-restored span{flex:1}.wzm-restored button{font-weight:600;color:#b22a12;text-decoration:underline}.wzm-restored button.ok{text-decoration:none;color:#7a5410;display:grid}
.wzm .wz-bar{flex:none}.wzm .wz-dots{flex:none;padding:14px 16px 4px}
.wzm .wz-dots span{display:grid;place-items:center}
.wzm-body{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-template-rows:1fr auto;column-gap:22px;padding:0 22px}
.wzm-main{grid-column:1;min-width:0}
.wzm .wz-card{max-width:none;margin:12px 0 18px;transform:none!important;padding:34px 38px}
.wzm .wz-side{grid-column:2;grid-row:1;position:sticky!important;top:12px;align-self:start;width:auto;margin:12px 0 18px;max-height:none}
.wzm .wz-nav{grid-column:1/-1;grid-row:2;position:sticky;bottom:0;left:auto;right:auto;margin:0 -22px;background:rgba(255,255,255,.96)}
.wzm .wz-nav-in{max-width:none;padding:14px 22px}
.wz-ic{flex:none;vertical-align:-3px}
.wzm .ap-f>span{display:inline-flex;align-items:center;gap:6px}.wzm .ap-f>span .wz-ic{color:#F24822}
.wz-eyebrow{display:inline-flex;align-items:center;gap:6px}
.wzm .wz-types button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 10px}
.wzm .wz-types button .wz-ic{color:#8a817a;transition:color .2s,transform .25s cubic-bezier(.22,1,.36,1)}
.wzm .wz-types button:hover .wz-ic{transform:translateY(-2px);color:#F24822}.wzm .wz-types button.on .wz-ic{color:#F24822}
.wzm .wz-step>span{display:flex;align-items:center;gap:6px}.wzm .wz-step>span .wz-ic{color:#F24822}
.wzm .wz-drop-ic{color:#F24822}
.wzm .ap-cta,.wzm .wz-back{display:inline-flex;align-items:center;justify-content:center;gap:8px}
@media (max-width:980px){.wzm-body{grid-template-columns:1fr}.wzm .wz-side{grid-column:1;grid-row:2;position:static!important}.wzm .wz-nav{grid-row:3}}
@media (max-width:640px){.wzm-ov{padding:0}.wzm{height:100vh;height:100dvh;border-radius:0}.wzm .wz-card{padding:24px 18px}.wzm-body{padding:0 12px}.wzm .wz-nav{margin:0 -12px}}

/* search-4: 4 fields + city counts + icon polish */
.tbar{max-width:1180px}
.tb-q{flex:1.5}.tb-city{flex:1.15}.tb-seg-w{flex:.95}.tb-tipo{flex:1.05}
.tb-ic,.tb-seg>svg:first-child,.tbar .cp-box>svg{width:18px;height:18px;padding:7px;box-sizing:content-box;border-radius:10px;background:var(--accent-soft);color:var(--accent);transition:transform .25s var(--ease),background .2s}
.tb-seg:hover>svg:first-child,.tbar .cp-box:hover>svg{transform:scale(1.06)}
.tb-seg{padding-left:6px}.tbar .cp-box{padding-left:6px}
.tb-ph,.tb-sum{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tbar .tb-city .cp-list{width:min(420px,92vw)}
.cp-list li small.cp-n{display:inline-flex;align-items:center;gap:8px;letter-spacing:0;font-size:12px}
.cp-list li small.cp-n b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.cp-list li small.cp-n em{font-style:normal;opacity:.7}
.cp-list li small.cp-n .uf{font-style:normal;font-size:10px;font-weight:600;letter-spacing:.06em;padding:2px 6px;border-radius:6px;background:var(--paper);color:var(--muted)}
.cp-list .cp-sel small.cp-n{opacity:1}
@media (max-width:1100px){.tb-tipo .tb-ph{font-size:0}.tb-tipo .tb-ph::after{content:"Tipo";font-size:15px}}
@media (max-width:900px){.tb-tipo{display:none}}
.cp-list li>span{white-space:pre}

/* fix-clear: main never shrink-wraps when the grid is empty/loading */
main{width:100%;box-sizing:border-box;align-self:stretch}
.masonry .sk{width:100%}
.wzm-gate{margin:0;animation:wzmUp .4s cubic-bezier(.22,1,.36,1);justify-items:center}
.wzm .wz-side{transform:none!important;margin:12px 0 18px!important;right:auto!important;left:auto!important;width:auto!important}

.hb-menu a{display:flex;align-items:center;gap:12px}.hb-menu a .um-ic{flex:none;width:18px;height:18px;color:#8a8279;transition:color .2s}.hb-menu a:hover .um-ic{color:#3b3631}.hb-menu a.on .um-ic{color:#F24822}

/* anunciar-slide-rtl: right-docked drawer */
.wzm-ov{display:flex!important;justify-content:flex-end;align-items:stretch;padding:0!important;animation:wzmFade .4s ease}
.wzm{width:min(1040px,92vw)!important;height:100vh!important;height:100dvh!important;border-radius:24px 0 0 24px!important;box-shadow:-30px 0 90px rgba(20,12,6,.3)!important;animation:wzmIn .6s cubic-bezier(.16,1,.3,1) both!important}
.wzm-gate{align-self:stretch;width:min(520px,92vw);height:100dvh;margin:0!important;background:#f7f4f0;border-radius:24px 0 0 24px;display:grid;align-content:center;animation:wzmIn .6s cubic-bezier(.16,1,.3,1) both!important}
@keyframes wzmIn{from{transform:translateX(104%);opacity:.6}to{transform:none;opacity:1}}
@keyframes wzmOutR{from{transform:none;opacity:1}to{transform:translateX(104%);opacity:.6}}
.wzm-ov.out{animation:wzmFade .42s ease reverse both}
.wzm-ov.out .wzm,.wzm-ov.out .wzm-gate{animation:wzmOutR .42s cubic-bezier(.7,0,.84,0) both!important}
@media (max-width:640px){.wzm,.wzm-gate{width:100vw!important;border-radius:0!important}}

/* perfil-modal-rtl */
.pfm-ov{z-index:85}
.pfm-ov .pg.pfm{position:relative!important;inset:auto!important;width:min(880px,94vw);height:100vh;height:100dvh;margin:0;overflow-y:auto;overflow-x:hidden;border-radius:24px 0 0 24px;box-shadow:-30px 0 90px rgba(20,12,6,.3);animation:wzmIn .6s cubic-bezier(.16,1,.3,1) both}
.pfm-ov .pg.pfm .pg-top{position:sticky;top:0;z-index:3}
.pfm-ov.out .pg.pfm{animation:wzmOutR .42s cubic-bezier(.7,0,.84,0) both}
@media (max-width:640px){.pfm-ov .pg.pfm{width:100vw;border-radius:0}}

/* notif-drawer-rtl: same right-docked drawer as Anunciar/Perfil */
.ntm-bd{align-items:stretch!important;justify-content:flex-end!important;padding:0!important;animation:wzmFade .4s ease}
.ntm{width:min(560px,94vw)!important;max-height:none!important;height:100vh;height:100dvh;border-radius:24px 0 0 24px!important;box-shadow:-30px 0 90px rgba(20,12,6,.3)!important;animation:wzmIn .6s cubic-bezier(.16,1,.3,1) both!important}
.ntm-bd.out{animation:wzmFade .42s ease reverse both}
.ntm-bd.out .ntm{animation:wzmOutR .42s cubic-bezier(.7,0,.84,0) both!important}
@media (max-width:640px){.ntm{width:100vw!important;border-radius:0!important}}

/* meus-imoveis / minhas-demandas v2 */
.mic{flex:none;vertical-align:-3px}
.mx .mi{max-width:1240px;gap:20px}
.mx-hero{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.mx-hero>div:nth-child(2){flex:1;min-width:220px}
.mx-hero h1{font-family:var(--serif);font-size:32px;margin:0}
.mx-hi{width:56px;height:56px;border-radius:16px;background:linear-gradient(145deg,#F24822,#d8361a);color:#fff;display:grid;place-items:center;box-shadow:0 10px 24px rgba(242,72,34,.28)}.mx-hi .mic{width:26px;height:26px}
.mx .mi-new{display:inline-flex;gap:8px;padding:0 22px;height:46px}
.mx-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.mx-kpi>div{background:#fff;border-radius:16px;padding:14px 16px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;box-shadow:var(--sh-1);animation:mxUp .45s var(--ease) both}
.mx-kpi>div:nth-child(2){animation-delay:.05s}.mx-kpi>div:nth-child(3){animation-delay:.1s}.mx-kpi>div:nth-child(4){animation-delay:.15s}
.mx-kpi b{font-size:22px;font-weight:700;color:#1d1a17}.mx-kpi small{grid-column:2;color:#8a817a;font-size:13px}
.k-ic{grid-row:span 2;width:40px;height:40px;border-radius:12px;background:#fff1ec;color:#F24822;display:grid;place-items:center}.k-ic.ok{background:#e8f5ec;color:#1e7a43}.k-ic.off{background:#f2efeb;color:#8a817a}
.mx-bar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.mx-bar .mi-tabs{margin:0}
.mx .ap-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.mx-q{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #e4dfd9;border-radius:12px;padding:0 12px;height:44px;min-width:260px;color:#8a817a;transition:border .15s,box-shadow .15s}
.mx-q:focus-within{border-color:#F24822;box-shadow:0 0 0 4px rgba(242,72,34,.12)}.mx-q input{border:0;outline:0;flex:1;font:inherit;background:none}
.mx .mi-card{border:1px solid #f0ebe5;animation:mxUp .4s var(--ease) both}
.mx .mi-img{cursor:pointer;overflow:hidden}.mx .mi-img img{transition:transform .5s var(--ease)}.mx .mi-card:hover .mi-img img{transform:scale(1.04)}
.mx .mi-st{display:inline-flex;align-items:center;gap:6px;backdrop-filter:blur(6px);background:rgba(255,255,255,.92)}.mi-st i{width:7px;height:7px;border-radius:50%;background:currentColor}
.mx-cat{position:absolute;right:10px;top:10px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:rgba(29,26,23,.7);color:#fff}
.mx-nf{display:grid;gap:6px;place-items:center;font-size:13px}.mx-nf .mic{width:28px;height:28px;opacity:.5}
.mx-loc{display:flex;gap:4px;align-items:center}.mx-loc .mic{width:13px;height:13px;color:#F24822}
.mx-ft{display:flex;gap:14px;margin-top:4px}.mx-ft span{display:inline-flex;gap:5px;align-items:center}
.mx-act button{display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s,color .15s}
.mx-act button.ic{flex:0 0 48px}.mx-act button.del:hover{background:#fdecea}.mx-act button:not(.del):hover{color:#F24822}
.mx-empty{background:#fff;border-radius:22px;padding:48px 28px;text-align:center;display:grid;gap:12px;justify-items:center;max-width:520px;margin:24px auto;box-shadow:0 20px 60px rgba(30,20,10,.07);animation:mxUp .45s var(--ease) both}
.mx-empty h2{font-family:var(--serif);font-size:24px;margin:0}.mx-empty p{color:#6b625b;max-width:380px;margin:0}.mx-empty .ap-cta{padding:0 24px;gap:8px}
.mx-ei{width:76px;height:76px;border-radius:50%;background:#fff1ec;color:#F24822;display:grid;place-items:center;box-shadow:0 0 0 10px #fff8f5}.mx-ei .mic{width:34px;height:34px}
.mx-sk .mi-img{background:linear-gradient(90deg,#efeae4 25%,#f7f3ef 50%,#efeae4 75%);background-size:200% 100%;animation:mxSk 1.2s infinite}
.mx-sk i{display:block;height:12px;border-radius:6px;background:#efeae4;margin:6px 0}.mx-sk i+i{width:60%}
.mx-dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;align-items:start}
.mx-dl .dd-card{border:1px solid #f0ebe5;padding:0;overflow:hidden;animation:mxUp .4s var(--ease) both}
.mx-dl .dd-card>*:not(.mi-act):not(.dd-open){margin-left:18px;margin-right:18px}.mx-dl .dd-card>.pr-h{margin-top:16px}
.mx-dl .dd-city{display:flex;align-items:center;gap:6px}.mx-dl .dd-city .mic{color:#F24822;width:18px;height:18px}
.mx-st{background:#faf7f4;border-radius:12px;padding:10px 12px}.mx-st span{display:inline-flex;align-items:center;gap:6px}.mx-st .mic{color:#F24822}
.mx-dl .mi-act{flex-wrap:wrap}.mx-dl .dd-open{padding:12px 18px 18px;margin:0}
@keyframes mxUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes mxSk{to{background-position:-200% 0}}
@media(max-width:640px){.mx-q{min-width:0;flex:1}.mx-dl{grid-template-columns:1fr}.mx .mi-new{width:100%;justify-content:center}}
.mx-dl .mi-act{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr)) ;grid-auto-flow:row}
.mx-dl .mi-act>button:first-child{grid-column:1/-1;background:#fff1ec;color:#F24822;border-bottom:1px solid #f0ebe5}
.mx-dl .mi-act>button:first-child:hover{background:#ffe4da}
.mx-dl .mi-act button+button{border-left:0}.mx-dl .mi-act button:not(:first-child)+button{border-left:1px solid #f0ebe5}
.mx-dl .mi-act button.ic{flex:none}
/* filter-bar-full: docked bar shows all 4 segments, no truncation */
.hero.docked .tbar{max-width:none!important;width:min(960px,calc(100vw - 620px))!important;margin-left:auto!important;margin-right:auto!important}
.hero.docked .tbar>.tb-q{flex:1.6 1 250px!important;min-width:240px!important}
.hero.docked .tbar>.tb-city{flex:1 1 170px!important;min-width:150px!important}
.hero.docked .tbar>.tb-seg-w{flex:1 1 140px!important;width:auto!important;min-width:120px!important;max-width:none!important;opacity:1!important;overflow:visible!important;pointer-events:auto!important;padding:revert!important}
.hero.docked .tbar>.tb-seg-w::before{display:block!important}
.tbar .tb-q input{text-overflow:clip;min-width:0}
.tbar .tb-q{min-width:300px}
@media(max-width:1180px){.hero.docked .tbar{width:auto!important}}
.hero.docked .tbar>.tb-city{flex:1 1 130px!important;min-width:125px!important}
.hero.docked .tbar>.tb-seg-w.tb-tipo{flex:0 0 auto!important;min-width:180px!important}
.hero.docked .tbar>.tb-seg-w:not(.tb-tipo){flex:0 0 auto!important;min-width:140px!important}
.hero.docked .tb-sum,.hero.docked .tb-ph{white-space:nowrap;overflow:visible;text-overflow:clip}
/* filter-overlap: docked bar fits measured gap (dock-fit.js); never collides with header items */
.hero.docked .tbar{width:var(--dock-w,auto)!important;margin-left:var(--dock-l,0)!important;margin-right:0!important;max-width:none!important}
.hero.docked .tbar>.tb-q{flex:1.5 1 200px!important;min-width:170px!important}
.hero.docked .tbar>.tb-city{flex:1 1 120px!important;min-width:115px!important}
.hero.docked .tbar>.tb-seg-w:not(.tb-tipo){flex:0 0 auto!important;min-width:130px!important}
.hero.docked .tbar>.tb-seg-w.tb-tipo{flex:0 0 auto!important;min-width:170px!important}
.hero.docked .tbar .tb-q{min-width:170px}
.hero.docked .tb-q input{text-overflow:ellipsis}
/* not enough room in header row: dock just below header, full width */
.dock-below .hero.docked{top:calc(var(--hd-h) + 6px)}
.dock-below .hero.docked .tbar{width:auto!important;margin-left:0!important;margin-right:0!important}
/* mobile-bar: clean 2-row stack ≤640px (normal + docked) */
@media (max-width:640px){
  .tbar,.hero.docked .tbar{display:flex!important;flex-wrap:wrap!important;width:auto!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding:6px!important;row-gap:6px!important;column-gap:6px!important;border-radius:20px!important;align-items:center}
  .tbar>.tb-q,.hero.docked .tbar>.tb-q{flex:1 1 100%!important;min-width:0!important;order:0;border-bottom:1px solid var(--paper-2);padding-bottom:6px}
  .tbar>.tb-city,.hero.docked .tbar>.tb-city{flex:1 1 0!important;min-width:0!important;order:1}
  .tbar>.tb-seg-w:not(.tb-tipo),.hero.docked .tbar>.tb-seg-w:not(.tb-tipo){flex:1 1 0!important;min-width:0!important;order:2;opacity:1!important;pointer-events:auto!important}
  .tbar>.tb-seg-w.tb-tipo{display:none!important}
  .tbar>.tb-f,.hero.docked .tbar>.tb-f{order:3;flex:0 0 42px!important;width:42px;height:42px!important;padding:0!important;justify-content:center;position:relative}
  .tb-f span:not(.n){display:none}
  .tb-f .n{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;font-size:11px;box-shadow:0 0 0 2px #fff}
  .tbar .tb-seg,.tbar .cp-box,.hero.docked .tb-seg,.hero.docked .tbar .cp-box{height:42px!important;padding:0 8px!important}
  .tbar>.tb-seg-w::before,.tbar>.tb-city::before{display:none!important}
  .tbar .tb-q input,.tb-sum,.tb-ph{font-size:14px!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .tbar>.tb-city .cp-box,.tbar>.tb-seg-w .tm-btn{background:var(--paper,#f6f5f3);border-radius:14px}
  .hero.docked{top:calc(var(--hd-h) + 4px)!important;padding:0 10px}
  .hero.docked::before{content:"";position:absolute;inset:-10px 0 -8px;background:linear-gradient(var(--paper,#faf9f7) 70%,transparent);z-index:-1;pointer-events:none}
}
/* bottom-bar: on scroll the search bar floats at the bottom of the viewport (no header dock) */
.hero{position:relative!important;top:auto!important}
.hero.floating{min-height:var(--hero-h,100px);box-sizing:border-box}
.hero.floating .tbar{position:fixed!important;left:max(12px,calc(50% - 590px))!important;right:max(12px,calc(50% - 590px))!important;bottom:calc(14px + env(safe-area-inset-bottom));width:auto!important;max-width:none!important;margin:0!important;z-index:60;box-shadow:0 2px 6px rgba(15,23,42,.08),0 18px 40px -14px rgba(15,23,42,.38)!important;animation:bbIn .38s cubic-bezier(.2,.9,.3,1.15) both}
.hero.floating::after{content:"";position:fixed;left:0;right:0;bottom:0;height:calc(96px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--paper,#faf9f7) 75%);z-index:59;pointer-events:none;animation:bbFade .3s ease both}
@keyframes bbIn{from{opacity:0;transform:translateY(calc(100% + 24px)) scale(.98)}to{opacity:1;transform:none}}
@keyframes bbFade{from{opacity:0}to{opacity:1}}
.hero.floating .sugs,.hero.floating .cp-list,.hero.floating .pf-list{top:auto!important;bottom:calc(100% + 8px)!important}
.hero.floating .tm-menu,.hero.floating [class*="-pop"]{top:auto!important;bottom:calc(100% + 8px)!important}
body:has(.hero.floating){padding-bottom:calc(110px + env(safe-area-inset-bottom))}
@media(max-width:640px){.hero.floating .tbar{left:10px!important;right:10px!important;bottom:calc(10px + env(safe-area-inset-bottom))}.hero.floating::after{height:calc(140px + env(safe-area-inset-bottom))}body:has(.hero.floating){padding-bottom:calc(150px + env(safe-area-inset-bottom))}}

/* notif-icon: bigger, clearer bell */
.ua .nt-bell,.nt-bell{width:42px;height:42px;flex:0 0 42px;border:1px solid rgba(28,26,23,.12);background:#fff;color:#1C1A17;box-shadow:0 1px 2px rgba(28,26,23,.06);transition:background .15s,border-color .15s,color .15s,transform .15s}
.nt-bell svg{width:22px!important;height:22px!important;stroke-width:2}
.nt-bell:hover{background:#FFF1EC;border-color:rgba(242,72,34,.35);color:#F24822}
.nt-bell:active{transform:scale(.95)}
.nt-badge{top:-3px;right:-3px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;font:700 11px/20px Outfit,system-ui,sans-serif;box-shadow:0 0 0 2px #fff}

.wz-card .ap-in{background:#fff!important}.wz-card .ap-in:-webkit-autofill{-webkit-box-shadow:0 0 0 40px #fff inset!important;-webkit-text-fill-color:inherit}
.wz-hint{display:block;margin-top:4px;font-size:12px;color:#7a6f68}.wz-priv{display:flex;gap:6px;align-items:center;font-size:12.5px;color:#7a6f68;margin:4px 0 0}.wz-priv .wz-ic{color:#F24822}
.wz-card .ap-f>span small{font-weight:400;color:#9a8f88}

/* carac-icons */
.wz-feats{gap:10px}
.wz-feats button{display:inline-flex;align-items:center;gap:8px;padding:10px 16px 10px 13px;min-height:44px;border:1.5px solid #e4dfd9;background:#fff;color:#2b2622;font-weight:500;line-height:1.2}
.wz-feats button .wz-fi{flex:none;width:17px;height:17px;color:#9a918a;transition:color .15s,transform .2s}
.wz-feats button:hover .wz-fi{color:#6b625b}
.wz-feats button.on{background:#fff1ec;border-color:#F24822;color:#b22a12;font-weight:600}
.wz-feats button.on .wz-fi{color:#F24822;transform:scale(1.06)}
.wz-feats button:focus-visible{outline:2px solid #F24822;outline-offset:2px}
@media (max-width:560px){.wz-feats{display:grid;grid-template-columns:1fr 1fr;gap:8px}.wz-feats button{justify-content:flex-start;padding:10px 12px;font-size:13.5px;border-radius:14px}}

/* footer-gap2: clearance lives inside the dark footer, not below it */
body:has(.hero.floating){padding-bottom:0!important}
body:has(.hero.floating) .sfoot{padding-bottom:calc(110px + env(safe-area-inset-bottom))!important;margin-bottom:0!important}
body:has(.hero.floating):not(:has(.sfoot)) main{padding-bottom:calc(110px + env(safe-area-inset-bottom))}
@media(max-width:640px){body:has(.hero.floating) .sfoot{padding-bottom:calc(150px + env(safe-area-inset-bottom))!important}}

.tb-seg-w.tb-pais{flex:0 0 auto;min-width:96px}

/* Drawer v2 — filtros diretos */
.dv2 .d-head{padding:20px 22px 12px;border-bottom:1px solid var(--line)}
.dv2 .d-head h2{display:flex;align-items:baseline;gap:10px}
.dv2 .d-head h2 small{font:600 12px var(--sans);color:#F24822;background:rgba(242,72,34,.1);padding:3px 9px;border-radius:999px}
.dv2 .d-body{padding:0 22px 20px}
.dv2 .sec.dsec{padding:16px 0}
.dv2 .sec.dsec:first-child{border-top:0}
.dv2 .dsec h3{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.dv2 .dsec h3 b{font-weight:600;color:var(--ink)}
.dv2 .dsec h3 .ds-sum{flex:1;text-align:right;color:var(--ink-2);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:none;letter-spacing:0;font-weight:500}
.dv2 .dsec h3 .ds-clr{text-transform:none;letter-spacing:0;font-size:12.5px;color:#F24822;font-weight:500;padding:4px 2px;margin-left:auto}
.dv2 .dsec h3 .ds-sum+.ds-clr{margin-left:0}
.dseg{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);border-radius:12px;background:var(--card);overflow:hidden}
.dseg button{flex:1 1 auto;min-height:42px;padding:8px 10px;font-size:14px;color:var(--ink-2);white-space:nowrap;transition:background .2s,color .2s}
.dseg button+button{border-left:1px solid var(--line)}
.dseg button[aria-pressed=true]{background:#F24822;color:#fff}
.ufgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px}
.ufgrid .chip.uf{justify-content:center;padding:8px 0;min-height:38px;font-weight:600;font-size:13px}
.dv2 .chip{min-height:38px}
.dv2 .chip[aria-pressed=true]{background:#F24822;border-color:#F24822;color:#fff}
.dv2 .chips.sel{margin-top:10px}
.dv2 .chips.sel .chip i{font-style:normal;opacity:.8;margin-left:2px}
.dv2 .chips.presets{margin-bottom:10px}
.dv2 .d-cp .cp{position:relative;width:100%}
.dv2 .d-cp .cp-box{border:1px solid var(--line);border-radius:12px;background:var(--card);min-height:44px;padding:0 12px;display:flex;align-items:center;gap:8px}
.dv2 .d-cp .cp-box input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:14px;min-width:0}
.dv2 .d-cp .cp-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:5;max-height:260px;overflow:auto}
.d-note{font-size:12.5px;color:var(--muted);margin:-2px 0 10px}
.featgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.featgrid .chip.feat{border-radius:12px;justify-content:flex-start;gap:8px;padding:9px 12px;font-size:13.5px;text-align:left}
.featgrid .chip.feat .wz-fi{flex:none}
.dv2 .seg button{min-height:40px}
.dv2 .d-foot{position:sticky;bottom:0;padding:14px 22px calc(16px + env(safe-area-inset-bottom));box-shadow:0 -10px 24px -18px rgba(15,23,42,.35)}
.dv2 .btn.sec2:disabled{opacity:.45;cursor:default}
@media (max-width:720px){.dv2 .d-body{padding:0 16px 16px}.dv2 .d-head{padding:22px 16px 10px;position:relative}.dv2 .d-foot{padding-left:16px;padding-right:16px}.dv2 .steps{grid-template-columns:1fr}.dseg button{min-height:44px}.dv2{height:92vh}}

/* filtros-modal-padrao: same RTL sheet as Anunciar/Perfil/Notif + iconografia */
.scrim{background:rgba(17,17,17,.42);backdrop-filter:blur(3px);z-index:84}
.drawer.dv2.fsheet{z-index:85;width:min(560px,94vw);background:#f7f4f0;border-radius:24px 0 0 24px;box-shadow:-30px 0 90px rgba(20,12,6,.3);font-family:"Outfit","Poppins",sans-serif;transition:transform .6s cubic-bezier(.16,1,.3,1);overflow:hidden}
.fsheet .wzm-top.d-head{padding:16px 22px;border-bottom:1px solid #efe9e2;background:#fff}
.fsheet .wzm-ttl b{display:flex;align-items:center;gap:8px}
.fsheet .d-cnt{font:600 12px "Outfit",sans-serif;font-style:normal;color:#F24822;background:#fde7e1;padding:3px 9px;border-radius:999px}
.fsheet .d-body{flex:1;min-height:0;overflow-y:auto;padding:4px 22px 20px}
.fsheet .sec.dsec{background:#fff;border:1px solid #f0ebe5;border-radius:16px;padding:14px 16px;margin-top:12px}
.fsheet .dsec h3{font-size:14px;text-transform:none;letter-spacing:0}
.ds-ic{width:28px;height:28px;flex:none;border-radius:9px;display:grid;place-items:center;background:#fde7e1;color:#F24822}
.fic{flex:none}
.fsheet .dseg button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.fsheet .dseg button .fic{color:#F24822}.fsheet .dseg button[aria-pressed=true] .fic{color:#fff}
.fsheet .catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fsheet .catgrid .chip{flex-direction:column;justify-content:center;gap:6px;padding:12px 6px;border-radius:14px;font-size:13px;min-height:72px}
.fsheet .catgrid .chip .fic{width:22px;height:22px;color:#F24822}
.fsheet .chip[aria-pressed=true] .fic{color:#fff}
.fsheet .step label{display:inline-flex;align-items:center;gap:6px}.fsheet .step label .fic{color:#F24822}
.fsheet .featgrid .chip.feat .wz-fi,.fsheet .featgrid .chip.feat svg{color:#F24822}.fsheet .featgrid .chip.feat[aria-pressed=true] svg{color:#fff}
.fsheet .d-foot{background:#fff;border-top:1px solid #efe9e2}
.fsheet .btn.pri{background:#F24822;border-color:#F24822}
@media (max-width:720px){.drawer.dv2.fsheet{top:0;height:100dvh;width:100vw;border-radius:0;transform:translateX(104%)}.drawer.dv2.fsheet.open{transform:none}.fsheet .catgrid{grid-template-columns:repeat(2,1fr)}}

/* Embed mode - hide hero */
html.embed-corretor .hero {
  display: none !important;
}
