:root{
  --ink:#0b0b0b;
  --paper:#f5f3ef;
  --white:#fff;
  --muted:#72706b;
  --line:rgba(11,11,11,.13);
  --soft:#e8e4dd;
  --warm:#b99870;
  --radius:26px;
  --shadow:0 22px 70px rgba(0,0,0,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 48px));margin:0 auto}
.serif{font-family:Georgia,"Times New Roman",serif;font-weight:400}
.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.section{padding:112px 0}
.section-tight{padding:72px 0}
.section-head{display:grid;grid-template-columns:1fr .75fr;gap:36px;align-items:end;margin-bottom:46px}
.section-head h2{font-size:clamp(38px,5vw,72px);line-height:.98;margin:8px 0 0;letter-spacing:-.04em}
.section-head p{font-size:17px;line-height:1.75;color:var(--muted);margin:0;max-width:580px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 22px;border:1px solid transparent;font-size:14px;font-weight:700;transition:.25s ease;cursor:pointer}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{transform:translateY(-2px);background:#242424}
.btn-light{background:#fff;color:#111}
.btn-outline{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.04);backdrop-filter:blur(8px)}
.btn-outline:hover{background:rgba(255,255,255,.12)}
.btn-line{border-color:var(--line);background:transparent}
.btn-line:hover{background:#fff}

/* Header */
.header{position:fixed;inset:0 0 auto;z-index:50;transition:.3s ease;color:#fff}
.header.scrolled{background:rgba(8,8,8,.88);backdrop-filter:blur(18px);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;flex-direction:column;line-height:1}
.brand strong{font-family:Georgia,serif;font-size:24px;font-weight:400;letter-spacing:.08em}
.brand span{font-size:9px;letter-spacing:.26em;text-transform:uppercase;margin-top:7px;opacity:.66}
.nav-links{display:flex;align-items:center;gap:30px;font-size:13px}
.nav-links a{opacity:.84;transition:.2s}.nav-links a:hover{opacity:1}
.menu-btn{display:none;background:none;border:0;color:#fff;padding:8px;cursor:pointer}

/* Hero */
.hero{min-height:820px;height:100svh;position:relative;display:flex;align-items:center;background:#101010;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-image:url('../img/hero-cacio.webp');background-size:cover;background-position:center;transform:scale(1.025);animation:heroBreath 12s ease-in-out infinite alternate}
@keyframes heroBreath{from{transform:scale(1.025)}to{transform:scale(1.07)}}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.44) 0%,rgba(0,0,0,.14) 42%,rgba(0,0,0,.02) 70%)}
.hero-content{position:relative;z-index:2;color:#fff;padding-top:60px;width:min(610px,52vw)}
.hero-kicker{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:700;opacity:.85}
.hero-kicker::before{content:"";width:38px;height:1px;background:rgba(255,255,255,.68)}
.hero h1{font-family:Georgia,serif;font-size:clamp(58px,7vw,104px);line-height:.88;letter-spacing:-.055em;font-weight:400;margin:20px 0 22px}
.hero h1 span{display:block;font-family:"Segoe UI",Arial,sans-serif;text-transform:uppercase;font-size:.17em;letter-spacing:.24em;font-weight:600;margin-top:26px}
.hero p{font-size:18px;line-height:1.65;max-width:530px;color:rgba(255,255,255,.82);margin:0 0 32px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-scroll{position:absolute;z-index:2;bottom:35px;left:50%;transform:translateX(-50%);color:#fff;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;opacity:.7}
.hero-scroll i{height:40px;width:1px;background:rgba(255,255,255,.5);display:block;position:relative;overflow:hidden}.hero-scroll i::after{content:"";position:absolute;left:0;top:-100%;width:1px;height:100%;background:#fff;animation:scrollLine 2s ease infinite}@keyframes scrollLine{0%{top:-100%}70%,100%{top:100%}}

/* Moving stripe */
.marquee{background:#0b0b0b;color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);overflow:hidden;padding:17px 0;white-space:nowrap}
.marquee-track{display:inline-flex;gap:44px;align-items:center;animation:marquee 28s linear infinite;min-width:max-content}
.marquee-track span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;opacity:.72}.marquee-track b{font-size:9px;color:#bea17f}
@keyframes marquee{to{transform:translateX(-50%)}}

/* Intro */
.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}
.intro-stat{border-top:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;gap:24px}.intro-stat strong{font-family:Georgia,serif;font-weight:400;font-size:44px}.intro-stat span{font-size:13px;color:var(--muted);max-width:150px;text-align:right;line-height:1.45}
.intro-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.04em;margin:0 0 28px}.intro-copy p{font-size:18px;line-height:1.8;color:var(--muted);max-width:650px}

/* Properties */
.properties-section{background:#111;color:#fff;overflow:hidden}
.properties-section .section-head p{color:rgba(255,255,255,.58)}
.properties-section .eyebrow{color:#b99870}
.demo-note{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:rgba(255,255,255,.48);margin-top:14px}.demo-note::before{content:"";width:6px;height:6px;border-radius:50%;background:#b99870}
.carousel-wrap{position:relative}
.property-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px max(24px,calc((100vw - 1180px)/2)) 30px;scroll-behavior:smooth}.property-track::-webkit-scrollbar{display:none}
.property-card{min-width:min(420px,82vw);scroll-snap-align:start;background:#191919;border:1px solid rgba(255,255,255,.08);border-radius:22px;overflow:hidden;transition:.35s ease}.property-card:hover{transform:translateY(-8px);border-color:rgba(255,255,255,.2)}
.property-photo{aspect-ratio:4/3;background:#262626 center/cover no-repeat;position:relative;overflow:hidden}.property-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.52))}.property-tag{position:absolute;z-index:2;top:16px;left:16px;background:rgba(0,0,0,.62);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.18);padding:9px 11px;border-radius:999px;font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.property-body{padding:23px}.property-place{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#b99870}.property-body h3{font-family:Georgia,serif;font-size:29px;font-weight:400;margin:10px 0 18px;line-height:1.15}.property-meta{display:flex;gap:18px;color:rgba(255,255,255,.57);font-size:12px}.property-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.08);margin-top:22px;padding-top:18px}.property-price{font-size:13px;color:#fff}.property-arrow{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18)}
.carousel-controls{display:flex;justify-content:flex-end;gap:9px;width:min(1180px,calc(100% - 48px));margin:0 auto}.carousel-btn{width:48px;height:48px;border-radius:50%;background:transparent;border:1px solid rgba(255,255,255,.18);color:#fff;cursor:pointer;transition:.2s}.carousel-btn:hover{background:#fff;color:#111}

/* Image banners */
.story-banner{position:relative;min-height:680px;display:flex;align-items:center;overflow:hidden;background:#ddd}
.story-banner .bg{position:absolute;inset:0;background:center/cover no-repeat;transition:transform .3s ease-out}.story-banner.about .bg{background-image:url('../img/sobre-cacio.webp')}.story-banner.opportunity .bg{background-image:url('../img/oportunidades-cacio.webp')}
.story-banner .shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.88) 32%,rgba(255,255,255,.18) 56%,transparent 76%)}
.story-banner.opportunity .shade{background:linear-gradient(90deg,rgba(255,248,236,.9) 0%,rgba(255,248,236,.7) 34%,rgba(255,255,255,.06) 58%,transparent 74%)}
.story-copy{position:relative;z-index:2;width:min(520px,46vw)}
.story-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(44px,5vw,74px);line-height:.98;letter-spacing:-.04em;margin:14px 0 22px}.story-copy p{font-size:17px;line-height:1.75;color:#5f5d58;margin:0 0 28px}.credentials{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0}.credential{padding:13px 0;border-top:1px solid rgba(0,0,0,.15);font-size:12px;line-height:1.35}.credential strong{display:block;font-size:13px;margin-bottom:4px}

/* Differentials */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:46px}.service{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;min-height:260px;display:flex;flex-direction:column;justify-content:space-between;transition:.3s}.service:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.service-index{font-family:Georgia,serif;font-size:46px;color:#c6beb3}.service h3{font-family:Georgia,serif;font-size:28px;font-weight:400;margin:26px 0 10px}.service p{color:var(--muted);line-height:1.65;margin:0;font-size:14px}

/* Regions */
.regions{background:#e8e3dc}.region-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(0,0,0,.16);border-bottom:1px solid rgba(0,0,0,.16)}.region{padding:40px 24px;border-right:1px solid rgba(0,0,0,.14);min-height:180px;display:flex;flex-direction:column;justify-content:space-between}.region:last-child{border:0}.region span{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.region strong{font-family:Georgia,serif;font-size:30px;font-weight:400}

/* CTA */
.cta{background:#0c0c0c;color:#fff;position:relative;overflow:hidden}.cta::before{content:"CACIO";position:absolute;right:-30px;top:-80px;font-family:Georgia,serif;font-size:260px;color:rgba(255,255,255,.025);letter-spacing:-.06em}.cta-grid{display:grid;grid-template-columns:1fr .65fr;gap:80px;align-items:end;position:relative}.cta h2{font-family:Georgia,serif;font-size:clamp(50px,6vw,88px);font-weight:400;line-height:.96;letter-spacing:-.045em;margin:12px 0 0}.cta-side p{color:rgba(255,255,255,.6);line-height:1.7;margin:0 0 24px}.cta-actions{display:flex;flex-wrap:wrap;gap:12px}

/* Footer */
.footer{background:#080808;color:#fff;padding:52px 0 30px;border-top:1px solid rgba(255,255,255,.08)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:44px}.footer-brand p{color:rgba(255,255,255,.5);line-height:1.7;font-size:13px;max-width:320px}.footer h4{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:#b99870;margin:0 0 18px}.footer-links{display:grid;gap:10px;color:rgba(255,255,255,.64);font-size:13px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.08);padding-top:22px;margin-top:42px;font-size:11px;color:rgba(255,255,255,.38)}

/* Inner pages */
.inner-hero{background:#0b0b0b;color:#fff;padding:170px 0 90px}.inner-hero h1{font-family:Georgia,serif;font-size:clamp(56px,7vw,92px);font-weight:400;letter-spacing:-.05em;line-height:.92;margin:14px 0 18px}.inner-hero p{color:rgba(255,255,255,.6);max-width:660px;font-size:17px;line-height:1.7}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:38px}.filter{background:#fff;border:1px solid var(--line);padding:12px 16px;border-radius:999px;color:#555}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.listing{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}.listing .property-photo{aspect-ratio:1.25}.listing .property-body{color:#111}.listing .property-meta{color:#777}.listing .property-footer{border-color:#eee}.listing .property-arrow{border-color:#ddd}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact-list{display:grid;gap:18px;margin-top:34px}.contact-item{padding:20px 0;border-top:1px solid var(--line)}.contact-item label{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.contact-item strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.contact-form{background:#fff;border-radius:26px;padding:34px;border:1px solid var(--line)}.field{display:grid;gap:7px;margin-bottom:15px}.field label{font-size:12px;color:#666}.field input,.field select,.field textarea{border:1px solid #ddd;border-radius:13px;padding:14px;background:#fafafa;outline:none}.field textarea{min-height:130px;resize:vertical}

/* Reveal */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.in{opacity:1;transform:none}

@media(max-width:900px){
  .container{width:min(100% - 32px,1180px)}
  .section{padding:82px 0}
  .nav-links{position:fixed;inset:82px 0 auto;background:rgba(8,8,8,.97);padding:24px 20px 34px;display:none;flex-direction:column;align-items:flex-start;border-top:1px solid rgba(255,255,255,.08)}.nav-links.open{display:flex}.menu-btn{display:block}.nav .btn{display:none}
  .hero{min-height:720px;height:92svh}.hero-bg{background-position:68% center}.hero::after{background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.34) 60%,rgba(0,0,0,.08) 100%)}.hero-content{width:74vw;padding-top:58px}.hero h1{font-size:clamp(52px,13vw,78px)}.hero p{font-size:15px;max-width:430px}
  .section-head,.intro-grid,.cta-grid,.contact-grid{grid-template-columns:1fr;gap:36px}.intro-grid{gap:58px}.intro-stats{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.intro-stat strong{font-size:34px}.intro-stat span{font-size:11px}
  .story-banner{min-height:650px;align-items:flex-end;padding-bottom:58px}.story-banner .bg{background-position:68% center}.story-banner .shade,.story-banner.opportunity .shade{background:linear-gradient(0deg,rgba(247,244,239,.98) 0%,rgba(247,244,239,.86) 42%,rgba(247,244,239,.08) 70%,transparent 100%)}.story-copy{width:100%;max-width:620px}.story-copy h2{font-size:48px}.services-grid{grid-template-columns:1fr}.service{min-height:220px}.region-grid{grid-template-columns:1fr 1fr}.region:nth-child(2){border-right:0}.region:nth-child(-n+2){border-bottom:1px solid rgba(0,0,0,.14)}.listing-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:600px){
  .nav{height:72px}.nav-links{inset:72px 0 auto}.brand strong{font-size:20px}.hero{height:86svh;min-height:620px}.hero-bg{background-position:70% center}.hero::after{background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.1) 38%,rgba(0,0,0,.78) 100%)}.hero{align-items:flex-end;padding-bottom:80px}.hero-content{width:100%;padding-top:0}.hero h1{font-size:54px;margin-bottom:16px}.hero h1 span{font-size:.19em;margin-top:18px}.hero p{font-size:14px;line-height:1.55;margin-bottom:23px}.hero-scroll{display:none}.hero-actions .btn{padding:12px 16px;font-size:12px}
  .section-head h2{font-size:46px}.section-head p{font-size:15px}.intro-copy h2{font-size:46px}.intro-stats{grid-template-columns:1fr}.intro-stat span{max-width:180px}.property-card{min-width:86vw}.carousel-controls{width:calc(100% - 32px)}
  .story-banner{min-height:690px;padding-bottom:36px}.story-banner.about .bg{background-position:67% 20%}.story-banner.opportunity .bg{background-position:72% 20%}.story-copy h2{font-size:42px}.story-copy p{font-size:14px}.credentials{grid-template-columns:1fr}.region-grid{grid-template-columns:1fr}.region{border-right:0!important;border-bottom:1px solid rgba(0,0,0,.14)!important}.region:last-child{border-bottom:0!important}.listing-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column}.cta::before{font-size:150px;top:-30px}.cta h2{font-size:52px}.contact-form{padding:22px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* ==============================
   V2 — catálogo detalhado + mobile
   ============================== */
.hero{position:relative;display:flex;align-items:center;min-height:820px;height:100svh;background:#0d0d0d;overflow:hidden}
.hero-media{position:absolute;inset:0;background:url('../img/hero-cacio.webp') center/cover no-repeat;transform:scale(1.025);animation:heroBreath 12s ease-in-out infinite alternate}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.23) 42%,rgba(0,0,0,.02) 72%)}
.hero-inner{position:relative;z-index:2}
.hero-content{padding-top:60px}
.property-link{display:block;color:inherit}
.property-card .property-footer>span:first-child,.listing .property-footer>span:first-child{display:grid;gap:4px}
.property-footer small{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#a9a39b}
.property-price{font-size:17px!important;font-weight:700}
.property-card .property-price{color:#fff}
.property-costs{display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:1px solid #eee;margin-top:18px;padding-top:16px;color:#777;font-size:11px}
.property-costs span{display:grid;gap:4px}.property-costs strong{font-size:12px;color:#222;font-weight:600}
.listing{transition:.3s ease}.listing:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.listing .property-photo{transition:.45s ease}.listing:hover .property-photo{filter:brightness(1.04)}
.catalog-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:38px}.catalog-toolbar .filters{margin:0}.catalog-count{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:13px;white-space:nowrap}
.property-index-hero{padding-bottom:74px}

/* Property detail */
.property-detail-head{background:#0b0b0b;color:#fff;padding:150px 0 54px}.property-detail-title{display:grid;grid-template-columns:1fr auto;gap:70px;align-items:end}.back-link{display:inline-block;margin-bottom:28px;font-size:12px;color:rgba(255,255,255,.58)}.property-detail-title h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(48px,6vw,82px);letter-spacing:-.045em;line-height:.95;margin:14px 0 20px;max-width:850px}.property-title-meta{display:flex;gap:10px;flex-wrap:wrap}.property-title-meta span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;border:1px solid rgba(255,255,255,.14);padding:8px 10px;border-radius:999px;color:rgba(255,255,255,.7)}.property-head-price{text-align:right;display:grid;gap:7px;min-width:240px}.property-head-price small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#b99870}.property-head-price strong{font-family:Georgia,serif;font-size:36px;font-weight:400}.property-head-price span{font-size:12px;color:rgba(255,255,255,.52)}
.property-gallery-section{background:#0b0b0b;padding:0 0 44px}.gallery-main{height:min(68vw,720px);position:relative;overflow:hidden;background:#181818;border-radius:26px}.gallery-main img{width:100%;height:100%;object-fit:cover}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.4);backdrop-filter:blur(9px);color:#fff;cursor:pointer}.gallery-arrow.prev{left:20px}.gallery-arrow.next{right:20px}.gallery-counter{position:absolute;right:20px;bottom:20px;background:rgba(0,0,0,.56);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:9px 12px;font-size:11px}.gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px;overflow-x:auto}.gallery-thumb{height:96px;border:2px solid transparent;border-radius:13px;background:center/cover no-repeat;cursor:pointer;opacity:.66;transition:.2s}.gallery-thumb.active{border-color:#b99870;opacity:1}
.property-info-section{background:#f5f3ef}.property-info-grid{display:grid;grid-template-columns:1fr 370px;gap:72px;align-items:start}.property-main-info h2{font-family:Georgia,serif;font-size:clamp(40px,4.6vw,66px);font-weight:400;line-height:1;letter-spacing:-.04em;max-width:760px;margin:14px 0 38px}.property-spec-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.property-spec-grid>div{padding:23px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:8px;background:rgba(255,255,255,.38)}.property-spec-grid span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.property-spec-grid strong{font-family:Georgia,serif;font-size:25px;font-weight:400}.property-description{margin-top:45px}.property-description h3{font-family:Georgia,serif;font-size:28px;font-weight:400;margin:0 0 14px}.property-description p{font-size:16px;line-height:1.8;color:var(--muted);max-width:800px}.feature-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.feature-list span{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-size:12px;color:#56534f}.property-contact-card{position:sticky;top:110px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 22px 60px rgba(0,0,0,.08)}.contact-card-kicker{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.contact-price{font-family:Georgia,serif;font-size:38px;margin:8px 0 22px}.cost-row{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #eee;padding:14px 0;font-size:12px;color:#777}.cost-row strong{color:#111}.contact-card-divider{height:1px;background:#eee;margin:8px 0 22px}.property-contact-card h3{font-family:Georgia,serif;font-size:28px;font-weight:400;margin:0 0 10px}.property-contact-card p{font-size:13px;line-height:1.65;color:var(--muted)}.btn-full{width:100%;margin-top:12px}.secondary-contact{display:block;text-align:center;margin:15px 0 6px;font-size:12px}.demo-disclaimer{display:block;text-align:center;color:#999;line-height:1.4;margin-top:10px}
.mobile-whatsapp{display:none}

@media(max-width:900px){
  .catalog-toolbar{display:block}.catalog-count{padding-top:14px}
  .property-detail-title{grid-template-columns:1fr;gap:24px}.property-head-price{text-align:left}.property-info-grid{grid-template-columns:1fr;gap:44px}.property-contact-card{position:static}.property-spec-grid{grid-template-columns:repeat(2,1fr)}
  .gallery-thumbs{grid-template-columns:repeat(5,150px)}
}

@media(max-width:600px){
  body{padding-bottom:64px}
  .container{width:min(100% - 28px,1180px)}
  .header{background:rgba(8,8,8,.92);backdrop-filter:blur(14px)}
  .nav{height:66px}.nav-links{inset:66px 0 auto}.brand strong{font-size:18px}.brand span{font-size:7px;letter-spacing:.19em}.menu-btn{font-size:21px}
  /* dedicated mobile hero treatment — image and copy no longer fight each other */
  .hero{height:auto;min-height:0;display:block;padding-top:66px;background:#0b0b0b}
  .hero-media{position:relative;inset:auto;height:58svh;min-height:410px;background-image:url('../img/hero-cacio-mobile.webp');background-position:center top;transform:none;animation:none}
  .hero-overlay{display:none}.hero-inner{width:100%}.hero-content{width:100%;padding:28px 14px 42px;background:#0b0b0b}.hero-kicker{font-size:9px}.hero h1{font-size:48px;line-height:.92;margin:15px 0}.hero h1 span{font-size:.18em;margin-top:16px}.hero p{font-size:14px;line-height:1.6;color:rgba(255,255,255,.72);margin-bottom:20px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hero-actions .btn{padding:12px 10px;font-size:10px}.hero-scroll{display:none}
  .marquee{padding:13px 0}.marquee-track{gap:30px}.marquee-track span{font-size:10px}
  .section{padding:68px 0}.section-head{margin-bottom:30px}.section-head h2,.intro-copy h2{font-size:39px}.section-head p,.intro-copy p{font-size:14px;line-height:1.65}
  .intro-grid{gap:38px}.intro-stat{padding:16px 0}.intro-stat strong{font-size:30px}
  .property-track{padding-left:14px;padding-right:14px;gap:14px}.property-card{min-width:88vw;border-radius:18px}.property-photo{aspect-ratio:1.2}.property-body{padding:18px}.property-body h3{font-size:25px}.property-meta{gap:10px;flex-wrap:wrap}.property-price{font-size:16px!important}.carousel-controls{width:calc(100% - 28px)}
  /* mobile banners use mobile crops + copy as a separate card */
  .story-banner{display:block;min-height:0;padding:0;background:#f5f3ef}
  .story-banner .bg{position:relative;inset:auto;height:124vw;max-height:560px;transform:none!important;background-position:center top}
  .story-banner.about .bg{background-image:url('../img/sobre-cacio-mobile.webp')}.story-banner.opportunity .bg{background-image:url('../img/oportunidades-cacio-mobile.webp')}
  .story-banner .shade{display:none}.story-banner .container{width:100%;padding:0 14px}.story-copy{width:100%;max-width:none;background:#f5f3ef;padding:30px 0 42px}.story-copy h2{font-size:38px}.story-copy p{font-size:14px}.credentials{grid-template-columns:1fr 1fr;gap:8px}.credential{font-size:11px}
  .services-grid{gap:10px;margin-top:28px}.service{min-height:180px;padding:25px}.service-index{font-size:36px}.service h3{font-size:25px;margin:18px 0 8px}
  .region{min-height:130px;padding:25px 10px}.region strong{font-size:27px}
  .cta h2{font-size:43px}.cta-grid{gap:28px}.cta-actions{display:grid;grid-template-columns:1fr}.cta-actions .btn{width:100%}
  .inner-hero{padding:120px 0 60px}.inner-hero h1{font-size:48px}.inner-hero p{font-size:14px}
  .filters{display:grid;grid-template-columns:1fr;gap:8px}.filter{width:100%;border-radius:13px;padding:13px 14px}.catalog-count{font-size:10px}.listing-grid{gap:14px}.listing{border-radius:18px}.listing .property-photo{aspect-ratio:1.25}.property-costs{grid-template-columns:1fr 1fr}.listing .property-body{padding:18px}.listing .property-body h3{font-size:25px}
  .property-detail-head{padding:108px 0 32px}.back-link{margin-bottom:18px}.property-detail-title h1{font-size:43px;margin-bottom:16px}.property-head-price strong{font-size:31px}.property-head-price{min-width:0}
  .property-gallery-section{padding-bottom:26px}.gallery-main{height:72vw;border-radius:16px}.gallery-arrow{width:40px;height:40px}.gallery-arrow.prev{left:10px}.gallery-arrow.next{right:10px}.gallery-counter{right:10px;bottom:10px}.gallery-thumbs{grid-template-columns:repeat(5,104px);gap:7px}.gallery-thumb{height:70px;border-radius:9px}
  .property-info-section{padding-top:54px}.property-main-info h2{font-size:38px;margin-bottom:28px}.property-spec-grid{grid-template-columns:1fr 1fr}.property-spec-grid>div{padding:16px 12px}.property-spec-grid strong{font-size:21px}.property-description{margin-top:34px}.property-description p{font-size:14px}.property-contact-card{padding:22px;border-radius:18px}.contact-price{font-size:33px}
  .footer{padding-bottom:30px}.footer-grid{gap:28px}
  .mobile-whatsapp{display:flex;position:fixed;z-index:80;left:10px;right:10px;bottom:9px;height:48px;align-items:center;justify-content:center;background:#111;color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:999px;box-shadow:0 10px 35px rgba(0,0,0,.28);font-size:12px;font-weight:700;letter-spacing:.02em}
}
.hero::after{display:none!important}

/* =========================================================
   HOME V3 — OUTDOOR DIGITAL / MOVIMENTO CONTÍNUO
   ========================================================= */
.home-v3{background:#f4f1eb}
.home-v3 .hero-v3{min-height:760px}
.home-v3 .hero-v3 .hero-media{background-image:url('../img/hero-cacio.webp');background-position:center center}
.home-v3 .hero-v3 .hero-overlay{display:block;background:linear-gradient(90deg,rgba(0,0,0,.6) 0%,rgba(0,0,0,.34) 33%,rgba(0,0,0,.08) 58%,rgba(0,0,0,.02) 100%)}
.home-v3 .hero-v3 .hero-content{width:min(620px,52vw)}
.home-v3 .hero-v3 h1{font-size:clamp(64px,7.3vw,112px)}
.home-v3 .hero-v3 p{max-width:560px}

.editorial-ribbon{height:54px;background:#f7f5f1;border-bottom:1px solid rgba(0,0,0,.1);display:flex;align-items:center;overflow:hidden;white-space:nowrap}
.editorial-ribbon-track{display:inline-flex;align-items:center;gap:24px;min-width:max-content;animation:editorialMove 34s linear infinite;color:#111}
.editorial-ribbon-track span{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:650}
.editorial-ribbon-track i{width:4px;height:4px;border-radius:50%;background:#b99870;display:block}
@keyframes editorialMove{to{transform:translateX(-50%)}}

.outdoor-property-section{overflow:hidden;padding:94px 0 86px}
.outdoor-dark{background:#0d0d0d;color:#fff}
.outdoor-light{background:#eee9e1;color:#111;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08)}
.outdoor-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.65fr);gap:70px;align-items:end;margin-bottom:42px}
.outdoor-heading>div:first-child{position:relative;padding-left:58px}
.outdoor-number{position:absolute;left:0;top:3px;font-family:Georgia,serif;font-size:13px;opacity:.42;letter-spacing:.08em}
.outdoor-heading h2,.regions-title h2,.technical-copy h2,.contact-v3-copy h2,.authority-copy h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.045em}
.outdoor-heading h2{font-size:clamp(48px,5.4vw,78px);line-height:.94;margin:10px 0 0}
.outdoor-dark .eyebrow{color:#b99870}
.outdoor-heading-side{padding-bottom:4px}
.outdoor-heading-side p{font-size:15px;line-height:1.7;margin:0 0 18px;max-width:460px}
.outdoor-dark .outdoor-heading-side p{color:rgba(255,255,255,.56)}
.outdoor-light .outdoor-heading-side p{color:#69655e}
.outdoor-heading-side a{display:inline-flex;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:5px}

.outdoor-viewport{width:100%;overflow:hidden;position:relative;padding:4px 0 14px;touch-action:pan-y}
.outdoor-viewport::before,.outdoor-viewport::after{content:"";position:absolute;z-index:4;top:0;bottom:0;width:7vw;pointer-events:none}
.outdoor-dark .outdoor-viewport::before{left:0;background:linear-gradient(90deg,#0d0d0d,transparent)}
.outdoor-dark .outdoor-viewport::after{right:0;background:linear-gradient(-90deg,#0d0d0d,transparent)}
.outdoor-light .outdoor-viewport::before{left:0;background:linear-gradient(90deg,#eee9e1,transparent)}
.outdoor-light .outdoor-viewport::after{right:0;background:linear-gradient(-90deg,#eee9e1,transparent)}
.outdoor-runner{display:flex;width:max-content;will-change:transform}
.outdoor-set{display:flex;gap:18px;padding-right:18px}
.direction-left{animation:propertyBeltLeft 48s linear infinite}
.direction-right{animation:propertyBeltRight 52s linear infinite}
.outdoor-viewport:hover .outdoor-runner{animation-play-state:paused}
@keyframes propertyBeltLeft{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes propertyBeltRight{from{transform:translateX(-50%)}to{transform:translateX(0)}}

.outdoor-property-card{position:relative;width:410px;height:500px;border-radius:2px;overflow:hidden;flex:0 0 auto;background:#222;color:#fff;isolation:isolate}
.outdoor-property-card::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.02) 28%,rgba(0,0,0,.82) 100%)}
.outdoor-property-card img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.outdoor-property-card:hover img{transform:scale(1.045);filter:brightness(1.06)}
.outdoor-card-top{position:absolute;z-index:2;left:20px;right:20px;top:19px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.outdoor-chip{font-size:9px;letter-spacing:.14em;text-transform:uppercase;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(9px);padding:8px 10px;border-radius:999px}
.outdoor-card-index{font-family:Georgia,serif;font-size:13px;opacity:.8}
.outdoor-card-copy{position:absolute;z-index:2;left:22px;right:22px;bottom:21px}
.outdoor-card-place{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#d7c2a6;margin-bottom:9px}
.outdoor-card-copy h3{font-family:Georgia,serif;font-weight:400;font-size:31px;line-height:1.03;letter-spacing:-.025em;margin:0 0 18px;max-width:340px}
.outdoor-card-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:10px;color:rgba(255,255,255,.68);padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.18)}
.outdoor-card-foot{display:flex;align-items:end;justify-content:space-between;gap:16px;padding-top:16px}
.outdoor-card-foot small{display:block;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.52);margin-bottom:4px}
.outdoor-card-foot strong{font-size:18px;font-weight:600}
.outdoor-card-arrow{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.3);font-size:13px}

.authority-split{min-height:760px;display:grid;grid-template-columns:1.02fr .98fr;background:#f5f2ec}
.authority-media{min-height:760px;background:url('../img/authority-v3.webp') center/cover no-repeat}
.authority-copy{padding:100px clamp(38px,7vw,120px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.authority-copy h2{font-size:clamp(47px,5vw,75px);line-height:.98;margin:14px 0 24px;max-width:620px}
.authority-copy>p{font-size:17px;line-height:1.78;color:#69655f;max-width:620px;margin:0}
.authority-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%;border-top:1px solid rgba(0,0,0,.13);border-bottom:1px solid rgba(0,0,0,.13);margin:34px 0 30px}
.authority-stats>div{padding:20px 14px 20px 0;border-right:1px solid rgba(0,0,0,.1)}
.authority-stats>div:last-child{border-right:0;padding-left:14px}
.authority-stats>div:nth-child(2){padding-left:14px}
.authority-stats strong{display:block;font-family:Georgia,serif;font-size:38px;font-weight:400;margin-bottom:7px}
.authority-stats span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#77716a;line-height:1.5}

.micro-strip{background:#111;color:#fff;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.micro-strip .container{min-height:62px;display:flex;align-items:center;justify-content:center;gap:26px;flex-wrap:wrap}
.micro-strip span{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.68)}
.micro-strip span:nth-child(even){color:#b99870}

.technical-panel{padding:110px 0;background:#f8f6f2}
.technical-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:stretch}
.technical-copy{position:relative;padding:26px 0;display:flex;flex-direction:column;justify-content:center}
.technical-copy>.outdoor-number{position:static;display:block;margin-bottom:18px}
.technical-copy h2{font-size:clamp(48px,5vw,74px);line-height:.97;margin:12px 0 24px;max-width:520px}
.technical-copy>p{font-size:16px;line-height:1.75;color:#6b6862;max-width:520px;margin:0 0 30px}
.technical-list{border-top:1px solid rgba(0,0,0,.13)}
.technical-list>div{display:grid;grid-template-columns:48px 1fr;align-items:center;min-height:70px;border-bottom:1px solid rgba(0,0,0,.13)}
.technical-list span{font-family:Georgia,serif;font-size:12px;color:#8a8177}.technical-list strong{font-family:Georgia,serif;font-size:21px;font-weight:400}
.technical-image{min-height:630px;background:url('../img/authority-v3.webp') center/cover no-repeat}

.regions-v3{background:#0d0d0d;color:#fff;padding:92px 0 0;overflow:hidden}
.regions-title{padding-bottom:42px}
.regions-title .eyebrow{color:#b99870}.regions-title h2{font-size:clamp(48px,5.4vw,78px);line-height:.95;margin:10px 0 0}
.region-marquee{border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);overflow:hidden;white-space:nowrap}
.region-marquee-track{display:inline-flex;align-items:center;min-width:max-content;animation:regionMove 38s linear infinite}
.region-marquee-track span{font-family:Georgia,serif;font-size:clamp(54px,8vw,128px);font-weight:400;letter-spacing:-.04em;padding:31px 34px 38px}
.region-marquee-track i{font-family:Georgia,serif;font-style:normal;color:#b99870;font-size:13px;padding-right:4px}
@keyframes regionMove{to{transform:translateX(-50%)}}

.contact-visual-v3{position:relative;min-height:680px;background:#eee8de;overflow:hidden}
.contact-v3-media{position:absolute;inset:0;background:url('../img/contact-v3.webp') center/cover no-repeat}
.contact-v3-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,244,237,.03) 0%,rgba(248,244,237,.04) 42%,rgba(248,244,237,.78) 66%,rgba(248,244,237,.97) 100%)}
.contact-v3-inner{position:relative;z-index:2;min-height:680px;display:flex;align-items:center;justify-content:flex-end}
.contact-v3-copy{width:min(530px,42vw)}
.contact-v3-copy h2{font-size:clamp(48px,5.1vw,76px);line-height:.96;margin:12px 0 22px}
.contact-v3-copy p{font-size:16px;line-height:1.7;color:#68635d;margin:0 0 30px}
.contact-v3-copy .cta-actions{display:flex;gap:10px;flex-wrap:wrap}

/* home V3 mobile */
@media(max-width:900px){
  .home-v3 .hero-v3{height:auto;min-height:0;padding-top:66px;display:block}
  .home-v3 .hero-v3 .hero-media{position:relative;inset:auto;height:74svh;min-height:510px;max-height:780px;background-image:url('../img/hero-mobile-v3.webp');background-position:center 28%;transform:none;animation:none}
  .home-v3 .hero-v3 .hero-overlay{display:none}
  .home-v3 .hero-v3 .hero-inner{width:100%}
  .home-v3 .hero-v3 .hero-content{width:100%;max-width:none;padding:31px 24px 40px;background:#0b0b0b}
  .home-v3 .hero-v3 h1{font-size:clamp(48px,13vw,66px)}
  .home-v3 .hero-v3 p{font-size:14px;line-height:1.62}
  .editorial-ribbon{height:46px}.editorial-ribbon-track{gap:19px}.editorial-ribbon-track span{font-size:9px}
  .outdoor-property-section{padding:67px 0 58px}
  .outdoor-heading{grid-template-columns:1fr;gap:23px;margin-bottom:29px}
  .outdoor-heading>div:first-child{padding-left:38px}
  .outdoor-heading h2{font-size:clamp(41px,11vw,58px)}
  .outdoor-heading-side p{font-size:13px;line-height:1.65;max-width:520px}.outdoor-heading-side a{font-size:10px}
  .outdoor-property-card{width:min(76vw,330px);height:440px}
  .outdoor-card-copy h3{font-size:26px}.outdoor-card-copy{left:18px;right:18px;bottom:18px}.outdoor-card-top{left:16px;right:16px}
  .outdoor-set{gap:11px;padding-right:11px}.direction-left{animation-duration:42s}.direction-right{animation-duration:45s}
  .authority-split{display:flex;flex-direction:column;min-height:0}
  .authority-media{min-height:0;height:115vw;max-height:650px;background-image:url('../img/authority-mobile-v3.webp');background-position:center 24%}
  .authority-copy{padding:50px 24px 62px}
  .authority-copy h2{font-size:clamp(42px,11vw,58px)}.authority-copy>p{font-size:14px;line-height:1.7}
  .authority-stats{grid-template-columns:1fr;margin:27px 0}.authority-stats>div,.authority-stats>div:nth-child(2),.authority-stats>div:last-child{padding:15px 0;border-right:0;border-bottom:1px solid rgba(0,0,0,.08)}.authority-stats>div:last-child{border-bottom:0}.authority-stats strong{font-size:30px}.authority-stats span{font-size:9px}
  .micro-strip .container{justify-content:flex-start;flex-wrap:nowrap;overflow:hidden;white-space:nowrap;gap:16px;min-height:50px}.micro-strip span{font-size:8px}
  .technical-panel{padding:70px 0}.technical-grid{display:flex;flex-direction:column;gap:36px}.technical-copy{padding:0}.technical-copy h2{font-size:clamp(42px,11vw,58px)}.technical-copy>p{font-size:14px}.technical-list strong{font-size:19px}.technical-image{min-height:0;height:112vw;max-height:620px;background-image:url('../img/authority-mobile-v3.webp');background-position:center 25%}
  .regions-v3{padding-top:68px}.regions-title{padding-bottom:30px}.regions-title h2{font-size:clamp(42px,11vw,58px)}.region-marquee-track span{font-size:58px;padding:25px 22px 30px}
  .contact-visual-v3{min-height:0;background:#f2eee8}.contact-v3-media{position:relative;inset:auto;height:126vw;max-height:700px;background-image:url('../img/contact-mobile-v3.webp');background-position:center 28%}.contact-v3-media::after{display:none}
  .contact-v3-inner{min-height:0;display:block;width:100%;padding:0}.contact-v3-copy{width:100%;padding:39px 24px 54px}.contact-v3-copy h2{font-size:clamp(42px,11vw,58px)}.contact-v3-copy p{font-size:14px}.contact-v3-copy .cta-actions{display:grid;grid-template-columns:1fr 1fr}.contact-v3-copy .btn{padding:13px 10px;font-size:11px}
}

@media(max-width:600px){
  .home-v3 .hero-v3 .hero-media{height:70svh;min-height:500px;background-position:center 24%}
  .home-v3 .hero-v3 .hero-content{padding:26px 14px 38px}.home-v3 .hero-v3 h1{font-size:49px}.home-v3 .hero-v3 .hero-actions{grid-template-columns:1fr 1fr}
  .outdoor-heading{width:calc(100% - 28px)}
  .outdoor-heading>div:first-child{padding-left:32px}.outdoor-number{font-size:11px}
  .outdoor-heading h2{font-size:42px}.outdoor-property-card{width:79vw;max-width:315px;height:418px}
  .authority-copy{padding:42px 14px 56px}.authority-media{height:120vw;background-position:center 22%}
  .technical-grid{width:calc(100% - 28px)}.technical-image{height:116vw}
  .regions-title{width:calc(100% - 28px)}
  .contact-v3-copy{padding:35px 14px 49px}.contact-v3-copy .cta-actions{grid-template-columns:1fr}.contact-v3-media{height:132vw;background-position:center 30%}
}

@media(prefers-reduced-motion:reduce){
  .home-v3 .outdoor-runner,.home-v3 .editorial-ribbon-track,.home-v3 .region-marquee-track{animation:none!important;transform:none!important}
  .home-v3 .outdoor-viewport{overflow-x:auto;scrollbar-width:none}.home-v3 .outdoor-viewport::-webkit-scrollbar{display:none}
  .home-v3 .outdoor-viewport::before,.home-v3 .outdoor-viewport::after{display:none}
}

/* V4 — assinatura visual + logo motion */
.brand-logo{width:clamp(184px,16vw,244px);height:54px;justify-content:center;flex:0 0 auto}
.brand-logo img{width:100%;height:100%;object-fit:contain;object-position:left center;filter:drop-shadow(0 3px 12px rgba(0,0,0,.18))}
.footer .brand-logo{width:min(290px,100%);height:86px;margin-bottom:16px}
.brand-motion-section{position:relative;background:#050505;color:#fff;overflow:hidden;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.07)}
.brand-motion-section::before{content:"";position:absolute;inset:-45% 8%;background:radial-gradient(circle at 50% 50%,rgba(185,152,112,.15),rgba(185,152,112,.045) 34%,transparent 68%);filter:blur(22px);pointer-events:none}
.brand-motion-stage{position:relative;width:min(1120px,calc(100% - 48px));height:clamp(250px,28vw,390px);margin:0 auto;display:grid;place-items:center;isolation:isolate}
.brand-motion-video,.brand-motion-still{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transition:opacity .7s ease,transform 1.1s cubic-bezier(.22,.61,.36,1);z-index:2}
.brand-motion-video{opacity:1;transform:scale(1)}
.brand-motion-still{opacity:0;transform:scale(.992);padding:8% 4%}
.brand-motion-stage.is-holding .brand-motion-video{opacity:0}
.brand-motion-stage.is-holding .brand-motion-still{opacity:1;transform:scale(1)}
.brand-motion-glow{position:absolute;z-index:1;width:72%;height:1px;left:14%;bottom:16%;background:linear-gradient(90deg,transparent,rgba(212,178,132,.65),transparent);box-shadow:0 0 26px rgba(212,178,132,.25);opacity:.58}
.brand-motion-stage.is-holding .brand-motion-glow{animation:brandGlow 3.2s ease-in-out infinite alternate}
@keyframes brandGlow{from{opacity:.26;transform:scaleX(.88)}to{opacity:.72;transform:scaleX(1.04)}}
@media(max-width:900px){
  .brand-logo{width:174px;height:48px}
  .brand-motion-stage{width:calc(100% - 26px);height:245px}
  .brand-motion-still{padding:13% 1%}
  .brand-motion-section::before{inset:-20% -20%;background:radial-gradient(circle at 50% 48%,rgba(185,152,112,.18),rgba(185,152,112,.045) 38%,transparent 70%)}
  .brand-motion-glow{bottom:19%;width:82%;left:9%}
}
@media(max-width:600px){
  .brand-logo{width:148px;height:42px}
  .footer .brand-logo{width:240px;height:72px}
  .brand-motion-stage{height:210px;width:calc(100% - 20px)}
  .brand-motion-video{object-fit:contain}
  .brand-motion-still{padding:17% 0}
}
@media(prefers-reduced-motion:reduce){
  .brand-motion-video{display:none}.brand-motion-still{opacity:1;transform:none}.brand-motion-glow{animation:none!important}
}

/* V5 — divisões editoriais + motion acionado no viewport */
.photo-divider{position:relative;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(185,152,112,.22) 10%,rgba(213,177,126,.92) 50%,rgba(185,152,112,.22) 90%,transparent 100%);z-index:8}
.photo-divider i{position:absolute;left:50%;top:50%;width:7px;height:7px;background:#b99870;border:2px solid #0a0a0a;transform:translate(-50%,-50%) rotate(45deg);box-shadow:0 0 0 4px rgba(185,152,112,.10)}
.photo-divider-dark i{border-color:#050505}
/* Dentro de blocos foto + texto, a linha encosta exatamente na divisão visual. */
.authority-media{border-right:1px solid rgba(185,152,112,.42)}
.technical-image{border-left:1px solid rgba(185,152,112,.42);background-image:url('../img/technical-v5.webp')}
.contact-visual-v3{border-top:1px solid rgba(185,152,112,.28)}
.editorial-ribbon{border-top:1px solid rgba(185,152,112,.36);border-bottom:1px solid rgba(185,152,112,.36)}

/* A animação não corre escondida abaixo da dobra. */
.brand-motion-video,.brand-motion-still{opacity:0}
.brand-motion-stage.is-playing .brand-motion-video{opacity:1;transform:scale(1)}
.brand-motion-stage.is-playing .brand-motion-still{opacity:0}
.brand-motion-stage.is-holding .brand-motion-video{opacity:0}
.brand-motion-stage.is-holding .brand-motion-still{opacity:1;transform:scale(1)}
.brand-motion-stage.is-ready .brand-motion-video,.brand-motion-stage.is-ready .brand-motion-still{opacity:0}
.brand-motion-stage.is-ready::after{content:"";position:absolute;width:42px;height:1px;background:linear-gradient(90deg,transparent,#b99870,transparent);opacity:.28;animation:brandReady 1.7s ease-in-out infinite;z-index:1}
@keyframes brandReady{0%,100%{transform:scaleX(.55);opacity:.18}50%{transform:scaleX(1.1);opacity:.45}}

@media(max-width:900px){
  .authority-media{border-right:0;border-bottom:1px solid rgba(185,152,112,.42)}
  .technical-image{border-left:0;border-top:1px solid rgba(185,152,112,.42);background-image:url('../img/technical-mobile-v5.webp')}
  .photo-divider i{width:6px;height:6px}
}


/* V6 — vídeo real sem troca de imagem + divisores editoriais discretos */
.brand-motion-video{
  display:block!important;
  opacity:1!important;
  visibility:visible;
  transform:none!important;
  transition:none!important;
  background:#050505;
}
.brand-motion-still{display:none!important;opacity:0!important}
.brand-motion-stage.is-ready .brand-motion-video,
.brand-motion-stage.is-playing .brand-motion-video,
.brand-motion-stage.is-holding .brand-motion-video{display:block!important;opacity:1!important}
.brand-motion-stage.is-fallback .brand-motion-video{display:none!important}
.brand-motion-stage.is-fallback .brand-motion-still{display:block!important;opacity:1!important;transform:none!important}
.brand-motion-stage.is-ready::after{display:none!important}
.brand-motion-stage.is-holding .brand-motion-glow{animation:brandGlow 3.2s ease-in-out infinite alternate}

/* A linha vira apenas uma assinatura curta. Nada de traço dourado atravessando a tela. */
.photo-divider{
  height:1px;
  width:100%;
  background:transparent!important;
  display:flex;
  justify-content:center;
  align-items:center;
  opacity:.72;
}
.photo-divider::before{
  content:"";
  display:block;
  width:clamp(38px,4.5vw,64px);
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(185,152,112,.42),transparent);
}
.photo-divider i{display:none!important}
.authority-media{border-right:1px solid rgba(185,152,112,.14)!important}
.technical-image{border-left:1px solid rgba(185,152,112,.14)!important}
.contact-visual-v3{border-top:1px solid rgba(185,152,112,.10)!important}
.editorial-ribbon{border-top:1px solid rgba(185,152,112,.12)!important;border-bottom:1px solid rgba(185,152,112,.12)!important}

@media(max-width:900px){
  .authority-media{border-right:0!important;border-bottom:1px solid rgba(185,152,112,.12)!important}
  .technical-image{border-left:0!important;border-top:1px solid rgba(185,152,112,.12)!important}
  .photo-divider::before{width:42px;opacity:.72}
}


/* =========================================================
   V7 — DESKTOP: vídeo em looping + divisões realmente sutis
   ========================================================= */
@media (min-width:901px){
  /* O vídeo é a própria peça visual: fundo preto se mistura ao MP4. */
  .brand-motion-section{
    background:#000!important;
    border-top:0!important;
    border-bottom:0!important;
  }
  .brand-motion-section::before{display:none!important}
  .brand-motion-stage{
    width:min(1180px,calc(100% - 64px));
    height:clamp(260px,27vw,400px);
    background:#000!important;
  }
  .brand-motion-video{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    background:#000!important;
  }
  .brand-motion-still,.brand-motion-glow{display:none!important}

  /* A antiga foto da área técnica foi substituída por outra imagem. */
  .technical-image{
    background-image:url('../img/sobre-cacio.webp')!important;
    background-position:center center!important;
    border-left:1px solid rgba(185,152,112,.08)!important;
  }

  /* Linhas: apenas assinatura curta. */
  .photo-divider{
    height:0!important;
    min-height:0!important;
    margin:0!important;
    overflow:visible!important;
    opacity:.38!important;
  }
  .photo-divider::before{
    width:28px!important;
    height:1px!important;
    background:rgba(185,152,112,.30)!important;
  }
  .authority-media{border-right:1px solid rgba(185,152,112,.07)!important}
  .contact-visual-v3{
    border-top:0!important;
    border-bottom:0!important;
  }
  .editorial-ribbon{
    border-top:1px solid rgba(185,152,112,.08)!important;
    border-bottom:1px solid rgba(185,152,112,.08)!important;
  }
}

/* =========================================================
   V8 — DESKTOP: motion compatível + faixa regional fina
   ========================================================= */
@media (min-width:901px){
  /* Logo motion: preto absoluto para fundir com o próprio MP4. */
  .brand-motion-section,
  .brand-motion-stage,
  .brand-motion-video{background:#000!important}
  .brand-motion-section{border:0!important}
  .brand-motion-stage{
    width:min(1120px,calc(100% - 72px))!important;
    height:clamp(230px,24vw,350px)!important;
  }
  .brand-motion-video{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    opacity:1!important;
    visibility:visible!important;
  }

  /* A faixa animada das cidades no fim vira uma linha editorial fina. */
  .region-marquee{
    border-top:1px solid rgba(255,255,255,.07)!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
  }
  .region-marquee-track span{
    font-size:clamp(25px,2.35vw,38px)!important;
    line-height:1!important;
    padding:15px 22px 17px!important;
    letter-spacing:-.025em!important;
  }
  .region-marquee-track i{
    font-size:8px!important;
    opacity:.62!important;
    padding-right:1px!important;
  }

  /* Demais linhas ficam quase imperceptíveis. */
  .photo-divider::before{
    width:18px!important;
    background:rgba(185,152,112,.18)!important;
  }
  .editorial-ribbon{
    border-top:1px solid rgba(185,152,112,.055)!important;
    border-bottom:1px solid rgba(185,152,112,.055)!important;
  }
}

/* =========================================================
   V9 — desktop refinado + mobile redesenhado
   ========================================================= */

/* Desktop: sem bloco de vídeo. Hero e faixa regional mais leves. */
@media (min-width:901px){
  .mobile-brand-motion{display:none!important}
  .home-v3 .hero-v3 h1{
    font-size:clamp(58px,6vw,88px)!important;
    line-height:.91!important;
    letter-spacing:-.045em!important;
    font-weight:400!important;
  }
  .home-v3 .hero-v3 h1 span{
    font-size:.155em!important;
    letter-spacing:.23em!important;
    font-weight:500!important;
  }
  .home-v3 .hero-v3 p{font-size:16px!important;line-height:1.68!important;max-width:510px!important}
  .editorial-ribbon{height:38px!important}
  .editorial-ribbon-track{gap:20px!important}
  .editorial-ribbon-track span{font-size:9px!important;letter-spacing:.17em!important;font-weight:560!important}
  .editorial-ribbon-track i{width:3px!important;height:3px!important}

  /* A última faixa fica realmente editorial, sem peso visual. */
  .region-marquee{border-color:rgba(255,255,255,.055)!important}
  .region-marquee-track span{
    font-size:clamp(18px,1.65vw,27px)!important;
    line-height:1!important;
    padding:11px 17px 13px!important;
    letter-spacing:-.015em!important;
    font-weight:400!important;
  }
  .region-marquee-track i{font-size:7px!important;opacity:.46!important}
  .regions-v3{padding-top:72px!important}
  .regions-title{padding-bottom:30px!important}

  /* Fotos institucionais sem repetição. */
  .authority-media{background-image:url('../img/authority-desktop-v9.webp')!important;background-position:center center!important}
  .technical-image{background-image:url('../img/technical-desktop-v9.webp')!important;background-position:center 42%!important}

  /* Divisores quase imperceptíveis. */
  .photo-divider{height:0!important;opacity:.22!important}
  .photo-divider::before{width:12px!important;height:1px!important;background:rgba(185,152,112,.16)!important}
  .authority-media,.technical-image{border-color:rgba(185,152,112,.055)!important}
}

/* MOBILE — linguagem própria, mais editorial e menos "blocos empilhados". */
@media (max-width:900px){
  body.home-v3{background:#f3eee7;padding-bottom:70px}
  .home-v3 .header{background:linear-gradient(180deg,rgba(5,5,5,.84),rgba(5,5,5,.48),transparent)!important;backdrop-filter:none!important;box-shadow:none!important}
  .home-v3 .header.scrolled{background:rgba(8,8,8,.93)!important;backdrop-filter:blur(16px)!important}
  .home-v3 .nav{height:64px!important}
  .home-v3 .brand-logo img{width:118px!important;max-height:43px!important;object-fit:contain!important;object-position:left center!important}
  .home-v3 .menu-btn{display:grid!important;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.18)!important;border-radius:50%;font-size:0!important;padding:0!important}
  .home-v3 .menu-btn::before{content:'•••';font-size:16px;letter-spacing:2px;transform:translateY(-3px)}
  .home-v3 .nav>.btn{display:none!important}
  .home-v3 .nav-links{top:64px!important;inset:64px 12px auto!important;border-radius:20px;background:rgba(8,8,8,.96)!important;border:1px solid rgba(255,255,255,.09)!important;padding:12px!important;box-shadow:0 18px 55px rgba(0,0,0,.28)!important}
  .home-v3 .nav-links a{padding:14px 12px!important;border-bottom:1px solid rgba(255,255,255,.08);font-size:12px!important}
  .home-v3 .nav-links a:last-child{border-bottom:0}

  /* Hero mobile: foto em tela cheia, texto integrado por gradiente. */
  .home-v3 .hero-v3{
    min-height:82svh!important;
    height:auto!important;
    padding-top:0!important;
    display:flex!important;
    align-items:flex-end!important;
    position:relative!important;
    background:#090909!important;
  }
  .home-v3 .hero-v3 .hero-media{
    position:absolute!important;inset:0!important;
    width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
    background-image:url('../img/hero-mobile-v9.webp')!important;
    background-size:cover!important;background-position:center 33%!important;
  }
  .home-v3 .hero-v3::before{
    content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(180deg,rgba(0,0,0,.05) 18%,rgba(0,0,0,.06) 42%,rgba(0,0,0,.38) 68%,rgba(0,0,0,.91) 100%);
  }
  .home-v3 .hero-v3 .hero-inner{position:relative!important;z-index:2!important;width:100%!important;margin:0!important;padding:0 18px 34px!important}
  .home-v3 .hero-v3 .hero-content{padding:0!important;background:transparent!important;width:100%!important;max-width:510px!important}
  .home-v3 .hero-v3 .hero-kicker{font-size:8px!important;letter-spacing:.18em!important;opacity:.78!important}
  .home-v3 .hero-v3 .hero-kicker::before{width:22px!important;opacity:.6}
  .home-v3 .hero-v3 h1{font-size:clamp(42px,12vw,58px)!important;line-height:.91!important;letter-spacing:-.045em!important;margin:13px 0 14px!important;font-weight:400!important}
  .home-v3 .hero-v3 h1 span{font-size:.145em!important;letter-spacing:.23em!important;margin-top:14px!important;font-weight:500!important}
  .home-v3 .hero-v3 p{font-size:13px!important;line-height:1.55!important;max-width:420px!important;color:rgba(255,255,255,.74)!important;margin-bottom:18px!important}
  .home-v3 .hero-v3 .hero-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
  .home-v3 .hero-v3 .hero-actions .btn{min-height:42px!important;padding:11px 15px!important;font-size:10px!important;flex:1 1 145px!important}

  /* No mobile, o bloco de marca é SOMENTE o vídeo. */
  .mobile-brand-motion{display:block!important;background:#000!important;border:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
  .mobile-brand-motion::before,.mobile-brand-motion::after,.brand-motion-glow,.brand-motion-still{display:none!important}
  .mobile-brand-motion .brand-motion-stage{display:block!important;width:100%!important;height:auto!important;margin:0!important;background:#000!important}
  .mobile-brand-motion .brand-motion-video{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:3/1!important;object-fit:cover!important;display:block!important;background:#000!important;opacity:1!important}

  /* Faixa de transição mais fina. */
  .editorial-ribbon{height:34px!important;background:linear-gradient(90deg,#f7f2ea,#fff,#f7f2ea)!important;border:0!important}
  .editorial-ribbon-track{gap:18px!important;animation-duration:52s!important}
  .editorial-ribbon-track span{font-size:8px!important;letter-spacing:.16em!important;font-weight:600!important}
  .editorial-ribbon-track i{width:2px!important;height:2px!important}

  /* Esteiras: mais lentas, cards mais leves e margens confortáveis. */
  .outdoor-property-section{padding:58px 0 54px!important;position:relative!important}
  .outdoor-dark{background:linear-gradient(180deg,#0b0b0b 0%,#111 100%)!important}
  .outdoor-light{background:linear-gradient(180deg,#f1ece5 0%,#fbfaf8 100%)!important;border:0!important}
  .outdoor-heading{display:block!important;margin-bottom:27px!important;padding:0 18px!important}
  .outdoor-heading>div:first-child{padding-left:0!important}
  .outdoor-number{position:static!important;display:block!important;font-size:9px!important;margin-bottom:12px!important;opacity:.46!important}
  .outdoor-heading h2{font-size:clamp(38px,10.5vw,49px)!important;line-height:.98!important;margin-top:8px!important}
  .outdoor-heading-side{margin-top:16px!important;padding:0!important}
  .outdoor-heading-side p{font-size:12.5px!important;line-height:1.58!important;max-width:390px!important;margin-bottom:13px!important}
  .outdoor-heading-side a{font-size:9px!important;letter-spacing:.12em!important;padding-bottom:3px!important}
  .outdoor-set{gap:11px!important;padding-right:11px!important}
  .outdoor-property-card{width:78vw!important;max-width:330px!important;height:430px!important;border-radius:18px!important}
  .outdoor-card-top{left:14px!important;right:14px!important;top:14px!important}
  .outdoor-chip{font-size:7px!important;padding:7px 9px!important}
  .outdoor-card-copy{left:16px!important;right:16px!important;bottom:16px!important}
  .outdoor-card-copy h3{font-size:25px!important;margin-bottom:13px!important}
  .outdoor-card-meta{font-size:8.5px!important;gap:9px!important;padding-bottom:12px!important}
  .outdoor-card-foot{padding-top:12px!important}.outdoor-card-foot strong{font-size:15px!important}
  .direction-left{animation-duration:86s!important}.direction-right{animation-duration:92s!important}
  .outdoor-viewport::before,.outdoor-viewport::after{width:18px!important}

  /* Autoridade: foto própria + card claro que sobe sobre a imagem. */
  .authority-split{display:block!important;background:#f4efe8!important;padding-bottom:0!important}
  .authority-media{height:116vw!important;min-height:470px!important;max-height:650px!important;background-image:url('../img/authority-mobile-v9.webp')!important;background-position:center 24%!important;border:0!important}
  .authority-copy{position:relative!important;margin:-28px 12px 0!important;padding:34px 22px 38px!important;border-radius:28px 28px 0 0!important;background:linear-gradient(180deg,#fffdf9 0%,#f5f0e9 100%)!important;box-shadow:0 -14px 40px rgba(0,0,0,.08)!important}
  .authority-copy h2{font-size:clamp(38px,10vw,50px)!important;line-height:.99!important;margin:10px 0 16px!important}
  .authority-copy>p{font-size:13px!important;line-height:1.62!important}
  .authority-stats{grid-template-columns:repeat(3,1fr)!important;margin:25px 0 24px!important}
  .authority-stats>div{padding:15px 8px 15px 0!important}.authority-stats strong{font-size:28px!important}.authority-stats span{font-size:7.5px!important;letter-spacing:.08em!important}
  .authority-copy .btn{font-size:10px!important;padding:12px 17px!important}

  .micro-strip{background:#111!important;border:0!important;overflow:hidden!important}
  .micro-strip .container{min-height:43px!important;gap:11px!important;flex-wrap:nowrap!important;overflow:hidden!important;justify-content:flex-start!important;padding:0 2px!important}
  .micro-strip span{font-size:7.5px!important;letter-spacing:.12em!important;white-space:nowrap!important}

  /* Área técnica: gradiente suave e terceira foto exclusiva. */
  .technical-panel{padding:62px 14px 0!important;background:linear-gradient(180deg,#fbfaf8 0%,#eee6db 100%)!important}
  .technical-grid{display:flex!important;flex-direction:column!important;gap:28px!important}
  .technical-copy{padding:0 4px!important}
  .technical-copy h2{font-size:clamp(38px,10vw,50px)!important;line-height:.99!important;margin:9px 0 17px!important}
  .technical-copy>p{font-size:13px!important;line-height:1.62!important;margin-bottom:23px!important}
  .technical-list>div{min-height:58px!important;grid-template-columns:38px 1fr!important}.technical-list strong{font-size:17px!important}
  .technical-image{height:122vw!important;min-height:470px!important;max-height:650px!important;border:0!important;border-radius:24px 24px 0 0!important;background-image:url('../img/technical-mobile-v9.webp')!important;background-position:center 32%!important}

  /* Região: tipografia mais fina e movimento menos agressivo. */
  .regions-v3{padding-top:58px!important;background:#0c0c0c!important}
  .regions-title{padding:0 18px 27px!important}
  .regions-title h2{font-size:clamp(38px,10vw,50px)!important;line-height:.99!important}
  .region-marquee{border-top:1px solid rgba(255,255,255,.07)!important;border-bottom:1px solid rgba(255,255,255,.07)!important}
  .region-marquee-track{animation-duration:58s!important}
  .region-marquee-track span{font-size:34px!important;line-height:1!important;padding:16px 17px 19px!important;letter-spacing:-.02em!important;font-weight:400!important}
  .region-marquee-track i{font-size:7px!important;opacity:.52!important}

  /* Contato: quarta foto exclusiva + conteúdo em bloco suave. */
  .contact-visual-v3{display:block!important;min-height:0!important;background:#f5f0e8!important;border:0!important}
  .contact-v3-media{position:relative!important;inset:auto!important;height:118vw!important;min-height:460px!important;max-height:650px!important;background-image:url('../img/contact-mobile-v9.webp')!important;background-position:center 30%!important}
  .contact-v3-inner{position:relative!important;width:100%!important;margin:0!important;padding:0 14px 24px!important}
  .contact-v3-copy{margin-top:-24px!important;position:relative!important;background:linear-gradient(180deg,#fffdf9,#f2ece3)!important;border-radius:26px 26px 18px 18px!important;padding:30px 20px 25px!important;box-shadow:0 -12px 35px rgba(0,0,0,.07)!important;max-width:none!important}
  .contact-v3-copy h2{font-size:clamp(38px,10vw,50px)!important;line-height:.99!important;margin:10px 0 15px!important}
  .contact-v3-copy p{font-size:13px!important;line-height:1.6!important}
  .contact-v3-copy .cta-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:20px!important}
  .contact-v3-copy .btn{width:100%!important;font-size:10px!important;padding:12px 16px!important}

  /* Sem linhas douradas chamativas no mobile. */
  .photo-divider{display:none!important}
  .authority-media,.technical-image,.contact-visual-v3,.editorial-ribbon{border-color:transparent!important}
  .footer{padding-top:56px!important}
  .mobile-whatsapp{left:12px!important;right:12px!important;bottom:10px!important;height:48px!important;background:rgba(10,10,10,.94)!important;backdrop-filter:blur(12px)!important;border-color:rgba(255,255,255,.12)!important}
}

@media (max-width:600px){
  .home-v3 .container{width:calc(100% - 28px)!important}
  .home-v3 .hero-v3{min-height:84svh!important}
  .home-v3 .hero-v3 .hero-inner{padding:0 14px 28px!important}
  .home-v3 .hero-v3 h1{font-size:44px!important}
  .outdoor-property-card{width:81vw!important;height:420px!important}
  .authority-media,.technical-image,.contact-v3-media{min-height:440px!important}
}

/* =========================================================
   V10 — desktop preservado + mobile editorial inspirado no fluxo Cremonini
   ========================================================= */
.mobile-hero-logo-video,.mobile-home-intro{display:none}
/* A esteira nunca pausa no desktop: movimento contínuo, inclusive com mouse sobre os cards. */
.outdoor-viewport:hover .outdoor-runner{animation-play-state:running!important}

/* Catálogo / filtros v10 */
.catalog-toolbar-v10{display:block!important;padding:30px;border:1px solid rgba(0,0,0,.09);background:#faf8f4;border-radius:24px;margin-bottom:34px}
.catalog-filter-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:22px}
.catalog-filter-head h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:34px;margin:7px 0 0;letter-spacing:-.03em}
.filters-v10{display:grid!important;grid-template-columns:1.4fr repeat(5,1fr) auto;gap:10px;align-items:end}
.filters-v10 label{display:grid;gap:7px}.filters-v10 label>span{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#77716a;font-weight:700}
.filters-v10 .filter{width:100%;min-width:0;height:46px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff;padding:0 12px;color:#1a1a1a;outline:0}
.filters-v10 .filter:focus{border-color:rgba(185,152,112,.9);box-shadow:0 0 0 3px rgba(185,152,112,.12)}
.filter-clear{height:46px;border:0;background:transparent;padding:0 8px;text-decoration:underline;text-underline-offset:4px;font-size:10px;color:#766c61;cursor:pointer;white-space:nowrap}
.catalog-count-row{display:flex;justify-content:space-between;align-items:center;padding-top:17px;margin-top:17px;border-top:1px solid rgba(0,0,0,.08)}
.catalog-admin-link{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#70665a}
.mobile-filter-toggle{display:none}
.admin-footer-link{opacity:.55}

/* Login e painel — prévia funcional local, visualmente alinhada à marca */
.admin-shell{background:#0a0a0a;color:#111;min-height:100vh}
.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#090909}
.login-brand{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px;background:radial-gradient(circle at 50% 45%,rgba(185,152,112,.13),transparent 43%),#050505;color:#fff}
.login-brand img{width:min(520px,78%);filter:drop-shadow(0 14px 40px rgba(185,152,112,.18))}.login-brand p{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#b99870;margin-top:20px}
.login-card{background:#f5f1ea;padding:clamp(48px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.login-card h1{font:400 clamp(46px,5.2vw,76px)/.95 Georgia,serif;margin:10px 0 18px}.login-copy{color:#6d675f;line-height:1.7;max-width:560px;margin:0 0 28px}
.admin-form{display:grid;gap:15px}.admin-form label{display:grid;gap:7px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#5d574f;font-weight:700}.admin-form input{height:50px;border:1px solid rgba(0,0,0,.12);border-radius:12px;background:#fff;padding:0 14px}.login-error{min-height:18px;font-size:11px;color:#8c352d}.demo-access{border:0;background:transparent;padding:13px 0;text-align:left;color:#73685b;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.back-site{margin-top:18px;font-size:11px;color:#726a61}
.admin-top{height:76px;background:#070707;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid rgba(255,255,255,.08)}.admin-logo img{width:170px;height:48px;object-fit:contain}.admin-top>div{display:flex;align-items:center;gap:18px}.admin-top a,.admin-top button{font-size:10px;color:#d9d3c9;background:none;border:0;cursor:pointer}
.admin-layout{min-height:calc(100vh - 76px);display:grid;grid-template-columns:280px 1fr;background:#f4f0e9}.admin-sidebar{background:#111;color:#fff;padding:48px 28px}.admin-sidebar .eyebrow{color:#b99870}.admin-sidebar h1{font:400 45px/1 Georgia,serif;margin:10px 0 16px}.admin-sidebar p{font-size:12px;line-height:1.65;color:rgba(255,255,255,.55);margin-bottom:34px}.admin-nav{display:block;width:100%;text-align:left;border:0;border-top:1px solid rgba(255,255,255,.09);background:transparent;color:rgba(255,255,255,.65);padding:16px 0;font-size:11px;cursor:pointer}.admin-nav.active{color:#fff}.admin-content{padding:46px}.admin-content-head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:22px}.admin-content-head h2{font:400 44px/1 Georgia,serif;margin:7px 0 0}.admin-notice{padding:13px 15px;border:1px solid rgba(185,152,112,.28);background:#fffaf2;border-radius:12px;font-size:11px;color:#756b60;margin-bottom:18px}.admin-table-wrap{overflow:auto;background:#fff;border-radius:18px;border:1px solid rgba(0,0,0,.08)}.admin-table{border-collapse:collapse;width:100%;min-width:760px}.admin-table th{text-align:left;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#807970;padding:14px 16px;border-bottom:1px solid #eee}.admin-table td{padding:14px 16px;border-bottom:1px solid #eee;font-size:11px}.admin-property-cell{display:flex;align-items:center;gap:12px}.admin-property-cell img{width:66px;height:48px;object-fit:cover;border-radius:7px}.admin-property-cell strong{display:block;font-family:Georgia,serif;font-size:15px;font-weight:400}.admin-property-cell small{display:block;color:#888;margin-top:4px}.admin-status{display:inline-block;background:#edf5ed;color:#456447;padding:6px 8px;border-radius:999px;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.admin-actions{white-space:nowrap}.admin-actions button,.admin-actions span{border:0;background:none;font-size:9px;margin-right:10px;color:#6e645a;cursor:pointer}
.admin-modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.65);display:none;place-items:center;padding:24px}.admin-modal.open{display:grid}.admin-modal-card{width:min(980px,100%);max-height:92vh;overflow:auto;background:#f8f5ef;border-radius:22px;padding:28px}.admin-modal-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}.admin-modal-head h2{font:400 38px/1 Georgia,serif;margin:6px 0 0}.modal-close{border:0;background:#111;color:#fff;width:38px;height:38px;border-radius:50%;font-size:22px;cursor:pointer}.property-admin-form .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.property-admin-form label{display:grid;gap:7px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#706a62;font-weight:700}.property-admin-form label.full{grid-column:1/-1}.property-admin-form input,.property-admin-form select,.property-admin-form textarea{width:100%;border:1px solid rgba(0,0,0,.12);border-radius:10px;background:#fff;padding:12px 13px;outline:0;text-transform:none;letter-spacing:0;font-weight:400;color:#111}.admin-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}

@media(max-width:1100px) and (min-width:901px){.filters-v10{grid-template-columns:repeat(3,1fr)}.filter-search{grid-column:span 2}.filter-clear{justify-self:start}}

@media(max-width:900px){
  /* Hero mobile: somente a animação da marca. Nenhuma foto pessoal. */
  .home-v3 .hero-v3{height:56svh!important;min-height:430px!important;max-height:610px!important;padding:64px 0 0!important;display:grid!important;place-items:center!important;background:#000!important;overflow:hidden!important}
  .home-v3 .hero-v3 .hero-media,.home-v3 .hero-v3 .hero-overlay,.home-v3 .hero-v3 .hero-inner,.home-v3 .hero-v3 .hero-scroll{display:none!important}
  .mobile-hero-logo-video{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#000!important;position:relative!important;z-index:2!important}
  .home-v3 .hero-v3::before{content:''!important;display:block!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 50% 53%,rgba(185,152,112,.13),transparent 42%)!important;z-index:1!important}

  .mobile-home-intro{display:block;background:linear-gradient(180deg,#f8f4ed 0%,#eee7dd 100%);padding:0 12px 22px;position:relative;z-index:4}
  .mobile-intro-inner{margin-top:-18px;background:#fffdfa;border-radius:25px;padding:31px 19px 18px;box-shadow:0 -16px 44px rgba(0,0,0,.12);border:1px solid rgba(185,152,112,.12)}
  .mobile-intro-inner h2{font:400 clamp(37px,10.6vw,50px)/.98 Georgia,serif;letter-spacing:-.04em;margin:9px 0 15px}.mobile-intro-inner>p{font-size:13px;line-height:1.62;color:#6e675f;margin:0 0 20px}.mobile-intro-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-intro-actions .btn{padding:12px 8px;font-size:9.5px}.mobile-filter-callout{margin-top:14px;padding:15px 3px 3px;border-top:1px solid rgba(0,0,0,.09);display:flex;align-items:center;justify-content:space-between;gap:15px}.mobile-filter-callout span{font-size:9px;color:#82796e}.mobile-filter-callout b{font-size:9px;letter-spacing:.06em;text-transform:uppercase;font-weight:700}

  /* Ritmo mobile: menos fotos pessoais, mais identidade de marca. */
  .authority-split{padding:0 12px 22px!important;background:#eee7dd!important}.authority-media{height:95vw!important;min-height:390px!important;max-height:570px!important;border-radius:24px 24px 0 0!important;background-image:url('../img/authority-mobile-v9.webp')!important;background-position:center 24%!important}.authority-copy{margin:-22px 0 0!important;border-radius:24px!important;padding:31px 19px 33px!important;box-shadow:0 -12px 34px rgba(0,0,0,.08)!important}.authority-stats{grid-template-columns:1fr 1fr 1fr!important}.authority-stats span{line-height:1.35!important}
  .technical-panel{padding:54px 12px!important;background:linear-gradient(180deg,#0c0c0c,#171411)!important;color:#fff!important}.technical-grid{background:radial-gradient(circle at 90% 0%,rgba(185,152,112,.16),transparent 33%);border:1px solid rgba(185,152,112,.14);border-radius:25px;padding:30px 19px!important}.technical-copy h2,.technical-list strong{color:#fff!important}.technical-copy>p{color:rgba(255,255,255,.61)!important}.technical-list{border-top-color:rgba(255,255,255,.12)!important}.technical-list>div{border-bottom-color:rgba(255,255,255,.1)!important}.technical-list span{color:#b99870!important}.technical-image{display:none!important}
  .contact-visual-v3{padding:0 12px 24px!important;background:#eee7dd!important}.contact-v3-media{display:none!important}.contact-v3-inner{padding:0!important}.contact-v3-copy{margin:0!important;border-radius:25px!important;padding:34px 20px 28px!important;background:radial-gradient(circle at 95% 5%,rgba(185,152,112,.18),transparent 35%),#0b0b0b!important;color:#fff!important;box-shadow:none!important}.contact-v3-copy .eyebrow{color:#b99870!important}.contact-v3-copy p{color:rgba(255,255,255,.64)!important}.contact-v3-copy .btn-dark{background:#fff!important;color:#111!important}.contact-v3-copy .btn-line{color:#fff!important;border-color:rgba(255,255,255,.18)!important}
  .regions-v3{padding-top:54px!important}.regions-title{padding-bottom:22px!important}.region-marquee-track span{font-size:30px!important;padding:14px 15px 17px!important}
  .outdoor-property-section{padding-top:52px!important}.outdoor-property-card{width:82vw!important;max-width:318px!important;height:405px!important;border-radius:20px!important}.outdoor-card-copy h3{font-size:23px!important}.direction-left{animation-duration:96s!important}.direction-right{animation-duration:102s!important}

  /* Filtros do catálogo: card compacto que abre sob demanda. */
  .property-index-hero{padding-bottom:54px!important}.property-catalog{padding-top:24px!important}.catalog-toolbar-v10{padding:18px 14px;border-radius:20px;margin-bottom:22px}.catalog-filter-head{margin:0;align-items:center}.catalog-filter-head h2{font-size:28px}.mobile-filter-toggle{display:inline-flex;align-items:center;gap:12px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:#fff;padding:10px 13px;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.mobile-filter-toggle span{font-size:15px;line-height:1}.filters-v10{display:none!important;grid-template-columns:1fr!important;margin-top:18px;gap:11px}.filters-v10.open{display:grid!important}.filters-v10 .filter{height:48px}.filter-clear{justify-self:start}.catalog-count-row{margin-top:14px;padding-top:14px}.catalog-admin-link{font-size:8px}.listing-grid{gap:14px!important}

  /* Login/painel responsivos. */
  .login-page{display:block;background:#f5f1ea}.login-brand{min-height:34vh;padding:30px}.login-brand img{width:min(330px,82%)}.login-card{padding:38px 18px 48px}.login-card h1{font-size:46px}.admin-layout{display:block}.admin-sidebar{padding:28px 18px}.admin-sidebar p{max-width:520px}.admin-content{padding:27px 14px 50px}.admin-content-head h2{font-size:34px}.admin-content-head .btn{font-size:9px;padding:11px 14px}.property-admin-form .form-grid{grid-template-columns:1fr}.property-admin-form label.full{grid-column:auto}.admin-modal{padding:8px}.admin-modal-card{padding:20px 14px;border-radius:18px}.admin-top{padding:0 14px}.admin-logo img{width:130px}.admin-top>div{gap:10px}
}
@media(max-width:430px){
 .home-v3 .hero-v3{height:50svh!important;min-height:390px!important}.mobile-intro-actions{grid-template-columns:1fr}.mobile-filter-callout{align-items:flex-start;flex-direction:column;gap:7px}.authority-stats{grid-template-columns:1fr!important}.authority-stats>div{border-right:0!important;border-bottom:1px solid rgba(0,0,0,.08)!important}.authority-stats>div:last-child{border-bottom:0!important}.outdoor-property-card{width:84vw!important;height:395px!important}.catalog-filter-head h2{font-size:25px}.catalog-filter-head .eyebrow{font-size:8px}
}


/* =========================================================
   V11 — esteiras continuamente animadas + arraste livre
   ========================================================= */
.outdoor-viewport{
  cursor:grab;
  user-select:none;
  -webkit-user-select:none;
  overscroll-behavior-x:contain;
  touch-action:pan-y;
}
.outdoor-viewport.is-dragging{cursor:grabbing}
.outdoor-viewport.is-dragging a{cursor:grabbing}
.outdoor-property-card,.outdoor-property-card img{-webkit-user-drag:none;user-drag:none}
.outdoor-property-card img{pointer-events:none}
/* Mesmo sob hover e durante o arraste, a animação continua rodando. */
.outdoor-viewport:hover .outdoor-runner,
.outdoor-viewport.is-dragging .outdoor-runner{animation-play-state:running!important}

@media(max-width:900px){
  /* Hero mobile V11: o MP4 é o próprio hero, sem foto ou poster por trás. */
  .home-v3 .hero-v3{
    height:52svh!important;
    min-height:390px!important;
    max-height:560px!important;
    background:#000!important;
    padding:58px 0 0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .home-v3 .hero-v3::before{display:none!important}
  .mobile-hero-logo-video{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#000!important;
  }
}

/* =========================================================
   V12 — MOBILE: hero vídeo + header progressivo + transições suaves
   Desktop preservado.
   ========================================================= */
.mobile-hero-name{display:none}

@media(max-width:900px){
  /* Header inicial quase invisível: só os três pontos. Ao rolar, entra a marca. */
  .home-v3 .header{
    background:transparent!important;
    border-bottom-color:transparent!important;
    box-shadow:none!important;
    transition:background .35s ease,border-color .35s ease,backdrop-filter .35s ease;
  }
  .home-v3 .header .nav{height:64px!important;padding:0 15px!important}
  .home-v3 .header .brand-logo{
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(-7px)!important;
    pointer-events:none!important;
    transition:opacity .3s ease,transform .3s ease,visibility .3s ease!important;
    width:128px!important;height:42px!important;
  }
  .home-v3 .header.is-scrolled{
    background:rgba(5,5,5,.92)!important;
    border-bottom-color:rgba(255,255,255,.08)!important;
    backdrop-filter:blur(16px)!important;
  }
  .home-v3 .header.is-scrolled .brand-logo{
    opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important;
  }
  .home-v3 .header .nav-links{top:64px!important;inset:64px 0 auto!important;background:rgba(5,5,5,.98)!important}
  .home-v3 .menu-btn{
    margin-left:auto!important;width:auto!important;height:auto!important;border:0!important;border-radius:0!important;
    background:transparent!important;padding:10px 0 10px 12px!important;color:#fff!important;
  }
  .home-v3 .menu-btn::before{content:'•••'!important;font-size:18px!important;letter-spacing:3px!important;line-height:1!important;transform:translateY(-3px)!important}

  /* Hero: só vídeo + nome, tudo no mesmo universo preto. */
  .home-v3 .hero-v3{
    height:58svh!important;min-height:460px!important;max-height:680px!important;padding:0!important;
    background:#020202!important;position:relative!important;display:grid!important;place-items:center!important;
  }
  .mobile-hero-logo-video{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;
    object-position:center 46%!important;background:#000!important;z-index:1!important;
  }
  .home-v3 .hero-v3::before{
    content:''!important;position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important;
    background:linear-gradient(180deg,rgba(0,0,0,.16) 0%,transparent 24%,transparent 67%,rgba(0,0,0,.84) 100%)!important;
  }
  .mobile-hero-name{
    display:block!important;position:absolute!important;z-index:3!important;left:20px!important;right:20px!important;bottom:24px!important;
    color:#fff!important;text-align:left!important;
  }
  .mobile-hero-eyebrow{display:block;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#c6a476;margin-bottom:6px}
  .mobile-hero-name strong{display:block;font:400 clamp(36px,10.8vw,52px)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.035em}

  /* Primeira sequência inteira escura, sem cartão branco sobreposto. */
  .mobile-home-intro{
    display:block!important;background:#070707!important;color:#fff!important;padding:0!important;position:relative!important;z-index:3!important;
    border-top:1px solid rgba(185,152,112,.32)!important;
  }
  .mobile-intro-inner{
    margin:0!important;background:linear-gradient(180deg,#090909 0%,#0d0d0d 100%)!important;border:0!important;border-radius:0!important;
    box-shadow:none!important;padding:34px 18px 30px!important;color:#fff!important;
  }
  .mobile-intro-inner .eyebrow{color:#c6a476!important}
  .mobile-intro-inner h2{color:#fff!important;font-size:clamp(35px,10vw,47px)!important;margin:9px 0 14px!important}
  .mobile-intro-inner>p{color:rgba(255,255,255,.62)!important;font-size:13px!important;line-height:1.66!important;margin-bottom:21px!important}
  .mobile-intro-actions{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .mobile-intro-actions .btn-dark{background:#fff!important;color:#0b0b0b!important;border-color:#fff!important}
  .mobile-intro-actions .btn-line{border-color:rgba(255,255,255,.22)!important;color:#fff!important}
  .mobile-filter-callout{border-top-color:rgba(255,255,255,.10)!important;margin-top:17px!important;padding-top:16px!important}
  .mobile-filter-callout span{color:rgba(255,255,255,.45)!important}.mobile-filter-callout b{color:#d7b987!important}
  .editorial-ribbon{background:#0c0c0c!important;border-top:1px solid rgba(255,255,255,.06)!important;border-bottom:1px solid rgba(185,152,112,.28)!important}
  .editorial-ribbon-track span{color:rgba(255,255,255,.60)!important}.editorial-ribbon-track i{background:#b99870!important}

  /* Uma faixa sutil em cada transição importante. */
  .home-v3 main>section:not(.hero-v3){position:relative!important}
  .home-v3 main>section:not(.hero-v3)::before{
    content:'';position:absolute;left:0;right:0;top:0;height:5px;z-index:12;pointer-events:none;
    background:linear-gradient(90deg,transparent 0%,rgba(185,152,112,.14) 15%,rgba(211,177,130,.62) 50%,rgba(185,152,112,.14) 85%,transparent 100%);
    opacity:.72;
  }
  .mobile-home-intro::before{display:none!important}

  /* Esteiras mais calmas e sem sobreposição visual. */
  .outdoor-property-section{padding:58px 0 52px!important}
  .outdoor-heading{width:calc(100% - 36px)!important;margin:0 auto 25px!important}
  .outdoor-heading>div:first-child{padding-left:0!important}
  .outdoor-heading h2{font-size:clamp(38px,10.5vw,48px)!important}
  .outdoor-heading-side p{font-size:12.5px!important;line-height:1.6!important}
  .outdoor-property-card{width:79vw!important;max-width:312px!important;height:414px!important;border-radius:18px!important}
  .direction-left{animation-duration:58s!important}.direction-right{animation-duration:62s!important}

  /* Autoridade: foto vira cenário de fundo, não um bloco solto acima do texto. */
  .authority-split{
    display:block!important;position:relative!important;min-height:720px!important;padding:0!important;background:#0a0a0a!important;overflow:hidden!important;
  }
  .authority-media{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;border-radius:0!important;
    background-image:url('../img/authority-mobile-v9.webp')!important;background-position:center 22%!important;background-size:cover!important;
  }
  .authority-split::after{
    content:'';position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(180deg,rgba(3,3,3,.08) 0%,rgba(5,5,5,.18) 35%,rgba(6,6,6,.82) 67%,#080808 100%);
  }
  .authority-copy{
    position:relative!important;z-index:2!important;margin:0!important;padding:315px 18px 34px!important;border-radius:0!important;background:transparent!important;
    box-shadow:none!important;color:#fff!important;min-height:720px!important;justify-content:flex-end!important;
  }
  .authority-copy .eyebrow{color:#d0ad7b!important}.authority-copy h2{color:#fff!important;font-size:clamp(38px,10.5vw,49px)!important;margin:10px 0 15px!important}
  .authority-copy>p{color:rgba(255,255,255,.66)!important;font-size:13px!important;line-height:1.65!important}
  .authority-stats{border-top-color:rgba(255,255,255,.13)!important;border-bottom-color:rgba(255,255,255,.13)!important;margin:23px 0 22px!important;grid-template-columns:repeat(3,1fr)!important}
  .authority-stats>div,.authority-stats>div:nth-child(2),.authority-stats>div:last-child{border-right:1px solid rgba(255,255,255,.09)!important;border-bottom:0!important;padding:13px 8px!important}
  .authority-stats>div:first-child{padding-left:0!important}.authority-stats>div:last-child{border-right:0!important}
  .authority-stats strong{color:#fff!important;font-size:27px!important}.authority-stats span{color:rgba(255,255,255,.48)!important;font-size:7.5px!important}
  .authority-copy .btn-dark{background:#fff!important;color:#111!important;border-color:#fff!important}

  /* Faixa de valores discretos e contínuos. */
  .micro-strip{background:#050505!important;border-top:1px solid rgba(185,152,112,.28)!important;border-bottom:1px solid rgba(185,152,112,.20)!important}

  /* Técnica: sem segunda foto pessoal no mobile; vira bloco editorial. */
  .technical-panel{padding:58px 18px!important;background:linear-gradient(180deg,#f7f3ed 0%,#eee7dc 100%)!important}
  .technical-grid{width:100%!important;display:block!important}
  .technical-copy{padding:0!important}
  .technical-copy h2{font-size:clamp(39px,10.5vw,49px)!important}
  .technical-copy>p{font-size:13px!important;line-height:1.65!important}
  .technical-image{display:none!important}

  .regions-v3{padding-top:58px!important}
  .regions-title{width:calc(100% - 36px)!important;padding-bottom:25px!important}
  .region-marquee-track span{font-size:49px!important;padding:23px 18px 28px!important}

  /* Contato final sem outra foto do Cacio: fechamento limpo de marca. */
  .contact-visual-v3{min-height:0!important;background:#0a0a0a!important;color:#fff!important}
  .contact-v3-media{display:none!important}
  .contact-v3-inner{display:block!important;min-height:0!important;padding:0!important;width:100%!important}
  .contact-v3-copy{width:100%!important;padding:48px 18px 62px!important;color:#fff!important}
  .contact-v3-copy .eyebrow{color:#c7a475!important}.contact-v3-copy h2{color:#fff!important;font-size:clamp(40px,10.8vw,50px)!important}
  .contact-v3-copy p{color:rgba(255,255,255,.62)!important;font-size:13px!important}
  .contact-v3-copy .btn-dark{background:#fff!important;color:#111!important;border-color:#fff!important}.contact-v3-copy .btn-line{color:#fff!important;border-color:rgba(255,255,255,.22)!important}

  /* Oculta divisores antigos: a V12 usa a faixa fina dos próprios blocos. */
  .photo-divider{display:none!important}
}

@media(max-width:600px){
  .home-v3 .hero-v3{height:56svh!important;min-height:440px!important}
  .mobile-hero-name{left:16px!important;right:16px!important;bottom:20px!important}
  .mobile-intro-inner{padding-left:16px!important;padding-right:16px!important}
  .authority-copy{padding-left:16px!important;padding-right:16px!important}
  .technical-panel,.contact-v3-copy{padding-left:16px!important;padding-right:16px!important}
}

/* =========================================================
   V13 — refinamento mobile + contato + contraste / linhas
   Desktop preservado.
   ========================================================= */
.btn-whatsapp{background:#25d366!important;color:#07130b!important;border-color:#25d366!important;box-shadow:0 12px 28px rgba(37,211,102,.18)}
.btn-whatsapp:hover{background:#2be16f!important;border-color:#2be16f!important}
.contact-v13-meta{display:flex;gap:10px 18px;flex-wrap:wrap;margin:22px 0 4px;padding-top:18px;border-top:1px solid rgba(255,255,255,.11)}
.contact-v13-meta span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.46)}

/* Contato — composição com imagem e informação, sem o desalinhamento antigo. */
.contact-page-v13{background:#f5f1eb;color:#111}
.contact-hero-v13{position:relative;min-height:720px;height:82svh;background:#090909;color:#fff;overflow:hidden;display:flex;align-items:flex-end}
.contact-hero-photo-v13{position:absolute;inset:0;background:url('../img/contact-v3.webp') center 28%/cover no-repeat;transform:scale(1.015)}
.contact-hero-shade-v13{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.73) 0%,rgba(0,0,0,.36) 48%,rgba(0,0,0,.06) 78%),linear-gradient(180deg,transparent 44%,rgba(0,0,0,.65) 100%)}
.contact-hero-content-v13{position:relative;z-index:2;padding-bottom:78px}
.contact-hero-content-v13 h1{font:400 clamp(62px,7vw,104px)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.052em;margin:13px 0 18px;max-width:760px}
.contact-hero-content-v13 p{max-width:560px;color:rgba(255,255,255,.72);font-size:16px;line-height:1.66;margin:0 0 28px}
.section-transition-v13{height:1px;background:#080808;position:relative;overflow:visible}
.section-transition-v13 i{position:absolute;left:50%;top:0;width:min(84px,22vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#b99870,transparent);opacity:.52}
.contact-details-v13{padding:96px 0 108px;background:linear-gradient(180deg,#f8f5f0,#eee8df)}
.contact-details-grid-v13{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.72fr);gap:88px;align-items:start}
.contact-copy-v13 h2{font:400 clamp(46px,5vw,72px)/.96 Georgia,"Times New Roman",serif;letter-spacing:-.045em;margin:12px 0 20px;max-width:780px}
.contact-copy-v13>p{color:#6d675f;max-width:610px;line-height:1.7}
.contact-list-v13{margin-top:38px;border-top:1px solid rgba(0,0,0,.12)}
.contact-list-v13>a,.contact-list-v13>div{display:grid;grid-template-columns:110px 1fr 28px;align-items:center;gap:16px;min-height:76px;border-bottom:1px solid rgba(0,0,0,.1)}
.contact-list-v13>div{grid-template-columns:110px 1fr}
.contact-list-v13 small{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#8a8278}.contact-list-v13 strong{font:400 20px/1.2 Georgia,serif}.contact-list-v13 span{font-size:15px;color:#9a7d59}
.contact-form-v13{position:sticky;top:110px;background:#fffdfa;border:1px solid rgba(0,0,0,.08);border-radius:26px;padding:32px;box-shadow:0 22px 70px rgba(40,31,22,.08)}
.contact-form-v13 h3{font:400 36px/1 Georgia,serif;letter-spacing:-.035em;margin:10px 0 27px}.contact-form-v13 .btn{width:100%}.contact-form-note-v13{font-size:10px;color:#91897f;line-height:1.5;margin:12px 0 0}

@media(max-width:900px){
  /* Segurança volta ao universo escuro, com contraste correto. */
  .home-v3 .technical-panel{padding:58px 18px!important;background:linear-gradient(180deg,#090909 0%,#12100e 100%)!important;color:#fff!important}
  .home-v3 .technical-grid{background:radial-gradient(circle at 93% 0%,rgba(185,152,112,.12),transparent 38%)!important;border:0!important;border-radius:0!important;padding:0!important}
  .home-v3 .technical-copy h2,.home-v3 .technical-list strong{color:#fff!important}
  .home-v3 .technical-copy>p{color:rgba(255,255,255,.62)!important}
  .home-v3 .technical-list{border-top-color:rgba(255,255,255,.11)!important}
  .home-v3 .technical-list>div{border-bottom-color:rgba(255,255,255,.09)!important}
  .home-v3 .technical-list span{color:#c5a170!important}

  /* Conhecimento local: a divisória é uma assinatura de 1px, não uma faixa. */
  .home-v3 .regions-v3::before{height:1px!important;background:linear-gradient(90deg,transparent 10%,rgba(185,152,112,.30) 50%,transparent 90%)!important;opacity:.5!important}
  .home-v3 .region-marquee{border-top:1px solid rgba(255,255,255,.055)!important;border-bottom:1px solid rgba(255,255,255,.055)!important}

  /* Home contato: refazido como painel editorial escuro, sem foto pessoal repetida. */
  .home-v3 .contact-editorial-v13{padding:0!important;background:#070707!important;color:#fff!important;min-height:0!important;overflow:hidden!important}
  .home-v3 .contact-editorial-v13::after{content:'';position:absolute;right:-80px;bottom:-110px;width:260px;height:260px;border:1px solid rgba(185,152,112,.11);border-radius:50%;box-shadow:0 0 0 38px rgba(185,152,112,.025),0 0 0 78px rgba(185,152,112,.018);pointer-events:none}
  .home-v3 .contact-editorial-v13 .contact-v3-media{display:none!important}
  .home-v3 .contact-editorial-v13 .contact-v3-inner{padding:0!important;width:100%!important}
  .home-v3 .contact-editorial-v13 .contact-v3-copy{margin:0!important;padding:58px 18px 66px!important;background:linear-gradient(145deg,#070707,#0d0c0b)!important;border-radius:0!important;box-shadow:none!important;color:#fff!important;position:relative!important;z-index:2!important}
  .home-v3 .contact-editorial-v13 .contact-v3-copy h2{font-size:clamp(40px,10.7vw,51px)!important;line-height:.98!important;color:#fff!important;margin:10px 0 17px!important;max-width:470px!important}
  .home-v3 .contact-editorial-v13 .contact-v3-copy p{font-size:13px!important;line-height:1.65!important;color:rgba(255,255,255,.62)!important;max-width:480px!important}
  .home-v3 .contact-editorial-v13 .contact-v13-meta{margin-top:22px!important}
  .home-v3 .contact-editorial-v13 .cta-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:23px!important}
  .home-v3 .contact-editorial-v13 .btn{width:100%!important}
  .home-v3 .contact-editorial-v13 .btn-line{color:#fff!important;border-color:rgba(255,255,255,.18)!important}

  /* WhatsApp flutuante: verde e invisível até haver rolagem real. */
  .mobile-whatsapp{display:flex!important;opacity:0!important;visibility:hidden!important;transform:translateY(16px)!important;pointer-events:none!important;background:#25d366!important;color:#07130b!important;border-color:#25d366!important;box-shadow:0 12px 36px rgba(0,0,0,.25),0 6px 20px rgba(37,211,102,.18)!important;transition:opacity .28s ease,transform .28s ease,visibility .28s ease!important}
  .mobile-whatsapp.is-visible{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}

  /* Página Contato mobile. */
  .contact-page-v13{padding-bottom:70px;background:#0a0a0a}
  .contact-page-v13 .header .nav>.btn{display:none!important}
  .contact-hero-v13{height:76svh;min-height:560px;max-height:760px;align-items:flex-end}
  .contact-hero-photo-v13{background-image:url('../img/contact-mobile-v9.webp');background-position:center 23%;transform:none}
  .contact-hero-shade-v13{background:linear-gradient(180deg,rgba(0,0,0,.04) 24%,rgba(0,0,0,.12) 50%,rgba(0,0,0,.91) 100%)}
  .contact-hero-content-v13{padding:0 18px 38px;width:100%}
  .contact-hero-content-v13 h1{font-size:clamp(47px,13vw,62px);margin:9px 0 13px}.contact-hero-content-v13 p{font-size:13px;line-height:1.58;max-width:430px;margin-bottom:20px}.contact-hero-content-v13 .btn{width:100%;max-width:360px}
  .section-transition-v13{background:#080808}.section-transition-v13 i{width:42px;opacity:.42}
  .contact-details-v13{padding:50px 18px 58px;background:linear-gradient(180deg,#f6f1e9,#eee7dd)}
  .contact-details-grid-v13{display:block;width:100%}
  .contact-copy-v13 h2{font-size:clamp(38px,10.5vw,49px);line-height:.98;margin:10px 0 16px}.contact-copy-v13>p{font-size:13px;line-height:1.62}
  .contact-list-v13{margin-top:29px}.contact-list-v13>a,.contact-list-v13>div{grid-template-columns:1fr 24px;gap:8px;min-height:76px;padding:13px 0}.contact-list-v13>div{grid-template-columns:1fr}.contact-list-v13 small{grid-column:1;font-size:8px}.contact-list-v13 strong{grid-column:1;font-size:18px;overflow-wrap:anywhere}.contact-list-v13 span{grid-column:2;grid-row:1/3;align-self:center}
  .contact-form-v13{position:static;margin-top:34px;padding:25px 18px;border-radius:22px;box-shadow:none}.contact-form-v13 h3{font-size:31px;margin-bottom:22px}
}

/* =========================================================
   V14 — MOBILE NAV UNIFICADO + NAVEGAÇÃO POR PÁGINAS
   Desktop preservado.
   ========================================================= */
@media(max-width:900px){
  /* Um único header mobile em todas as páginas. */
  .header{
    z-index:100!important;
    background:rgba(6,6,6,.94)!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
    box-shadow:none!important;
    backdrop-filter:blur(18px)!important;
    transition:background .55s cubic-bezier(.22,1,.36,1),
               border-color .55s cubic-bezier(.22,1,.36,1),
               backdrop-filter .55s cubic-bezier(.22,1,.36,1)!important;
  }
  .header .nav{
    height:64px!important;
    padding:0 15px!important;
    position:relative!important;
    z-index:103!important;
  }
  .header .brand-logo{
    width:128px!important;
    height:42px!important;
    position:relative!important;
    z-index:106!important;
    transition:opacity .58s cubic-bezier(.22,1,.36,1),
               transform .58s cubic-bezier(.22,1,.36,1),
               filter .58s cubic-bezier(.22,1,.36,1),
               visibility .58s step-end!important;
  }

  /* Home começa limpa: a marca nasce em fade quando o usuário rola. */
  .home-v3 .header{
    background:transparent!important;
    border-bottom-color:transparent!important;
    backdrop-filter:blur(0)!important;
  }
  .home-v3 .header .brand-logo{
    opacity:0!important;
    visibility:hidden!important;
    transform:translateY(-3px)!important;
    filter:blur(2px)!important;
    pointer-events:none!important;
  }
  .home-v3 .header.is-scrolled,
  .home-v3 .header.menu-open{
    background:rgba(5,5,5,.93)!important;
    border-bottom-color:rgba(255,255,255,.07)!important;
    backdrop-filter:blur(18px)!important;
  }
  .home-v3 .header.is-scrolled .brand-logo{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    filter:none!important;
    pointer-events:auto!important;
    transition:opacity .58s cubic-bezier(.22,1,.36,1),
               transform .58s cubic-bezier(.22,1,.36,1),
               filter .58s cubic-bezier(.22,1,.36,1),
               visibility 0s!important;
  }
  /* No topo da Home, mesmo com o menu aberto, preserva o hero sem logo duplicada. */
  .home-v3 .header.menu-open:not(.is-scrolled) .brand-logo{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  }

  /* Botão único: três pontos em todas as páginas. */
  .menu-btn{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    margin-left:auto!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    color:#fff!important;
    position:relative!important;
    z-index:108!important;
    font-size:0!important;
    line-height:1!important;
  }
  .menu-btn-fallback{display:none!important}
  .menu-btn::before{
    content:'•••'!important;
    display:block!important;
    font-family:Arial,sans-serif!important;
    font-size:17px!important;
    font-weight:400!important;
    letter-spacing:3px!important;
    line-height:1!important;
    transform:translateX(1px) translateY(-2px)!important;
    opacity:.92!important;
    transition:opacity .26s ease,transform .32s cubic-bezier(.22,1,.36,1)!important;
  }
  .menu-btn.is-open::before{
    content:'×'!important;
    font-family:Arial,sans-serif!important;
    font-size:30px!important;
    font-weight:200!important;
    letter-spacing:0!important;
    transform:none!important;
  }

  /* Menu editorial em tela cheia, igual na Home, Sobre, Imóveis e Contato. */
  .nav-links,
  .home-v3 .header .nav-links{
    display:flex!important;
    position:fixed!important;
    inset:0!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100vh!important;
    padding:105px 20px 34px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    background:
      radial-gradient(circle at 84% 8%,rgba(185,152,112,.12),transparent 28%),
      linear-gradient(160deg,#070707 0%,#0b0a09 54%,#050505 100%)!important;
    border:0!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-10px) scale(.992)!important;
    transform-origin:top center!important;
    transition:opacity .30s ease,visibility .30s ease,transform .42s cubic-bezier(.22,1,.36,1)!important;
    z-index:104!important;
    overflow:auto!important;
  }
  .nav-links.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  .nav-links::before{
    content:'Navegação'!important;
    display:block!important;
    padding:0 4px 19px!important;
    margin-bottom:1px!important;
    color:#b99870!important;
    font-size:8px!important;
    letter-spacing:.22em!important;
    text-transform:uppercase!important;
    border-bottom:1px solid rgba(255,255,255,.09)!important;
  }
  .nav-links::after{
    content:'Cacio Silva  •  CRECI 240055F  •  Caieiras / Grande São Paulo'!important;
    display:block!important;
    margin-top:auto!important;
    padding:24px 4px 0!important;
    color:rgba(255,255,255,.36)!important;
    font-size:8px!important;
    line-height:1.55!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    border-top:1px solid rgba(255,255,255,.08)!important;
  }
  .nav-links>a{
    display:grid!important;
    grid-template-columns:34px 1fr 28px!important;
    align-items:center!important;
    min-height:78px!important;
    padding:0 4px!important;
    border-bottom:1px solid rgba(255,255,255,.085)!important;
    color:#fff!important;
    opacity:1!important;
    font:400 clamp(33px,9.5vw,47px)/1 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.035em!important;
    transition:color .22s ease,padding-left .28s ease!important;
  }
  .nav-links>a::before{
    font-family:"Segoe UI",Arial,sans-serif!important;
    font-size:8px!important;
    letter-spacing:.12em!important;
    color:#8f785c!important;
  }
  .nav-links>a:nth-of-type(1)::before{content:'01'}
  .nav-links>a:nth-of-type(2)::before{content:'02'}
  .nav-links>a:nth-of-type(3)::before{content:'03'}
  .nav-links>a:nth-of-type(4)::before{content:'04'}
  .nav-links>a::after{
    content:'↗'!important;
    justify-self:end!important;
    font-family:Arial,sans-serif!important;
    font-size:14px!important;
    font-weight:300!important;
    color:rgba(255,255,255,.28)!important;
  }
  .nav-links>a[aria-current="page"]{
    color:#d6b584!important;
  }
  .nav-links>a[aria-current="page"]::after{color:#b99870!important}
  body.menu-open{overflow:hidden!important;touch-action:none!important}

  /* Remove qualquer estilo legado que fazia Home e internas parecerem menus diferentes. */
  .home-v3 .menu-btn{width:42px!important;height:42px!important;padding:0!important}
  .home-v3 .menu-btn::before{font-size:17px!important;letter-spacing:3px!important}
  .home-v3 .menu-btn.is-open::before{font-size:30px!important;letter-spacing:0!important}
}

@media(max-width:430px){
  .nav-links,
  .home-v3 .header .nav-links{padding:96px 16px 28px!important}
  .nav-links>a{min-height:73px!important;grid-template-columns:30px 1fr 24px!important}
}

/* =========================================================
   V15 — MOBILE OPENING / BRAND EXPERIENCE
   Topo contínuo, preto, minimalista e com menos informação.
   Desktop preservado.
   ========================================================= */
@media(max-width:900px){
  /* O início vira uma única experiência preta, sem cortes visuais. */
  .home-v3 .hero-v3{
    height:68svh!important;
    min-height:520px!important;
    max-height:760px!important;
    background:#000!important;
    border:0!important;
  }
  .home-v3 .hero-v3::before{
    background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,transparent 28%,transparent 62%,rgba(0,0,0,.76) 100%)!important;
  }
  .mobile-hero-logo-video{
    object-position:center 43%!important;
    background:#000!important;
  }
  .mobile-hero-name{
    left:24px!important;
    right:24px!important;
    bottom:91px!important;
    text-align:center!important;
  }
  .mobile-hero-eyebrow{
    margin-bottom:7px!important;
    color:rgba(205,174,127,.86)!important;
    font-size:7.5px!important;
    letter-spacing:.22em!important;
  }
  .mobile-hero-name strong{
    font-size:clamp(34px,9.8vw,48px)!important;
    letter-spacing:-.03em!important;
    font-weight:400!important;
  }

  /* Sinal de scroll sutil, integrado ao hero. */
  .home-v3 .hero-scroll{
    display:flex!important;
    bottom:24px!important;
    z-index:5!important;
    gap:9px!important;
    color:rgba(255,255,255,.46)!important;
    font-size:7px!important;
    letter-spacing:.19em!important;
    opacity:1!important;
  }
  .home-v3 .hero-scroll i{
    height:27px!important;
    background:rgba(255,255,255,.2)!important;
  }
  .home-v3 .hero-scroll i::after{background:#b99870!important}

  /* Intro reduzida: uma frase, uma linha de apoio e um link. */
  .mobile-home-intro{
    background:#000!important;
    color:#fff!important;
    border:0!important;
    padding:0!important;
    margin:0!important;
  }
  .mobile-intro-inner{
    min-height:32svh!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:54px 24px 66px!important;
    margin:0!important;
    background:linear-gradient(180deg,#000 0%,#030303 100%)!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .mobile-intro-inner .eyebrow{
    color:rgba(201,167,118,.82)!important;
    font-size:7px!important;
    letter-spacing:.23em!important;
    margin:0 0 15px!important;
  }
  .mobile-intro-inner h2{
    max-width:350px!important;
    margin:0!important;
    color:#fff!important;
    font:400 clamp(33px,9.2vw,43px)/1.02 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.038em!important;
  }
  .mobile-intro-inner>p{
    max-width:310px!important;
    margin:17px 0 0!important;
    color:rgba(255,255,255,.48)!important;
    font-size:11.5px!important;
    line-height:1.7!important;
  }
  .mobile-intro-link{
    display:inline-flex!important;
    align-items:center!important;
    gap:9px!important;
    margin-top:27px!important;
    padding:0 0 6px!important;
    color:rgba(255,255,255,.76)!important;
    border-bottom:1px solid rgba(185,152,112,.46)!important;
    font-size:9px!important;
    font-weight:600!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
  }
  .mobile-intro-link span{color:#b99870!important;font-size:12px!important}

  /* Remove a faixa editorial do topo no mobile para evitar aparência de jornal. */
  .home-v3 .mobile-home-intro + .editorial-ribbon{display:none!important}

  /* A primeira seção de imóveis nasce do mesmo preto; só depois o site abre visualmente. */
  .home-v3 .mobile-home-intro + .editorial-ribbon + .outdoor-dark,
  .home-v3 .outdoor-dark{
    background:#050505!important;
    border-top:0!important;
  }
  .home-v3 .outdoor-dark::before{
    left:50%!important;
    right:auto!important;
    width:44px!important;
    height:1px!important;
    transform:translateX(-50%)!important;
    background:linear-gradient(90deg,transparent,rgba(185,152,112,.62),transparent)!important;
    opacity:.7!important;
  }

  /* Evita qualquer legado dos botões/filtro antigos da abertura. */
  .mobile-intro-actions,.mobile-filter-callout{display:none!important}
}

@media(max-width:430px){
  .home-v3 .hero-v3{height:66svh!important;min-height:500px!important}
  .mobile-hero-name{bottom:86px!important}
  .mobile-intro-inner{padding:50px 21px 61px!important}
}


/* =========================================================
   V16 — MOBILE POLISH
   - remove nome duplicado sobre o vídeo
   - indicador circular de scroll
   - faixa de regiões muito mais sutil
   Desktop preservado.
   ========================================================= */
@media(max-width:900px){
  /* O vídeo já apresenta a marca: não repetir o nome em cima. */
  .home-v3 .mobile-hero-name{display:none!important}

  /* Indicador minimalista: círculo + seta, sem texto. */
  .home-v3 .hero-scroll{
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    left:50%!important;
    bottom:22px!important;
    transform:translateX(-50%)!important;
    border:1px solid rgba(255,255,255,.24)!important;
    border-radius:50%!important;
    background:rgba(0,0,0,.12)!important;
    backdrop-filter:blur(4px)!important;
    -webkit-backdrop-filter:blur(4px)!important;
    color:transparent!important;
    font-size:0!important;
    letter-spacing:0!important;
    opacity:.82!important;
    z-index:8!important;
    overflow:hidden!important;
    animation:scrollHintFloat 2.8s ease-in-out infinite!important;
  }
  .home-v3 .hero-scroll i{display:none!important}
  .home-v3 .hero-scroll::before{
    content:'↓';
    color:rgba(255,255,255,.78);
    font:300 17px/1 Arial,sans-serif;
    transform:translateY(-1px);
  }
  .home-v3 .hero-scroll::after{
    content:'';
    position:absolute;
    inset:5px;
    border-radius:50%;
    border:1px solid rgba(185,152,112,.13);
  }
  @keyframes scrollHintFloat{
    0%,100%{transform:translate(-50%,0)}
    50%{transform:translate(-50%,5px)}
  }

  /* A faixa de regiões vira só um detalhe editorial fino. */
  .home-v3 .region-marquee{
    min-height:30px!important;
    border-top:1px solid rgba(255,255,255,.045)!important;
    border-bottom:1px solid rgba(255,255,255,.045)!important;
    background:#070707!important;
  }
  .home-v3 .region-marquee-track{
    animation-duration:72s!important;
  }
  .home-v3 .region-marquee-track span{
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:9px!important;
    line-height:1!important;
    font-weight:500!important;
    letter-spacing:.17em!important;
    text-transform:uppercase!important;
    color:rgba(255,255,255,.42)!important;
    padding:10px 16px 11px!important;
  }
  .home-v3 .region-marquee-track i{
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:5px!important;
    line-height:1!important;
    color:rgba(185,152,112,.52)!important;
    opacity:1!important;
    padding-right:0!important;
  }
}
@media(max-width:430px){
  .home-v3 .hero-scroll{width:40px!important;height:40px!important;bottom:19px!important}
  .home-v3 .region-marquee-track span{font-size:8px!important;padding:9px 13px 10px!important;letter-spacing:.15em!important}
}

/* =========================================================
   V17 — MOBILE CLEAN HERO + MENU CONSISTENTE + AUTHORITY BG
   Desktop preservado.
   ========================================================= */
@media(max-width:900px){
  /* Um único CSS/menu em TODAS as páginas (cache-bust V17 no HTML). */
  .header,.home-v3 .header{z-index:300!important}
  .header .nav{z-index:302!important;pointer-events:auto!important}
  .menu-btn,.home-v3 .menu-btn{
    z-index:330!important;pointer-events:auto!important;touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;cursor:pointer!important;
  }
  .nav-links,.home-v3 .header .nav-links{z-index:320!important}

  /* Menu simplificado e robusto: entra da direita, sem parecer outro site. */
  .nav-links,.home-v3 .header .nav-links{
    display:flex!important;
    position:fixed!important;
    top:0!important;right:0!important;bottom:0!important;left:auto!important;
    width:min(88vw,390px)!important;height:100dvh!important;min-height:100vh!important;
    padding:92px 22px 28px!important;
    flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    background:linear-gradient(180deg,#080808 0%,#050505 100%)!important;
    border-left:1px solid rgba(255,255,255,.07)!important;
    box-shadow:-22px 0 70px rgba(0,0,0,.42)!important;
    opacity:1!important;visibility:visible!important;
    transform:translate3d(104%,0,0)!important;
    pointer-events:none!important;
    transition:transform .46s cubic-bezier(.22,1,.36,1)!important;
    overflow:auto!important;
  }
  .nav-links.open,.home-v3 .header .nav-links.open{
    transform:translate3d(0,0,0)!important;pointer-events:auto!important;
  }
  .nav-links::before{content:'Menu'!important;margin:0 0 16px!important;padding:0 2px 14px!important;font-size:8px!important;letter-spacing:.22em!important;color:#b99870!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
  .nav-links::after{content:'Cacio Silva  •  CRECI 240055F'!important;margin-top:auto!important;padding:22px 2px 0!important;font-size:8px!important;letter-spacing:.14em!important;color:rgba(255,255,255,.32)!important;border-top:1px solid rgba(255,255,255,.07)!important}
  .nav-links>a{
    min-height:68px!important;padding:0 2px!important;display:flex!important;align-items:center!important;
    grid-template-columns:none!important;border-bottom:1px solid rgba(255,255,255,.075)!important;
    font:400 clamp(29px,8.6vw,40px)/1 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.035em!important;color:#fff!important;
  }
  .nav-links>a::before,.nav-links>a::after{display:none!important}
  .nav-links>a[aria-current="page"]{color:#d4b17e!important}
  body.menu-open::before{
    content:'';position:fixed;inset:0;background:rgba(0,0,0,.56);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:290;
  }
  body.menu-open{overflow:hidden!important}

  /* Hero: o MP4 é a peça. Sem texto duplicado nem tratamento sobre o vídeo. */
  .home-v3 .hero-v3{
    height:70svh!important;min-height:520px!important;max-height:760px!important;
    background:#000!important;padding:0!important;display:block!important;
  }
  .home-v3 .hero-media,.home-v3 .hero-overlay,.home-v3 .hero-inner{display:none!important}
  .home-v3 .mobile-hero-logo-video{
    display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
    object-fit:contain!important;object-position:center center!important;background:#000!important;
    transform:none!important;filter:none!important;opacity:1!important;
  }
  /* Pilula vertical de scroll, integrada ao centro inferior. */
  .home-v3 .hero-scroll{
    display:grid!important;place-items:center!important;
    width:30px!important;height:50px!important;left:50%!important;bottom:20px!important;
    transform:translateX(-50%)!important;border:1px solid rgba(255,255,255,.27)!important;
    border-radius:999px!important;background:rgba(0,0,0,.14)!important;
    color:rgba(255,255,255,.86)!important;font-size:0!important;opacity:.9!important;
    backdrop-filter:blur(3px)!important;-webkit-backdrop-filter:blur(3px)!important;
    animation:none!important;overflow:hidden!important;z-index:8!important;
  }
  .home-v3 .hero-scroll::before,.home-v3 .hero-scroll::after{display:none!important}
  .home-v3 .hero-scroll span{
    display:block!important;font:300 15px/1 Arial,sans-serif!important;color:rgba(255,255,255,.82)!important;
    animation:scrollPillArrow 1.8s cubic-bezier(.22,1,.36,1) infinite!important;
  }
  @keyframes scrollPillArrow{
    0%{transform:translateY(-7px);opacity:0}
    28%{opacity:1}
    72%{opacity:1}
    100%{transform:translateY(8px);opacity:0}
  }

  /* Mais repertório: a NOVA foto enviada vira o fundo da seção inteira. */
  .home-v3 .authority-split{
    display:block!important;position:relative!important;min-height:780px!important;
    margin:0!important;padding:0!important;overflow:hidden!important;background:#030303!important;
    background-image:
      linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.03) 35%,rgba(0,0,0,.28) 55%,rgba(0,0,0,.94) 75%,#030303 100%),
      url('../img/authority-mobile-v17.webp')!important;
    background-size:cover!important;background-position:center top!important;background-repeat:no-repeat!important;
    border:0!important;border-radius:0!important;
  }
  .home-v3 .authority-media{display:none!important}
  .home-v3 .authority-copy{
    position:relative!important;z-index:2!important;min-height:780px!important;
    display:flex!important;flex-direction:column!important;justify-content:flex-end!important;
    margin:0!important;padding:460px 20px 40px!important;border:0!important;border-radius:0!important;
    background:transparent!important;color:#fff!important;box-shadow:none!important;
  }
  .home-v3 .authority-copy .eyebrow{color:#c6a474!important}
  .home-v3 .authority-copy h2{color:#fff!important;font-size:clamp(38px,10.5vw,49px)!important;line-height:.98!important}
  .home-v3 .authority-copy p{color:rgba(255,255,255,.60)!important;font-size:13px!important;line-height:1.62!important}
  .home-v3 .authority-stats{border-top-color:rgba(255,255,255,.10)!important}
  .home-v3 .authority-stats>div{border-color:rgba(255,255,255,.10)!important}
  .home-v3 .authority-stats strong{color:#fff!important}
  .home-v3 .authority-stats span{color:rgba(255,255,255,.48)!important}
  .home-v3 .authority-copy .btn-dark{background:#fff!important;color:#080808!important}
}
@media(max-width:430px){
  .home-v3 .hero-v3{height:68svh!important;min-height:500px!important}
  .home-v3 .authority-split,.home-v3 .authority-copy{min-height:740px!important}
  .home-v3 .authority-copy{padding:430px 18px 34px!important}
}
@media(max-width:900px){
  /* V17 final: nenhuma camada visual sobre o MP4; somente o arquivo em loop. */
  .home-v3 .hero-v3::before,.home-v3 .hero-v3::after{display:none!important;content:none!important}
  .home-v3 .mobile-hero-logo-video{z-index:1!important}
  .home-v3 .hero-scroll{z-index:5!important}
}


/* V23 — simulação visual dos imóveis */

.property-sim-badge,.outdoor-sim-badge{position:absolute;left:16px;top:16px;z-index:2;background:rgba(255,255,255,.92);color:#111;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;box-shadow:0 12px 24px rgba(0,0,0,.14)}
.outdoor-property-card{position:relative}
.outdoor-sim-badge{left:18px;top:auto;bottom:18px;background:rgba(11,11,11,.88);color:#fff;border:1px solid rgba(255,255,255,.12)}
.property-simulation-entry{padding-top:20px;padding-bottom:20px;background:#faf8f4}
.simulation-entry-card{display:flex;gap:28px;justify-content:space-between;align-items:center;padding:28px;border:1px solid rgba(0,0,0,.08);border-radius:28px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.04)}
.simulation-entry-card h2{margin:8px 0 10px;font-size:clamp(1.55rem,2vw,2.2rem)}
.simulation-entry-card p{margin:0;max-width:720px;color:#575757}
.simulation-entry-btn{white-space:nowrap}
.simulation-viewer{margin-top:20px;padding:28px;border-radius:28px;background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 30px rgba(0,0,0,.04)}
.simulation-viewer[hidden]{display:none!important}
.simulation-viewer-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}
.simulation-viewer-head h3{margin:8px 0 8px;font-size:1.5rem}
.simulation-copy{margin:0;max-width:760px;color:#5d5d5d}
.simulation-grid{display:grid;gap:22px}
.simulation-compare-card{padding:22px;border-radius:24px;background:#fbfaf8;border:1px solid rgba(0,0,0,.08)}
.simulation-card-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px}
.simulation-environment{display:inline-flex;padding:7px 12px;border-radius:999px;background:#111;color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.simulation-mobile-switch{display:inline-flex;gap:8px;background:#fff;padding:5px;border-radius:999px;border:1px solid rgba(0,0,0,.08)}
.simulation-mobile-switch button{border:none;background:transparent;border-radius:999px;padding:8px 14px;font-size:12px;font-weight:800;letter-spacing:.04em;color:#666;cursor:pointer}
.simulation-mobile-switch button.active{background:#111;color:#fff}
.simulation-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.simulation-figure{position:relative;margin:0;border-radius:22px;overflow:hidden;background:#0d0d0d;min-height:240px;border:1px solid rgba(0,0,0,.08)}
.simulation-figure img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.simulation-figure figcaption{position:absolute;left:16px;top:16px;z-index:2;padding:8px 12px;border-radius:999px;background:rgba(17,17,17,.82);color:#fff;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.simulation-figure.sim figcaption{background:rgba(188,150,81,.88);color:#111}
.simulation-stamp{position:absolute;right:16px;top:16px;z-index:3;padding:8px 12px;border-radius:999px;background:#fff;color:#111;font-size:11px;font-weight:900;letter-spacing:.06em;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.simulation-note{margin-top:14px;font-size:13px;line-height:1.6;color:#595959}
.simulation-cta{margin-top:26px;padding-top:24px;border-top:1px solid rgba(0,0,0,.08);display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}
.simulation-cta h4{margin:0 0 6px;font-size:1.15rem}.simulation-cta p{margin:0;max-width:620px;color:#595959}
.admin-check-row{display:flex;align-items:center;gap:10px;font-weight:700}.admin-check-row input{inline-size:18px;block-size:18px}.admin-subsection{margin-top:4px;padding:18px;border-radius:18px;background:#faf8f4;border:1px solid rgba(0,0,0,.08)}
.admin-subsection-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.admin-subsection-head small,.admin-field-tip{display:block;color:#666;font-size:12px;line-height:1.5}.admin-field-tip code{background:#fff;padding:2px 6px;border-radius:8px}
@media (max-width:900px){
  .simulation-entry-card,.simulation-viewer-head,.simulation-cta{display:block}
  .simulation-entry-btn,.simulation-viewer-head .btn{width:100%;margin-top:14px}
  .simulation-media-grid{grid-template-columns:1fr}
  .simulation-mobile-switch{display:inline-flex}
  .simulation-figure{display:none}
  .simulation-figure.is-active{display:block}
  .simulation-entry-card,.simulation-viewer,.simulation-compare-card{border-radius:22px}
  .property-sim-badge{left:12px;top:12px;font-size:10px;padding:7px 10px}
}
@media (min-width:901px){
  .simulation-mobile-switch{display:none}
  .simulation-figure{display:block!important}
}
