:root{--black:#060606;--dark:#0b0b0a;--panel:#11100e;--line:#3a2a10;--gold:#d6a232;--gold2:#f4c34e;--red:#b70d12;--red2:#e01920;--white:#fff;--muted:#c9c0ad;--soft:#8d826e;--radius:16px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#070707;color:var(--white);line-height:1.55}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(var(--max),calc(100% - 42px));margin:auto}.section-dark{background:radial-gradient(circle at 50% 0,#19150d 0,#070707 48%,#050505 100%)}.topbar{background:#080808;border-bottom:1px solid rgba(214,162,50,.25);font-size:13px;color:#f3ead8}.topbar__inner{height:42px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar__left,.topbar__right{display:flex;align-items:center;gap:13px}.topbar .sep{width:1px;height:16px;background:#5b4118}.topbar__right a{color:var(--gold2);font-weight:700}.header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 4px 30px rgba(0,0,0,.28)}.header__inner{height:68px;display:flex;align-items:center;gap:26px}.logo img{width:235px;height:auto}.nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:13px;font-weight:700;color:#191919}.nav a{position:relative;white-space:nowrap}.nav a.active,.nav a:hover{color:#9b740d}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-19px;height:2px;background:var(--gold)}.header__cta{padding:12px 18px!important;font-size:13px!important}.menu-toggle{display:none;background:#111;color:#fff;border:0;border-radius:10px;padding:9px 13px;font-size:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:9px;padding:14px 24px;font-weight:800;font-size:15px;transition:.25s ease;border:1px solid transparent;cursor:pointer}.btn--red{background:linear-gradient(135deg,var(--red),var(--red2));border-color:#ff4b4b;color:#fff;box-shadow:0 10px 28px rgba(183,13,18,.3)}.btn--red:hover{transform:translateY(-2px);filter:brightness(1.07)}.btn--outline{border-color:rgba(214,162,50,.85);color:#f5ca67;background:rgba(0,0,0,.25)}.btn--outline:hover{background:rgba(214,162,50,.1);transform:translateY(-2px)}.btn.small{padding:12px 18px;font-size:13px}.btn--light-border{border-color:rgba(255,255,255,.35)}.hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero__texture{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.82) 37%,rgba(0,0,0,.25) 72%,rgba(0,0,0,.1) 100%),radial-gradient(circle at 15% 40%,rgba(196,9,15,.18),transparent 25%);pointer-events:none}.hero__grid{position:relative;min-height:560px;display:grid;grid-template-columns:.83fr 1.17fr;align-items:center;gap:32px}.eyebrow{color:var(--gold2);font-size:13px;font-weight:900;letter-spacing:5px;margin:0 0 18px;text-transform:uppercase}.hero h1,.launch h2,.section-heading h2,.about h2,.testimonials h2{font-family:Georgia,'Times New Roman',serif;line-height:.98;font-weight:500;margin:0;color:#fff}.hero h1{font-size:58px;max-width:500px}.hero h1 span{color:var(--gold2)}.hero__text{font-size:17px;color:#eee3d3;max-width:410px;margin:22px 0}.hero__actions{display:flex;gap:15px;flex-wrap:wrap}.mini-features{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:520px;margin-top:34px}.mini-features div{display:grid;grid-template-columns:30px 1fr;gap:4px 8px;align-items:center;color:#fff}.mini-features span{grid-row:1/3;color:var(--gold2);font-size:25px}.mini-features strong{font-size:12px}.mini-features small{color:#d6c8b4;font-size:11px}.hero__image{height:560px;margin-right:-22px;align-self:stretch;position:relative}.hero__image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#070707 0%,rgba(7,7,7,.1) 30%,rgba(0,0,0,0) 100%);z-index:1}.hero__image img{width:100%;height:100%;object-fit:cover}.filter-wrap{padding:28px 0;border-bottom:1px solid var(--line)}.filter-box{display:grid;grid-template-columns:repeat(6,minmax(0,1fr)) minmax(280px,320px);gap:13px;padding:22px;border:1px solid rgba(214,162,50,.55);border-radius:13px;background:#0b0b0a;box-shadow:0 20px 50px rgba(0,0,0,.35);align-items:end}.filter-box label{font-size:12px;color:#e9ddcc;font-weight:800}.filter-box select{margin-top:8px;width:100%;height:46px;border-radius:7px;background:#10100f;border:1px solid #2e2a24;color:#fff;padding:0 12px}.filter-box__btn{height:46px;padding:0 18px;white-space:nowrap;justify-content:center}.launch{padding:46px 0 58px;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.launch:after{content:"";position:absolute;right:-100px;bottom:-60px;width:430px;height:230px;border:1px solid rgba(214,162,50,.2);border-radius:50%;transform:rotate(-20deg)}.launch__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center}.launch__image{position:relative;border:1px solid rgba(214,162,50,.9);padding:5px;background:#080808}.launch__image:before,.launch__image:after{content:"";position:absolute;width:50px;height:50px;border:2px solid var(--gold);z-index:2}.launch__image:before{left:-8px;top:-8px;border-right:0;border-bottom:0}.launch__image:after{right:-8px;bottom:-8px;border-left:0;border-top:0}.launch__image img{width:100%;height:315px;object-fit:cover}.launch h2{font-size:54px;margin-bottom:18px}.launch p{color:#eadfcd;font-size:17px;max-width:520px}.launch__items{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0 28px}.launch__items span{display:grid;grid-template-columns:36px 1fr;gap:2px 9px;align-items:center}.launch-icon{width:36px;height:36px;border:1px solid rgba(214,162,50,.55);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--gold2);grid-row:1 / span 2}.launch-icon svg{width:18px;height:18px;display:block}.launch__items b{color:#fff;font-size:12px;line-height:1.2}.launch__items small{color:#d1c2ae;font-size:11px;grid-column:2;line-height:1.2}.properties{padding:42px 0 30px}.section-heading{position:relative;text-align:center;margin:0 0 35px}.section-heading .btn{position:absolute;right:0;top:18px}.section-heading h2{font-size:44px}.section-heading h2:after,.testimonials h2:after{content:"";display:block;width:56px;height:2px;background:var(--gold);margin:16px auto 0}.property-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.property-card{background:#11100f;border:1px solid rgba(214,162,50,.27);border-radius:9px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.28);transition:.25s}.property-card:hover{transform:translateY(-5px);border-color:rgba(214,162,50,.65)}.property-card__image{height:170px;position:relative}.property-card__image img{width:100%;height:100%;object-fit:cover}.tag{position:absolute;top:10px;left:10px;padding:5px 9px;border-radius:4px;font-size:11px;font-weight:900;color:#fff}.tag--red{background:var(--red2)}.tag--gold{background:var(--gold2);color:#2b1700}.property-card__image button{position:absolute;top:9px;right:10px;background:transparent;border:0;color:#fff;font-size:22px}.property-card__body{padding:17px}.property-card h3{margin:0 0 6px;font-size:17px}.property-card p{margin:0 0 10px;color:#c8baa6;font-size:13px}.property-card strong{display:block;color:var(--gold2);font-size:17px;margin-bottom:13px}.specs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;color:#d9c7ad;font-size:12px}.specs span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.spec-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1;color:var(--gold2);flex:0 0 auto}.spec-icon svg{display:block;width:16px;height:16px}.spec-icon--vagas svg{width:18px;height:11px}.spec-square{display:inline-block;font-size:14px;line-height:1;transform:translateY(-1px)}.services{padding:15px 0 42px}.services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:linear-gradient(180deg,#11100f,#0b0b0a);border:1px solid rgba(214,162,50,.45);border-radius:12px;padding:40px 35px;text-align:center}.service-card>span{width:72px;height:72px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;margin:0 auto 24px;color:var(--gold2);font-size:36px}.service-card h3{font-size:25px;margin:0 0 13px}.service-card p{color:#d6c9b8;margin:0 auto 24px;max-width:280px}.service-card a{display:inline-flex;padding:12px 25px;border-radius:6px;border:1px solid var(--gold);color:var(--gold2);font-weight:800;font-size:13px}.trust{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}.trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.trust__grid div{display:grid;grid-template-columns:44px 1fr;gap:3px 12px;align-items:center;border-right:1px solid rgba(214,162,50,.25)}.trust__grid div:last-child{border-right:0}.trust__grid span{grid-row:1/3;color:var(--gold2);font-size:31px}.trust__grid b{color:var(--gold2);font-size:14px}.trust__grid small{color:#d4c6b3}.about{padding:54px 0;border-bottom:1px solid var(--line)}.about__grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:55px}.about h2{font-size:45px;max-width:400px}.about h2:after{content:"";display:block;width:52px;height:3px;background:var(--gold);margin:20px 0}.about p{color:#ddd1bf}.about__image{border:1px solid rgba(214,162,50,.65);padding:5px;position:relative}.about__image img{width:100%;height:280px;object-fit:cover}.testimonials{padding:30px 0 24px}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-grid article{border:1px solid rgba(214,162,50,.35);border-radius:10px;padding:24px;background:#11100f}.testimonial-grid article>span{font-family:Georgia,serif;font-size:45px;line-height:0;color:var(--gold2)}.testimonial-grid p{color:#eee2d0}.testimonial-grid div{display:grid;grid-template-columns:42px 1fr;gap:0 11px;align-items:center}.testimonial-grid img{width:42px;height:42px;border-radius:50%;grid-row:1/3}.testimonial-grid b{font-size:14px}.testimonial-grid small{color:#b9ad9b}.dots{text-align:center;margin-top:20px}.dots span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4b4232;margin:0 3px}.dots .active{background:var(--gold2)}.cta{padding:20px 0 36px}.cta__inner{display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(135deg,#c30e15,#8b0509);border:1px solid rgba(255,207,117,.35);border-radius:8px;padding:25px 42px}.cta__inner div{display:grid;grid-template-columns:58px 1fr;gap:2px 18px}.cta__inner span{grid-row:1/3;color:var(--gold2);font-size:48px}.cta h2{margin:0;font-size:28px}.cta p{margin:0;color:#ffe6e6}.footer{padding:28px 0 0;border-top:1px solid var(--line)}.footer__grid{display:grid;grid-template-columns:1.45fr 1fr .9fr 1.4fr .7fr;gap:34px}.footer img{width:185px}.footer p,.footer a{display:block;color:#cfc4b5;font-size:13px;margin:0 0 8px}.footer h3{font-size:13px;color:var(--gold2);letter-spacing:1.8px;margin:0 0 14px}.social{display:flex;gap:12px;margin-top:15px}.social a{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.45);border-radius:50%;font-weight:900;color:#fff}.footer__bottom{margin-top:20px;padding:15px 0;border-top:1px solid rgba(214,162,50,.25);display:flex;align-items:center;justify-content:space-between;color:#b8ac9c;font-size:12px}.reveal{opacity:0;transform:translateY(16px);transition:.65s}.reveal.visible{opacity:1;transform:none}@media (max-width:980px){.topbar__inner,.topbar__left{height:auto;flex-wrap:wrap;justify-content:center;padding:8px 0}.header__inner{height:auto;min-height:72px;flex-wrap:wrap;padding:10px 0}.menu-toggle{display:block;margin-left:auto}.nav{display:none;order:4;width:100%;flex-direction:column;align-items:flex-start;padding:15px 0}.nav.open{display:flex}.header__cta{display:none}.hero__grid,.launch__grid,.about__grid{grid-template-columns:1fr}.hero__image{height:380px;margin:0;order:-1}.hero h1{font-size:46px}.filter-box{grid-template-columns:repeat(2,1fr)}.filter-box__btn{grid-column:1/-1}.property-grid,.trust__grid{grid-template-columns:repeat(2,1fr)}.services__grid,.testimonial-grid{grid-template-columns:1fr}.section-heading .btn{position:static;margin-top:20px}.footer__grid{grid-template-columns:repeat(2,1fr)}.footer__bottom{flex-direction:column;gap:8px}.cta__inner{flex-direction:column;align-items:flex-start}}@media (max-width:560px){.container{width:min(100% - 28px,var(--max))}.logo img{width:160px}.hero h1{font-size:38px}.hero__grid{min-height:auto;padding:30px 0}.mini-features,.filter-box,.property-grid,.trust__grid,.launch__items,.footer__grid{grid-template-columns:1fr}.hero__image{height:300px}.launch h2,.section-heading h2,.about h2{font-size:36px}.cta__inner{padding:24px}.cta__inner div{grid-template-columns:1fr}.topbar__right{display:none}}
.empty-results{grid-column:1/-1;color:#fff;text-align:center;border:1px solid rgba(218,165,32,.35);padding:28px;border-radius:18px;background:rgba(255,255,255,.04)}



/* =========================================================
   AJUSTE DA NOVA LOGO - CORREÇÃO DE PROPORÇÃO DO CABEÇALHO
   ========================================================= */
.header__inner{
  min-height:86px;
  height:auto;
  padding:10px 0;
  align-items:center;
}

.logo{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  max-width:220px;
  overflow:hidden;
}

.logo img{
  width:auto !important;
  max-width:220px !important;
  max-height:70px !important;
  object-fit:contain;
  object-position:left center;
}

.footer-brand img{
  width:auto !important;
  max-width:210px !important;
  max-height:96px !important;
  object-fit:contain;
  object-position:left center;
}

.nav{
  flex-wrap:nowrap;
}

@media (max-width:1100px){
  .header__inner{
    gap:16px;
  }

  .logo{
    max-width:190px;
  }

  .logo img{
    max-width:190px !important;
    max-height:64px !important;
  }

  .nav{
    gap:14px;
    font-size:12px;
  }
}

@media (max-width:900px){
  .header__inner{
    min-height:78px;
  }

  .logo{
    max-width:170px;
  }

  .logo img{
    max-width:170px !important;
    max-height:58px !important;
  }
}

@media (max-width:760px){
  .header__inner{
    min-height:74px;
    padding:8px 0;
  }

  .logo{
    max-width:158px;
  }

  .logo img{
    max-width:158px !important;
    max-height:54px !important;
  }

  .footer-brand img{
    max-width:180px !important;
    max-height:82px !important;
  }
}


/* =========================================================
   PÁGINAS INTERNAS DO MENU
   ========================================================= */
.page-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--line);
}

