/* ==========================================================
   Refinamento visual da marca — navegação, descoberta e rodapé
   ========================================================== */
.skip-link {
    position: fixed; z-index: 1000; top: .75rem; left: .75rem; transform: translateY(-160%);
    padding: .7rem 1rem; border-radius: 8px; background: var(--color-secondary); color: var(--color-primary); font-weight: 800;
}
.skip-link:focus { transform: none; }

.btn { border-radius: 8px; position: relative; overflow: hidden; }
.btn::after { content: ""; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 30%, rgba(255,255,255,.25) 50%, transparent 70%); transform: translateX(-140%); transition: transform .55s ease; pointer-events: none; }
.btn:hover::after { transform: translateX(140%); }

.site-header {
    background: rgba(11,22,48,.94); border-bottom: 1px solid rgba(201,162,74,.18);
    backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
    transition: background-color .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.site-header.is-scrolled { background: rgba(7,16,36,.98); border-bottom-color: rgba(201,162,74,.35); box-shadow: 0 12px 32px rgba(5,13,30,.2); }
.site-header__inner { max-width: 1320px; min-height: 88px; padding-top: .8rem; padding-bottom: .8rem; transition: min-height .25s ease; }
.site-header.is-scrolled .site-header__inner { min-height: 72px; }
.site-header__brand { flex: 0 0 auto; position: relative; }
.site-header__brand::after { content: ""; position: absolute; left: 25%; right: 7%; bottom: -.55rem; height: 1px; background: linear-gradient(90deg, transparent, rgba(201,162,74,.65), transparent); opacity: 0; transform: scaleX(.5); transition: opacity .25s ease, transform .25s ease; }
.site-header__brand:hover::after { opacity: 1; transform: none; }
.site-header__logo { width: 250px; max-width: none; max-height: 62px; transition: width .25s ease, transform .25s ease; }
.site-header__brand:hover .site-header__logo { transform: translateY(-1px); }
.site-header.is-scrolled .site-header__logo { width: 220px; }
.site-header__nav { gap: 1.15rem; }
.site-header__links { display: flex; align-items: center; gap: clamp(.55rem, 1.2vw, 1.2rem); }
.site-header__links > a { position: relative; padding: .7rem .1rem; color: rgba(255,255,255,.82); font-size: .79rem; font-weight: 700; letter-spacing: .025em; }
.site-header__links > a::after { content: ""; position: absolute; left: 50%; right: 50%; bottom: .3rem; height: 2px; border-radius: 2px; background: var(--color-secondary); transition: left .22s ease, right .22s ease; }
.site-header__links > a:hover::after, .site-header__links > a.is-active::after { left: 0; right: 0; }
.site-header__links > a.is-active { color: var(--color-secondary); }
.site-header__actions { align-items: center; gap: .8rem; }
.site-header__login { color: rgba(255,255,255,.88) !important; font-size: .78rem; font-weight: 700; padding: .65rem .1rem; }
.site-header__login:hover { color: var(--color-secondary) !important; }
.site-header__search-cta { display: inline-flex; align-items: center; gap: .65rem; padding: .7rem 1rem; font-size: .76rem; white-space: nowrap; }
.site-header__search-cta span { transition: transform .2s ease; }
.site-header__search-cta:hover span { transform: translateX(3px); }
.site-header__toggle { z-index: 81; padding: 2px; transition: transform .2s ease; }
.site-header__toggle:hover { transform: scale(1.06); }
.site-header__toggle span { transition: transform .25s ease, opacity .2s ease; transform-origin: center; }
.site-header__toggle.is-open span:nth-child(1) { transform: translateY(9px) rotate(45deg); }
.site-header__toggle.is-open span:nth-child(2) { opacity: 0; }
.site-header__toggle.is-open span:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }

