:root{--vhg-header-height:76px;--vhg-purple:#74008f;--vhg-purple-dark:#4c0063;--vhg-ink:#17121b;--vhg-muted:#67616a;--vhg-border:#e8e4ea}
.vhg-site-header{position:relative;z-index:1002;width:100%;height:var(--vhg-header-height);font-family:Hind,Arial,sans-serif;color:var(--vhg-ink)}
.vhg-header-bar{position:relative;z-index:4;display:grid;grid-template-columns:190px minmax(0,1fr) auto;align-items:center;height:var(--vhg-header-height);max-width:1536px;margin:0 auto;padding:0 28px;background:#fff;border-bottom:0}
.vhg-header-logo{display:flex;align-items:center;width:165px;height:62px}
.vhg-header-logo img{display:block;max-width:100%;max-height:58px;width:auto;height:auto;object-fit:contain}
.vhg-logo-overlay{display:none!important}
.vhg-logo-default--filtered{filter:brightness(0) saturate(100%) invert(15%) sepia(73%) saturate(4038%) hue-rotate(282deg) brightness(76%) contrast(111%)}
.vhg-desktop-nav{display:flex;align-items:stretch;justify-content:center;height:100%;gap:2px}
.vhg-nav-link{position:relative;display:inline-flex;align-items:center;gap:5px;padding:0 11px;border:0;background:transparent;color:var(--vhg-ink);font:600 15px/1 Hind,Arial,sans-serif;white-space:nowrap;cursor:pointer;text-decoration:none!important}
.vhg-nav-link:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:3px;background:var(--vhg-purple);transform:scaleX(0);transition:transform .18s ease}
.vhg-nav-link:hover,.vhg-nav-link:focus-visible,.vhg-nav-trigger[aria-expanded=true]{color:var(--vhg-purple)}
.vhg-nav-link:hover:after,.vhg-nav-link:focus-visible:after,.vhg-nav-trigger[aria-expanded=true]:after{transform:scaleX(1)}
.vhg-nav-trigger svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .18s ease}
.vhg-nav-trigger[aria-expanded=true] svg{transform:none}
.vhg-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.vhg-header-search,.vhg-account-button,.vhg-mobile-toggle{display:inline-flex;align-items:center;justify-content:center;height:42px;border:0;background:transparent;color:var(--vhg-ink)}
.vhg-header-search{width:42px;border-radius:50%}
.vhg-header-search:hover{background:#f7f2f8;color:var(--vhg-purple)}
.vhg-command-palette[hidden]{display:none!important}
.vhg-command-palette{position:fixed;z-index:10400;inset:0;display:grid;align-items:start;justify-items:center;padding:14vh 18px 24px;font-family:Hind,Arial,sans-serif}
.vhg-command-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(25,21,27,.34);backdrop-filter:blur(7px);cursor:default}
.vhg-command-dialog{position:relative;display:flex;overflow:hidden;width:min(560px,100%);max-height:min(650px,76vh);flex-direction:column;padding:8px;border:1px solid rgba(116,0,143,.18);border-radius:17px;background:rgba(255,255,255,.98);box-shadow:0 28px 85px rgba(24,15,29,.3)}
.vhg-command-search{display:grid;grid-template-columns:25px minmax(0,1fr) 34px;align-items:center;min-height:48px;padding:0 7px 0 12px;border:1px solid #e2dce4;border-radius:11px;background:#f8f6f8}
.vhg-command-search>svg{width:19px;height:19px;color:#9a929d}
.vhg-command-search input{width:100%;height:44px;padding:0 8px!important;border:0!important;outline:0!important;background:transparent!important;color:#211e22;font:400 16px Hind,Arial,sans-serif;box-shadow:none!important}
.vhg-command-search input::placeholder{color:#98919a}
.vhg-command-search button{display:grid;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:#7b737e;cursor:pointer;place-items:center}
.vhg-command-search button:hover,.vhg-command-search button:focus-visible{background:#eee8f0;color:var(--vhg-purple);outline:0}
.vhg-command-search button svg{width:17px;height:17px}
.vhg-command-results{overflow-y:auto;padding:7px 0 3px;scrollbar-width:thin}
.vhg-command-results section>p{margin:7px 9px 4px!important;color:#817985;font-size:12px;font-weight:500;letter-spacing:.03em}
.vhg-command-results section[hidden]{display:none}
.vhg-command-results a{display:grid;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:6px 10px;border-radius:10px;color:#211e22!important;text-decoration:none!important}
.vhg-command-results a:hover,.vhg-command-results a:focus-visible,.vhg-command-results a.is-active{background:#f2edf3;color:var(--vhg-purple)!important;outline:0}
.vhg-command-results a>svg{width:20px;height:20px;justify-self:center}
.vhg-command-results a>span{display:flex;min-width:0;flex-direction:column}
.vhg-command-results a strong{color:inherit;font-size:15px;font-weight:500;line-height:1.15}
.vhg-command-results a small{margin-top:2px;color:#837b86;font-size:11px;font-weight:400;line-height:1.2}
.vhg-command-empty{display:flex;min-height:74px;flex-direction:column;justify-content:center;margin:8px 3px 2px;padding:10px 14px;border-radius:10px;background:#f5f1f6;color:#211e22}
.vhg-command-empty[hidden]{display:none}
.vhg-command-empty strong{font-size:15px}.vhg-command-empty span{margin-top:3px;color:#766e78;font-size:12px}.vhg-command-empty i{font-style:normal}
.vhg-command-dialog>footer{display:flex;justify-content:flex-end;gap:14px;padding:8px 8px 3px;border-top:1px solid #eee9ef;color:#7d7580;font-size:11px}
.vhg-command-dialog>footer span{display:flex;align-items:center;gap:4px}.vhg-command-dialog kbd{min-width:20px;padding:2px 5px;border:1px solid #ded8e0;border-bottom-width:2px;border-radius:5px;background:#faf9fa;color:#5f5762;font:500 10px Hind,Arial,sans-serif;text-align:center}
body.vhg-command-open{overflow:hidden}
@media(max-width:600px){.vhg-command-palette{padding:10vh 12px 18px}.vhg-command-dialog{max-height:80vh}.vhg-command-dialog>footer{display:none}}
.vhg-account-button:hover,.vhg-account-button:focus-visible{border-radius:7px;background:#f7f2f8;color:var(--vhg-purple)}
.vhg-header-actions svg,.vhg-mobile-panel svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.vhg-account-button{gap:7px;padding:0 8px;font:600 14px Hind,Arial,sans-serif;cursor:pointer}
.vhg-account-button span{max-width:105px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vhg-header-cta{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 19px;border-radius:7px;background:var(--vhg-purple);color:#fff!important;font-weight:700;text-decoration:none!important;transition:background .18s ease,transform .18s ease}
.vhg-header-cta:hover{background:var(--vhg-purple-dark);transform:translateY(-1px)}
.vhg-mobile-toggle{display:none;width:42px;cursor:pointer}
.vhg-mega-panel{position:absolute;z-index:3;top:var(--vhg-header-height);left:0;width:100%;background:#fff;border-bottom:1px solid var(--vhg-border);box-shadow:0 22px 45px rgba(35,16,40,.15)}
.vhg-site-header.has-open-mega{z-index:10030!important;isolation:isolate}
.vhg-site-header.has-open-mega .vhg-mega-panel{z-index:20}
.vhg-mega-panel[hidden]{display:none}
.vhg-mega-grid{display:grid;grid-template-columns:1.05fr 1fr 1fr;max-width:1536px;margin:0 auto;border-left:1px solid var(--vhg-border);border-right:1px solid var(--vhg-border)}
.vhg-mega-grid--three{grid-template-columns:repeat(3,1fr);padding:16px 0}
.vhg-mega-grid>section{padding:20px 28px 24px;border-right:1px solid var(--vhg-border)}
.vhg-mega-grid>section:last-child{border-right:0}
.vhg-mega-eyebrow{margin:0 0 13px!important;color:#7b747d;font:400 11px/1.2 Hind,Arial,sans-serif;letter-spacing:.09em}
.vhg-mega-item,.vhg-mega-feature{display:flex;align-items:flex-start;gap:14px;padding:13px 12px;border-radius:8px;color:var(--vhg-ink)!important;text-decoration:none!important;transition:background .15s ease,transform .15s ease}
.vhg-mega-item:hover,.vhg-mega-feature:hover{background:#f8f5f9;transform:translateX(2px)}
.vhg-mega-icon{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:28px;color:#8a828d}
.vhg-mega-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.vhg-mega-item span:last-child,.vhg-mega-feature span:last-child{display:flex;flex-direction:column;min-width:0}
.vhg-mega-item strong,.vhg-mega-feature strong{color:var(--vhg-ink);font-size:16px;line-height:1.25}
.vhg-mega-item small,.vhg-mega-feature small{margin-top:3px;color:var(--vhg-muted);font-size:14px;line-height:1.35}
#vhg-panel-properties>.vhg-mega-grid{display:none}
.vhg-property-mega{display:grid;grid-template-columns:minmax(310px,.78fr) minmax(700px,2.22fr);max-width:1536px;margin:0 auto;border-inline:1px solid var(--vhg-border)}
.vhg-property-primary{padding:24px 28px 26px;border-right:1px solid var(--vhg-border);background:#fbfafc}
.vhg-property-primary>a{display:flex;align-items:flex-start;gap:14px;padding:11px 10px;border-radius:8px;color:var(--vhg-ink)!important;text-decoration:none!important;transition:background .15s ease,transform .15s ease}
.vhg-property-primary>a:hover,.vhg-property-primary>a:focus-visible,.vhg-property-primary>a.is-active{background:#f2ebf4;transform:translateX(2px)}
.vhg-property-primary>a>span:last-child{display:flex;flex-direction:column}.vhg-property-primary strong{font-size:16px;line-height:1.25}.vhg-property-primary small{margin-top:2px;color:var(--vhg-muted);font-size:13px;line-height:1.3}
.vhg-property-directory{display:grid;grid-template-columns:1.15fr 1fr .9fr;gap:34px;padding:24px 38px 28px}
.vhg-property-directory>div{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.vhg-property-directory h3{display:flex;flex-direction:column;gap:3px;margin:0 0 11px!important;color:var(--vhg-ink);font:700 17px/1.2 Hind,Arial,sans-serif}.vhg-property-directory h3 small{color:var(--vhg-purple);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.vhg-property-directory a{padding:2px 0;color:#2e2930!important;font-size:14px;line-height:1.45;text-decoration:none!important}.vhg-property-directory a:hover,.vhg-property-directory a:focus-visible{color:var(--vhg-purple)!important;text-decoration:underline!important;text-underline-offset:3px}
.vhg-meet-mega{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(680px,2.2fr);max-width:1360px;margin:0 auto;border-inline:1px solid var(--vhg-border)}
.vhg-meet-links{display:flex;flex-direction:column;padding:24px 28px 28px;border-right:1px solid var(--vhg-border);background:#fbfafc}.vhg-meet-links>a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:43px;padding:8px 11px;border-radius:7px;color:var(--vhg-ink)!important;font-weight:400;text-decoration:none!important}.vhg-meet-links>a:hover,.vhg-meet-links>a:focus-visible,.vhg-meet-links>a.is-active{background:#f2ebf4;color:var(--vhg-purple)!important}.vhg-meet-links svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;transition:transform .18s ease}.vhg-meet-links>a:hover svg,.vhg-meet-links>a:focus-visible svg{transform:translateX(4px)}
.vhg-meet-preview{display:grid;grid-template-columns:minmax(320px,1fr) minmax(300px,.9fr);min-height:350px;padding:24px;gap:28px}.vhg-meet-preview>div{display:flex;flex-direction:column;justify-content:center;padding:14px 12px 14px 24px}.vhg-meet-preview p{margin:0 0 9px!important;color:#817985;font:400 11px/1.2 Hind,Arial,sans-serif;letter-spacing:.1em}.vhg-meet-preview h3{margin:0 0 12px!important;color:var(--vhg-ink);font:700 28px/1.15 Hind,Arial,sans-serif}.vhg-meet-preview span{max-width:510px;color:var(--vhg-muted);font-size:16px;line-height:1.55}.vhg-meet-preview a{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;margin-top:22px;color:var(--vhg-purple)!important;font-weight:400;text-decoration:none!important}.vhg-meet-preview a svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .18s ease}.vhg-meet-preview a:hover svg,.vhg-meet-preview a:focus-visible svg{transform:translateX(4px)}.vhg-meet-preview img{width:100%;height:100%;max-height:302px;align-self:center;border:0;border-radius:0;object-fit:contain;background:transparent;box-shadow:none;transition:opacity .15s ease}
.vhg-projects-mega{display:grid;grid-template-columns:minmax(260px,.64fr) minmax(680px,1.7fr);gap:42px;max-width:1360px;margin:0 auto;padding:28px 34px 32px;border-inline:1px solid var(--vhg-border)}
.vhg-projects-intro{display:flex;flex-direction:column;justify-content:center;padding:12px 10px}.vhg-projects-intro h2{max-width:330px;margin:0 0 12px!important;color:var(--vhg-ink);font:700 28px/1.15 Hind,Arial,sans-serif}.vhg-projects-intro>p:last-child{max-width:360px;margin:0!important;color:var(--vhg-muted);font-size:16px;line-height:1.5}
.vhg-projects-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.vhg-project-card{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(145px,.7fr);min-height:205px;border:0;border-radius:12px;background:transparent;color:var(--vhg-ink)!important;text-decoration:none!important;transition:transform .2s ease,background .2s ease}.vhg-project-card:hover,.vhg-project-card:focus-visible{background:#faf7fb;transform:translateY(-3px)}.vhg-project-card>img{width:100%;height:205px;align-self:center;object-fit:contain;background:transparent}.vhg-project-card>span{display:flex;flex-direction:column;justify-content:center;padding:20px 18px 20px 8px}.vhg-project-card small{color:var(--vhg-purple);font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.vhg-project-card strong{margin-top:5px;font-size:24px;line-height:1.1}.vhg-project-card em{display:flex;align-items:center;gap:6px;margin-top:22px;color:var(--vhg-purple);font-size:14px;font-style:normal;font-weight:400}.vhg-project-card em svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .18s ease}.vhg-project-card:hover em svg,.vhg-project-card:focus-visible em svg{transform:translateX(4px)}
.vhg-airbnb-mega{display:block;max-width:1120px;margin:0 auto;border-inline:1px solid var(--vhg-border);background:#fff}
.vhg-airbnb-tabs{display:grid;grid-template-columns:auto repeat(2,minmax(190px,260px));align-items:center;gap:8px;padding:10px 18px;border-bottom:1px solid var(--vhg-border);background:#fbfafc}.vhg-airbnb-tabs .vhg-mega-eyebrow{margin:0 18px 0 0}.vhg-airbnb-tabs button{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:8px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--vhg-ink);font:500 16px/1.2 Hind,Arial,sans-serif;text-align:left;cursor:pointer}.vhg-airbnb-tabs button span{margin-left:10px;color:var(--vhg-muted);font-size:12px;font-weight:400}.vhg-airbnb-tabs button:hover,.vhg-airbnb-tabs button:focus-visible,.vhg-airbnb-tabs button.is-active{border-color:#e3d8e7;background:#f2ebf4;color:var(--vhg-purple)}
.vhg-airbnb-preview{position:relative;display:grid;grid-template-columns:300px minmax(330px,1fr);align-items:center;justify-content:center;gap:28px;max-width:820px;margin:0 auto;padding:18px 22px}.vhg-airbnb-preview>img{width:300px;aspect-ratio:1/1;border-radius:13px;object-fit:cover}.vhg-airbnb-booking{display:flex;flex-direction:column;justify-content:center}.vhg-airbnb-booking small{color:#756c78;font-size:11px;font-weight:400}.vhg-airbnb-booking h3{margin:2px 0 3px!important;color:var(--vhg-ink);font:600 25px/1.12 Hind,Arial,sans-serif}.vhg-airbnb-booking p{margin:0 0 12px!important;color:var(--vhg-muted);font-size:13px}.vhg-airbnb-fields{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid #aaa1ad;border-radius:11px}.vhg-airbnb-fields>button{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:8px 34px 7px 11px;border:0;border-right:1px solid #aaa1ad;background:#fff;text-align:left;cursor:pointer}.vhg-airbnb-fields>button:nth-of-type(2){border-right:0}.vhg-airbnb-fields>button svg{position:absolute;right:11px;top:50%;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;transform:translateY(-50%)}.vhg-airbnb-fields>button strong{overflow:hidden;width:100%;color:var(--vhg-ink);font:400 13px/1.3 Hind,Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap}.vhg-airbnb-fields label{display:flex;flex-direction:column;padding:7px 11px}.vhg-airbnb-fields .vhg-airbnb-guests{grid-column:1/-1;border-top:1px solid #aaa1ad}.vhg-airbnb-fields span{color:#312b33;font-size:9px;font-weight:600;text-transform:uppercase}.vhg-airbnb-fields input{width:100%;height:24px;padding:0!important;border:0!important;background:transparent!important;color:var(--vhg-ink);font:400 13px Hind,Arial,sans-serif;box-shadow:none!important}.vhg-airbnb-reserve{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:12px;border-radius:999px;background:#e91557;color:#fff!important;font-weight:600;text-decoration:none!important}.vhg-airbnb-reserve svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .18s ease}.vhg-airbnb-reserve:hover svg{transform:translateX(4px)}.vhg-airbnb-note{margin-top:7px;text-align:center}
.vhg-airbnb-calendar[hidden]{display:none!important}.vhg-airbnb-calendar{position:absolute;z-index:8;top:calc(50% + 22px);left:50%;width:min(700px,calc(100% - 24px));padding:15px 16px 12px;border:1px solid #ded8e0;border-radius:16px;background:#fff;box-shadow:0 16px 42px rgba(35,20,39,.2);transform:translate(-50%,-50%)}.vhg-airbnb-calendar-head{display:flex;align-items:flex-start;justify-content:space-between;padding:0 38px 8px 0}.vhg-airbnb-calendar-head>div{display:flex;flex-direction:column}.vhg-airbnb-calendar-head strong{font-size:16px;font-weight:500}.vhg-airbnb-calendar-head span{color:var(--vhg-muted);font-size:11px;font-weight:400}.vhg-airbnb-calendar-head>button{position:absolute;top:11px;right:12px;width:34px;height:34px;border:0;border-radius:50%;background:#f5f2f6;font-size:22px;font-weight:400;line-height:1;cursor:pointer}.vhg-airbnb-calendar-nav{position:absolute;top:60px;right:12px;left:12px;display:flex;justify-content:space-between;pointer-events:none}.vhg-airbnb-calendar-nav button{display:grid;width:32px;height:32px;border:1px solid #e0dbe2;border-radius:50%;background:#fff;font-size:21px;font-weight:400;line-height:1;place-items:center;pointer-events:auto;cursor:pointer}.vhg-airbnb-calendar-nav button:disabled{opacity:.25;cursor:not-allowed}.vhg-airbnb-months{display:grid;grid-template-columns:1fr 1fr;gap:22px}.vhg-airbnb-month h4{margin:0 0 8px!important;font-weight:500;text-align:center;text-transform:capitalize}.vhg-airbnb-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0;text-align:center}.vhg-airbnb-days .vhg-airbnb-weekday{padding-bottom:3px;color:#6f6871;font-size:11px;font-weight:400}.vhg-airbnb-days i{display:block}.vhg-airbnb-days button{position:relative;width:100%;height:31px;padding:0;border:0;background:transparent;color:var(--vhg-ink);font:400 12px Hind,Arial,sans-serif;cursor:pointer}.vhg-airbnb-days button span{position:relative;z-index:2;display:grid;width:31px;height:31px;margin:auto;border-radius:50%;place-items:center}.vhg-airbnb-days button:hover:not(:disabled) span{outline:1px solid var(--vhg-ink)}.vhg-airbnb-days button:disabled{color:#c7c2c8;text-decoration:line-through;cursor:not-allowed}.vhg-airbnb-days button.is-range{background:#f0edf1}.vhg-airbnb-days button.is-start::before,.vhg-airbnb-days button.is-end::before{position:absolute;z-index:0;top:0;bottom:0;width:50%;background:#f0edf1;content:""}.vhg-airbnb-days button.is-start::before{right:0}.vhg-airbnb-days button.is-end::before{left:0}.vhg-airbnb-days button.is-start span,.vhg-airbnb-days button.is-end span{background:#211e22;color:#fff}.vhg-airbnb-calendar-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:9px}.vhg-airbnb-calendar-actions button{min-height:34px;padding:0 15px;border:0;border-radius:8px;background:transparent;font-weight:400;cursor:pointer}.vhg-airbnb-calendar-actions button:last-child{background:#211e22;color:#fff;font-weight:500}
.vhg-submenu-grid{display:grid;grid-template-columns:260px 1fr;max-width:1360px;margin:0 auto;border-inline:1px solid var(--vhg-border)}
.vhg-submenu-intro{display:flex;flex-direction:column;gap:5px;padding:28px;border-right:1px solid var(--vhg-border);background:#fbfafc}
.vhg-submenu-intro strong{font-size:22px}.vhg-submenu-intro small{color:var(--vhg-muted);font-size:14px}
.vhg-submenu-links{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:1px;padding:16px 22px}
.vhg-submenu-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 14px;border-radius:7px;color:var(--vhg-ink)!important;font-weight:600;text-decoration:none!important}
.vhg-submenu-links a:hover,.vhg-submenu-links a:focus-visible{background:#f7f2f8;color:var(--vhg-purple)!important}
.vhg-submenu-links svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .18s ease}.vhg-submenu-links a:hover svg,.vhg-submenu-links a:focus-visible svg{transform:translateX(4px)}
.vhg-account-menu{position:absolute;z-index:8;top:calc(var(--vhg-header-height) - 4px);right:max(24px,calc((100vw - 1480px)/2));width:320px;padding:10px;background:#fff;border:1px solid var(--vhg-border);border-radius:10px;box-shadow:0 18px 45px rgba(35,16,40,.18)}
.vhg-account-menu[hidden]{display:none}.vhg-account-summary{display:flex;flex-direction:column;padding:12px 13px;border-bottom:1px solid var(--vhg-border)}
.vhg-account-summary strong{font-size:16px}.vhg-account-summary small{overflow:hidden;color:var(--vhg-muted);text-overflow:ellipsis}
.vhg-account-menu ul{margin:6px 0 0!important;padding:0!important;list-style:none!important}.vhg-account-menu li{margin:0!important;padding:0!important;list-style:none!important}
.vhg-account-menu li a{display:flex!important;align-items:center;gap:10px;min-height:42px;padding:8px 12px!important;border-radius:6px;color:var(--vhg-ink)!important;text-decoration:none!important}
.vhg-account-menu li a:hover{background:#f7f2f8;color:var(--vhg-purple)!important}.vhg-account-menu img,.vhg-account-menu svg{width:20px;height:20px;object-fit:contain}
.vhg-mobile-panel,.vhg-mobile-backdrop{display:none}
.vhg-site-header.vhg-site-header--overlay{position:absolute;top:0;left:0}
.vhg-site-header--overlay~div:not(#modal_login_wrapper) .pre_search_wrapper,.vhg-site-header--overlay~div:not(#modal_login_wrapper) .header_media.header_mediatype_0{display:none!important}
.vhg-site-header--overlay .vhg-header-bar{width:100%;max-width:none;background:transparent;border-bottom:0;box-shadow:none}
.vhg-site-header--overlay:not(.is-scrolled) .vhg-logo-default{display:none!important}
.vhg-site-header--overlay:not(.is-scrolled) .vhg-logo-overlay{display:block!important}
.vhg-site-header--overlay:not(.is-scrolled) .vhg-nav-link,.vhg-site-header--overlay:not(.is-scrolled) .vhg-header-search,.vhg-site-header--overlay:not(.is-scrolled) .vhg-account-button,.vhg-site-header--overlay:not(.is-scrolled) .vhg-mobile-toggle{color:#fff}
.vhg-site-header--overlay:not(.is-scrolled) .vhg-header-search:hover,.vhg-site-header--overlay:not(.is-scrolled) .vhg-header-search:focus-visible,.vhg-site-header--overlay:not(.is-scrolled) .vhg-account-button:hover,.vhg-site-header--overlay:not(.is-scrolled) .vhg-account-button:focus-visible{background:rgba(0,0,0,.4);color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.28)}
.vhg-site-header--overlay.is-scrolled .vhg-header-bar,.vhg-site-header:not(.vhg-site-header--overlay).is-scrolled .vhg-header-bar{position:fixed;top:0;left:0;right:0;max-width:none;background:#fff;box-shadow:0 6px 25px rgba(35,16,40,.1)}
.vhg-site-header.is-scrolled .vhg-mega-panel{position:fixed;top:var(--vhg-header-height)}
.admin-bar .vhg-site-header.is-scrolled .vhg-header-bar{top:32px}
.admin-bar .vhg-site-header.is-scrolled .vhg-mega-panel{top:calc(var(--vhg-header-height) + 32px)}
body.vhg-menu-open{overflow:hidden}
body.vhg-menu-open .vhg-site-header{z-index:10020}
body:not(.wpestate-dashboard-pagina) .mobile_header{display:none!important}

/* One responsive login dialog, preserving the theme AJAX field IDs. */
#modal_login_wrapper.vhg-login-open{display:flex!important;position:fixed!important;z-index:10050!important;inset:0!important;align-items:center;justify-content:center;padding:24px}
#modal_login_wrapper .modal_login_back{position:absolute!important;inset:0!important;width:auto!important;height:auto!important;background:rgba(19,11,22,.68)!important;backdrop-filter:blur(4px)}
#modal_login_wrapper .modal_login_container{position:relative!important;inset:auto!important;display:grid!important;grid-template-columns:minmax(280px,44%) minmax(340px,56%);width:min(920px,calc(100vw - 40px))!important;height:min(560px,calc(100vh - 48px))!important;margin:0!important;overflow:hidden;border:0!important;border-radius:16px!important;background:#fff!important;box-shadow:0 28px 80px rgba(0,0,0,.3)!important;transform:none!important}
#modal_login_wrapper #login-modal_close{position:absolute!important;z-index:4!important;top:16px!important;right:16px!important;display:flex!important;align-items:center;justify-content:center;width:40px!important;height:40px!important;border-radius:50%!important;background:#f5f1f6!important;cursor:pointer!important}
#modal_login_wrapper #login-modal_close:before,#modal_login_wrapper #login-modal_close:after{content:"";position:absolute;width:18px;height:2px;background:#241d27;border-radius:2px;transform:rotate(45deg)}
#modal_login_wrapper #login-modal_close:after{transform:rotate(-45deg)}
#modal_login_wrapper .login-register-modal-image{position:relative!important;inset:auto!important;grid-column:1;width:100%!important;min-width:100%!important;max-width:none!important;height:100%!important;margin:0!important;padding:0!important;overflow:hidden!important;background-color:#4c075d!important;background-position:50% 50%!important;background-repeat:no-repeat!important;background-size:cover!important;background-origin:border-box!important}
#modal_login_wrapper .login-register-modal-form-wrapper{position:relative!important;inset:auto!important;grid-column:2;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;padding:62px 52px 34px!important;overflow-x:hidden!important;overflow-y:auto!important;background:#fff!important;transform:none!important}
#modal_login_wrapper .login_form{position:static!important;inset:auto!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;float:none!important;transform:none!important}
#modal_login_wrapper .login_form>div[id$="title-topbar"],#modal_login_wrapper #forgot-div-title-topbar{width:auto!important;max-width:none!important;height:auto!important;padding:0!important;transform:none!important}
#modal_login_wrapper .login_form>div[id$="title-topbar"],#modal_login_wrapper #forgot-div-title-topbar{margin-bottom:22px!important;color:var(--vhg-ink)!important;font-size:28px!important;font-weight:700!important;line-height:1.15!important}
#modal_login_wrapper .form-control{width:100%!important;height:50px!important;margin:0 0 13px!important;padding:0 15px!important;border:1px solid #d5ced8!important;border-radius:8px!important;background:#fff!important;box-shadow:none!important}
#modal_login_wrapper .password_holder{margin:0!important}#modal_login_wrapper .wpresidence_button{width:100%!important;min-height:50px!important;margin-top:4px!important;border-radius:8px!important;background:var(--vhg-purple)!important;font-weight:700!important}
#modal_login_wrapper .vhg-login-forgot-link{display:flex!important;align-items:center;justify-content:center;width:100%!important;min-height:44px;margin:14px 0 18px!important;padding:7px 12px!important;color:var(--vhg-purple)!important;font-weight:600!important;line-height:1.35!important;text-align:center;text-decoration:none!important}
#modal_login_wrapper .vhg-login-forgot-link:hover,#modal_login_wrapper .vhg-login-forgot-link:focus-visible{text-decoration:underline!important;text-underline-offset:4px}
#modal_login_wrapper .login_modal_control{position:static!important;inset:auto!important;display:flex!important;flex-wrap:wrap;gap:8px 18px;width:100%!important;margin-top:18px!important;transform:none!important}#modal_login_wrapper .login_modal_control a{align-items:center;gap:7px;color:var(--vhg-purple)!important;font-weight:600!important;text-decoration:none!important}#modal_login_wrapper #widget_login_topbar:before,#modal_login_wrapper #return_login_topbar:before{content:"←";font-size:20px;line-height:1}

#modal_login_wrapper .vhg-login-advisor{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:16px;margin-top:0;padding:13px;border:1px solid #e5dce8;border-radius:12px;background:#fbf9fc;color:var(--vhg-ink)!important;text-decoration:none!important;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
#modal_login_wrapper .vhg-login-advisor:hover{border-color:#c998d4;box-shadow:0 10px 26px rgba(105,0,132,.12);transform:translateY(-2px)}
#modal_login_wrapper .vhg-login-advisor img{display:block;width:132px;height:82px;margin:0;object-fit:contain;object-position:center;background:transparent}
#modal_login_wrapper .vhg-login-advisor-copy{display:flex;min-width:0;flex-direction:column;gap:4px}
#modal_login_wrapper .vhg-login-advisor strong{font-size:17px;font-weight:700;line-height:1.15}
#modal_login_wrapper .vhg-login-advisor small{color:#6d6470;font-size:13px;line-height:1.3}
#modal_login_wrapper .vhg-login-advisor-link{display:inline-flex;align-items:center;gap:6px;margin-top:3px;color:var(--vhg-purple);font-size:14px;font-weight:600}
#modal_login_wrapper .vhg-login-advisor-link>span{transition:transform .18s ease}
#modal_login_wrapper .vhg-login-advisor:hover .vhg-login-advisor-link>span{transform:translateX(4px)}

@media(max-width:1280px){.vhg-header-bar{grid-template-columns:160px minmax(0,1fr) auto;padding:0 18px}.vhg-nav-link{padding:0 8px;font-size:14px}.vhg-account-button span{display:none}.vhg-header-logo{width:145px}}
@media(max-width:1280px) and (min-width:1101px){.vhg-property-mega{grid-template-columns:300px 1fr}.vhg-property-directory{gap:22px;padding-inline:26px}}
@media(max-width:1280px) and (min-width:1101px){.vhg-meet-mega{grid-template-columns:290px 1fr}.vhg-meet-preview{grid-template-columns:1fr 340px}}
@media(max-width:1280px) and (min-width:1101px){.vhg-projects-mega{grid-template-columns:240px 1fr;gap:24px;padding-inline:26px}.vhg-project-card{grid-template-columns:1fr}.vhg-project-card>img{height:150px}.vhg-project-card>span{padding:10px 18px 14px}.vhg-project-card em{margin-top:10px}}
@media(max-width:1100px){
 :root{--vhg-header-height:70px}
 .vhg-site-header{height:var(--vhg-header-height)}
 .vhg-header-bar{grid-template-columns:1fr auto;height:var(--vhg-header-height);padding:0 16px}
 .vhg-header-logo{width:145px;height:58px}
 .vhg-desktop-nav,.vhg-header-search,.vhg-account-button,.vhg-header-cta{display:none}
 .vhg-mobile-toggle{display:inline-flex}
 .vhg-mobile-panel{display:flex;position:fixed;z-index:1005;top:0;right:0;bottom:0;flex-direction:column;width:min(88vw,370px);background:#fbfafc;box-shadow:-20px 0 50px rgba(17,10,20,.2);transform:translateX(100%);visibility:hidden;transition:transform .24s ease,visibility .24s ease}
 .admin-bar .vhg-mobile-panel{top:46px}
 .vhg-mobile-panel.is-open{transform:translateX(0);visibility:visible}
 .vhg-mobile-panel[hidden]{display:flex}
 .vhg-mobile-panel-head{display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:0 18px 0 22px;border-bottom:1px solid var(--vhg-border);background:#fff;font-size:21px}
 .vhg-mobile-panel-head button{display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:#f5f1f7;color:var(--vhg-ink)}
 .vhg-mobile-scroll{display:flex;flex:1;flex-direction:column;overflow-y:auto;padding:16px 14px 22px}
 .vhg-mobile-search{display:grid;grid-template-columns:22px minmax(0,1fr) 34px;align-items:center;gap:7px;min-height:46px;margin:0 2px 18px;padding:0 6px 0 13px;border:1px solid #ddd7e1;border-radius:10px;background:#fff}
 .vhg-mobile-search>svg{width:18px;height:18px;fill:none;stroke:#817986;stroke-width:1.8}
 .vhg-mobile-search input{width:100%;height:42px;padding:0;border:0!important;outline:0;background:transparent!important;color:var(--vhg-ink);font:400 15px Hind,Arial,sans-serif;box-shadow:none!important}
 .vhg-mobile-search button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:8px;background:var(--vhg-purple);color:#fff}
 .vhg-mobile-search button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}
 .vhg-mobile-group-label{display:block;margin:0 8px 7px;color:#948c98;font-size:12px;font-weight:500;letter-spacing:.02em}
 .vhg-mobile-scroll>a,.vhg-mobile-scroll summary{display:flex;align-items:center;justify-content:space-between;min-height:46px;margin:2px 0;padding:0 10px;border:0;border-radius:8px;color:var(--vhg-ink)!important;font-size:15px;font-weight:500;text-decoration:none!important;cursor:pointer;list-style:none}
 .vhg-mobile-scroll>a:hover,.vhg-mobile-scroll summary:hover,.vhg-mobile-scroll details[open]>summary{background:#eee9f0;color:var(--vhg-purple)!important}
 .vhg-mobile-item-label{display:flex;min-width:0;align-items:center;gap:11px}
 .vhg-mobile-item-label>svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
 .vhg-mobile-scroll summary::-webkit-details-marker{display:none}
 .vhg-mobile-scroll summary .vhg-mobile-chevron{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .18s ease}
 .vhg-mobile-scroll details[open] summary .vhg-mobile-chevron{transform:rotate(180deg)}
 .vhg-mobile-scroll details>div{display:grid;grid-template-columns:1fr;gap:2px;margin:2px 0 7px 29px;padding:4px 0 6px 10px;border-left:1px solid #ddd5e1}
 .vhg-mobile-scroll details>div>a{display:flex;align-items:center;min-height:36px;padding:6px 10px;border-radius:7px;background:transparent;color:#4e4752!important;font-size:14px;font-weight:400;text-decoration:none!important}
 .vhg-mobile-scroll details>div>a:hover{background:#eee9f0;color:var(--vhg-purple)!important}
 .vhg-mobile-scroll details>div.vhg-mobile-airbnb{margin-left:0;padding:8px 2px 12px;border-left:0}
 .vhg-mobile-airbnb section{display:flex;flex-direction:column;gap:8px}.vhg-mobile-airbnb-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px}.vhg-mobile-airbnb-tabs button{min-height:36px;border:1px solid #d8cedc;border-radius:8px;background:#fff;color:var(--vhg-ink);font:600 13px Hind,Arial,sans-serif}.vhg-mobile-airbnb-tabs button.is-active{border-color:var(--vhg-purple);background:#f4eaf6;color:var(--vhg-purple)}.vhg-mobile-airbnb img{width:100%;height:148px;border-radius:9px;object-fit:cover}.vhg-mobile-airbnb strong{margin:1px 0 0;font-size:17px;line-height:1.2}.vhg-mobile-airbnb label{display:flex;min-width:0;flex-direction:column;gap:3px;color:#655d68;font-size:10px;font-weight:600}.vhg-mobile-airbnb input{width:100%;height:40px;min-width:0;padding:4px 7px!important;border:1px solid #d8cedc!important;border-radius:7px!important;background:#fff!important;font:400 12px Hind,Arial,sans-serif}.vhg-mobile-airbnb input[type=date]{padding-right:3px!important}.vhg-mobile-airbnb-dates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.vhg-mobile-airbnb [data-vhg-airbnb-reserve]{display:flex;align-items:center;justify-content:center;min-height:42px;margin-top:2px;border-radius:999px;background:#e91557;color:#fff!important;font-size:14px;font-weight:700;text-decoration:none!important}
 .vhg-mobile-airbnb-tour{position:relative;display:block;overflow:hidden;width:100%;padding:0;border:0;border-radius:9px;background:#eee;cursor:pointer}.vhg-mobile-airbnb-tour img{display:block;border-radius:0}.vhg-mobile-airbnb-tour span{position:absolute;right:8px;bottom:8px;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.94);color:#211e22;font:600 10px Hind,Arial,sans-serif;box-shadow:0 3px 12px rgba(20,13,22,.22)}.vhg-mobile-airbnb-tour:focus-visible{outline:3px solid var(--vhg-purple);outline-offset:2px}
 .vhg-mobile-actions{margin-top:auto;padding-top:20px}
 .vhg-mobile-account,.vhg-mobile-publish{display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;margin-top:16px!important;border:1px solid var(--vhg-purple)!important;border-radius:8px;color:var(--vhg-purple)!important;font-weight:700!important}
 .vhg-mobile-account{width:100%;background:#fff;font:700 16px Hind,Arial,sans-serif}
 .vhg-mobile-scroll .vhg-mobile-publish{margin-top:10px!important;background:var(--vhg-purple)!important;color:#fff!important}
 .vhg-mobile-backdrop{display:block;position:fixed;z-index:1004;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(16,10,18,.52);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
 .vhg-mobile-backdrop.is-open{opacity:1;visibility:visible}
 .vhg-mobile-backdrop[hidden]{display:block}
 .vhg-site-header--overlay .vhg-header-bar{background:transparent}
 .vhg-account-menu{position:fixed;z-index:1010;top:76px;right:16px;left:16px;width:auto;max-height:calc(100vh - 92px);overflow:auto}
}
@media(max-width:782px){.admin-bar .vhg-site-header.is-scrolled .vhg-header-bar{top:46px}.admin-bar .vhg-site-header.is-scrolled .vhg-mega-panel{top:calc(var(--vhg-header-height) + 46px)}}
@media(max-width:680px){#modal_login_wrapper.vhg-login-open{padding:12px}#modal_login_wrapper .modal_login_container{display:block!important;width:100%!important;height:min(650px,calc(100vh - 24px))!important}#modal_login_wrapper .login-register-modal-image{display:none!important}#modal_login_wrapper .login-register-modal-form-wrapper{padding:66px 24px 28px!important}#modal_login_wrapper .login_form>div[id$="title-topbar"],#modal_login_wrapper #forgot-div-title-topbar{font-size:24px!important}}
@media(max-width:480px){.vhg-header-bar{padding:0 12px}.vhg-header-logo{width:135px}.vhg-mobile-panel{width:min(92vw,370px)}.vhg-mobile-scroll details>div{grid-template-columns:1fr}.vhg-mobile-airbnb img{height:132px}.vhg-mobile-airbnb input{height:38px;font-size:11px}.vhg-mobile-airbnb [data-vhg-airbnb-reserve]{min-height:40px}}
@media(max-width:680px){#modal_login_wrapper .vhg-login-forgot-link{min-height:48px;margin:15px 0 20px!important;padding:9px 10px!important}#modal_login_wrapper .vhg-login-advisor{grid-template-columns:88px minmax(0,1fr);gap:12px;padding:12px}#modal_login_wrapper .vhg-login-advisor img{width:88px;height:68px}#modal_login_wrapper .vhg-login-advisor strong{font-size:15px}#modal_login_wrapper .vhg-login-advisor small{display:none}}
@media(prefers-reduced-motion:reduce){.vhg-site-header *{scroll-behavior:auto!important;transition:none!important}}

/* Mobile property archive: compact empty state and keep the legacy footer proportional. */
@media(max-width:767px){
 body.post-type-archive-estate_property .no_results,
 body.post-type-archive-estate_property .vivehg-empty-results{box-sizing:border-box!important;width:100%!important;max-width:390px!important;margin:34px auto 42px!important;padding:0 18px!important;text-align:center!important}
 body.post-type-archive-estate_property .no_results_title,
 body.post-type-archive-estate_property .vivehg-empty-results h2{margin:0 auto 14px!important;padding:0!important;color:#171319!important;font:700 clamp(24px,6.7vw,29px)/1.12 Hind,Arial,sans-serif!important;letter-spacing:-.02em!important;text-align:center!important}
 body.post-type-archive-estate_property .no_results_content,
 body.post-type-archive-estate_property .vivehg-empty-results>p{margin:0 auto 20px!important;padding:0!important;color:#5f5862!important;font:400 16px/1.45 Hind,Arial,sans-serif!important;text-align:center!important}
 body.post-type-archive-estate_property .beneficios-footer-hg{box-sizing:border-box!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px 10px!important;width:calc(100% - 28px)!important;margin:0 auto!important;padding:24px 12px!important;border-radius:24px!important}
 body.post-type-archive-estate_property .elem-beneficios-footer-hg{display:flex!important;min-width:0!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;color:#241d27!important;font:400 14px/1.25 Hind,Arial,sans-serif!important;text-align:center!important}
 body.post-type-archive-estate_property .elem-beneficios-footer-hg svg{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important}
 body.post-type-archive-estate_property .container.content_wrapper{padding-top:12px!important}
}

/* Airbnb booking refinements */
.vhg-airbnb-tabs{position:relative;display:flex;justify-content:center;gap:10px}
.vhg-airbnb-tabs .vhg-mega-eyebrow{position:absolute;top:50%;left:18px;margin:0;transform:translateY(-50%)}
.vhg-airbnb-tabs button{justify-content:center;width:220px;text-align:center}
.vhg-airbnb-preview>img{width:300px!important;height:300px!important;min-width:300px;max-width:300px;object-fit:cover!important}
.vhg-airbnb-guest-stepper{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;overflow:hidden;margin-top:3px;border:1px solid #d8cedc;border-radius:7px;background:#fff}
.vhg-airbnb-fields .vhg-airbnb-guest-stepper{color:var(--vhg-ink);font-size:inherit;font-weight:400;text-transform:none}
.vhg-airbnb-fields .vhg-airbnb-guest-stepper input{height:28px!important;padding:0!important;border:0!important;border-right:1px solid #e3dce5!important;border-left:1px solid #e3dce5!important;border-radius:0!important;text-align:center;-moz-appearance:textfield}
.vhg-airbnb-fields .vhg-airbnb-guest-stepper input::-webkit-inner-spin-button,.vhg-airbnb-fields .vhg-airbnb-guest-stepper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
.vhg-airbnb-guest-stepper button{display:grid;min-width:0;padding:0;border:0;background:#fff;color:var(--vhg-ink);font:400 19px/1 Hind,Arial,sans-serif;place-items:center;cursor:pointer}
.vhg-airbnb-guest-stepper button:hover,.vhg-airbnb-guest-stepper button:focus-visible{background:#f4eaf6;color:var(--vhg-purple)}
.vhg-airbnb-calendar{top:calc(50% + 28px)}
.vhg-airbnb-days button.is-start::before,.vhg-airbnb-days button.is-end::before{content:none}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-start::before,.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-end::before{position:absolute;z-index:0;top:0;bottom:0;width:50%;background:#f0edf1;content:""}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-start::before{right:0}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-end::before{left:0}
.vhg-airbnb-calendar-head{padding-right:0}
.vhg-airbnb-days button.is-range{background:linear-gradient(90deg,#f6f4f6 0%,#ece8ee 50%,#f6f4f6 100%)}
.vhg-airbnb-days button:nth-child(7n+1).is-range{border-radius:999px 0 0 999px}
.vhg-airbnb-days button:nth-child(7n).is-range{border-radius:0 999px 999px 0}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-start::before{background:linear-gradient(90deg,#ece8ee,#f6f4f6)}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-end::before{background:linear-gradient(90deg,#f6f4f6,#ece8ee)}
.vhg-airbnb-calendar-actions{justify-content:space-between}
.vhg-airbnb-calendar-actions button:last-child{margin-left:auto}
.vhg-airbnb-calendar{top:18px;width:min(760px,calc(100% - 24px));box-shadow:0 24px 64px rgba(35,20,39,.3);transform:translateX(-50%)}
.vhg-airbnb-calendar-head{display:grid;grid-template-columns:minmax(150px,1fr) minmax(290px,1.45fr);align-items:center;gap:18px;padding:0 0 15px}
.vhg-airbnb-calendar-head>div{display:flex}
.vhg-airbnb-calendar-summary{flex-direction:column}
.vhg-airbnb-calendar-dates{display:grid!important;grid-template-columns:1fr 1fr;overflow:hidden;border:1px solid #aaa1ad;border-radius:9px}
.vhg-airbnb-calendar-dates>button{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:52px;padding:7px 30px 6px 11px;border:0;border-right:1px solid #aaa1ad;background:#fff;text-align:left;cursor:pointer}
.vhg-airbnb-calendar-dates>button:last-child{border-right:0}
.vhg-airbnb-calendar-dates>button:focus,.vhg-airbnb-calendar-dates>button:focus-visible{z-index:1;outline:2px solid #211e22;outline-offset:-2px}
.vhg-airbnb-calendar-dates span{color:#312b33;font-size:9px;font-weight:600;text-transform:uppercase}
.vhg-airbnb-calendar-dates strong{overflow:hidden;width:100%;font:400 12px/1.3 Hind,Arial,sans-serif;text-overflow:ellipsis;white-space:nowrap}
.vhg-airbnb-calendar-dates i{position:absolute;top:50%;right:11px;font:400 17px/1 Hind,Arial,sans-serif;transform:translateY(-50%)}
.vhg-airbnb-calendar-nav{top:84px;right:16px;left:16px;align-items:center}
.vhg-airbnb-calendar-nav button{width:30px;height:30px;font-size:0}
.vhg-airbnb-calendar-nav svg{width:17px;height:17px}
.vhg-airbnb-month h4{min-height:30px;margin:0 0 5px!important;line-height:30px}
.vhg-airbnb-days button.is-range{background:#efebf0}
.vhg-airbnb-days button:nth-child(7n+1).is-range{background:linear-gradient(90deg,#fff 0%,#efebf0 60%)}
.vhg-airbnb-days button:nth-child(7n).is-range{background:linear-gradient(90deg,#efebf0 40%,#fff 100%)}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-start::before{background:linear-gradient(90deg,#efebf0 0%,#fff 100%)}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-end::before{background:linear-gradient(90deg,#fff 0%,#efebf0 100%)}
@media(max-width:760px){
 .vhg-airbnb-calendar{top:12px;width:calc(100% - 16px);padding:13px 12px 11px}
 .vhg-airbnb-calendar-head{grid-template-columns:1fr;gap:9px;padding-bottom:12px}
 .vhg-airbnb-calendar-dates{width:100%}
 .vhg-airbnb-months{grid-template-columns:1fr;gap:16px}
 .vhg-airbnb-month:nth-child(2){display:none}
 .vhg-airbnb-calendar-nav{top:124px;right:12px;left:12px}
}
@media(max-width:1100px){
 .vhg-airbnb-guest-stepper{grid-template-columns:40px minmax(0,1fr) 40px;margin-top:0;border-radius:8px}
 .vhg-mobile-airbnb .vhg-airbnb-guest-stepper input{height:38px!important;padding:0!important;border:0!important;border-right:1px solid #e3dce5!important;border-left:1px solid #e3dce5!important;border-radius:0!important;text-align:center;-moz-appearance:textfield}
 .vhg-mobile-airbnb .vhg-airbnb-guest-stepper input::-webkit-inner-spin-button,.vhg-mobile-airbnb .vhg-airbnb-guest-stepper input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}
 .vhg-airbnb-guest-stepper button{display:grid;min-width:0;padding:0;border:0;background:#fff;color:var(--vhg-ink);font:400 20px/1 Hind,Arial,sans-serif;place-items:center;cursor:pointer}
 .vhg-airbnb-guest-stepper button:hover,.vhg-airbnb-guest-stepper button:focus-visible{background:#f4eaf6;color:var(--vhg-purple)}
}

/* Airbnb date editor: continuous range and explicit active field. */
.vhg-airbnb-calendar-dates{overflow:hidden;border:1px solid #aaa1ad;border-radius:10px;background:#fff}
.vhg-airbnb-calendar-dates>button{box-sizing:border-box;overflow:hidden;border:0;border-radius:0;box-shadow:none}
.vhg-airbnb-calendar-dates>button+button{border-left:1px solid #aaa1ad}
.vhg-airbnb-calendar-dates>button:first-child{border-radius:9px 0 0 9px}
.vhg-airbnb-calendar-dates>button:last-child{border-radius:0 9px 9px 0}
.vhg-airbnb-calendar-dates>button.has-value{background:#fff;box-shadow:none}
.vhg-airbnb-calendar-dates>button.is-selecting{z-index:2;background:#faf8fb;box-shadow:inset 0 0 0 2px #211e22}
.vhg-airbnb-calendar-dates>button+button.is-selecting{margin-left:0}
.vhg-airbnb-calendar-dates>button.is-selecting:first-child{border-radius:9px 0 0 9px}
.vhg-airbnb-calendar-dates>button.is-selecting:last-child{border-radius:0 9px 9px 0}
.vhg-airbnb-calendar-dates>button.is-selecting span{color:#211e22}
.vhg-airbnb-calendar-dates>button.is-selecting strong{font-weight:500}
.vhg-airbnb-calendar-dates [data-vhg-airbnb-clear-date]{z-index:3;display:grid;width:25px;height:25px;border-radius:50%;place-items:center;cursor:pointer}
.vhg-airbnb-calendar-dates [data-vhg-airbnb-clear-date]:hover,.vhg-airbnb-calendar-dates [data-vhg-airbnb-clear-date]:focus-visible{outline:0;background:#f1edf2;color:var(--vhg-purple)}
.vhg-airbnb-days button.is-range{border-radius:0!important;background:#efebf0!important}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-start::before{right:0;background:linear-gradient(90deg,rgba(239,235,240,0) 0%,#efebf0 74%)!important}
.vhg-airbnb-calendar.has-range .vhg-airbnb-days button.is-end::before{left:0;background:linear-gradient(90deg,#efebf0 26%,rgba(239,235,240,0) 100%)!important}
.vhg-airbnb-days button:nth-child(7n+1).is-range{background:linear-gradient(90deg,#fff 0%,#efebf0 38%)!important}
.vhg-airbnb-days button:nth-child(7n).is-range{background:linear-gradient(90deg,#efebf0 62%,#fff 100%)!important}
.vhg-airbnb-calendar-actions [data-vhg-airbnb-calendar-action]{min-width:82px;transition:background .18s ease,transform .18s ease}
.vhg-airbnb-calendar-actions [data-vhg-airbnb-calendar-action].is-save{background:var(--vhg-purple)}
.vhg-airbnb-calendar-actions [data-vhg-airbnb-calendar-action]:hover{transform:translateY(-1px)}

/* Rounded weekly range segments and a cleaner lodging switcher. */
.vhg-airbnb-days button.is-week-start.is-range{border-radius:0!important;background:linear-gradient(90deg,#fff 0%,#efebf0 42%)!important}
.vhg-airbnb-days button.is-week-end.is-range{border-radius:0!important;background:linear-gradient(90deg,#efebf0 58%,#fff 100%)!important}
.vhg-airbnb-days button.is-week-start.is-week-end.is-range{border-radius:0!important;background:linear-gradient(90deg,#fff 0%,#efebf0 35%,#efebf0 65%,#fff 100%)!important}
.vhg-airbnb-tabs{gap:4px;padding:9px 18px;background:#fbfafc}
.vhg-airbnb-tabs::before{position:absolute;top:50%;left:50%;width:410px;height:42px;border:1px solid #e5dfe7;border-radius:999px;background:#f2eff3;content:"";transform:translate(-50%,-50%)}
.vhg-airbnb-tabs button{position:relative;z-index:1;width:200px;min-height:36px;padding:6px 18px;border:0!important;border-radius:999px;font-size:15px;transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease}
.vhg-airbnb-tabs button:hover,.vhg-airbnb-tabs button:focus-visible{background:rgba(255,255,255,.72);transform:translateY(-1px)}
.vhg-airbnb-tabs button.is-active{background:#fff;box-shadow:0 3px 12px rgba(45,24,49,.13);color:var(--vhg-purple)}
@media(max-width:760px){
 .vhg-mobile-airbnb-tabs{gap:4px;padding:4px;border:1px solid #e5dfe7;border-radius:999px;background:#f2eff3}
 .vhg-mobile-airbnb-tabs button{min-height:34px;border:0;border-radius:999px;background:transparent;font-weight:500;transition:background .2s ease,color .2s ease,box-shadow .2s ease}
 .vhg-mobile-airbnb-tabs button.is-active{border:0;background:#fff;box-shadow:0 3px 10px rgba(45,24,49,.12);color:var(--vhg-purple)}
}

/* Compact booking column and keep the guest control visually unified. */
.vhg-airbnb-preview{grid-template-columns:280px 330px;gap:20px;max-width:670px;padding:16px 18px}
.vhg-airbnb-preview>img{width:280px!important;height:280px!important;min-width:280px;max-width:280px}
.vhg-airbnb-booking{width:330px;max-width:100%}
.vhg-airbnb-fields{width:100%}
.vhg-airbnb-guest-stepper button{background:#fff;color:var(--vhg-ink);transition:color .16s ease,box-shadow .16s ease}
.vhg-airbnb-guest-stepper button:hover{background:#fff;color:var(--vhg-purple)}
.vhg-airbnb-guest-stepper button:focus{background:#fff;color:var(--vhg-purple);outline:0}
.vhg-airbnb-guest-stepper button:focus-visible{position:relative;z-index:1;background:#fff;color:var(--vhg-purple);outline:2px solid var(--vhg-purple);outline-offset:-3px}
@media(max-width:1100px){
 .vhg-airbnb-preview{width:auto;max-width:none}
 .vhg-airbnb-booking{width:auto}
}

/* Airbnb interactions and range continuity. */
.vhg-airbnb-days button.is-panel-start.is-range{border-radius:0!important;background:linear-gradient(90deg,#fff 0%,#efebf0 42%)!important}
.vhg-airbnb-days button.is-panel-end.is-range{border-radius:0!important;background:linear-gradient(90deg,#efebf0 58%,#fff 100%)!important}
.vhg-airbnb-calendar-nav button{transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}

/* Two independent lodging panels; each owns its dates, guests and Airbnb URL. */
.vhg-airbnb-mega.vhg-airbnb-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:1360px;border-inline:1px solid var(--vhg-border)}
.vhg-airbnb-card{position:relative;min-width:0;background:#fff}
.vhg-airbnb-card+ .vhg-airbnb-card{border-left:1px solid var(--vhg-border)}
.vhg-airbnb-card .vhg-airbnb-preview{grid-template-columns:minmax(210px,280px) minmax(270px,330px);gap:20px;width:auto;max-width:650px;padding:20px 22px}
.vhg-airbnb-card .vhg-airbnb-preview>img{width:100%!important;height:auto!important;min-width:0;max-width:280px;aspect-ratio:1/1}
.vhg-airbnb-card .vhg-airbnb-booking{width:auto;min-width:0}
.vhg-airbnb-card .vhg-airbnb-calendar{top:50%;width:min(650px,calc(100% - 18px))}
@media(max-width:1250px){
 .vhg-airbnb-card .vhg-airbnb-preview{grid-template-columns:minmax(170px,220px) minmax(250px,1fr);gap:15px;padding-inline:14px}
 .vhg-airbnb-card .vhg-airbnb-preview>img{max-width:220px}
 .vhg-airbnb-card .vhg-airbnb-booking h3{font-size:22px}
}
.vhg-airbnb-calendar-nav button:not(:disabled):hover,.vhg-airbnb-calendar-nav button:not(:disabled):focus-visible{border-color:#b792c0;background:#f7f1f8;color:var(--vhg-purple);box-shadow:0 5px 13px rgba(81,25,94,.14);outline:0;transform:none}
.vhg-airbnb-calendar-nav button:not(:disabled):active{background:#eaddec;box-shadow:0 2px 6px rgba(81,25,94,.12);transform:none}
.vhg-airbnb-guest-stepper button{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease!important}
.vhg-airbnb-guest-stepper button:hover,.vhg-airbnb-guest-stepper button:focus-visible{z-index:1;background:#f7f1f8!important;color:var(--vhg-purple)!important;box-shadow:none!important;outline:0!important;transform:none}
.vhg-airbnb-guest-stepper button:active{background:#eaddec!important;box-shadow:none!important;transform:none}
.vhg-airbnb-fields>button,.vhg-airbnb-calendar-dates>button{transition:background-color .16s ease,box-shadow .16s ease,transform .16s ease}
.vhg-airbnb-fields>button:hover{background:#fbf8fc;box-shadow:none}
.vhg-airbnb-reserve{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}
.vhg-airbnb-reserve:hover,.vhg-airbnb-reserve:focus-visible{background:#cf104c;color:#fff!important;box-shadow:0 8px 18px rgba(239,17,84,.25);outline:0;transform:translateY(-2px)}
.vhg-airbnb-reserve:active{box-shadow:0 3px 9px rgba(239,17,84,.18);transform:translateY(0) scale(.99)}
#modal_login_wrapper .wpresidence_button,#modal_login_wrapper .wpresidence_button:hover,#modal_login_wrapper .wpresidence_button:focus{color:#fff!important}
#modal_login_wrapper .wpresidence_button{transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}
#modal_login_wrapper .wpresidence_button:hover,#modal_login_wrapper .wpresidence_button:focus-visible{background:#65007d!important;box-shadow:0 8px 18px rgba(111,0,142,.24)!important;outline:0;transform:translateY(-1px)}
#modal_login_wrapper .wpresidence_button:active{transform:translateY(0) scale(.995)}

/* Final Airbnb polish: one border per control and stable icon alignment. */
.vhg-airbnb-calendar-dates{
 overflow:hidden!important;
 border:1px solid #aaa1ad!important;
 border-radius:11px!important;
 background:#fff!important;
 box-shadow:none!important;
}
.vhg-airbnb-calendar-dates>button{
 margin:0!important;
 border:0!important;
 border-radius:0!important;
 outline:0!important;
 box-shadow:none!important;
 transform:none!important;
}
.vhg-airbnb-calendar-dates>button+button{border-left:1px solid #aaa1ad!important}
.vhg-airbnb-calendar-dates>button.is-selecting{
 z-index:2;
 background:#faf8fb!important;
 box-shadow:inset 0 0 0 2px #211e22!important;
}
.vhg-airbnb-calendar-dates>button:first-child,
.vhg-airbnb-calendar-dates>button.is-selecting:first-child{border-radius:10px 0 0 10px!important}
.vhg-airbnb-calendar-dates>button:last-child,
.vhg-airbnb-calendar-dates>button.is-selecting:last-child{border-radius:0 10px 10px 0!important}
.vhg-airbnb-fields>button:focus,.vhg-airbnb-fields>button:focus-visible{
 outline:0!important;
 box-shadow:none!important;
 transform:none!important;
}
.vhg-airbnb-calendar-nav button,
.vhg-airbnb-calendar-nav button:hover,
.vhg-airbnb-calendar-nav button:focus-visible,
.vhg-airbnb-calendar-nav button:active{
 display:grid!important;
 padding:0!important;
 outline:0!important;
 transform:none!important;
 place-items:center!important;
}
.vhg-airbnb-calendar-nav button:not(:disabled):hover,
.vhg-airbnb-calendar-nav button:not(:disabled):focus-visible{background:#f7f1f8!important;color:var(--vhg-purple)!important;box-shadow:0 5px 13px rgba(81,25,94,.14)!important}
.vhg-airbnb-calendar-nav button:not(:disabled):active{background:#eaddec!important;box-shadow:0 2px 6px rgba(81,25,94,.12)!important}
.vhg-airbnb-calendar-nav svg{display:block;margin:0!important;transform:none!important}

/* Airbnb photographic tour */
.vhg-airbnb-tour-trigger{position:relative;display:block;overflow:hidden;width:100%;max-width:280px;aspect-ratio:1/1;align-self:center;padding:0;border:0;border-radius:13px;background:#eee;cursor:zoom-in}
.vhg-airbnb-tour-trigger img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;transition:transform .35s ease}
.vhg-airbnb-tour-trigger span{position:absolute;right:12px;bottom:12px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.94);color:#211e22;font-size:11px;font-weight:600;box-shadow:0 4px 16px rgba(20,13,22,.2)}
.vhg-airbnb-tour-trigger span,.vhg-mobile-airbnb-tour span{top:50%;left:50%;right:auto;bottom:auto;display:grid;place-items:center;width:48px;height:48px;padding:0;border-radius:50%;transform:translate(-50%,-50%);background:#fff;box-shadow:0 5px 18px rgba(20,13,22,.24)}
.vhg-airbnb-tour-trigger span svg,.vhg-mobile-airbnb-tour span svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}
.vhg-airbnb-card .vhg-airbnb-booking h3{font-weight:500}
.vhg-airbnb-tour-trigger:hover img,.vhg-airbnb-tour-trigger:focus-visible img{transform:scale(1.025)}
.vhg-airbnb-tour-trigger:focus-visible{outline:3px solid var(--vhg-purple);outline-offset:3px}
body.vhg-photo-tour-open{overflow:hidden}
.vhg-photo-tour[hidden]{display:none!important}
.vhg-photo-tour{position:fixed;z-index:10100;inset:0;overflow-x:hidden;overflow-y:auto;background:#fff;color:#211e22;overscroll-behavior:contain}
.vhg-photo-tour-dialog{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:78px 0 72px}
.vhg-photo-tour-header{position:fixed;z-index:4;top:0;right:0;left:0;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;width:auto;min-height:78px;margin:0;padding:10px 24px;box-sizing:border-box;background:rgba(255,255,255,.96);border-bottom:1px solid #eee9ef;backdrop-filter:blur(14px)}
.vhg-photo-tour-header>button{display:grid;width:42px;height:42px;padding:0;border:1px solid #ddd6df;border-radius:50%;background:#fff;color:#211e22;cursor:pointer;place-items:center}
.vhg-photo-tour-header>button:hover,.vhg-photo-tour-header>button:focus-visible{border-color:var(--vhg-purple);color:var(--vhg-purple);outline:0}
.vhg-photo-tour-header svg{width:20px;height:20px}
.vhg-photo-tour-header small{display:block;color:#756c78;font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
.vhg-photo-tour-header h2{margin:1px 0 0!important;font:600 25px/1.15 Hind,Arial,sans-serif}
.vhg-photo-tour-actions button{display:flex;align-items:center;gap:7px;min-height:40px;padding:0 13px;border:0;border-radius:999px;background:#f5f1f6;color:#211e22;font:600 13px Hind,Arial,sans-serif;cursor:pointer}
.vhg-photo-tour-actions button:hover,.vhg-photo-tour-actions button:focus-visible{background:#eee4f0;color:var(--vhg-purple);outline:0}
.vhg-photo-tour-actions svg{width:17px;height:17px}
.vhg-photo-tour-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:18px 14px;padding:22px 0 30px;border-bottom:1px solid #eee9ef}
.vhg-photo-tour-nav[hidden]{display:none!important}
.vhg-photo-tour-nav button{display:grid;min-width:0;gap:7px;padding:0;border:0;background:transparent;color:#211e22;text-align:left;cursor:pointer}
.vhg-photo-tour-nav img{display:block;width:100%;aspect-ratio:3/2;border-radius:10px;object-fit:cover;box-shadow:0 5px 18px rgba(30,20,32,.12)}
.vhg-photo-tour-nav span{font-size:14px;font-weight:600}
.vhg-photo-tour-nav button:hover span,.vhg-photo-tour-nav button:focus-visible span{color:var(--vhg-purple);text-decoration:underline;text-underline-offset:4px}
.vhg-photo-tour-nav button:focus-visible{outline:0}
.vhg-photo-tour-section{display:grid;grid-template-columns:minmax(210px,300px) minmax(0,1fr);align-items:start;gap:48px;padding:42px 0 54px;scroll-margin-top:82px;border-top:1px solid #ebe7ec}
.vhg-photo-tour-section>header{position:sticky;top:98px;grid-column:1;grid-row:1/-1;align-self:start;padding-top:4px}
.vhg-photo-tour-section h3{margin:0 0 6px!important;font:600 24px/1.2 Hind,Arial,sans-serif}
.vhg-photo-tour-section p{max-width:270px;margin:0!important;color:#716a73;font-size:14px;line-height:1.5}
.vhg-photo-tour-section figure{grid-column:2;margin:0 0 24px;scroll-margin-top:98px}
.vhg-photo-tour-photo{display:block;width:100%;overflow:hidden;padding:0;border:0;border-radius:14px;background:#f1eef2;cursor:zoom-in}
.vhg-photo-tour-section figure img{display:block;width:100%;max-height:760px;object-fit:cover;transition:transform .3s ease}
.vhg-photo-tour-photo:hover img,.vhg-photo-tour-photo:focus-visible img{transform:scale(1.015)}
.vhg-photo-tour-photo:focus-visible{outline:3px solid var(--vhg-purple);outline-offset:3px}
.vhg-photo-tour-section.is-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:min(720px,100%);margin:24px auto 0;padding:0;border:0}
.vhg-photo-tour-section.is-mosaic>header{display:none}
.vhg-photo-tour-section.is-mosaic figure{grid-column:auto;margin:0}
.vhg-photo-tour-section.is-mosaic figure.is-square{aspect-ratio:1/1}
.vhg-photo-tour-section.is-mosaic figure.is-wide{grid-column:1/-1;aspect-ratio:16/9}
.vhg-photo-tour-section.is-mosaic figure.is-tall{grid-row:span 2;aspect-ratio:1/2}
.vhg-photo-tour-section.is-mosaic .vhg-photo-tour-photo{height:100%;border-radius:0}
.vhg-photo-tour-section.is-mosaic figure img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover}
.vhg-photo-viewer[hidden]{display:none!important}
.vhg-photo-viewer{position:fixed;z-index:10200;inset:0;display:grid;grid-template-columns:80px minmax(0,1fr) 80px;grid-template-rows:70px minmax(0,1fr);align-items:center;padding:0 18px 22px;background:rgba(13,10,15,.97);color:#fff}
.vhg-photo-viewer header{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 42px auto 44px;align-items:center;gap:10px}
.vhg-photo-viewer header strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}
.vhg-photo-viewer header span{color:#d3ced5;font-size:13px}
.vhg-photo-viewer button{display:grid;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;place-items:center}
.vhg-photo-viewer header button{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.12)}
.vhg-photo-viewer>button{width:54px;height:54px;justify-self:center;border-radius:50%;background:rgba(255,255,255,.12)}
.vhg-photo-viewer button:hover,.vhg-photo-viewer button:focus-visible{background:rgba(255,255,255,.22);outline:0}
.vhg-photo-viewer svg{width:25px;height:25px}
.vhg-photo-viewer>img{grid-column:2;grid-row:2;display:block;max-width:100%;max-height:calc(100vh - 100px);justify-self:center;object-fit:contain}
.vhg-photo-viewer-prev{grid-column:1;grid-row:2}
.vhg-photo-viewer-next{grid-column:3;grid-row:2}
@media(max-width:760px){
 .vhg-photo-tour-dialog{width:min(100% - 28px,620px);padding-top:68px}
 .vhg-photo-tour-header{grid-template-columns:42px minmax(0,1fr) auto;min-height:68px;padding-inline:14px}
 .vhg-photo-tour-header h2{font-size:20px}
 .vhg-photo-tour-actions{grid-column:auto;grid-row:auto}
 .vhg-photo-tour-actions button{min-height:34px;padding:0 11px}
 .vhg-photo-tour-actions span{display:none}
 .vhg-photo-tour-nav{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px 0 22px}
 .vhg-photo-tour-section{display:block;padding:22px 0 34px}
 .vhg-photo-tour-section>header{position:static;margin-bottom:17px}
 .vhg-photo-tour-section figure{display:block;margin-bottom:30px}
 .vhg-photo-tour-photo{display:block;width:100%;border-radius:10px}
 .vhg-photo-tour-section figure img{border-radius:0}
 .vhg-photo-tour-section.is-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:0}
 .vhg-photo-viewer{grid-template-columns:48px minmax(0,1fr) 48px;padding-inline:7px}
 .vhg-photo-viewer>button{width:42px;height:42px}
 .vhg-photo-viewer header{grid-template-columns:minmax(0,1fr) 38px auto 42px}
}
.vhg-airbnb-guest-stepper button,
.vhg-airbnb-guest-stepper button:hover,
.vhg-airbnb-guest-stepper button:focus,
.vhg-airbnb-guest-stepper button:focus-visible,
.vhg-airbnb-guest-stepper button:active{
 display:flex!important;
 align-items:center!important;
 justify-content:center!important;
 margin:0!important;
 padding:0!important;
 border:0!important;
 outline:0!important;
 box-shadow:none!important;
 line-height:1!important;
 transform:none!important;
}
.vhg-airbnb-guest-stepper button:hover,.vhg-airbnb-guest-stepper button:focus-visible{background:#f7f1f8!important;color:var(--vhg-purple)!important}
.vhg-airbnb-guest-stepper button:active{background:#eaddec!important}

/* Range cells: use a visible fade only when the interval continues off-grid. */
.vhg-airbnb-days button.is-range{border-radius:0!important;background:#efebf0!important}
.vhg-airbnb-days button.is-week-start.is-range{border-radius:0!important;background:linear-gradient(90deg,rgba(239,235,240,0) 0%,#efebf0 58%)!important}
.vhg-airbnb-days button.is-week-end.is-range{border-radius:0!important;background:linear-gradient(90deg,#efebf0 42%,rgba(239,235,240,0) 100%)!important}
.vhg-airbnb-days button.is-week-start.is-week-end.is-range{border-radius:0!important;background:linear-gradient(90deg,rgba(239,235,240,0) 0%,#efebf0 38%,#efebf0 62%,rgba(239,235,240,0) 100%)!important}
.vhg-airbnb-days button.is-panel-start.is-range{border-radius:0!important;background:linear-gradient(90deg,rgba(239,235,240,0) 0%,#efebf0 62%)!important}
.vhg-airbnb-days button.is-panel-end.is-range{border-radius:0!important;background:linear-gradient(90deg,#efebf0 38%,rgba(239,235,240,0) 100%)!important}
.vhg-airbnb-days button.is-panel-start.is-panel-end.is-range{border-radius:0!important;background:linear-gradient(90deg,rgba(239,235,240,0) 0%,#efebf0 38%,#efebf0 62%,rgba(239,235,240,0) 100%)!important}

/* Keep the decorative graduation cap inside its own footer card. */
.franquicia-contain-footer-hg,.franquicia-footer-hg{position:relative!important;isolation:isolate}
.franquicia-footer-hg::before{z-index:0!important;pointer-events:none!important}
.franquicia-footer-hg>*{position:relative;z-index:1}

/* Advisor and agency directories. */
.vhg-directory-mega{display:grid;max-width:1536px;margin:0 auto;border-inline:1px solid var(--vhg-border);background:#fff}
.vhg-directory-mega--agents{grid-template-columns:minmax(270px,.5fr) minmax(430px,.8fr) minmax(700px,1.4fr)}
.vhg-directory-mega--agencies{grid-template-columns:minmax(300px,.5fr) minmax(720px,1.5fr)}
.vhg-directory-mega>section{min-width:0;padding:24px 28px 26px;border-right:1px solid var(--vhg-border)}
.vhg-directory-mega>section:last-child{border-right:0}
.vhg-directory-mega svg{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.vhg-directory-primary{background:#fbfafc}
.vhg-directory-primary h2{margin:0 0 8px!important;color:var(--vhg-ink);font:600 20px/1.2 Hind,Arial,sans-serif}
.vhg-directory-primary>p:not(.vhg-mega-eyebrow){margin:0 0 14px!important;color:var(--vhg-muted);font:400 14px/1.45 Hind,Arial,sans-serif}
.vhg-directory-primary nav{display:grid;gap:3px}
.vhg-directory-primary nav>a{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:56px;padding:8px 10px;border-radius:9px;color:var(--vhg-ink)!important;text-decoration:none!important;transition:background .16s ease,color .16s ease,transform .16s ease}
.vhg-directory-primary nav>a>svg:first-child{color:#8e8591}
.vhg-directory-primary nav>a>svg:last-child{width:16px;height:16px;transition:transform .16s ease}
.vhg-directory-primary nav>a span{display:flex;min-width:0;flex-direction:column}
.vhg-directory-primary nav>a strong{font-size:15px;font-weight:600;line-height:1.2}
.vhg-directory-primary nav>a small{margin-top:2px;color:var(--vhg-muted);font-size:12px;font-weight:400;line-height:1.25}
.vhg-directory-primary nav>a:hover,.vhg-directory-primary nav>a:focus-visible{background:#f1eaf3;color:var(--vhg-purple)!important;outline:0;transform:translateX(2px)}
.vhg-directory-primary nav>a:hover>svg:last-child,.vhg-directory-primary nav>a:focus-visible>svg:last-child{transform:translateX(3px)}
.vhg-directory-cities h3,.vhg-directory-featured h3{margin:0!important;color:var(--vhg-ink);font:600 20px/1.2 Hind,Arial,sans-serif}
.vhg-directory-cities>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px;margin-top:13px}
.vhg-directory-mega--agents .vhg-directory-cities>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px 12px}
.vhg-directory-mega--agencies .vhg-directory-cities>div{grid-template-columns:repeat(3,minmax(0,1fr))}
.vhg-directory-cities a{display:flex;width:max-content;max-width:100%;align-items:center;min-height:34px;padding:5px 0;border-radius:0;background:transparent!important;color:var(--vhg-ink)!important;font-size:14px;text-decoration:none!important;text-underline-offset:4px;text-decoration-thickness:1px!important;transition:color .15s ease}
.vhg-directory-cities a:hover,.vhg-directory-cities a:focus-visible{background:transparent!important;color:var(--vhg-ink)!important;text-decoration:underline!important;outline:0}
.vhg-directory-cities .vhg-directory-all-link{display:inline-flex;width:auto;align-items:center;gap:6px;margin-top:12px;color:var(--vhg-purple)!important;font-weight:500;text-decoration:none!important}
.vhg-directory-cities .vhg-directory-all-link svg{width:15px;height:15px;transition:transform .16s ease}
.vhg-directory-cities .vhg-directory-all-link:hover svg,.vhg-directory-cities .vhg-directory-all-link:focus-visible svg{transform:translateX(3px)}
.vhg-directory-featured header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.vhg-directory-featured header>div{min-width:0}
.vhg-directory-featured header .vhg-mega-eyebrow{margin-bottom:7px!important}
.vhg-directory-featured header>a{display:inline-flex;align-items:center;gap:6px;color:var(--vhg-purple)!important;font-size:13px;font-weight:500;white-space:nowrap;text-decoration:none!important}
.vhg-directory-featured header>a svg{width:15px;height:15px;transition:transform .16s ease}
.vhg-directory-featured header>a:hover svg{transform:translateX(3px)}
.vhg-directory-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.vhg-directory-mega--agencies .vhg-directory-cards{grid-template-columns:repeat(5,minmax(0,1fr))}
.vhg-directory-card{position:relative;display:block;min-width:0;aspect-ratio:1/1;overflow:hidden;border:1px solid #e4dee6;border-radius:13px;background:#f1edf2;color:#fff!important;text-decoration:none!important;box-shadow:0 5px 18px rgba(43,25,47,.08);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.vhg-directory-card>img{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;object-fit:cover;background:#f1edf2;transition:transform .3s ease}
.vhg-directory-card>span{position:absolute;inset:auto 0 0;display:flex;min-height:44%;flex-direction:column;justify-content:flex-end;padding:38px 14px 14px;background:linear-gradient(180deg,transparent 0%,rgba(23,12,27,.18) 22%,rgba(23,12,27,.9) 100%)}
.vhg-directory-mega--agencies .vhg-directory-card>span{min-height:54%;padding-top:48px;background:linear-gradient(180deg,transparent 0%,rgba(23,12,27,.2) 20%,rgba(23,12,27,.92) 100%)}
.vhg-directory-card strong{display:-webkit-box;overflow:hidden;color:#fff;font-size:15px;font-weight:600;line-height:1.24;text-shadow:0 1px 4px rgba(0,0,0,.35);-webkit-box-orient:vertical;-webkit-line-clamp:2}
.vhg-directory-card-location{display:flex;min-width:0;align-items:center;gap:5px;margin-top:5px;overflow:hidden;color:rgba(255,255,255,.9);font-size:11px;font-weight:400;line-height:1.2;white-space:nowrap;text-overflow:ellipsis}
.vhg-directory-card-location svg{width:12px!important;height:12px!important;flex:0 0 12px}
.vhg-directory-card em{display:flex;align-items:center;gap:5px;margin-top:7px;color:rgba(255,255,255,.9);font-size:12px;font-style:normal;font-weight:400}
.vhg-directory-card em svg{width:14px;height:14px;transition:transform .16s ease}
.vhg-directory-card:hover,.vhg-directory-card:focus-visible{border-color:#cba9d2;box-shadow:0 10px 24px rgba(78,22,91,.12);outline:0;transform:translateY(-2px)}
.vhg-directory-card:hover>img{transform:scale(1.035)}
.vhg-directory-card:hover em{color:#fff}
.vhg-directory-card:hover em svg{transform:translateX(3px)}
.vhg-agent-directory-grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(250px,300px));justify-content:center;gap:12px!important;width:min(100% - 30px,1900px)!important;margin:20px auto 8px!important;padding:0!important}
.vhg-agent-directory-grid>.agent_entity_unit,.vhg-agent-directory-unit{float:none!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important}
.vhg-agent-directory-grid>.agent_entity_unit>.agent_entity{width:100%!important;height:100%;margin:0!important}
.vhg-agent-directory-grid .agent_entity_image{width:100%!important}
.vhg-agent-directory-grid .agent_entity_image img{display:block;width:100%!important;max-width:none!important;aspect-ratio:1/1;object-fit:contain}
.vhg-agent-directory-grid .agent_entity_info-wrapper{width:100%!important}
.vhg-agent-profile-card{height:100%;min-height:390px;margin:0!important;overflow:hidden;border:1px solid #e4dee6;border-radius:15px;background:#eee8f0;box-shadow:0 7px 22px rgba(49,22,55,.09);transition:transform .2s ease,box-shadow .2s ease}
.vhg-agent-profile-card>a{position:relative;display:block;width:100%;height:100%;min-height:390px;aspect-ratio:4/5;overflow:hidden;color:#fff!important;text-decoration:none!important}
.vhg-agent-profile-card>a>img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center top;transition:transform .32s ease}
.vhg-agent-profile-card__overlay{position:absolute;inset:auto 0 0;display:flex;min-height:38%;flex-direction:column;justify-content:flex-end;padding:58px 18px 18px;background:linear-gradient(180deg,transparent 0%,rgba(24,10,29,.18) 24%,rgba(24,10,29,.94) 100%)}
.vhg-agent-profile-card__overlay strong{display:-webkit-box;overflow:hidden;color:#fff;font:600 20px/1.18 Hind,Arial,sans-serif;text-shadow:0 1px 5px rgba(0,0,0,.38);-webkit-box-orient:vertical;-webkit-line-clamp:2}
.vhg-agent-profile-card__overlay em{display:inline-flex;align-items:center;gap:7px;margin-top:9px;color:rgba(255,255,255,.9);font:400 14px/1 Hind,Arial,sans-serif;font-style:normal}
.vhg-agent-profile-card__overlay svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}
.vhg-agent-profile-card:hover{box-shadow:0 13px 30px rgba(61,18,71,.16);transform:translateY(-3px)}
.vhg-agent-profile-card:hover>a>img{transform:scale(1.035)}
.vhg-agent-profile-card:hover .vhg-agent-profile-card__overlay svg{transform:translateX(4px)}
@media(max-width:1280px) and (min-width:1101px){
 .vhg-directory-mega--agents{grid-template-columns:225px 350px minmax(0,1fr)}
 .vhg-directory-mega--agencies{grid-template-columns:260px minmax(0,1fr)}
 .vhg-directory-mega>section{padding-inline:18px}
 .vhg-directory-primary h2{font-size:20px}
 .vhg-directory-mega--agents .vhg-directory-cities>div{grid-template-columns:repeat(5,minmax(0,1fr));gap-inline:8px}
 .vhg-directory-mega--agencies .vhg-directory-cities>div{grid-template-columns:repeat(3,minmax(0,1fr))}
 .vhg-directory-card strong{font-size:13px}
}
@media(max-width:700px){
 .vhg-directory-mega{display:block}
 .vhg-directory-mega>section{padding:20px;border-right:0;border-bottom:1px solid var(--vhg-border)}
 .vhg-directory-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .vhg-agent-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;width:calc(100% - 20px)!important;margin-top:12px!important}
 .vhg-agent-profile-card,.vhg-agent-profile-card>a{min-height:0}
 .vhg-agent-profile-card__overlay{padding:42px 12px 12px}
 .vhg-agent-profile-card__overlay strong{font-size:16px}
}
@media(max-width:430px){
 .vhg-agent-directory-grid{grid-template-columns:1fr}
 .vhg-agent-profile-card>a{aspect-ratio:4/4.65}
}

/* Unified directory pagination. */
.wrapper-agents-paged .section-pagination,.wrapper-agents-paged>.pagination,.wrapper-agents-paged .pagination{clear:both;margin:30px auto 10px}
.wrapper-agents-paged .pagination_nojax{display:flex!important;align-items:center;justify-content:center;gap:8px;padding:0!important;list-style:none!important}
.wrapper-agents-paged .pagination_nojax>li:empty{display:none!important}
.wrapper-agents-paged .pagination_nojax>li{display:block!important;margin:0!important;padding:0!important}
.wrapper-agents-paged .pagination_nojax>li>a{display:grid!important;width:46px!important;height:46px!important;place-items:center;border:1px solid #9ab2c1!important;border-radius:50%!important;background:#fff!important;color:#587387!important;font:400 15px/1 Hind,Arial,sans-serif!important;text-decoration:none!important;box-shadow:none!important;transition:border-color .16s ease,color .16s ease,background .16s ease,transform .16s ease}
.wrapper-agents-paged .pagination_nojax>li>a::before{display:none!important;content:none!important}
.wrapper-agents-paged .pagination_nojax>li>a>svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.wrapper-agents-paged .pagination_nojax>li>a:hover,.wrapper-agents-paged .pagination_nojax>li>a:focus-visible{border-color:var(--vhg-purple)!important;color:var(--vhg-purple)!important;outline:0;transform:translateY(-1px)}
.wrapper-agents-paged .pagination_nojax>li.active>a{border-color:var(--vhg-purple)!important;background:#fff!important;color:var(--vhg-purple)!important}
@media(max-width:600px){
 .wrapper-agents-paged .pagination_nojax{gap:6px}
 .wrapper-agents-paged .pagination_nojax>li>a{width:42px!important;height:42px!important}
}