.page-hero__grid{
  position:relative;
  min-height:430px;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:34px;
  align-items:center;
  padding:48px 0;
}

.page-hero__copy h1{
  font-family:Georgia,'Times New Roman',serif;
  font-size:54px;
  line-height:1;
  font-weight:500;
  margin:0;
  color:#fff;
  max-width:620px;
}

.page-hero__copy h1 span{
  color:var(--gold2);
}

.page-hero__copy p:not(.eyebrow){
  color:#eee3d3;
  font-size:17px;
  max-width:560px;
  margin:22px 0;
}

.page-hero__image{
  border:1px solid rgba(214,162,50,.45);
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 22px 55px rgba(0,0,0,.45);
  position:relative;
}

.page-hero__image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,0));
  pointer-events:none;
}

.page-hero__image img{
  width:100%;
  height:330px;
  object-fit:cover;
}

.page-content{
  padding:72px 0;
  border-bottom:1px solid var(--line);
}

.split-content{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:28px;
  align-items:stretch;
}

.text-card,
.info-panel,
.contact-form{
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  border:1px solid rgba(214,162,50,.34);
  border-radius:var(--radius);
  padding:30px;
  box-shadow:0 16px 45px rgba(0,0,0,.22);
}

.text-card h2,
.info-panel h3,
.contact-form h3{
  font-family:Georgia,'Times New Roman',serif;
  color:#fff;
  font-size:34px;
  line-height:1.08;
  margin:0 0 18px;
  font-weight:500;
}

