/* ==========================================================
   DANIEL AVILA CORRETOR
   NOVA IDENTIDADE IMOBILIARIA - 2026
   ========================================================== */

:root{
    --re-green:#123b2d;
    --re-green-2:#1e5a43;
    --re-green-3:#2d7257;
    --re-mint:#e9f1ed;
    --re-cream:#f6f4ef;
    --re-white:#ffffff;
    --re-dark:#16211d;
    --re-text:#56615c;
    --re-line:#e1e6e3;
    --re-gold:#c6a664;
    --re-shadow:0 20px 60px rgba(18,59,45,.10);
    --re-shadow-lg:0 35px 90px rgba(18,59,45,.16);
}

*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body.new-realestate{
    margin:0;
    background:#fff;
    color:var(--re-dark);
    font-family:'Inter',sans-serif;
    overflow-x:hidden;
}

body.new-realestate a{
    text-decoration:none !important;
}

.re-container{
    width:min(1180px,90%);
    margin:0 auto;
}

.re-section-label{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:18px;
    color:var(--re-green-3);
    font-size:.74rem;
    line-height:1;
    font-weight:800;
    letter-spacing:.18em;
}


/* =========================
   HEADER
   ========================= */

.re-header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:1000;
    width:100%;
    padding:0;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid rgba(18,59,45,.08);
    backdrop-filter:blur(18px);
    box-shadow:none;
}

.re-header.scrolled{
    padding:0;
    box-shadow:0 8px 30px rgba(18,59,45,.07);
}

.re-header-inner{
    width:min(1280px,92%);
    min-height:82px;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
}

.re-logo{
    display:flex;
    align-items:center;
    gap:12px;
    cursor:pointer;
    color:var(--re-green) !important;
}

.re-logo .logo-icon,
.re-footer .logo-icon{
    width:46px;
    height:46px;
    object-fit:contain;
}

.re-logo-copy{
    display:flex;
    flex-direction:column;
    line-height:1.1;
}

.re-logo-copy strong{
    font-family:'Space Grotesk',sans-serif;
    font-size:1.08rem;
    font-weight:700;
    color:inherit;
}

.re-logo-copy span{
    margin-top:5px;
    font-size:.65rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:#7c8883;
}

.re-nav{
    display:flex;
    align-items:center;
    gap:34px;
}

.re-nav a{
    position:relative;
    color:#4f5d57;
    font-size:.87rem;
    font-weight:600;
    cursor:pointer;
    transition:.25s ease;
}

.re-nav a:hover{
    color:var(--re-green-2);
}

.re-nav a:after{
    content:"";
    position:absolute;
    left:0;
    bottom:-9px;
    width:0;
    height:2px;
    background:var(--re-green-2);
    transition:.25s ease;
}

.re-nav a:hover:after{
    width:100%;
}

.re-header .header-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:44px;
    padding:0 19px;
    border:0;
    border-radius:8px;
    background:var(--re-green);
    color:#fff;
    font-size:.82rem;
    font-weight:700;
    box-shadow:none;
    transition:.25s ease;
}

.re-header .header-cta:hover{
    background:var(--re-green-2);
    transform:translateY(-2px);
}


/* =========================
   HERO
   ========================= */

.re-hero{
    position:relative;
    padding:145px 0 0;
    background:
        radial-gradient(circle at 15% 30%,rgba(45,114,87,.08),transparent 30%),
        linear-gradient(115deg,#f8f7f3 0%,#fff 55%,#edf3ef 100%);
}

.re-hero-inner{
    width:min(1180px,90%);
    min-height:590px;
    margin:0 auto;
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    align-items:center;
    gap:80px;
}

.re-hero-copy{
    padding-bottom:65px;
}

.re-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:25px;
    color:var(--re-green-2);
    font-size:.78rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
}

.re-eyebrow i{
    color:var(--re-gold);
}

.re-hero h1{
    margin:0;
    max-width:600px;
    color:var(--re-green);
    font-family:'Space Grotesk',sans-serif;
    font-size:clamp(3.2rem,5.3vw,5.2rem);
    font-weight:600;
    line-height:.98;
    letter-spacing:-.055em;
}

.re-hero h1 em,
.re-benefit-intro h2 em,
.re-about-copy h2 em{
    color:var(--re-green-3);
    font-style:normal;
}

.re-hero-copy > p{
    max-width:560px;
    margin:28px 0 0;
    color:#69746f;
    font-size:1.03rem;
    line-height:1.8;
}

.re-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:13px;
    margin-top:34px;
}

.re-btn{
    min-height:52px;
    padding:0 22px;
    border-radius:8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    font-size:.86rem;
    font-weight:750;
    transition:.28s ease;
    cursor:pointer;
}

.re-btn:hover{
    transform:translateY(-3px);
}

