:root{font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;background:#f2f5fa;color:#142944;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #d7e1ed;background:#edf4fc;color:#0d3366;font-weight:650;border-radius:10px;padding:11px 15px;transition:filter .15s}button:hover{filter:brightness(.95)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #74c3f7;outline-offset:2px}button:disabled{opacity:.55;cursor:wait}.hidden{display:none!important}.shell{max-width:1210px;margin:auto;padding-left:18px;padding-right:18px}.topbar{background:#061e44;color:white;border-bottom:1px solid #1d3d65}.navwrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;background:transparent;border:0;color:#fff;padding:0;text-align:left}.brand img{width:53px;height:53px;object-fit:contain}.brand b{display:block;font-size:22px;letter-spacing:-.7px}.brand small{display:block;color:#c1d5eb;font-size:12px;font-weight:450}.topbar nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.topbar nav button{background:transparent;color:#edf5fd;border:0;padding:10px}.topbar nav button:hover{background:#1a4574}.hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:51px 40px;color:#fff;background:linear-gradient(110deg,#09264e 0%,#0b467c 65%,#077cb1);border-radius:0 0 22px 22px;box-shadow:0 14px 35px #194a7c19;min-height:305px}.hero>div:first-child{max-width:780px}.eyebrow,.overline{font-weight:800;letter-spacing:1.3px;font-size:12px;color:#ffaa4b}.hero h1{font-size:clamp(28px,4vw,46px);line-height:1.13;letter-spacing:-1.3px;margin:14px 0}.hero p{font-size:16px;max-width:620px;color:#deecfc;line-height:1.6}.hero-side{min-width:210px;text-align:center;opacity:.8;font-size:15px}.hero-icon{font-size:120px;line-height:1}.primary{background:#ff8e19;color:#15253f;border:1px solid #ff9e36}.primary:hover{background:#ffa13d}#message:not(:empty){background:#fff2d5;color:#684713;padding:14px 17px;border:1px solid #f5deb1;border-radius:11px;margin:18px 0 0}#message.error{background:#fff0ee;color:#8d2623;border-color:#ffc4bd}#view{padding:31px 0 90px;min-height:270px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;flex-wrap:wrap}.section-heading h2{margin:3px 0 5px}.section-heading p{margin:0;color:#68798c}.section-margin{margin-top:28px}h2{font-size:26px;line-height:1.2;letter-spacing:-.6px}h3{font-size:17px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.card,.panel{background:#fff;border:1px solid #e5ecf5;border-radius:17px;box-shadow:0 7px 27px #233f6420}.card{overflow:hidden}.property>img{width:100%;height:215px;display:block;object-fit:cover;background:#dfeaf5}.card-body{padding:19px}.card-body h3{font-size:20px;margin:8px 0}.card-body p{line-height:1.5;color:#50637a;max-height:84px;overflow:hidden}.features{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0;font-size:12px;color:#395979}.features span{background:#eaf3fe;padding:7px 9px;border-radius:6px}.card-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;border-top:1px solid #ebf0f5;padding-top:16px}.card-footer b,.card-footer small{display:block}.card-footer b{color:#105c92;font-size:19px}.card-footer small{font-size:11px;font-weight:450;color:#6d7d8d}.panel{padding:25px;margin-bottom:16px}.narrow{max-width:660px;margin-left:auto;margin-right:auto}.muted{color:#667b91}.small{font-size:12px}.hint{font-size:13px;padding:10px;background:#fff1d4;border-radius:8px;color:#7a4a04}.link{border:0;background:transparent;text-decoration:underline;padding:5px;color:#13639d}.back{margin-bottom:16px}.empty{padding:25px;background:#fff;border:1px dashed #b6c8df;border-radius:12px;color:#5b6a7c}.toolbar,.filters{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.toolbar{margin:25px 0}.filters button{padding:8px 14px}.filters .chosen{background:#0b3a76;color:white}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.stat{background:#fff;border:1px solid #e4ecf7;box-shadow:0 7px 19px #1c477014;border-radius:14px;display:flex;gap:12px;flex-direction:column;align-items:flex-start;min-height:104px}.stat>span{font-weight:550;color:#687c94;font-size:14px}.stat>strong{font-size:25px;color:#0d4a88}.tablewrap{border:1px solid #e2eaf3;background:#fff;border-radius:14px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}td,th{padding:14px 15px;border-bottom:1px solid #edf1f6;text-align:left;vertical-align:middle}th{background:#f5f8fc;color:#527088;font-size:12px;text-transform:uppercase;letter-spacing:.35px;white-space:nowrap}tr:last-child td{border:0}td b{font-size:14px}.pill{border-radius:50px;padding:5px 9px;display:inline-block;font-weight:750;font-size:12px;white-space:nowrap}.pill.pending,.pill.partial{background:#fff2d2;color:#875600}.pill.confirmed,.pill.completed,.pill.paid{background:#e1f5e8;color:#14653c}.pill.cancelled,.pill.unpaid{background:#f3f0f1;color:#75717a}.data-rows{line-height:1.5}form{display:grid;gap:14px}label{display:grid;gap:6px;font-weight:660;font-size:13px;color:#33536c}input,select,textarea{padding:12px 13px;width:100%;background:#fff;border:1px solid #c9d8e8;border-radius:9px;color:#182d44;font-size:15px}textarea{min-height:106px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reserve-layout{display:grid;grid-template-columns:1.32fr 1fr;gap:19px}.reserve-layout>.panel{min-width:0}.quote{padding:14px;background:#eef4fb;border-radius:9px;font-size:13px;line-height:1.5}.quote.good{background:#e2f6e8;color:#165d37;font-weight:700}.quote.bad{background:#fff1ec;color:#913a22;font-weight:700}.gallery .cover{width:100%;height:330px;border-radius:12px;object-fit:cover;background:#e7eef8}.thumbnails{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.thumb{padding:3px;background:#fff}.thumb img{display:block;width:82px;height:62px;object-fit:cover;border-radius:6px}.existing-photos{margin-top:25px}.photo-manage{display:grid;justify-items:center;gap:5px}.photo-manage img{width:110px;height:82px;object-fit:cover;border-radius:8px}.danger-subtle{background:#fff2f0;color:#a3332a;border-color:#f9d6d0}.detail-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:16px}.stat-row{display:flex;flex-direction:column;gap:7px;padding:14px;background:#eaf3ff;border-radius:10px;margin:10px 0 20px}.calendar-container{margin-top:20px}.calendar-head{display:flex;justify-content:space-between;align-items:center;margin:10px 0 15px}.calendar-head b{text-transform:capitalize;font-size:19px}.calendar-head button{font-size:20px;margin-left:7px;width:42px;height:42px;padding:0}.week,.days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.week{color:#75879b;font-size:12px;text-align:center;font-weight:700;margin-bottom:8px}.day{min-height:67px;background:#eef8f2;border:1px solid #d9eee0;border-radius:8px;padding:8px 7px;display:flex;justify-content:space-between;flex-direction:column}.day b{font-size:14px}.day small{font-size:10px;color:#6a7e91;word-break:break-word}.day.reserved{background:#ffebe6;border-color:#ffcec3;color:#8c3a27}.day.blocked{background:#e9e9ef;border-color:#cfcfd9;color:#5b5870}.day.pending{background:#fff5d8;border-color:#f1dea3;color:#755917}.legend{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:16px;font-size:12px;color:#516a80}.legend span{display:flex;align-items:center;gap:5px}.dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:#cce8d4}.dot.reserved{background:#f4af9d}.dot.blocked{background:#b5b5bf}.dot.pending{background:#efd282}.inline-label{max-width:360px}.calendar-container>.small{margin-top:13px}footer{padding:30px;text-align:center;color:#6b7b8d;font-size:13px}footer span{display:block;margin-top:6px}@media(max-width:950px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-side{display:none}.reserve-layout,.detail-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.shell{padding-left:12px;padding-right:12px}.navwrap{padding-top:12px;padding-bottom:12px;align-items:flex-start}.brand b{font-size:19px}.topbar nav{width:100%;justify-content:space-between}.topbar nav button{font-size:12px;padding:7px 8px}.hero{padding:32px 21px;min-height:255px}.hero h1{font-size:29px}.grid,.stats{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:16px}.form-grid{grid-template-columns:1fr}.section-heading h2{font-size:22px}.calendar-head b{font-size:15px}.day{padding:5px 3px;min-height:59px}.day b{font-size:12px}.day small{font-size:8px}.week,.days{gap:2px}.stat>strong{font-size:20px}.gallery .cover{height:220px}.card-footer{align-items:center}.tablewrap{margin-left:-4px;margin-right:-4px}td,th{padding:12px 10px}}
@media print{header,.hero,footer,button,.toolbar,.filters,#message{display:none!important}.shell{max-width:none}.panel,.tablewrap{box-shadow:none;border:1px solid #ccc}}

/* MoViimoveis 2.2 — pacotes fechados */
.package-section {margin:1.5rem 0;padding-top:.7rem;border-top:1px solid #d9e2ee}
.package-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:.75rem;margin-top:.85rem}
.package-card {display:flex;flex-direction:column;gap:.48rem;border:1px solid #d6e1f1;border-radius:13px;background:#f7fafd;padding:1rem}
.package-card span {font-size:.87rem;color:#485a75}
.package-card strong {color:#082c63;font-size:1.08rem}
.package-card button {align-self:flex-start}
.day.package-day {box-shadow:inset 0 -3px 0 #eb941b;background:linear-gradient(155deg,#fff8e8, #eef3ff)}
.day.package-day small {font-weight:700;color:#996016}

/* Moni&Vic Imóveis 2.3 — identidade oficial e localização antes das datas */
.brand-icon{height:62px;width:72px;display:inline-flex;justify-content:center;align-items:center;background:white;border-radius:15px;flex-shrink:0;padding:4px;box-shadow:0 4px 14px #061d454d}
.brand-icon img{height:100%;width:100%;object-fit:contain}
.brand b{font-size:22px;letter-spacing:-.6px}
.hero-side{min-width:290px;max-width:360px;opacity:1;color:#dfedfc}
.hero-logo-panel{background:#fff;border-radius:16px;padding:10px 14px;margin-bottom:12px;box-shadow:0 10px 26px #041d4c35}
.hero-logo-panel img{width:100%;height:auto;display:block}
.property-address{display:flex;align-items:flex-start;gap:5px;background:#f1f7fe;color:#244a73!important;border-radius:9px;padding:10px 11px;font-size:13px!important;margin:9px 0 12px!important;line-height:1.5}
.public-address{display:flex;gap:12px;align-items:flex-start;border:1px solid #b9d7f6;background:#f0f7ff;border-radius:12px;padding:15px;margin:10px 0 18px;color:#183f6d}
.public-address strong{font-size:14px}
.public-address p{margin:5px 0 8px;font-size:14px;line-height:1.5}
.public-address a{color:#005fa8;text-decoration:underline;font-size:13px;font-weight:700}
.address-pin{font-size:22px}
.checkline{display:flex;gap:10px;align-items:flex-start;background:#e9f4ff;padding:12px;border-radius:10px;line-height:1.4}
.checkline input{width:auto;margin:4px 0 0;flex-shrink:0;accent-color:#0b64a6}
@media(max-width:620px){.brand-icon{width:49px;height:49px}.brand b{font-size:18px}.public-address{padding:12px}.hero-logo-panel{display:none}}


/* Moni&Vic Imóveis — apresentação premium com base no modelo aprovado */
:root{background:#edf1f7;color:#152945}
body{background:linear-gradient(180deg,#e5edf8 0%,#f5f6fa 43%,#f8f9fc 100%)}
.shell{max-width:1280px}
.topbar{background:#061b3a;border-bottom:1px solid #21466c;box-shadow:0 3px 20px rgba(0,0,0,.14)}
.navwrap{min-height:109px}
.brand.premium-brand{display:flex;flex-direction:column;gap:0;align-items:flex-start;max-width:300px}
.brand-logo-light{display:block;width:255px;height:81px;object-fit:contain;object-position:left center}
.brand-tag{font-size:10px;letter-spacing:2px;font-weight:800;color:#d0e8ff;padding:0 0 8px 12px;margin-top:-9px}
.topbar nav{gap:11px}
.topbar nav button{font-size:14px;color:#ebf4ff;font-weight:750;border-radius:8px;padding:12px 14px;white-space:nowrap}
.topbar nav button span{display:inline-block;margin-right:5px;color:#ffc861;font-size:23px;vertical-align:-2px}
.topbar nav button:hover{background:#1d4069}
.hero.scenic-hero{position:relative;display:block;overflow:visible;min-height:410px;padding:45px 43px 94px;border-radius:0 0 18px 18px;background:linear-gradient(93deg,rgba(5,23,51,.97) 0%,rgba(6,30,63,.93) 40%,rgba(12,52,85,.35) 100%),url('/coastline.svg') center center/cover no-repeat;box-shadow:0 22px 42px #123d6740;color:#fff}
.scenic-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-end}
.scenic-copy{max-width:600px}.scenic-copy .eyebrow{font-size:12px;letter-spacing:2px;color:#ffc463}.scenic-hero h1{font-weight:850;font-size:clamp(29px,3.65vw,51px);margin:13px 0 14px;letter-spacing:-1.5px;line-height:1.05;text-shadow:0 3px 14px #06172c33}.scenic-hero h1 em{font-style:normal;color:#eff6ff}.scenic-hero h1 span{color:#ffd36b}.scenic-hero p{max-width:510px;font-size:16px;color:#e4f1ff;margin-bottom:16px}
.hero-promises{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px;background:#0b315766;backdrop-filter:blur(4px);border-radius:16px;border:1px solid #d1e8fc30;padding:12px 5px}
.hero-promises div{display:flex;align-items:center;flex-direction:column;gap:6px;min-width:94px;max-width:104px;border-right:1px solid #e1f3ff36;color:#f4f8ff;text-align:center}.hero-promises div:last-child{border:0}.hero-promises span{font-size:28px;color:#ffc65a;line-height:1}.hero-promises b{font-size:11px;font-weight:700;line-height:1.4}
.hero-search{position:absolute;bottom:-29px;left:30px;right:30px;display:grid;grid-template-columns:1.25fr 1fr 1fr .9fr auto;gap:4px;align-items:stretch;background:white;border:1px solid #d4e2ef;box-shadow:0 12px 30px #143a622b;border-radius:15px;padding:11px;z-index:2}
.hero-search label{min-width:0;display:grid;gap:3px;padding:2px 10px;border-right:1px solid #dfe5ee;color:#284a67;font-size:12px;font-weight:800}
.hero-search label span{white-space:nowrap;color:#164771}.hero-search input,.hero-search select{font-size:13px;color:#19334b;border:0;padding:4px 1px;min-height:30px;background:white;width:100%;font-weight:600}.hero-search label:has(+button){border:0}
.hero-search .hero-search-submit{background:linear-gradient(140deg,#ffc857,#f59b20);font-size:14px;border-radius:10px;color:#1c2a3e;padding:12px 17px;white-space:nowrap;box-shadow:0 4px 9px #d7892233}
body:not(.view-home) #homeHero{display:none}body:not(.view-home) #view{padding-top:30px}
body.view-home #view{padding-top:69px}
.landing-title{margin-bottom:23px}.landing-title h2{font-size:29px}.landing-title p{font-size:14px}
.premium-properties{display:grid;gap:28px}
.listing-card{background:#fff;border:1px solid #dce6f1;box-shadow:0 15px 35px #244c7230;border-radius:23px;padding:23px 25px 25px;overflow:hidden}
.listing-heading{display:grid;gap:6px;margin-bottom:18px}.listing-heading h3{font-size:clamp(23px,2.5vw,31px);color:#0a2c54;letter-spacing:-1px;margin:0}
.listing-address{margin:0;padding:9px 11px;max-width:max-content;background:#fff8de;color:#66521e;border-radius:7px;font-size:13px;font-weight:650;line-height:1.4}
.listing-tags{display:flex;flex-wrap:wrap;align-items:center;gap:7px;font-size:12px;color:#0a5687;font-weight:650;margin-top:3px}
.listing-tags span{background:#eaf6ff;padding:7px 12px;border-radius:7px}
.listing-content{display:grid;grid-template-columns:1.3fr 1fr;gap:23px;align-items:stretch}
.listing-media{min-width:0;display:flex;flex-direction:column;gap:10px}.listing-photo-wrap{position:relative;flex:1;min-height:320px;border-radius:15px;overflow:hidden;background:#e6eef8}.listing-cover{width:100%;height:100%;max-height:500px;min-height:320px;object-fit:cover;display:block}.photo-counter{position:absolute;bottom:12px;right:13px;background:#112f51b9;border:1px solid #fff9;color:#fff;font-size:12px;padding:6px 11px;border-radius:60px}
.listing-thumbnails{display:flex;gap:8px;align-items:center;min-height:76px}.listing-thumb{padding:3px;border:2px solid transparent;border-radius:9px;background:#e9f0f8;flex:1;min-width:0;max-width:120px}.listing-thumb.active{border-color:#f4a72e}.listing-thumb img{width:100%;height:62px;border-radius:6px;display:block;object-fit:cover}.more-photos{font-size:12px;color:#526a84;font-weight:750}
.listing-meta{display:flex;flex-direction:column;gap:20px;justify-content:space-between;min-width:0}.amenity-list{display:grid;gap:10px;padding:9px 2px}.amenity-list div{font-size:15px;color:#334860;border-bottom:1px solid #edf1f5;padding:0 0 10px;display:flex;align-items:center;gap:11px}.amenity-list div span{font-size:21px;color:#08628a;min-width:25px;text-align:center}
.listing-price{border-top:1px solid #e7ebf2;padding-top:18px;display:grid;gap:17px}.listing-price strong{display:block;color:#082c53;font-size:clamp(26px,3vw,35px);font-weight:850;letter-spacing:-1px;line-height:1.18}.listing-price .primary{border-radius:12px;min-height:61px;font-size:15px;font-weight:800;text-align:left;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(125deg,#ffb13a,#f58a10);box-shadow:0 10px 18px #f5942026}.listing-price .primary span{font-size:27px}
.search-results-note{margin:0 0 24px;background:#e8f4fd;border-radius:10px;padding:12px;color:#284e6d;font-size:13px}
.reserve-layout>.panel:first-child h2{font-size:31px;letter-spacing:-.7px;color:#0a2c54}.reserve-layout .public-address{background:#fff8e5;border-color:#f2dcac;color:#344b66}.reserve-layout .cover{height:405px}.reserve-layout .thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.reserve-layout .thumb img{width:100%;height:70px}.reserve-layout .thumb{min-width:0}.reserve-layout .panel{border-radius:18px}
@media(max-width:970px){.hero.scenic-hero{padding:36px 26px 100px}.hero-promises{display:none}.hero-search{left:18px;right:18px}.listing-content{grid-template-columns:1.1fr 1fr;gap:15px}.listing-card{padding:18px}.navwrap{flex-wrap:wrap;padding-top:8px;padding-bottom:10px}}
@media(max-width:720px){.navwrap{gap:4px;min-height:unset}.brand-logo-light{width:205px;height:68px}.brand-tag{font-size:8px;padding-left:10px;margin-top:-11px}.topbar nav{gap:0;flex-wrap:nowrap;overflow:auto;width:100%;justify-content:space-between}.topbar nav button{padding:8px 7px;font-size:11px}.topbar nav button span{font-size:15px;margin-right:2px}.hero.scenic-hero{min-height:350px;padding:32px 17px 170px;background-position:60% center}.scenic-hero h1{font-size:30px}.scenic-hero p{font-size:13px;max-width:330px}.hero-search{grid-template-columns:1fr 1fr;bottom:-116px;padding:10px;gap:6px}.hero-search label{border-right:none;padding:3px 6px}.hero-search .hero-search-submit{grid-column:span 2;padding:12px;text-align:center;justify-content:center}.hero-search input,.hero-search select{font-size:12px}.view-home #view{padding-top:140px!important}.listing-content{grid-template-columns:1fr}.listing-photo-wrap{min-height:245px}.listing-cover{min-height:245px;max-height:340px}.listing-price{display:flex;justify-content:space-between;align-items:center;gap:12px}.listing-price .primary{font-size:12px;max-width:190px;padding:11px}.listing-price strong{font-size:26px}.amenity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.amenity-list div{font-size:12px}.listing-tags span{font-size:11px}.reserve-layout .thumbnails{grid-template-columns:repeat(4,minmax(0,1fr))}.reserve-layout .cover{height:280px}}
@media(max-width:430px){.listing-price{display:grid}.listing-price .primary{max-width:none}.listing-photo-wrap{min-height:225px}.listing-cover{min-height:225px}.listing-thumbnails{gap:5px}.listing-thumb img{height:44px}.scenic-hero h1{font-size:28px}.hero-search label span{font-size:10px}}
@media print{.hero-search,.hero-promises,.listing-photo-wrap{display:none!important}}


/* MONI&VIC IMÓVEIS 2.5 — fidelidade ao visual aprovado, com componentes funcionais */
:root{--mv-navy:#041936;--mv-deep:#071d45;--mv-blue:#0065ad;--mv-gold:#ffc72c}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body{background:#eaf1fa}
.shell{max-width:1390px}
.topbar{position:relative;isolation:isolate;min-height:194px;border:0;background:linear-gradient(90deg,#03172f 0%,#04234a 42%,rgba(3,29,59,.92) 62%,rgba(0,52,104,.42) 100%),url('/praia-grande-panoramica.png') right 45% / min(70%,920px) auto no-repeat,#061e43;box-shadow:none}
.navwrap{position:relative;min-height:194px;padding-top:6px;padding-bottom:6px;align-items:flex-start;z-index:1}
.brand.premium-brand{display:block;flex-shrink:0;width:min(540px,45vw);max-width:none;align-self:center}
.brand-logo-light{display:block;width:100%;max-width:none;height:auto;max-height:187px;object-fit:contain;object-position:left center;filter:drop-shadow(0 5px 5px rgba(0,0,0,.3))}
.topbar nav{margin-top:8px;gap:9px;flex-wrap:nowrap;align-items:flex-start;background:rgba(4,23,52,.16);border-radius:12px;padding:3px 4px}
.topbar nav button{display:flex;gap:7px;align-items:center;justify-content:center;font-size:16px;min-height:60px;padding:11px 15px;color:#fff;text-shadow:0 1px 3px #112c43;background:transparent;border:0}
.topbar nav button span{font-size:29px;line-height:1;color:var(--mv-gold)}
.topbar nav button[data-action="home"]{position:relative}
.topbar nav button[data-action="home"]:after{content:"";position:absolute;bottom:0;left:24px;right:24px;height:4px;border-radius:99px;background:#ffcc24}
.hero.scenic-hero{min-height:292px;max-height:none;padding:18px 44px 96px;background:linear-gradient(108deg,#051a39 0%,#074077 65%,#0875b3 100%);border-radius:0;box-shadow:none;isolation:isolate}
.scenic-top{min-height:184px;align-items:center;justify-content:space-between;gap:26px}
.scenic-copy{max-width:760px}
.scenic-hero h1{font-size:clamp(30px,3.2vw,50px);line-height:1.02;font-weight:900;letter-spacing:-1.6px;color:#fff;text-shadow:0 5px 10px #0516314d;margin:0}
.scenic-hero h1 em{color:#fff;font-style:italic}
.scenic-hero h1 span{color:#ffd028;font-style:italic}
.hero-promises{background:none;backdrop-filter:none;border:0;padding:0;gap:0;margin:18px 0 0;flex-wrap:nowrap}
.hero-promises div{min-width:145px;max-width:none;padding:9px 20px;border-right:1px solid #f6e9c688}
.hero-promises div:last-child{border:none}
.hero-promises span{font-size:46px;color:#ffca21;text-shadow:0 2px 8px #102d4c}
.hero-promises b{font-size:17px;line-height:1.13;color:#fff;font-weight:650}
.hero-search{bottom:26px;left:27px;right:27px;grid-template-columns:1.2fr .98fr .98fr .8fr auto;padding:12px;gap:0;border:2px solid #d9e3f0;border-radius:18px;box-shadow:0 8px 15px #0b315c2c}
.hero-search label{padding:2px 15px;gap:2px;min-height:58px;border-right:2px solid #e1e7ee}
.hero-search label span{font-size:13px;color:#0d2b50}
.hero-search input,.hero-search select{font-size:15px;font-weight:600;color:#294663;min-height:28px}
.hero-search .hero-search-submit{background:linear-gradient(120deg,#ffdd36,#ffb60c);border:1px solid #f7ae07;border-radius:13px;font-size:17px;font-weight:850;min-height:66px;padding:9px 20px;color:#081c35;white-space:normal;max-width:186px;line-height:1.2}
body.view-home #view{padding-top:0!important}
body.view-home #view>.landing-title{display:none!important}
body.view-home #view>.premium-properties{margin-top:0;transform:translateY(-7px)}
body.view-home #view>.search-results-note{margin-top:18px;margin-bottom:18px}
.listing-card{border:1px solid #e1e9f4;padding:28px 30px 28px;border-radius:23px;box-shadow:0 14px 26px #2a4d7a25}
.listing-heading h3{font-size:clamp(31px,3.3vw,48px);color:#051b3b;letter-spacing:-1.6px;margin:0 0 5px}
.listing-address{font-size:16px;background:#fff0bd;color:#3d3631;padding:10px 13px;border-radius:11px;max-width:none;font-weight:650}
.listing-tags{background:#d9eeff;padding:10px 14px;border-radius:9px;font-size:16px;gap:0;margin-top:8px;color:#153d65}
.listing-tags span{background:transparent;padding:0 18px;border-right:1px solid #24587e;font-weight:700}
.listing-tags span:first-child{padding-left:0}.listing-tags span:last-child{border:0}
.listing-content{grid-template-columns:minmax(0,1.8fr) minmax(290px,.86fr);gap:30px}
.listing-photo-wrap{min-height:390px;border-radius:15px}
.listing-cover{min-height:390px;max-height:520px;aspect-ratio:1.5;object-fit:cover}
.photo-arrow{position:absolute;top:50%;transform:translateY(-50%);color:white;background:rgba(11,31,55,.53);border:1px solid #ffffff5c;border-radius:50%;height:51px;width:51px;display:flex;align-items:center;justify-content:center;font-size:43px;padding:0;font-weight:400;z-index:1}
.photo-arrow:hover{background:#073d69cc}.photo-arrow-left{left:13px}.photo-arrow-right{right:13px}
.photo-favorite{position:absolute;top:13px;right:13px;background:#fff;border:0;border-radius:50%;height:53px;width:53px;display:grid;place-items:center;padding:0;font-size:31px;color:#122d53;box-shadow:0 3px 9px #03203e65;z-index:1}
.photo-favorite.is-liked{color:#d64c64}
.photo-counter{font-size:11px;background:#08223ea8}
.listing-thumbnails{gap:8px;margin-top:8px;min-height:94px}
.listing-thumb{max-width:unset;min-width:0;flex:1;padding:2px;border:4px solid transparent;border-radius:11px;background:#f5f6f8}
.listing-thumb.active{border-color:#f6b800}
.listing-thumb img{height:76px;border-radius:8px}
.more-photos{padding-left:6px}
.amenity-list{gap:8px;padding:10px 0}
.amenity-list div{font-size:18px;min-height:42px;padding:0 0 9px;color:#3a4e65;font-weight:500}
.amenity-list div span{font-size:28px;color:#0b4678;min-width:37px}
.listing-meta{gap:14px}
.listing-price{padding-top:15px;gap:14px}
.listing-price strong{font-size:clamp(32px,3.2vw,50px);line-height:1;color:#071b3b}
.listing-price .small{font-size:16px;color:#516a80}
.listing-price .primary{justify-content:center;gap:17px;min-height:68px;text-align:center;font-size:24px;color:#101f34;font-weight:800;border-radius:14px;background:linear-gradient(#ffd734,#ffb90c);box-shadow:0 6px 12px #eda62238}
.listing-price .primary span{font-size:27px}
@media(min-width:721px){body:not(.view-home) .navwrap{min-height:130px}body:not(.view-home) .topbar{min-height:130px}body:not(.view-home) .brand.premium-brand{width:360px}body:not(.view-home) .brand-logo-light{max-height:123px}}
@media(max-width:1080px){.brand.premium-brand{width:420px}.navwrap{min-height:165px}.topbar{min-height:165px}.topbar nav button{font-size:12px;padding:11px 8px}.topbar nav button span{font-size:21px}.hero-promises div{min-width:90px;padding:8px 9px}.hero-promises b{font-size:12px}.hero-promises span{font-size:31px}.scenic-hero h1{font-size:clamp(28px,4vw,40px)}.listing-content{grid-template-columns:minmax(0,1.1fr) minmax(235px,0.9fr);gap:17px}.amenity-list div{font-size:14px}.listing-tags{font-size:12px}}
@media(max-width:720px){.topbar,.navwrap{min-height:unset}.topbar{background:#061d40}.navwrap{display:block;padding:8px 13px 8px}.brand.premium-brand{width:min(92vw,395px);margin:auto;display:block;max-width:none}.brand-logo-light{max-height:155px;width:100%}.topbar nav{display:flex;justify-content:space-around;margin:0 auto;padding:0;width:100%;max-width:540px;overflow-x:auto}.topbar nav button{min-height:44px;font-size:11px;padding:7px 7px;white-space:nowrap}.topbar nav button span{font-size:18px}.topbar nav button[data-action="home"]:after{bottom:0;left:15px;right:15px;height:3px}.hero.scenic-hero{min-height:418px;padding:22px 18px 142px;background:linear-gradient(115deg,#071b3a,#0b518c);border-radius:0}.scenic-top{display:block;min-height:unset}.scenic-hero h1{font-size:clamp(24px,6.3vw,34px);letter-spacing:-1px}.hero-promises{display:flex;justify-content:space-between;margin-top:18px}.hero-promises div{min-width:0;max-width:none;flex:1;padding:7px 7px}.hero-promises span{font-size:24px}.hero-promises b{font-size:10px}.hero-search{grid-template-columns:1fr 1fr;left:12px;right:12px;bottom:-56px;gap:3px;padding:8px}.hero-search label{min-height:48px;padding:4px 8px;border:0}.hero-search label span{font-size:11px}.hero-search input,.hero-search select{font-size:12px;min-height:23px}.hero-search .hero-search-submit{grid-column:span 2;min-height:47px;font-size:15px;max-width:none}.view-home #view{padding-top:70px!important}.listing-card{padding:17px;border-radius:17px}.listing-heading h3{font-size:32px}.listing-address{font-size:12px}.listing-tags{gap:7px;font-size:11px;padding:8px}.listing-tags span{padding:0 9px}.listing-content{grid-template-columns:1fr}.listing-photo-wrap,.listing-cover{min-height:255px;max-height:360px}.listing-thumbnails{min-height:63px}.listing-thumb img{height:54px}.amenity-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.amenity-list div{font-size:12px;min-height:30px;padding-bottom:5px}.amenity-list div span{font-size:19px;min-width:25px}.listing-price{display:flex;flex-wrap:wrap;gap:10px}.listing-price strong{font-size:29px}.listing-price .primary{font-size:17px;min-height:50px;max-width:none;min-width:150px}.listing-price .small{font-size:12px}}
@media(max-width:430px){.brand.premium-brand{width:96%}.hero.scenic-hero{min-height:396px}.hero-promises{margin-top:15px}.scenic-hero h1{font-size:28px}.hero-search{bottom:-65px}.view-home #view{padding-top:80px!important}.listing-price{display:grid}.listing-price .primary{width:100%}}
@media print{.photo-arrow,.photo-favorite{display:none!important}}

/* Correct earlier generic .brand img and .hero > div:first-child specificity. */
.brand.premium-brand img.brand-logo-light{display:block;width:100%;height:auto;max-height:187px;max-width:none;object-fit:contain;object-position:left center}
.hero.scenic-hero>.scenic-top{max-width:none;width:100%}
@media(min-width:721px){body:not(.view-home) .brand.premium-brand img.brand-logo-light{max-height:123px}}
@media(max-width:720px){.brand.premium-brand img.brand-logo-light{width:100%;height:auto;max-height:155px}body.view-home #view{padding-top:75px!important}}
@media(max-width:430px){body.view-home #view{padding-top:85px!important}}

/* MONIVIC-HERO-FRASE-VISIVEL-2.5.3-INICIO */
/* Correção: a faixa de busca passa a ocupar espaço real, sem cobrir "começa aqui!". */
.hero.scenic-hero {
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: 0;
  max-height: none;
  padding: 22px 34px 22px;
  overflow: visible;
}
.hero.scenic-hero > .scenic-top {
  min-height: 0;
  width: 100%;
  max-width: none;
  align-items: center;
  gap: 18px;
}
.hero.scenic-hero .scenic-copy {
  flex: 1 1 58%;
  min-width: 0;
  max-width: 680px;
}
.hero.scenic-hero .scenic-copy h1 {
  max-width: none;
  margin: 0;
  font-size: clamp(33px, 3.45vw, 50px);
  line-height: 1.12;
  letter-spacing: -1.2px;
}
.hero.scenic-hero .hero-search {
  position: static;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  transform: none;
  width: 100%;
  margin: 0;
  flex-shrink: 0;
}
body.view-home #view {
  padding-top: 17px !important;
}
@media (max-width: 1080px) {
  .hero.scenic-hero { padding: 22px 24px 20px; }
  .hero.scenic-hero .scenic-copy h1 { font-size: clamp(31px, 3.6vw, 42px); }
}
@media (max-width: 720px) {
  .hero.scenic-hero { min-height: 0; padding: 20px 16px 18px; gap: 18px; }
  .hero.scenic-hero > .scenic-top { display: block; min-height: 0; }
  .hero.scenic-hero .scenic-copy { max-width: none; }
  .hero.scenic-hero .scenic-copy h1 {
    max-width: none;
    font-size: clamp(28px, 6.9vw, 37px);
    line-height: 1.10;
    letter-spacing: -0.8px;
  }
  .hero.scenic-hero .hero-promises { margin-top: 15px; }
  .hero.scenic-hero .hero-search {
    position: static;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }
  body.view-home #view { padding-top: 16px !important; }
}
@media (max-width: 430px) {
  .hero.scenic-hero .scenic-copy h1 { font-size: clamp(27px, 7.2vw, 32px); }
}
/* MONIVIC-HERO-FRASE-VISIVEL-2.5.3-FIM */

/* MONIVIC-HERO-SEM-SOBREPOSICAO-2.5.4-INICIO */
/* Manter o texto e a barra de busca em linhas distintas no fluxo da pagina. */
.hero.scenic-hero {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 22px 36px 25px !important;
  overflow: visible !important;
}
.hero.scenic-hero > .scenic-top {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  align-items: center;
  flex: 0 0 auto;
}
.hero.scenic-hero .scenic-copy {
  max-width: 650px;
  min-width: 0;
  flex: 1 1 auto;
}
.hero.scenic-hero .scenic-copy h1 {
  display: block;
  max-width: none !important;
  margin: 0 !important;
  font-size: clamp(32px, 3.4vw, 48px) !important;
  line-height: 1.09 !important;
  letter-spacing: -1.2px !important;
  overflow: visible !important;
}
.hero.scenic-hero .hero-search {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 !important;
  width: 100% !important;
  flex: 0 0 auto;
  z-index: 2;
}
body.view-home #view { padding-top: 16px !important; }
@media(max-width: 1080px) {
  .hero.scenic-hero { padding: 22px 25px 22px !important; }
  .hero.scenic-hero .scenic-copy h1 { font-size: clamp(31px, 3.8vw, 42px) !important; }
}
@media(max-width: 720px) {
  .hero.scenic-hero { padding: 20px 16px 20px !important; gap: 16px !important; }
  .hero.scenic-hero > .scenic-top { display: block !important; }
  .hero.scenic-hero .scenic-copy { max-width: 100% !important; }
  .hero.scenic-hero .scenic-copy h1 { font-size: clamp(27px, 6.7vw, 36px) !important; }
  .hero.scenic-hero .hero-search { grid-template-columns: repeat(2, minmax(0,1fr)); }
  body.view-home #view { padding-top: 14px !important; }
}
/* MONIVIC-HERO-SEM-SOBREPOSICAO-2.5.4-FIM */