.text-card p,
.info-panel p{
  color:#d8cfbf;
}

.gold-list{
  display:grid;
  gap:10px;
  padding:0;
  margin:22px 0 0;
  list-style:none;
  color:#f2e7d5;
}

.gold-list li{
  position:relative;
  padding-left:28px;
}

.gold-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--gold2);
  font-weight:900;
}

.contact-list{
  display:grid;
  gap:10px;
  margin:24px 0;
  color:#f3e8d4;
}

.contact-form{
  display:grid;
  gap:14px;
}

.contact-form label{
  display:grid;
  gap:7px;
  color:#e7dac6;
  font-weight:700;
  font-size:13px;
}

.contact-form input,
.contact-form select,
.contact-form textarea{
  width:100%;
  border:1px solid rgba(214,162,50,.32);
  background:#090909;
  color:#fff;
  border-radius:10px;
  padding:13px 14px;
  outline:none;
  font:inherit;
}

.contact-form textarea{
  resize:vertical;
}

.center{
  text-align:center;
}

.footer__brand img{
  display:block;
}

@media (max-width:980px){
  .page-hero__grid,
  .split-content{
    grid-template-columns:1fr;
  }

  .page-hero__copy h1{
    font-size:44px;
  }

  .page-hero__image{
    order:-1;
  }
}