.re-btn-primary{
    background:var(--re-green);
    color:#fff !important;
    box-shadow:0 12px 30px rgba(18,59,45,.16);
}

.re-btn-primary:hover{
    background:var(--re-green-2);
}

.re-btn-light{
    background:#fff;
    border:1px solid #dfe5e1;
    color:var(--re-green) !important;
}

.re-btn-light:hover{
    border-color:#aabbb3;
}

.re-hero-trust{
    display:flex;
    gap:30px;
    margin-top:38px;
    padding-top:28px;
    border-top:1px solid #e1e6e3;
}

.re-hero-trust > div{
    display:flex;
    align-items:center;
    gap:12px;
}

.re-hero-trust i{
    width:36px;
    height:36px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e7efeb;
    color:var(--re-green-2);
    font-size:.85rem;
}

.re-hero-trust span{
    display:flex;
    flex-direction:column;
    gap:3px;
    color:#8a948f;
    font-size:.69rem;
}

.re-hero-trust strong{
    color:#37453f;
    font-size:.76rem;
}

.re-hero-media{
    position:relative;
    align-self:stretch;
    min-height:590px;
    border-radius:4px 4px 0 90px;
    overflow:hidden;
}

.re-placeholder{
    background:
        linear-gradient(145deg,rgba(18,59,45,.93),rgba(45,114,87,.74)),
        radial-gradient(circle at 70% 20%,rgba(255,255,255,.13),transparent 25%);
}

.re-placeholder:before{
    content:"";
    position:absolute;
    width:330px;
    height:330px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    right:-100px;
    top:-90px;
}

.re-placeholder:after{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:50%;
    left:-110px;
    bottom:-90px;
}

.re-placeholder-content{
    position:absolute;
    inset:0;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:rgba(255,255,255,.75);
}

.re-placeholder-content i{
    margin-bottom:18px;
    font-size:3rem;
    color:rgba(255,255,255,.55);
}

.re-placeholder-content span{
    font-family:'Space Grotesk',sans-serif;
    font-size:1.05rem;
    font-weight:700;
}

.re-placeholder-content small{
    margin-top:7px;
    color:rgba(255,255,255,.48);
}

.re-creci-card{
    position:absolute;
    z-index:4;
    left:28px;
    bottom:28px;
    padding:15px 20px;
    background:rgba(255,255,255,.95);
    box-shadow:0 15px 40px rgba(0,0,0,.15);
    display:flex;
    flex-direction:column;
    border-radius:8px;
}