@media (min-width: 1100px) {
    .site-header__nav { display: flex; margin-left: auto; }
    .site-header__actions { margin-left: .35rem; }
}
@media (max-width: 1099px) {
    .site-header__inner { min-height: 78px; }
    .site-header__logo, .site-header.is-scrolled .site-header__logo { width: min(220px, 55vw); }
    .site-header__toggle { display: flex; }
    .site-header__nav {
        position: fixed; z-index: 80; inset: 0 0 0 12%; min-height: 100vh; padding: 7rem 2rem 2rem;
        align-items: stretch; background: linear-gradient(160deg, #0b1630 0%, #102449 100%);
        transform: translateX(110%); box-shadow: -22px 0 60px rgba(0,0,0,.35);
    }
    .site-header__nav::before { content: "Encontre seu próximo imóvel"; color: var(--color-secondary); font: 700 .7rem/1.2 "Segoe UI",sans-serif; letter-spacing: .14em; text-transform: uppercase; margin-bottom: .4rem; }
    .site-header__links { align-items: stretch; flex-direction: column; gap: 0; }
    .site-header__links > a { padding: .9rem 0; border-bottom: 1px solid rgba(255,255,255,.09); font: 700 1.2rem/1.2 Georgia,serif; }
    .site-header__links > a::after { bottom: 0; }
    .site-header__actions { align-items: stretch; flex-direction: column; margin: 1rem 0 0; }
    .site-header__login { padding: .8rem 0; }
    .site-header__search-cta { justify-content: center; padding: .9rem 1rem; }
    body.menu-open { overflow: hidden; }
}

.busca-rapida { padding: 1.5rem 0 2.25rem; background: linear-gradient(180deg, #f7f6f2, #efede7); }
.busca-rapida__intro { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: .85rem; color: var(--color-primary); }
.busca-rapida__intro strong { display: block; margin-top: .2rem; font: 700 clamp(1.35rem, 2.4vw, 2rem)/1.15 Georgia,serif; }
.busca-rapida__intro p { max-width: 480px; margin: 0; color: #686762; font-size: .88rem; }
.busca-rapida__form { border: 1px solid rgba(11,22,48,.08); border-radius: 12px; box-shadow: 0 16px 42px rgba(11,22,48,.11); }
.busca-rapida__form select, .busca-rapida__form input { min-height: 46px; border-radius: 7px; border-color: #d7d2c8; background: #fff; transition: border-color .2s ease, box-shadow .2s ease; }
.busca-rapida__form select:focus, .busca-rapida__form input:focus { outline: none; border-color: var(--color-secondary); box-shadow: 0 0 0 3px rgba(201,162,74,.16); }
.busca-rapida__form .btn { min-height: 46px; }
@media (max-width: 700px) { .busca-rapida__intro { align-items: start; flex-direction: column; gap: .45rem; } }

.card-imovel { border: 1px solid rgba(11,22,48,.06); border-radius: 12px; }
.card-imovel:hover { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(11,22,48,.12); }
.card-imovel__foto img { transition: transform .55s cubic-bezier(.2,.7,.2,1); }
.card-imovel:hover .card-imovel__foto img { transform: scale(1.03); }
.card-imovel__cta span { transition: transform .2s ease; }
.card-imovel:hover .card-imovel__cta span { transform: translateX(4px); }

.mapa-captacoes__stage, .home-mapa__frame { border: 1px solid rgba(11,22,48,.08); border-radius: 14px; }
.mapa-captacoes__legend { max-width: 390px; gap: .55rem .85rem; padding: .75rem .9rem; border: 1px solid rgba(11,22,48,.08); border-radius: 10px; }
.mapa-captacoes__legend > strong { flex: 0 0 100%; color: var(--color-primary); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.mapa-captacoes__legend > span { font-weight: 650; color: #39445a; }
.mapa-marker {
    width: 38px !important; height: 38px !important; margin: 0 !important; border: 3px solid #fff !important;
    color: #fff; border-radius: 50% 50% 50% 0 !important; background: #bd8d25;
    box-shadow: 0 5px 14px rgba(5,13,30,.28); transform: rotate(-45deg); transition: filter .2s ease, scale .2s ease;
}
.mapa-marker:hover { filter: brightness(1.1); scale: 1.08; }
.mapa-marker b { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; transform: rotate(45deg); color: #fff; font: 800 1.15rem/1 "Segoe UI Symbol", "Arial Unicode MS", sans-serif; }
.mapa-marker--casa { background: #277444 !important; }
.mapa-marker--apartamento { background: #2d6fa3 !important; }
.mapa-marker--terreno { background: #a76c25 !important; }
.mapa-marker--outro { background: #8a4e9d !important; }
.mapa-captacoes__legend .mapa-marker { position: relative; display: inline-flex !important; flex: 0 0 25px; width: 25px !important; height: 25px !important; border-width: 2px !important; box-shadow: 0 2px 6px rgba(5,13,30,.18); }
.mapa-captacoes__legend .mapa-marker b { font-size: .8rem; }
.mapa-popup { display: grid; gap: .28rem; min-width: 190px; color: var(--color-primary); }
.mapa-popup small { color: #8a6a25; font-size: .66rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.mapa-popup strong { font: 700 .92rem/1.25 Georgia,serif; }
.mapa-popup b { font-size: .85rem; }
.mapa-popup a { margin-top: .3rem; color: #8a671d; font-weight: 800; }

.site-footer { padding: 0 0 1.35rem; overflow: hidden; background: linear-gradient(180deg, #0b1630 0%, #071124 100%); border-top: 1px solid rgba(201,162,74,.28); }
.site-footer::before { content: ""; position: absolute; width: 520px; height: 520px; right: -250px; top: 80px; border: 1px solid rgba(201,162,74,.08); border-radius: 50%; box-shadow: 0 0 0 50px rgba(201,162,74,.025), 0 0 0 100px rgba(201,162,74,.02); pointer-events: none; }
.site-footer__cta { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 0; margin-bottom: 3.5rem; padding: 2.25rem 2.5rem; border: 1px solid rgba(201,162,74,.3); border-top: 0; border-radius: 0 0 16px 16px; background: linear-gradient(120deg, rgba(201,162,74,.12), rgba(16,36,73,.75)); }
.site-footer__cta .eyebrow { margin: 0 0 .35rem; }
.site-footer__cta h2 { max-width: 650px; margin: 0; color: #fff; font-size: clamp(1.55rem, 3vw, 2.45rem); letter-spacing: 0; text-transform: none; }
.site-footer__cta-actions { display: flex; flex: 0 0 auto; gap: .75rem; }
.site-footer__inner { position: relative; z-index: 1; max-width: 1180px; grid-template-columns: 1.45fr 1fr 1fr 1.2fr; gap: clamp(1.6rem, 4vw, 3.5rem); }
.site-footer__logo { width: 260px; max-width: 100%; max-height: 68px; margin-bottom: 1.1rem; }
.site-footer__description { max-width: 330px; color: rgba(255,255,255,.66) !important; line-height: 1.65; }
.site-footer h2 { margin-bottom: 1.15rem; font-size: .72rem; letter-spacing: .13em; }
.site-footer__column { gap: .7rem; }
.site-footer__column > a { display: flex; align-items: center; justify-content: space-between; gap: .7rem; padding-bottom: .35rem; border-bottom: 1px solid transparent; }
.site-footer__column > a span { color: var(--color-secondary); transition: transform .2s ease; }
.site-footer__column > a:hover { border-bottom-color: rgba(201,162,74,.25); }
.site-footer__column > a:hover span { transform: translateX(3px); }
.site-footer__social a { padding: .35rem 0; }
.site-footer__creci { color: var(--color-secondary) !important; font-weight: 700; }
.site-footer__contato > p { color: rgba(255,255,255,.6); line-height: 1.55; }
.site-footer__contact-line { align-items: start !important; flex-direction: column; gap: .12rem !important; }
.site-footer__contact-line strong { color: var(--color-secondary); font-size: .67rem; letter-spacing: .08em; text-transform: uppercase; }
.site-footer__contact-line span { color: rgba(255,255,255,.82) !important; overflow-wrap: anywhere; }
.site-footer__contact-button { display: inline-flex !important; flex-direction: row !important; align-items: center !important; justify-content: space-between !important; width: 100%; margin-top: .5rem; padding: .75rem .85rem !important; border: 0 !important; border-radius: 8px; }
.site-footer__bottom { position: relative; z-index: 1; align-items: center; margin-top: 3rem; }
.site-footer__legal-links { display: flex; gap: 1.15rem; }
.site-footer__legal-links a { color: rgba(255,255,255,.5); font-size: .74rem; }

.whatsapp-flutuante { position: fixed; z-index: 60; right: 1.25rem; bottom: 1.25rem; display: inline-flex; align-items: center; gap: .55rem; min-width: 52px; min-height: 52px; padding: .65rem; border: 1px solid rgba(255,255,255,.65); border-radius: 999px; background: #fff; color: #0b5c28; box-shadow: 0 12px 30px rgba(5,13,30,.25); transition: transform .2s ease, box-shadow .2s ease; }
.whatsapp-flutuante:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 16px 36px rgba(5,13,30,.3); }
.whatsapp-flutuante__tooltip { position: absolute; right: calc(100% + .65rem); padding: .45rem .65rem; border-radius: 6px; background: var(--color-primary); color: #fff; font-size: .73rem; white-space: nowrap; opacity: 0; transform: translateX(5px); pointer-events: none; transition: opacity .2s ease, transform .2s ease; }
.whatsapp-flutuante:hover .whatsapp-flutuante__tooltip, .whatsapp-flutuante:focus .whatsapp-flutuante__tooltip { opacity: 1; transform: none; }

.motion-ready [data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .65s ease, transform .65s cubic-bezier(.2,.7,.2,1); transition-delay: var(--reveal-delay, 0ms); }
.motion-ready [data-reveal].is-revealed { opacity: 1; transform: none; }

@media (max-width: 1000px) {
    .site-footer__cta { align-items: start; flex-direction: column; }
    .site-footer__inner { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .site-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
    .site-footer__cta { margin-bottom: 2.6rem; padding: 1.5rem 1.25rem; }
    .site-footer__cta-actions { width: 100%; flex-direction: column; }
    .site-footer__cta-actions .btn { text-align: center; }
    .site-footer__inner { grid-template-columns: 1fr; gap: 2rem; }
    .site-footer__brand { grid-column: auto; }
    .site-footer__bottom { align-items: start; }
    .site-footer__legal-links { order: 3; }
    .mapa-captacoes__legend { right: .6rem; left: .6rem; bottom: .6rem; max-width: none; }
    .whatsapp-flutuante { right: .85rem; bottom: .85rem; }
}

/* A logo usa dimensões explícitas porque o SVG contém apenas viewBox. */
.site-header__brand { width: 250px; min-width: 250px; }
.site-header__logo { display: block; width: 100% !important; height: auto; opacity: 1; visibility: visible; }
.site-header.is-scrolled .site-header__brand { width: 220px; min-width: 220px; }
@media (max-width: 1099px) {
    .site-header__brand, .site-header.is-scrolled .site-header__brand { width: min(220px, 55vw); min-width: min(220px, 55vw); }
}

/* Revisão pública: escala legível, foco e estados. Não altera o painel admin. */
.site-public { font-family:var(--font-body); }
.site-public .container { max-width:1280px; }
.site-public .btn { min-height:48px; align-items:center; justify-content:center; font-size:var(--text-small); }
.site-public .btn[disabled], .site-public button[aria-busy="true"] { cursor:wait; opacity:.7; transform:none; }
.site-public :where(input,select,textarea) { min-width:0; max-width:100%; }
.site-public :where(input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),select,textarea) { font-size:var(--text-body); }
.site-public :where(input,select,textarea):focus-visible { outline:2px solid #8b6518; outline-offset:2px; box-shadow:var(--focus-ring); }
.site-public :where(a,button):focus-visible { outline:3px solid #a47a24; outline-offset:3px; }
.site-public :where(.hero,.site-header,.site-footer,.imovel-lightbox) :where(a,button):focus-visible { outline-color:var(--color-secondary-light); }
.site-public .hero--home { min-height:0; padding:var(--space-16) 0; }
.site-public .hero__inner { min-height:0; gap:var(--space-12); }
.site-public .hero__slide--portrait img { object-fit:contain; object-position:center bottom; padding:var(--space-4) var(--space-8) 0; }
.site-public .hero__slide.is-active img { transform:none; }
.site-public .hero__carousel-controls { gap:var(--space-1); padding:var(--space-1); background:rgba(7,16,34,.88); }
.site-public .hero__carousel-controls button { width:44px; height:44px; border-radius:var(--radius-sm); }
.site-public .hero__carousel-controls button:hover { background:rgba(255,255,255,.15); }
.site-public .hero__slide-placeholder { display:grid; place-items:center; color:#d9dfeb; padding:var(--space-8); background:var(--color-primary-soft); }
.site-public .hero__slide-caption { right:var(--space-6); left:var(--space-6); bottom:var(--space-6); }
.site-public .hero__slide-caption strong { font-size:var(--step-3); line-height:1.25; }
.site-public .destaques__layout .cards-grid { margin-top:0; }
.site-public .destaques__heading { margin-bottom:var(--space-8); }
.site-public .card-imovel { min-width:0; height:100%; }
.site-public .card-imovel__link { height:100%; }
.site-public .card-imovel__foto { flex-shrink:0; aspect-ratio:4 / 3; }
.site-public .card-imovel__corpo { display:flex; flex-direction:column; padding:var(--space-6); }
.site-public .card-imovel__categoria { font-size:var(--text-caption); color:#80601d; }
.site-public .card-imovel__titulo { font-size:var(--text-title); line-height:1.3; margin:var(--space-2) 0; overflow-wrap:anywhere; }
.site-public .card-imovel__local { font-size:var(--text-small); white-space:normal; line-height:1.5; margin:0 0 var(--space-4); }
.site-public .card-imovel__preco { font-size:var(--step-2); font-variant-numeric:tabular-nums; margin:0 0 var(--space-4); letter-spacing:-.025em; }
.site-public .card-imovel__specs { display:flex; flex-wrap:wrap; margin-top:auto; gap:var(--space-2); }
.site-public .card-imovel__specs li { padding:0; border:0; min-width:64px; }
.site-public .card-imovel__specs strong { font-size:var(--text-small); }
.site-public .card-imovel__specs span { font-size:var(--text-caption); }
.site-public .card-imovel__cta { margin-top:var(--space-2); font-size:var(--text-caption); min-height:44px; }
.site-public .card-imovel__badge,.site-public .card-imovel__codigo { font-size:var(--text-caption); padding:var(--space-1) var(--space-2); }
.site-public .card-imovel__codigo { inset:auto var(--space-3) var(--space-3) auto; }
.site-public .card-imovel__badges { top:var(--space-3); left:var(--space-3); }
.site-public .card-imovel__sem-foto { display:flex; flex-direction:column; gap:var(--space-2); }
.site-public .card-imovel__sem-foto small { color:#e1e5ed; font-size:var(--text-small); z-index:1; }
.site-public .card-imovel:focus-within { border-color:#a47a24; box-shadow:var(--focus-ring); }
.site-public .home-path-card strong { font-size:var(--text-title); }
.site-public .home-path-card small,.site-public .home-path-card b { font-size:var(--text-small); }
.site-public .catalog-spotlight { padding:var(--space-6); gap:var(--space-6); margin-bottom:var(--space-8); }
.site-public .catalog-spotlight h2 { font-size:var(--step-3); }
.site-public .catalog-spotlight__copy p:not(.eyebrow) { font-size:var(--text-small); }
.site-public .catalog-search :where(input,select),.site-public .form-basico :where(input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),select) { min-height:48px; font-size:var(--text-body); }
.site-public .form-basico textarea { font-size:var(--text-body); }
.site-public .catalog-search__advanced summary { min-height:44px; display:flex; align-items:center; justify-content:space-between; }
.site-public .catalog-toolbar { gap:var(--space-4); flex-wrap:wrap; }
.site-public .search-feedback { grid-column:1 / -1; display:flex; align-items:center; justify-content:space-between; gap:var(--space-4); padding-top:var(--space-3); border-top:1px solid var(--color-border); font-size:var(--text-small); color:#586174; }
.site-public .search-feedback p { margin:0; }
.site-public .search-feedback button { flex-shrink:0; min-height:44px; padding:var(--space-2) var(--space-3); border:1px solid var(--color-border); border-radius:var(--radius-sm); background:#fff; color:var(--color-primary); cursor:pointer; }
.site-public .search-feedback button:disabled { opacity:.5; cursor:default; }
.site-public .search-feedback.is-error { color:#a32b26; }
.site-public .advanced-search > .container { max-width:960px; }
.site-public .advanced-search form { padding:var(--space-8); border:1px solid var(--color-border); border-radius:var(--radius-md); background:#fff; }
.site-public .imovel-detalhe__principal h1 { max-width:22ch; font-size:var(--step-4); line-height:1.12; }
.site-public .imovel-detalhe__tools { flex-wrap:wrap; }
.site-public .imovel-detalhe__tools button,.site-public .imovel-detalhe__perguntas-lista button { min-height:44px; font-size:var(--text-small); }
.site-public .imovel-detalhe__tools button[aria-pressed="true"],.site-public [data-pergunta][aria-pressed="true"] { border-color:#a47a24; background:#fff7df; color:var(--color-primary); }
.site-public .imovel-detalhe__foto[hidden] { display:none; }
.site-public .imovel-detalhe__galeria:has(> .card-imovel__sem-foto) { display:block; }
.site-public .imovel-detalhe__galeria > .card-imovel__sem-foto { min-height:256px; border-radius:var(--radius-md); }
.site-public .imovel-lightbox { z-index:10001; }
.site-public .imovel-lightbox__counter { position:absolute; bottom:var(--space-6); margin:0; color:#fff; font-size:var(--text-small); }
.site-public .imovel-lightbox__close,.site-public .imovel-lightbox__nav { width:48px; height:48px; }
.site-public .contato-premium__visual { display:flex; flex-direction:column; gap:var(--space-6); min-height:0; padding-bottom:0; }
.site-public .contato-premium__portrait { position:relative; inset:auto; align-self:center; width:min(100%,360px); height:400px; max-height:none; object-fit:contain; object-position:center bottom; margin-top:auto; }
.site-public .contato-premium__visual-copy > p:last-child { font-size:var(--text-small); }
.site-public .contato-premium__choice:has(input:focus-visible) { outline:3px solid #a47a24; outline-offset:3px; }
.site-public .contato-premium__choice strong { font-size:var(--text-small); }
.site-public .contato-premium__choice small { font-size:var(--text-caption); }
.site-public .contato-premium__form :where(label,legend) { font-size:var(--text-small); }
.site-public .site-footer__column :where(a,p),.site-public .site-footer__brand > p { font-size:var(--text-small); }
@media (max-width:1099px) {
    .site-public .site-header__nav:not(.is-open) { visibility:hidden; }
    .site-public .site-header__nav.is-open { visibility:visible; }
    .site-public .site-header__links > a { min-height:44px; display:flex; align-items:center; font-size:var(--text-body); }
    .site-public .site-header__toggle { min-width:44px; min-height:44px; align-items:center; justify-content:center; gap:7px; }
    .site-public .site-header__toggle span { width:28px; height:2px; flex-shrink:0; }
    .site-public .destaques__layout { grid-template-columns:minmax(0,1fr); }
    .site-public .destaques__visual { display:none; }
}
@media (max-width:639px) {
    .site-public .hero--home { padding:var(--space-8) 0; }
    .site-public .hero__inner { gap:var(--space-8); }
    .site-public .hero__actions { gap:var(--space-3); }
    .site-public .hero__carousel-controls { inset:auto 0 0; justify-content:center; border:0; border-top:1px solid rgba(255,255,255,.12); border-radius:0; background:#0b1630; }
    .site-public .hero__slide-caption { bottom:calc(var(--space-16) + var(--space-3)); }
    .site-public .hero__slide--portrait img { height:calc(100% - 52px); }
    .site-public .hero__slide-caption strong { font-size:var(--text-title); }
    .site-public .home-paths__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--space-3); }
    .site-public .home-path-card { padding:var(--space-4); min-height:144px; }
    .site-public .home-path-card:last-child { grid-column:1 / -1; min-height:0; }
    .site-public .home-path-card strong { font-size:var(--text-body); }
    .site-public .home-path-card small { display:block; min-height:0; overflow:visible; }
    .site-public .destaques,.site-public .categorias-home,.site-public .processo-home { padding:var(--space-12) 0; }
    .site-public .card-imovel__corpo { padding:var(--space-4); }
    .site-public .card-imovel__foto { aspect-ratio:16 / 10; }
    .site-public .catalog-search__main,.site-public .catalog-search__advanced-grid { grid-template-columns:minmax(0,1fr); }
    .site-public .catalog-sort { width:100%; }
    .site-public .search-feedback { align-items:flex-start; }
    .site-public .advanced-search form { padding:var(--space-4); }
    .site-public .contato-premium__choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .site-public .contato-premium__portrait { height:300px; }
    .site-public .contato-premium__choice:last-child { grid-column:1 / -1; }
    .site-public .contato-premium__content { padding:var(--space-6) var(--space-4); }
    .site-public .imovel-lightbox { padding:var(--space-16) var(--space-2); }
    .site-public .imovel-lightbox__nav { top:auto; bottom:var(--space-4); transform:none; }
    .site-public .imovel-lightbox__counter { bottom:var(--space-8); }
    .site-public .property-mobile-actions .btn { font-size:var(--text-small); }
    .site-public .site-footer__cta h2 { font-size:var(--step-3); }
}
@media (prefers-reduced-motion:reduce) {
    .site-public .btn::after,.site-public .btn::before { display:none; }
    .site-public .card-imovel:hover,.site-public .card-imovel:hover .card-imovel__foto img { transform:none; }
    .site-public .hero__slide img { transition:none; }
}