@media (max-width:560px){
  .page-hero__grid{
    min-height:auto;
    padding:30px 0;
  }

  .page-hero__copy h1{
    font-size:36px;
  }

  .page-hero__image img{
    height:250px;
  }

  .text-card,
  .info-panel,
  .contact-form{
    padding:22px;
  }
}


/* =========================================================
   PÁGINA INDIVIDUAL DO IMÓVEL
   ========================================================= */
.property-detail-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--line);
}

.property-detail-hero__grid{
  position:relative;
  min-height:520px;
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:34px;
  align-items:center;
  padding:48px 0;
}

.property-detail-hero__copy h1{
  font-family:Georgia,'Times New Roman',serif;
  font-size:56px;
  line-height:1;
  font-weight:500;
  margin:0;
  color:#fff;
}

.property-location{
  color:#e8dcc8;
  font-size:18px;
  margin:18px 0 8px;
}

.property-price{
  display:block;
  color:var(--gold2);
  font-size:34px;
  margin:0 0 24px;
}

.property-detail-hero__image{
  border:1px solid rgba(214,162,50,.45);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,.48);
}

.property-detail-hero__image img{
  width:100%;
  height:420px;
  object-fit:cover;
}

.property-detail{
  padding:70px 0;
  border-bottom:1px solid var(--line);
}

