/* Villoura late styles, loaded at the end of the page head (2026-09-24).
 * These rules used to be printed by the villoura-homepage-ux patch file; they keep the same order and position. */
/* vlr-img-base */
img:where(:not([src*="logo"]):not([src*="Logo"]):not([src*="icon"]):not([src*=".svg"]):not([class*="flag"]):not([class*="emoji"])){object-fit:cover;object-position:center}
.gallery img{object-fit:cover !important;object-position:center !important}
/* vlr-type-system */
:is(body,p,li,ul,ol,label,td,th,dd,dt,small,figcaption,blockquote,input,select,textarea,button):not([class*="fa"]):not([class*="icon"]):not([class*="dashicons"]):not(.vlr-brand):not(.vlr-brand *){font-family:'Jost',Jost Fallback,Jost Fallback R,'Helvetica Neue',Arial,sans-serif !important}
:is(a,span,div.elementor-button-text):not([class*="fa"]):not([class*="icon"]):not([class*="eicon"]):not([class*="dashicons"]):not([class*="ui-"]):not(.vlr-brand):not(.vlr-brand *):not([class*="trustindex"]):not([class*="ti-"]){font-family:inherit}
:is(h1,h2,h3,h4,h5,h6,.elementor-heading-title,.entry-title,.section-title):not([class*="icon"]):not(.vlr-brand):not(.vlr-brand *){font-family:'Cormorant Garamond',Cormorant Fallback,Cormorant Fallback N,Cormorant,Georgia,serif !important;font-weight:500}
.elementor-invisible{visibility:visible !important;opacity:1 !important}
[data-settings*="_animation"]{opacity:1 !important;transform:none !important}
.animated:not(.vlr-keep-anim){animation-duration:.45s !important;animation-name:vlrFade !important}
@keyframes vlrFade{from{opacity:.35}to{opacity:1}}
/* vlr-form-polish */
.gform_wrapper .ui-datepicker-trigger,.gform_wrapper img.ui-datepicker-trigger{display:none !important}
.gform_wrapper .instruction{display:none !important}
.gform_wrapper input.datepicker_with_icon{padding-right:12px !important}
/* vlr-search-ux */
.pcard-tag{cursor:default;user-select:none}
#fmCount{display:inline-block;min-width:2.5em;text-align:center;transition:opacity .12s ease}
.search-pill select{padding-right:24px !important;text-overflow:ellipsis;max-width:230px}
.search-pill>*{min-height:44px}
.fm-check{min-height:44px;display:flex;align-items:center;cursor:pointer;gap:10px}
.fm-check input[type=checkbox]{width:18px;height:18px;accent-color:#C4984E}
button,.btn,[class*=filter-btn],[role=button]:not(.leaflet-marker-icon){min-height:38px}
.leaflet-marker-icon{min-height:0 !important}
/* vlr-reviews-polish */
.pull-quote{background:#241d15 !important}
.pull-quote .pq-text{color:#f2e9da !important}
.pull-quote *{color:#e8dcc8}
.pull-quote .pq-author,.pull-quote [class*=author],.pull-quote [class*=meta]{color:#C4984E !important;opacity:1 !important}
.filter-bar .fb-pill{min-height:36px;display:inline-flex;align-items:center;padding:8px 18px;cursor:pointer}
/* vlr-fixed-bars */
body:has(#stk){padding-bottom:58px}
#hubspot-messages-iframe-container{bottom:58px !important}
/* vlr-bright */
footer{background:#faf5e9 !important;border-top:1px solid #e7dcc4}
footer *{color:#5a5142 !important}
footer a:hover{color:#8a6a2f !important}
html body .vlr-promise{background:#fdf9f0 !important;border:1px solid #eadfc6 !important;border-radius:12px}
html body .vlr-promise *{color:#4a4238 !important;background:transparent !important}
.home h1{text-shadow:0 2px 16px rgba(0,0,0,.35)}
.home .v-hero-bg ~ * p, .v-hero-copy p{text-shadow:0 1px 10px rgba(0,0,0,.4)}
#stk{background:#faf5e9 !important;border-top:1px solid #e7dcc4}
#stk *{color:#4a4238 !important}
.stats-section{background:#f7f0e0 !important}
.stats-section *{color:#4a4238 !important}
.pull-quote{background:#f7f0e0 !important}
.pull-quote .pq-text{color:#3a332a !important}
.pull-quote *{color:#4a4238}
.pull-quote [class*=author],.pull-quote [class*=meta]{color:#8a6a2f !important}
#ui-datepicker-div{background:#fffdf6 !important;color-scheme:light}
#ui-datepicker-div a.ui-state-default{color:#3a332a !important}
#ui-datepicker-div th{color:#8a7a5e !important}
#ui-datepicker-div .ui-datepicker-title{color:#8a6a2f !important}
#ui-datepicker-div select.ui-datepicker-month,#ui-datepicker-div select.ui-datepicker-year{background:#fffdf6 !important;color:#8a6a2f !important}
#ui-datepicker-div .ui-state-active{background:#C4984E !important;color:#fff !important}
input[type=date]{color-scheme:light}
.v-hero-search-btn,.v-btn-dark,button[class*=search-btn],.nav-cta,.sp-search,.fm-apply,.stk .sth,.hero-cta,.vlr-dsearch form button{background:#C4984E !important;color:#fff !important;border-color:#C4984E !important}
.top-strip .strip-right button,.top-strip .strip-right [role=button]{background:transparent !important;color:#3a332a !important;border:1px solid rgba(0,0,0,.20) !important}
html body div.leaflet-marker-icon.vlr-pin{width:14px !important;height:14px !important;border-radius:50% !important;background:#C4984E !important;border:2px solid #fff !important;box-shadow:0 1px 6px rgba(0,0,0,.35) !important}
.intro-inner,.props-grid{background:#f7f0e0 !important}
.intro-inner h1,.intro-inner h2,.intro-inner h3,.intro-inner p,.intro-inner li,.intro-inner span,.intro-inner div{color:#4a4238 !important}
.props-grid>h2,.props-grid>p,.props-grid>div>h2,.props-grid>div>p{color:#4a4238 !important}
/* vlr-ui-fixes */
.v-intro{padding-top:84px !important;padding-bottom:64px !important;}
.breadcrumb,.breadcrumbs,nav.rank-math-breadcrumb,.rank-math-breadcrumb,#breadcrumbs{display:none !important;}
/* smallest readable text size for buttons and labels (was enforced by a script that resized text after load) */
.nav-r .nav-cta,.stk .sth,.vlr-ddcol .vlr-ddh,.cta-strip-btns .btn-outline-ink,.cta-strip-btns .btn-outline,.hero-right .hero-cta:not(.vlr-cta-primary),.hero-content .hero-cta,.apply-form .af-submit,.villa-cta .vc-btn,.cta-btn-row .btn-charcoal,.cta-btn-row .btn-ghost-cta,.hero-cta-row .btn-gold,.hero-cta-row .btn-outline-light,.service-card .service-price,.newsletter-box .nb-btn,.sidebar-cta-box .scb-btn,.search-pill .sp-search,.strip-right .strip-btn,.fm-footer .fm-clear,.fm-footer .fm-apply{font-size:12px!important}
body .gform_wrapper .gform-footer .gform_button,body #gform_3 .gform_button,body #gform_3 input[type="submit"]{font-size:12px!important}

/* one phone bottom bar (2026-09-24): phones keep the Call / WhatsApp / Inquire bar (#vlrBar) and hide the older sticky bar (#stk) so two bars no longer stack. Undo: delete this block. */
@media (max-width:768px){#stk{display:none!important}body:has(#stk){padding-bottom:65px!important}}

/* 2026-09-25: homepage hero, intro, brand and destination-card rules moved here from site-late-foot.css (loading them at the end of the page moved the homepage hero after first paint). */
/* vlr-hp-ux */
body .v-hero{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;}
body .v-hero .v-hero-content{text-align:center !important;align-items:center !important;height:auto !important;width:auto !important;max-width:960px !important;padding:0 24px !important;}
body .v-hero .v-hero-search-wrap{position:static !important;transform:none !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;margin:40px auto 0 !important;width:100% !important;max-width:1120px !important;}
body .v-intro{padding-top:64px !important;padding-bottom:64px !important;}
body .v-intro .v-section-h2{font-size:clamp(30px,4vw,46px) !important;line-height:1.08 !important;margin-bottom:16px !important;}
.v-intro p.vlr-hide{display:none !important;}
body .v-nav-logo em{font-style:normal !important;color:#C4984E !important;}
body .v-hero .vlr-promise{display:flex !important;position:relative !important;z-index:5 !important;width:100% !important;max-width:1120px !important;margin:22px auto 0 !important;background:#fdf9f0 !important;border:1px solid rgba(200,160,86,.30) !important;border-radius:4px !important;overflow:hidden !important;box-shadow:0 18px 46px rgba(0,0,0,.30) !important;}
body .v-hero .vlr-promise .pi{flex:1 1 0 !important;display:flex !important;align-items:center !important;gap:16px !important;padding:18px 26px !important;border-left:1px solid rgba(255,255,255,.10) !important;text-align:left !important;}
body .v-hero .vlr-promise .pi:first-child{border-left:0 !important;}
body .v-hero .vlr-promise .pn{font-family:"Cormorant Garamond",Cormorant Fallback,Cormorant Fallback N,serif !important;font-size:34px !important;line-height:1 !important;color:#C4984E !important;font-weight:500 !important;min-width:30px !important;text-align:center !important;}
body .v-hero .vlr-promise .pt{display:flex !important;flex-direction:column !important;}
body .v-hero .vlr-promise .pl{font-size:10.5px !important;letter-spacing:.2em !important;text-transform:uppercase !important;color:#3a332a !important;font-weight:600 !important;line-height:1.3 !important;}
body .v-hero .vlr-promise .ps{font-size:12px !important;color:rgba(74,66,56,.85) !important;margin-top:3px !important;line-height:1.35 !important;}
@media(max-width:820px){body .v-hero .vlr-promise{flex-direction:column !important;}body .v-hero .vlr-promise .pi{border-left:0 !important;border-top:1px solid rgba(255,255,255,.10) !important;}body .v-hero .vlr-promise .pi:first-child{border-top:0 !important;}}
body .vlr-brand{font-family:"Cormorant Garamond",Cormorant Fallback,Cormorant Fallback N,serif !important;font-size:26px !important;font-weight:500 !important;letter-spacing:.02em !important;line-height:1 !important;text-transform:none !important;}
body .vlr-brand em{font-style:normal !important;color:#C4984E !important;}
body .hero-bg{background-size:cover !important;background-position:center !important;background-repeat:no-repeat !important;}
body .vd-grid br{display:none !important;}
body .vd-grid>*:not(.vd-card){}
body .vd-grid{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:22px !important;max-width:1200px !important;margin:0 auto !important;}
body .vd-card{position:relative !important;display:block !important;height:340px !important;grid-column:auto !important;grid-row:auto !important;border-radius:6px !important;overflow:hidden !important;transform:none !important;top:auto !important;left:auto !important;margin:0 !important;box-shadow:0 10px 30px rgba(0,0,0,.14) !important;transition:transform .5s ease,box-shadow .5s ease !important;}
body .vd-card:hover{transform:translateY(-4px) !important;box-shadow:0 22px 50px rgba(0,0,0,.24) !important;}
body .vd-card .vd-img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;background-size:cover !important;background-position:center !important;transition:transform .7s ease !important;}
body .vd-card:hover .vd-img{transform:scale(1.06) !important;}
body .vd-card:after{content:"" !important;position:absolute !important;inset:0 !important;background:linear-gradient(to top,rgba(15,12,8,.72),rgba(15,12,8,.12) 55%,rgba(15,12,8,0)) !important;z-index:1 !important;}
body .vd-card .vd-name{position:absolute !important;left:22px !important;bottom:20px !important;z-index:2 !important;margin:0 !important;color:#fff !important;font-family:"Cormorant Garamond",Cormorant Fallback,Cormorant Fallback N,serif !important;font-size:26px !important;font-weight:500 !important;text-shadow:0 2px 12px rgba(0,0,0,.45) !important;}
@media(max-width:900px){body .vd-grid{grid-template-columns:repeat(2,1fr) !important;}}
@media(max-width:560px){body .vd-grid{grid-template-columns:1fr !important;}}