.re-creci-card span{
    color:#84908a;
    font-size:.63rem;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.re-creci-card strong{
    margin-top:4px;
    color:var(--re-green);
    font-size:.9rem;
}


/* =========================
   BUSCA
   ========================= */

.re-search-card{
    position:relative;
    z-index:20;
    width:min(1050px,88%);
    min-height:125px;
    margin:-38px auto -62px;
    padding:25px 30px;
    display:grid;
    grid-template-columns:1fr 2.3fr;
    gap:30px;
    align-items:center;
    background:#fff;
    border:1px solid rgba(18,59,45,.07);
    border-radius:12px;
    box-shadow:var(--re-shadow-lg);
}

.re-search-title{
    display:flex;
    flex-direction:column;
    gap:5px;
}

.re-search-title span{
    color:var(--re-green-3);
    font-size:.67rem;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.re-search-title strong{
    font-family:'Space Grotesk',sans-serif;
    color:var(--re-green);
    font-size:1.15rem;
}

.re-search-options{
    display:grid;
    grid-template-columns:1fr 1fr 1.25fr;
    gap:10px;
}

.re-search-options button,
.re-search-submit{
    min-height:64px;
    padding:0 15px;
    border-radius:7px;
}

.re-search-options button{
    border:1px solid #e1e6e3;
    background:#fafbf9;
    display:flex;
    align-items:center;
    gap:12px;
    text-align:left;
    color:var(--re-green);
    cursor:pointer;
    transition:.2s ease;
}

.re-search-options button:hover{
    background:#f0f5f2;
    border-color:#bdcbc4;
}

.re-search-options button i{
    color:var(--re-green-3);
}

.re-search-options button span{
    display:flex;
    flex-direction:column;
    gap:3px;
    font-weight:700;
}

.re-search-options button small{
    color:#9aa39f;
    font-size:.6rem;
    font-weight:600;
}

.re-search-submit{
    border:0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    background:var(--re-green);
    color:#fff !important;
    font-size:.8rem;
    font-weight:800;
}


/* =========================
   IMOVEIS
   ========================= */

.re-properties{
    padding:150px 0 110px;
    background:#fff;
}

.re-section-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:40px;
    margin-bottom:40px;
}

.re-section-heading h2,
.re-benefit-intro h2,
.re-about-copy h2,
.re-sell-copy h2,
.re-contact h2{
    margin:0;
    color:var(--re-green);
    font-family:'Space Grotesk',sans-serif;
    font-weight:600;
    letter-spacing:-.045em;
}

.re-section-heading h2{
    font-size:clamp(2.4rem,4vw,3.7rem);
}

.re-section-heading p{
    max-width:570px;
    margin:14px 0 0;
    color:#78827d;
    line-height:1.7;
}

.inventory-summary{
    display:flex;
    gap:8px;
}

.summary-pill{
    min-width:82px;
    padding:10px 12px;
    border:1px solid var(--re-line);
    border-radius:8px;
    background:#fafbf9;
    display:flex;
    flex-direction:column;
    text-align:center;
}

.summary-pill strong{
    color:var(--re-green);
    font-family:'Space Grotesk',sans-serif;
    font-size:1.15rem;
}

.summary-pill span{
    margin-top:2px;
    color:#8c9691;
    font-size:.6rem;
}

.re-property-toolbar{
    min-height:58px;
    margin-bottom:30px;
    padding-bottom:16px;
    border-bottom:1px solid var(--re-line);
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.re-property-toolbar .tabs{
    display:flex;
    gap:6px;
    padding:4px;
    background:#f2f4f2;
    border:0;
    border-radius:8px;
}

.re-property-toolbar .tab-btn{
    min-height:38px;
    padding:0 20px;
    border:0;
    border-radius:6px;
    background:transparent;
    color:#73807a;
    font-weight:700;
    cursor:pointer;
}

.re-property-toolbar .tab-btn.active{
    background:var(--re-green);
    color:#fff;
    box-shadow:none;
}

.re-text-link{
    color:var(--re-green-2) !important;
    font-size:.78rem;
    font-weight:700;
}

.re-text-link i{
    margin-left:7px;
}

.grid-imoveis{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
}


/* CARDS GERADOS PELO JS ATUAL */

.property-card{
    position:relative;
    overflow:hidden;
    background:#fff;
    border:1px solid #e4e8e5;
    border-radius:10px;
    color:var(--re-dark);
    box-shadow:0 10px 35px rgba(18,59,45,.06);
    transition:.3s ease;
}

.property-card:hover{
    transform:translateY(-6px);
    border-color:#cad6d0;
    box-shadow:0 22px 55px rgba(18,59,45,.12);
}

.card-carousel{
    position:relative;
    overflow:hidden;
    background:#eef1ef;
}

.card-carousel img{
    width:100%;
    height:245px;
    object-fit:cover;
    display:block;
    transition:.45s ease;
}

.property-card:hover .card-carousel img{
    transform:scale(1.035);
}

.card-badge{
    background:var(--re-green-2) !important;
}

.card-fav,
.control-btn{
    backdrop-filter:blur(8px);
}

.card-body{
    padding:20px !important;
    background:#fff;
}

.card-price{
    color:var(--re-green-2) !important;
    font-family:'Space Grotesk',sans-serif;
    font-weight:700;
}

.card-title{
    color:var(--re-dark) !important;
    font-family:'Space Grotesk',sans-serif;
    line-height:1.35;
}

.card-description{
    color:#7b8580 !important;
}

.card-features{
    border-color:#edf0ee !important;
}

.feature{
    color:#66736d !important;
}

.feature i{
    color:var(--re-green-3) !important;
}

.btn-card{
    border-radius:7px !important;
    background:var(--re-green) !important;
    color:#fff !important;
    box-shadow:none !important;
}

.btn-card:hover{
    background:var(--re-green-2) !important;
}


/* =========================
   DIFERENCIAIS
   ========================= */

.re-benefits{
    padding:115px 0;
    background:var(--re-cream);
}

.re-benefit-intro{
    max-width:760px;
    margin-bottom:55px;
}

.re-benefit-intro h2{
    font-size:clamp(2.5rem,4.5vw,4rem);
    line-height:1.08;
}

.re-benefit-intro p{
    max-width:670px;
    margin:22px 0 0;
    color:#737e78;
    font-size:.96rem;
    line-height:1.8;
}

.re-benefit-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid #daddd9;
    border-bottom:1px solid #daddd9;
}

.re-benefit-grid article{
    position:relative;
    min-height:270px;
    padding:38px 28px;
    border-right:1px solid #daddd9;
}

.re-benefit-grid article:last-child{
    border-right:0;
}

.re-benefit-grid article > span{
    position:absolute;
    top:22px;
    right:22px;
    color:#a5ada9;
    font-size:.65rem;
    font-weight:800;
}

.re-benefit-grid article > i{
    width:46px;
    height:46px;
    margin-bottom:35px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#e3ebe7;
    color:var(--re-green-2);
}

.re-benefit-grid h3{
    margin:0 0 12px;
    color:var(--re-green);
    font-family:'Space Grotesk',sans-serif;
    font-size:1.02rem;
}

.re-benefit-grid p{
    margin:0;
    color:#7b8580;
    font-size:.83rem;
    line-height:1.7;
}


/* =========================
   SOBRE
   ========================= */

.re-about{
    padding:120px 0;
    background:#fff;
}

.re-about-grid{
    display:grid;
    grid-template-columns:.88fr 1.12fr;
    gap:95px;
    align-items:center;
}

.re-about-media{
    position:relative;
    min-height:610px;
    border-radius:90px 4px 4px 4px;
    overflow:hidden;
}

.re-about-badge{
    position:absolute;
    z-index:5;
    right:25px;
    bottom:25px;
    width:105px;
    height:105px;
    border-radius:50%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:var(--re-green);
    box-shadow:0 16px 40px rgba(0,0,0,.16);
}

.re-about-badge strong{
    font-size:.66rem;
    letter-spacing:.12em;
}

.re-about-badge span{
    margin-top:5px;
    font-size:.7rem;
}

.re-about-copy{
    max-width:570px;
}

.re-about-copy h2{
    font-size:clamp(2.8rem,5vw,4.5rem);
    line-height:1;
}

.re-about-lead{
    margin-top:28px !important;
    color:#48564f !important;
    font-size:1.05rem !important;
    font-weight:500;
}

.re-about-copy p{
    color:#7a8580;
    line-height:1.85;
}

.re-about-points{
    margin:28px 0 32px;
    display:grid;
    gap:12px;
}

.re-about-points span{
    display:flex;
    align-items:center;
    gap:11px;
    color:#48564f;
    font-size:.86rem;
    font-weight:600;
}

.re-about-points i{
    width:23px;
    height:23px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e7efeb;
    color:var(--re-green-2);
    font-size:.58rem;
}


/* =========================
   VENDA
   ========================= */

.re-sell{
    padding:35px 0 115px;
    background:#fff;
}

.re-sell-card{
    min-height:430px;
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
    border-radius:12px;
    background:var(--re-green);
    box-shadow:var(--re-shadow);
}

.re-sell-copy{
    padding:65px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
}

.re-sell-copy .re-section-label{
    color:#a9c8b9;
}

.re-sell-copy h2{
    color:#fff;
    font-size:clamp(2.7rem,4.5vw,4rem);
    line-height:1;
}

.re-sell-copy p{
    max-width:480px;
    margin:23px 0 30px;
    color:rgba(255,255,255,.68);
    line-height:1.8;
}

.re-btn-white{
    background:#fff;
    color:var(--re-green) !important;
}

.re-sell-media{
    position:relative;
    min-height:430px;
    background:
        linear-gradient(145deg,#244f3e,#4d7d68);
}


/* =========================
   CONTATO
   ========================= */

.re-contact{
    padding:85px 0;
    background:var(--re-cream);
    border-top:1px solid #e5e4df;
}

.re-contact-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:50px;
}

.re-contact h2{
    font-size:clamp(2.4rem,4vw,3.5rem);
    line-height:1.08;
}

.re-contact p{
    margin:14px 0 0;
    color:#77817c;
}

.re-contact-whatsapp{
    min-width:340px;
    padding:19px 22px;
    display:flex;
    align-items:center;
    gap:15px;
    border-radius:9px;
    background:#fff;
    border:1px solid #dde2df;
    color:var(--re-green) !important;
    box-shadow:0 12px 30px rgba(18,59,45,.06);
    transition:.25s ease;
}

.re-contact-whatsapp:hover{
    transform:translateY(-3px);
    box-shadow:var(--re-shadow);
}

.re-contact-whatsapp > i:first-child{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#e4f6ea;
    color:#20a856;
    font-size:1.25rem;
}

.re-contact-whatsapp span{
    flex:1;
    display:flex;
    flex-direction:column;
}

.re-contact-whatsapp small{
    color:#8b9690;
    font-size:.65rem;
}

.re-contact-whatsapp strong{
    margin-top:3px;
    font-size:.92rem;
}


/* =========================
   FOOTER
   ========================= */

.re-footer{
    padding:75px 0 0;
    background:#0d271e;
    color:#fff;
}

.re-footer-grid{
    display:grid;
    grid-template-columns:1.6fr .75fr 1fr .75fr;
    gap:60px;
    padding-bottom:60px;
}

.re-footer .logo{
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff !important;
}

.re-footer .re-logo-copy span{
    color:rgba(255,255,255,.45);
}

.re-footer-brand p{
    max-width:350px;
    margin:23px 0 18px;
    color:rgba(255,255,255,.56);
    font-size:.8rem;
    line-height:1.75;
}

.re-footer-creci{
    color:#c8a96b;
    font-size:.73rem;
    letter-spacing:.06em;
}

.re-footer-column{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.re-footer-column h4{
    margin:0 0 8px;
    color:#fff;
    font-size:.78rem;
}

.re-footer-column a,
.re-footer-column span{
    color:rgba(255,255,255,.55) !important;
    font-size:.75rem;
    line-height:1.5;
}

.re-footer-column a:hover{
    color:#fff !important;
}

.re-footer-column i{
    width:18px;
}

.re-footer-bottom{
    min-height:68px;
    border-top:1px solid rgba(255,255,255,.08);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    color:rgba(255,255,255,.35);
    font-size:.64rem;
}

.re-footer-bottom a{
    color:#c8a96b !important;
}


/* =========================
   WHATSAPP
   ========================= */

.wa-float{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:900;
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#25d366 !important;
    color:#fff !important;
    font-size:1.55rem;
    box-shadow:0 12px 30px rgba(37,211,102,.28);
}


/* =========================
   LIGHTBOX
   ========================= */

.image-lightbox{
    z-index:3000;
}

.image-lightbox-content{
    background:#fff;
    color:var(--re-dark);
}

.image-lightbox-toolbar{
    border-color:#e5e9e6;
}


/* =========================
   RESPONSIVO
   ========================= */

@media(max-width:1050px){

    .re-nav{
        gap:20px;
    }

    .re-hero-inner{
        gap:45px;
    }

    .grid-imoveis{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .re-benefit-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .re-benefit-grid article:nth-child(2){
        border-right:0;
    }

    .re-benefit-grid article:nth-child(-n+2){
        border-bottom:1px solid #daddd9;
    }

    .re-about-grid{
        gap:55px;
    }

    .re-footer-grid{
        grid-template-columns:1.4fr 1fr 1fr;
    }

    .re-footer-column:last-child{
        grid-column:2;
    }
}


@media(max-width:820px){

    .re-header-inner{
        min-height:70px;
    }

    .re-nav{
        display:none;
    }

    .re-header .header-cta{
        min-height:40px;
        padding:0 13px;
        font-size:.72rem;
    }

    .re-header .header-cta i{
        font-size:1rem;
    }

    .re-logo .logo-icon{
        width:40px;
        height:40px;
    }

    .re-hero{
        padding-top:105px;
    }

    .re-hero-inner{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .re-hero-copy{
        padding:35px 0 0;
    }

    .re-hero h1{
        font-size:clamp(3rem,12vw,4.8rem);
    }

    .re-hero-media{
        min-height:480px;
        border-radius:6px 6px 60px 6px;
    }

    .re-search-card{
        position:relative;
        width:90%;
        margin:-20px auto -70px;
        grid-template-columns:1fr;
        gap:15px;
    }

    .re-properties{
        padding-top:145px;
    }

    .re-section-heading{
        align-items:flex-start;
        flex-direction:column;
    }

    .re-property-toolbar{
        gap:20px;
        align-items:flex-start;
        flex-direction:column;
    }

    .re-benefit-grid{
        grid-template-columns:1fr;
    }

    .re-benefit-grid article{
        border-right:0;
        border-bottom:1px solid #daddd9;
    }

    .re-benefit-grid article:last-child{
        border-bottom:0;
    }

    .re-about-grid{
        grid-template-columns:1fr;
    }

    .re-about-media{
        min-height:550px;
        order:2;
    }

    .re-about-copy{
        max-width:none;
    }

    .re-sell-card{
        grid-template-columns:1fr;
    }

    .re-sell-media{
        min-height:360px;
    }

    .re-contact-inner{
        align-items:flex-start;
        flex-direction:column;
    }

    .re-contact-whatsapp{
        width:100%;
        min-width:0;
    }

    .re-footer-grid{
        grid-template-columns:1fr 1fr;
    }

    .re-footer-brand{
        grid-column:1/-1;
    }

    .re-footer-column:last-child{
        grid-column:auto;
    }
}


@media(max-width:580px){

    .re-container,
    .re-hero-inner{
        width:90%;
    }

    .re-header-inner{
        width:92%;
    }

    .re-logo-copy span{
        display:none;
    }

    .re-header .header-cta{
        font-size:0;
        width:42px;
        padding:0;
        border-radius:50%;
    }

    .re-header .header-cta i{
        font-size:1.15rem;
    }

    .re-hero{
        padding-top:90px;
    }

    .re-hero-copy{
        padding-top:35px;
    }

    .re-hero h1{
        font-size:2.85rem;
        letter-spacing:-.055em;
    }

    .re-hero-copy > p{
        font-size:.91rem;
    }

    .re-hero-actions{
        display:grid;
        grid-template-columns:1fr;
    }

    .re-btn{
        width:100%;
    }

    .re-hero-trust{
        flex-direction:column;
        gap:15px;
    }

    .re-hero-media{
        min-height:390px;
    }

    .re-search-card{
        padding:22px;
    }

    .re-search-options{
        grid-template-columns:1fr 1fr;
    }

    .re-search-submit{
        grid-column:1/-1;
    }

    .inventory-summary{
        width:100%;
    }

    .summary-pill{
        flex:1;
        min-width:0;
    }

    .grid-imoveis{
        grid-template-columns:1fr;
    }

    .card-carousel img{
        height:260px;
    }

    .re-properties,
    .re-benefits,
    .re-about{
        padding-bottom:80px;
    }

    .re-benefits{
        padding-top:80px;
    }

    .re-about{
        padding-top:80px;
    }

    .re-about-media{
        min-height:440px;
    }

    .re-sell{
        padding-bottom:80px;
    }

    .re-sell-copy{
        padding:45px 28px;
    }

    .re-sell-media{
        min-height:300px;
    }

    .re-contact{
        padding:65px 0;
    }

    .re-footer-grid{
        grid-template-columns:1fr;
        gap:35px;
    }

    .re-footer-brand{
        grid-column:auto;
    }

    .re-footer-bottom{
        padding:20px 0;
        align-items:flex-start;
        flex-direction:column;
        gap:8px;
    }

    .wa-float{
        width:52px;
        height:52px;
        right:16px;
        bottom:16px;
    }
}

/* ===== HERO - IMAGEM DEFINITIVA ===== */
.re-hero-media{
    background:
        linear-gradient(90deg, rgba(18,59,45,.10), rgba(18,59,45,0) 55%),
        url('/img/topo1.avif') center center / cover no-repeat !important;
}

.re-hero-media::before,
.re-hero-media::after{
    display:none !important;
}

.re-hero-media > .re-placeholder-content{
    display:none !important;
}


/* ==========================================================
   HERO V3 — COMPOSICAO FIEL AO MOCKUP
   ========================================================== */

.mock-header{
    position:absolute !important;
    top:0;
    left:0;
    right:0;
    z-index:100;
    height:92px;
    padding:0 !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}

.mock-header-inner{
    width:min(1240px,91%);
    height:92px;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    border-bottom:1px solid rgba(255,255,255,.20);
}

.mock-brand{
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff !important;
}

.mock-brand img{
    width:44px;
    height:44px;
    object-fit:contain;
    filter:brightness(0) invert(1);
}

.mock-brand > div{
    display:flex;
    flex-direction:column;
}

.mock-brand strong{
    font-family:'Space Grotesk',sans-serif;
    font-size:1.08rem;
    line-height:1;
}

.mock-brand span{
    margin-top:6px;
    color:rgba(255,255,255,.62);
    font-size:.60rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.16em;
}

.mock-nav{
    display:flex;
    align-items:center;
    gap:38px;
}

.mock-nav a{
    color:rgba(255,255,255,.82) !important;
    font-size:.79rem;
    font-weight:600;
    cursor:pointer;
}

.mock-nav a:hover{
    color:#fff !important;
}

.mock-header-contact{
    min-height:42px;
    padding:0 17px;
    border:1px solid rgba(255,255,255,.55);
    border-radius:4px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    color:#fff !important;
    font-size:.75rem;
    font-weight:700;
    transition:.2s ease;
}

.mock-header-contact:hover{
    background:#fff;
    color:#123b2d !important;
}


/* HERO */

.mock-hero{
    position:relative;
    min-height:780px;
    background:#16392d;
}

.mock-hero-photo{
    position:absolute;
    inset:0;
    background:url('/img/topo1.avif') center 42% / cover no-repeat;
}

.mock-hero-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            90deg,
            rgba(7,28,21,.90) 0%,
            rgba(8,31,23,.76) 31%,
            rgba(8,31,23,.31) 59%,
            rgba(8,31,23,.08) 100%
        ),
        linear-gradient(
            0deg,
            rgba(8,29,22,.36) 0%,
            transparent 38%
        );
}

.mock-hero-content{
    position:relative;
    z-index:5;
    width:min(1240px,91%);
    min-height:720px;
    margin:auto;
    padding-top:178px;
    color:#fff;
}

.mock-location{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:25px;
    color:rgba(255,255,255,.72);
    font-size:.65rem;
    font-weight:750;
    letter-spacing:.17em;
}

.mock-location span{
    width:25px;
    height:1px;
    background:#c8aa70;
}

.mock-hero h1{
    max-width:690px;
    margin:0;
    color:#fff;
    font-family:'Space Grotesk',sans-serif;
    font-size:clamp(3.8rem,5.7vw,5.8rem);
    line-height:.96;
    font-weight:500;
    letter-spacing:-.055em;
}

.mock-hero h1 em{
    color:#d1b276;
    font-style:italic;
    font-family:Georgia,serif;
    font-weight:400;
    letter-spacing:-.035em;
}

.mock-hero-content > p{
    max-width:470px;
    margin:27px 0 0;
    color:rgba(255,255,255,.73);
    font-size:.96rem;
    line-height:1.75;
}

.mock-actions{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:31px;
}

.mock-primary,
.mock-secondary{
    min-height:49px;
    padding:0 20px;
    border-radius:4px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    font-size:.77rem;
    font-weight:750;
    cursor:pointer;
}

.mock-primary{
    background:#fff;
    color:#153b2e !important;
}

.mock-secondary{
    border:1px solid rgba(255,255,255,.43);
    color:#fff !important;
    background:rgba(255,255,255,.04);
    backdrop-filter:blur(5px);
}

.mock-creci{
    display:flex;
    align-items:center;
    gap:18px;
    margin-top:43px;
}

.mock-creci-line{
    width:1px;
    height:48px;
    background:#c6a664;
}

.mock-creci > div:last-child{
    display:grid;
}

.mock-creci small{
    color:rgba(255,255,255,.45);
    font-size:.55rem;
    letter-spacing:.15em;
}

.mock-creci strong{
    margin-top:3px;
    color:#fff;
    font-family:'Space Grotesk',sans-serif;
    font-size:.88rem;
}

.mock-creci span{
    margin-top:2px;
    color:#cbb584;
    font-size:.60rem;
}


/* BUSCA SOBREPOSTA */

.mock-search{
    position:absolute;
    z-index:20;
    left:50%;
    bottom:-58px;
    transform:translateX(-50%);
    width:min(1120px,88%);
    min-height:116px;
    padding:22px 24px;
    display:grid;
    grid-template-columns:1.15fr 1fr 1fr 1.05fr;
    align-items:center;
    gap:10px;
    background:#fff;
    border-radius:5px;
    box-shadow:0 25px 60px rgba(8,32,24,.20);
}

.mock-search-heading{
    padding:0 15px 0 5px;
    display:flex;
    flex-direction:column;
}

.mock-search-heading small{
    color:#8b958f;
    font-size:.56rem;
    font-weight:800;
    letter-spacing:.15em;
}

.mock-search-heading strong{
    margin-top:7px;
    color:#143a2d;
    font-family:'Space Grotesk',sans-serif;
    font-size:1.08rem;
}

.mock-search button{
    height:68px;
    padding:0 15px;
    border:1px solid #e0e5e2;
    border-radius:4px;
    background:#fafbf9;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:12px;
    text-align:left;
    cursor:pointer;
}

.mock-search-icon{
    width:35px;
    height:35px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e8efeb;
    color:#245d46;
}

.mock-search button > span:nth-child(2){
    display:flex;
    flex-direction:column;
}

.mock-search button small{
    color:#9ba39f;
    font-size:.51rem;
    font-weight:700;
    letter-spacing:.1em;
}

.mock-search button strong{
    margin-top:4px;
    color:#263a31;
    font-size:.74rem;
}

.mock-search button > i{
    color:#89948e;
    font-size:.58rem;
}

.mock-search-action{
    height:68px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border-radius:4px;
    background:#173f31;
    color:#fff !important;
    font-size:.74rem;
    font-weight:750;
}


/* A VITRINE COMECA DEPOIS DA BUSCA */

.mock-hero + #vitrine{
    padding-top:145px !important;
}


/* MOBILE */

@media(max-width:800px){

    .mock-header{
        height:75px;
    }

    .mock-header-inner{
        height:75px;
    }

    .mock-nav{
        display:none;
    }

    .mock-header-contact{
        width:42px;
        min-height:42px;
        padding:0;
        border-radius:50%;
        font-size:0;
    }

    .mock-header-contact i{
        font-size:1.05rem;
    }

    .mock-brand img{
        width:38px;
        height:38px;
    }

    .mock-hero{
        min-height:790px;
    }

    .mock-hero-photo{
        background-position:62% center;
    }

    .mock-hero-overlay{
        background:
            linear-gradient(
                90deg,
                rgba(7,28,21,.90),
                rgba(7,28,21,.60)
            );
    }

    .mock-hero-content{
        min-height:700px;
        padding-top:145px;
    }

    .mock-hero h1{
        max-width:520px;
        font-size:clamp(3.2rem,11vw,5rem);
    }

    .mock-search{
        bottom:-120px;
        grid-template-columns:1fr 1fr;
    }

    .mock-search-heading{
        grid-column:1/-1;
    }

    .mock-search-action{
        grid-column:1/-1;
    }

    .mock-hero + #vitrine{
        padding-top:205px !important;
    }
}