.property-detail__grid{
  display:grid;
  grid-template-columns:1fr 340px;
  gap:28px;
  align-items:start;
}

.property-main{
  display:grid;
  gap:28px;
}

.property-specs-large{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.property-specs-large div{
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  border:1px solid rgba(214,162,50,.34);
  border-radius:16px;
  padding:20px;
  display:grid;
  gap:4px;
  text-align:center;
}

.property-specs-large span{
  color:var(--gold2);
  font-size:30px;
}

.prop-stat-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--gold2);
  line-height:0;
  min-height:34px;
}

.prop-stat-icon svg{width:28px;height:28px;display:block}

.property-specs-large b{
  color:#fff;
  font-size:28px;
}

.property-specs-large small{
  color:#d7cab9;
}

.property-description h2{
  margin-bottom:15px;
}

.property-gallery{
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  border:1px solid rgba(214,162,50,.25);
  border-radius:18px;
  padding:24px;
}

.section-heading--compact{
  margin-bottom:20px;
}

.section-heading--compact h2{
  font-size:34px;
}

.gallery-grid{
  display:grid;
  grid-template-columns:1.35fr 1fr;
  gap:14px;
}

.gallery-grid figure{
  margin:0;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(214,162,50,.25);
  background:#111;
  min-height:180px;
}

.gallery-grid figure:first-child{
  grid-row:span 2;
}

.gallery-grid img{
  width:100%;
  height:100%;
  min-height:180px;
  object-fit:cover;
  transition:.35s ease;
}

.gallery-grid figure:hover img{
  transform:scale(1.04);
}

.property-sidebar{
  display:grid;
  gap:18px;
  position:sticky;
  top:120px;
}

.contact-card{
  background:linear-gradient(145deg,rgba(183,13,18,.32),rgba(255,255,255,.045));
  border:1px solid rgba(255,82,82,.35);
  border-radius:18px;
  padding:24px;
  box-shadow:0 18px 45px rgba(0,0,0,.28);
  display:grid;
  gap:14px;
}

.contact-card h3{
  font-family:Georgia,'Times New Roman',serif;
  color:#fff;
  margin:0;
  font-size:28px;
}

.contact-card p{
  color:#f2dfd8;
  margin:0;
}

.details-link{
  display:inline-flex;
  color:var(--gold2);
  font-weight:800;
  margin-top:14px;
  font-size:13px;
}

.property-card__image{
  display:block;
  color:inherit;
}

.property-card__image button{
  pointer-events:none;
}

@media (max-width:980px){
  .property-detail-hero__grid,
  .property-detail__grid{
    grid-template-columns:1fr;
  }

  .property-sidebar{
    position:static;
  }

  .property-detail-hero__copy h1{
    font-size:44px;
  }

  .property-detail-hero__image{
    order:-1;
  }

  .property-specs-large{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:560px){
  .property-detail-hero__grid{
    min-height:auto;
    padding:30px 0;
  }

  .property-detail-hero__copy h1{
    font-size:36px;
  }

  .property-price{
    font-size:28px;
  }

  .property-detail-hero__image img{
    height:270px;
  }

  .property-specs-large,
  .gallery-grid{
    grid-template-columns:1fr;
  }

  .gallery-grid figure:first-child{
    grid-row:auto;
  }
}


/* =========================================================
   HERO COM BANNER OTIMIZADO DESKTOP + MOBILE
   ========================================================= */
.hero-banner{
  position:relative;
  background:#050505;
  overflow:hidden;
  border-bottom:1px solid var(--line);
}

.hero-banner picture,
.hero-banner img{
  display:block;
  width:100%;
}

.hero-banner img{
  height:auto;
  aspect-ratio:1600/900;
  object-fit:cover;
  object-position:center;
}

@media (max-width:760px){
  .hero-banner img{
    aspect-ratio:768/1365;
    object-fit:cover;
  }
}


/* imagem otimizada da página comprar */
.page-hero__image picture{
  display:block;
}
.page-hero__image picture img{
  width:100%;
  height:330px;
  object-fit:cover;
  display:block;
}


/* ajuste do botão do cabeçalho - texto mais leve */
.header__cta{
  font-weight:600 !important;
  letter-spacing:.1px;
}

.header__cta{
  box-shadow:0 8px 22px rgba(183,13,18,.22);
}


/* ícones dourados padronizados na seção de confiança */
.trust-icon{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--gold2);
  flex:0 0 34px;
}
.trust-icon svg{
  width:34px;
  height:34px;
  display:block;
}


/* ajuste do botão Buscar Imóveis - texto mais leve e sem quebra */
.filter-box__btn{
  font-weight:600 !important;
  white-space:nowrap !important;
  min-width:160px;
  padding-left:18px !important;
  padding-right:18px !important;
  letter-spacing:.1px;
  line-height:1.15;
  box-shadow:0 8px 22px rgba(183,13,18,.22);
}