@media(max-width:520px){

    .mock-brand span{
        display:none;
    }

    .mock-hero{
        min-height:760px;
    }

    .mock-hero-content{
        padding-top:125px;
    }

    .mock-hero h1{
        font-size:3rem;
    }

    .mock-hero-content > p{
        max-width:330px;
        font-size:.86rem;
    }

    .mock-actions{
        align-items:stretch;
        flex-direction:column;
        width:100%;
    }

    .mock-primary,
    .mock-secondary{
        width:100%;
    }

    .mock-search{
        width:90%;
        bottom:-185px;
        padding:20px;
        grid-template-columns:1fr;
    }

    .mock-search-heading,
    .mock-search-action{
        grid-column:auto;
    }

    .mock-hero + #vitrine{
        padding-top:270px !important;
    }
}

/* ===== SOBRE DANIEL - FOTO REAL ===== */
.re-about-media{
    background:
        linear-gradient(
            0deg,
            rgba(12,45,34,.12),
            rgba(12,45,34,0) 45%
        ),
        url('/img/daniel-avila-corretor-de-imoveis-sao-leopoldo-rs.avif')
        center center / cover no-repeat !important;
}

.re-about-media::before,
.re-about-media::after{
    display:none !important;
}

.re-about-media > .re-placeholder-content{
    display:none !important;
}

/* ===== VENDER IMOVEL - IMAGEM DEFINITIVA ===== */
.re-sell-media{
    background:
        linear-gradient(
            90deg,
            rgba(16,55,42,.10),
            rgba(16,55,42,0) 55%
        ),
        url('/img/imovel.avif') center center / cover no-repeat !important;
}

.re-sell-media::before,
.re-sell-media::after{
    display:none !important;
}

.re-sell-media > .re-placeholder-content{
    display:none !important;
}

/* ===== WHATSAPP FLOAT - CORRECAO MOBILE ===== */
.wa-float{
    width:58px !important;
    height:58px !important;
    min-width:58px !important;
    min-height:58px !important;
    right:20px !important;
    bottom:20px !important;
    padding:0 !important;
    margin:0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    border-radius:50% !important;
    background:#25D366 !important;
    color:#fff !important;

    font-size:0 !important;
    line-height:1 !important;

    overflow:hidden;
    box-sizing:border-box !important;
    transform:none;
}

.wa-float i,
.wa-float .fa-whatsapp{
    display:block !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;

    color:#fff !important;
    font-size:31px !important;
    line-height:1 !important;
    text-align:center !important;

    font-family:"Font Awesome 5 Brands" !important;
    font-weight:400 !important;

    transform:none !important;
}