@media (max-width:980px){
  .filter-box__btn{
    width:100%;
    min-width:0;
  }
}


/* =========================================================
   PADRÃO GLOBAL DOS BOTÕES - TEXTO MAIS LEVE
   ========================================================= */
.btn,
button.btn,
a.btn,
.header__cta,
.filter-box__btn,
.service-card a,
.details-link,
.admin-note,
.contact-form button,
.contact-card .btn,
.cta .btn{
  font-weight:600 !important;
  letter-spacing:.1px;
}

.btn,
button.btn,
a.btn{
  line-height:1.15;
}

.service-card a,
.details-link{
  font-weight:600 !important;
}

.btn--red,
.header__cta,
.filter-box__btn{
  box-shadow:0 8px 22px rgba(183,13,18,.22);
}

.btn--outline{
  box-shadow:none;
}



.cta__inner > div{
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
  grid-template-columns:none !important;
  max-width:720px;
}

.cta__inner > div > span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:58px !important;
  min-width:58px !important;
  height:58px !important;
  font-size:46px !important;
  line-height:1 !important;
  color:var(--gold2) !important;
}

.cta__inner h2{
  margin:0 0 4px !important;
  font-size:26px !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  color:#fff !important;
  max-width:none !important;
  white-space:normal !important;
}

.cta__inner p{
  margin:0 !important;
  color:#ffe6e6 !important;
  line-height:1.45 !important;
  max-width:none !important;
}

.cta__inner .btn{
  min-width:230px;
  white-space:nowrap !important;
}

@media (max-width:760px){
  .cta__inner{
    flex-direction:column !important;
    align-items:flex-start !important;
    padding:24px !important;
  }

  .cta__inner > div{
    align-items:flex-start !important;
    gap:14px !important;
  }

  .cta__inner h2{
    font-size:22px !important;
  }

  .cta__inner .btn{
    width:100%;
    min-width:0;
  }
}


/* ícone específico do card "Anuncie seu imóvel" */
.service-icon{
  width:72px;
  height:72px;
  border:1.5px solid var(--gold2);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--gold2);
  margin:0 auto 24px;
}
.service-icon svg{
  width:34px;
  height:34px;
  display:block;
}


/* padronização das imagens com <picture> nas páginas internas */
.page-hero__image picture{
  display:block;
  width:100%;
}
.page-hero__image picture img{
  display:block;
  width:100%;
  height:330px;
  object-fit:cover;
}

@media (max-width:980px){
  .page-hero__image picture img{
    height:300px;
  }
}

@media (max-width:560px){
  .page-hero__image picture img{
    height:250px;
  }
}




/* =========================================================
   OTIMIZAÇÃO FINAL - FILTROS, LOGO E DETALHES
   ========================================================= */
.logo picture,
.footer__brand picture{
  display:block;
  line-height:0;
}

.logo picture img,
.footer__brand picture img{
  display:block;
}

.filter-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:stretch;
  width:100%;
  min-width:280px;
}

.filter-actions .btn{
  min-height:46px;
}

.filter-clear{
  min-width:92px;
  justify-content:center;
  background:transparent;
  white-space:nowrap;
}

.empty-results{
  grid-column:1/-1;
  border:1px solid rgba(214,162,50,.35);
  border-radius:14px;
  padding:28px;
  background:rgba(255,255,255,.035);
  color:#f5ead8;
  text-align:center;
}

.empty-results h3{
  margin:0 0 8px;
  color:var(--gold2);
}

.footer-cta{
  margin-top:16px;
  color:#fff;
}

.footer-cta strong{
  color:var(--gold2);
}