.wa-float:hover{
    transform:scale(1.06) !important;
}

@media(max-width:600px){
    .wa-float{
        width:54px !important;
        height:54px !important;
        min-width:54px !important;
        min-height:54px !important;
        right:16px !important;
        bottom:18px !important;
    }

    .wa-float i,
    .wa-float .fa-whatsapp{
        font-size:29px !important;
    }
}

/* ===== WHATSAPP DO TOPO - CENTRALIZACAO MOBILE ===== */
@media(max-width:800px){

    .mock-header-contact{
        width:44px !important;
        height:44px !important;
        min-width:44px !important;
        min-height:44px !important;

        padding:0 !important;
        margin:0 !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        border-radius:50% !important;
        box-sizing:border-box !important;

        font-size:0 !important;
        line-height:1 !important;
        text-align:center !important;
    }

    .mock-header-contact i,
    .mock-header-contact .fa-whatsapp{
        position:static !important;

        display:block !important;

        width:auto !important;
        height:auto !important;

        margin:0 !important;
        padding:0 !important;

        font-family:"Font Awesome 5 Brands" !important;
        font-size:21px !important;
        font-weight:400 !important;
        line-height:1 !important;

        text-align:center !important;

        transform:none !important;
        left:auto !important;
        right:auto !important;
        top:auto !important;
        bottom:auto !important;
    }
}

/* ===== WHATSAPP HEADER - SVG DEFINITIVO ===== */

.header-whatsapp-svg{
    display:block !important;
    flex:0 0 auto !important;
    width:18px !important;
    height:18px !important;
    margin:0 !important;
    padding:0 !important;
    color:currentColor;
}

.header-contact-text{
    display:inline;
}

@media(max-width:800px){

    .mock-header-contact{
        width:44px !important;
        height:44px !important;
        min-width:44px !important;
        min-height:44px !important;

        padding:0 !important;
        gap:0 !important;

        display:grid !important;
        place-items:center !important;

        overflow:hidden !important;
    }

    .mock-header-contact .header-contact-text{
        display:none !important;
    }

    .mock-header-contact .header-whatsapp-svg{
        display:block !important;
        width:22px !important;
        height:22px !important;

        margin:0 !important;
        padding:0 !important;

        position:static !important;
        transform:none !important;
    }
}