@media (max-width:1200px){
  .filter-box{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .filter-actions{
    grid-column:1/-1;
    grid-template-columns:minmax(0,1fr) auto;
    min-width:0;
  }
}

@media (max-width:980px){
  .filter-box{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .filter-actions{
    grid-column:1/-1;
  }
}

@media (max-width:560px){
  .filter-box{
    grid-template-columns:1fr;
  }
  .filter-actions{
    grid-template-columns:1fr;
  }
}


/* centralização dos ícones do bloco Condomínio */
.launch__items span{
  display:grid;
  grid-template-columns:36px 1fr;
  gap:2px 9px;
  align-items:center;
}

.launch-icon{
  width:36px;
  height:36px;
  border:1px solid rgba(214,162,50,.55);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  justify-self:center;
  align-self:center;
  color:var(--gold2);
  grid-row:1 / span 2;
  box-sizing:border-box;
  line-height:0;
}

.launch-icon svg{
  width:18px;
  height:18px;
  display:block;
  margin:auto;
  flex:0 0 auto;
}


/* links invisíveis sobre os botões do banner hero */
.hero-hotspot{
  position:absolute;
  z-index:4;
  display:block;
  border-radius:10px;
  background:transparent;
  cursor:pointer;
}

.hero-hotspot:focus-visible{
  outline:2px solid var(--gold2);
  outline-offset:4px;
}

/* Desktop: banner 1600x900 */
.hero-hotspot--imoveis{
  left:6.2%;
  top:65.7%;
  width:16.8%;
  height:7.4%;
}

.hero-hotspot--whatsapp{
  left:24.4%;
  top:65.7%;
  width:17.8%;
  height:7.4%;
}

/* Mobile: banner vertical 768x1365 */
@media (max-width:760px){
  .hero-hotspot--imoveis{
    left:9.5%;
    top:67.4%;
    width:81%;
    height:5.4%;
  }

  .hero-hotspot--whatsapp{
    left:9.5%;
    top:74.0%;
    width:81%;
    height:5.4%;
  }
}



/* =========================================================
   AJUSTE MOBILE DO CARD WHATSAPP
   ========================================================= */
@media (max-width: 560px){
  .cta{
    padding: 26px 0 30px;
  }

  .cta__inner{
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center;
    gap: 18px;
    padding: 28px 22px !important;
    border-radius: 12px;
  }

  .cta__inner > div{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center;
    gap: 10px;
    width: 100%;
  }

  .cta__inner > div > span{
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 2px;
    color: var(--gold2);
    font-size: 34px;
    line-height: 1;
  }

  .cta__inner h2{
    width: 100%;
    max-width: 290px;
    margin: 0 auto;
    font-size: 25px !important;
    line-height: 1.18 !important;
    text-align: center;
  }

  .cta__inner p{
    width: 100%;
    max-width: 270px;
    margin: 0 auto;
    font-size: 15px;
    line-height: 1.45;
    text-align: center;
  }

  .cta__inner .btn{
    width: 100%;
    justify-content: center;
    min-height: 48px;
    margin-top: 2px;
    white-space: nowrap;
  }
}


/* Imagem inferior do Quem Somos mantendo o padrão do card */
.about__image picture{
  display:block;
  width:100%;
  height:100%;
}

.about__image picture img{
  width:100%;
  height:280px;
  object-fit:cover;
  display:block;
}


/* =========================================================
   SEO LOCAL - TEXTO REAL PARA GOOGLE E ACESSIBILIDADE
   ========================================================= */
.sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.seo-local{
  padding:42px 0 18px;
  border-top:1px solid rgba(214,162,50,.18);
}

.seo-local__inner{
  max-width:980px;
}

.seo-local h2{
  font-family:Georgia,'Times New Roman',serif;
  color:#fff;
  font-size:34px;
  line-height:1.08;
  font-weight:500;
  margin:0 0 14px;
}

.seo-local p:not(.eyebrow){
  color:#dfd2c0;
  font-size:16px;
  line-height:1.7;
  max-width:920px;
}

@media (max-width:560px){
  .seo-local{
    padding:30px 0 10px;
  }

  .seo-local h2{
    font-size:27px;
  }

  .seo-local p:not(.eyebrow){
    font-size:15px;
  }
}
