/* Physis Leads: hold-my-offer popup */
.pvl-root{--pvl-ink:#1B1714;--pvl-ink2:#2E2820;--pvl-cream:#FBF7EF;--pvl-sand:#ECE2D0;--pvl-clay:#C0663B;--pvl-clay-dk:#A4532E;--pvl-stone:#8C8273;--pvl-line:rgba(27,23,20,.14);--pvl-disp:"Cormorant Garamond",Georgia,serif;--pvl-sans:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif}
.pvl-root[hidden]{display:none!important}
.pvl-root *,.pvl-root *::before,.pvl-root *::after{box-sizing:border-box}
.pvl-backdrop{position:fixed;inset:0;background:rgba(27,23,20,.55);z-index:2147483000;opacity:0;transition:opacity .35s cubic-bezier(.22,.61,.36,1)}
.pvl-panel{position:fixed;z-index:2147483001;background:var(--pvl-cream);color:var(--pvl-ink);font-family:var(--pvl-sans);font-weight:400;-webkit-font-smoothing:antialiased;box-shadow:0 30px 80px rgba(27,23,20,.35);display:flex;overflow:hidden;opacity:0;transition:opacity .4s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1)}
.pvl-root.is-open .pvl-backdrop{opacity:1}
.pvl-root.is-open .pvl-panel{opacity:1}

/* Desktop modal */
@media (min-width:900px){
 .pvl-panel{left:50%;top:50%;width:min(880px,calc(100vw - 48px));max-height:calc(100vh - 48px);transform:translate(-50%,-46%)}
 .pvl-root.is-open .pvl-panel{transform:translate(-50%,-50%)}
 .pvl-media{flex:0 0 38%;background:#2E2820 center/cover no-repeat;position:relative;min-height:100%}
 .pvl-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,23,20,0) 55%,rgba(27,23,20,.55))}
 .pvl-media span{position:absolute;left:24px;bottom:22px;right:24px;z-index:1;color:#FBF7EF;font-family:var(--pvl-disp);font-style:italic;font-size:22px;line-height:1.25}
 .pvl-body{flex:1;padding:40px 44px 34px;overflow-y:auto}
}
/* Tablet & mobile: bottom sheet */
@media (max-width:899.98px){
 .pvl-panel{left:0;right:0;bottom:0;width:100%;max-height:92vh;max-height:92dvh;transform:translateY(100%);border-radius:16px 16px 0 0}
 .pvl-root.is-open .pvl-panel{transform:translateY(0)}
 .pvl-media{display:none}
 .pvl-body{flex:1;padding:26px 20px calc(22px + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}
 .pvl-body::before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:var(--pvl-sand);margin:-12px auto 16px}
}
@media (min-width:600px) and (max-width:899.98px){
 .pvl-panel{left:50%;right:auto;width:min(640px,calc(100vw - 32px));transform:translate(-50%,100%)}
 .pvl-root.is-open .pvl-panel{transform:translate(-50%,0)}
 .pvl-body{padding:30px 32px calc(26px + env(safe-area-inset-bottom))}
}

.pvl-close{position:absolute;top:10px;right:10px;z-index:3;width:40px;height:40px;border:0;border-radius:50%;background:rgba(251,247,239,.92);color:var(--pvl-ink);font-size:22px;line-height:40px;text-align:center;cursor:pointer;padding:0}
.pvl-close:hover,.pvl-close:focus-visible{background:var(--pvl-sand);outline:none}
.pvl-eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--pvl-clay-dk);margin:0 0 10px;font-weight:500}
.pvl-title{font-family:var(--pvl-disp);font-weight:400;font-size:clamp(26px,3.2vw,34px);line-height:1.1;margin:0 0 10px;color:var(--pvl-ink);padding-right:28px}
.pvl-sub{font-size:15px;line-height:1.55;color:var(--pvl-ink2);margin:0 0 22px}
.pvl-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 14px}
.pvl-field{display:flex;flex-direction:column;min-width:0}
.pvl-field.full{grid-column:1/-1}
.pvl-field label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--pvl-stone);margin:0 0 6px;font-weight:500}
.pvl-field input,.pvl-field select{width:100%;min-width:0;height:46px;padding:0 12px;border:1px solid var(--pvl-line);border-radius:0;background:#fff;color:var(--pvl-ink);font-family:var(--pvl-sans);font-size:16px;line-height:1.2;-webkit-appearance:none;appearance:none;transition:border-color .2s}
.pvl-field select{background-image:linear-gradient(45deg,transparent 50%,#8C8273 50%),linear-gradient(135deg,#8C8273 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
.pvl-field input:focus,.pvl-field select:focus{outline:none;border-color:var(--pvl-clay)}
.pvl-field input[type=date]{min-height:46px}
.pvl-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.pvl-consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;color:var(--pvl-ink2)}
.pvl-consent input{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:var(--pvl-clay)}
.pvl-consent a{color:var(--pvl-clay-dk);text-decoration:underline}
.pvl-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:4px}
.pvl-submit{flex:1 1 auto;min-height:50px;padding:0 28px;border:0;border-radius:0;background:var(--pvl-clay);color:#fff;font-family:var(--pvl-sans);font-size:14px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.pvl-submit:hover,.pvl-submit:focus-visible{background:var(--pvl-clay-dk);outline:none}
.pvl-submit[disabled]{opacity:.65;cursor:wait}
.pvl-skip{background:none;border:0;padding:6px 0;font-family:var(--pvl-sans);font-size:13px;color:var(--pvl-stone);text-decoration:underline;cursor:pointer}
.pvl-error{grid-column:1/-1;margin:0;font-size:13px;color:#A4322E;min-height:0}
.pvl-error:empty{display:none}
.pvl-ok{text-align:left}
.pvl-ok .pvl-title{margin-bottom:12px}
.pvl-ok p{font-size:15px;line-height:1.6;margin:0 0 22px;color:var(--pvl-ink2)}
@media (max-width:420px){
 .pvl-form{grid-template-columns:1fr 1fr;gap:12px 10px}
 .pvl-sub{font-size:14px;margin-bottom:18px}
 .pvl-submit{width:100%}
 .pvl-skip{margin:0 auto}
}
@media (prefers-reduced-motion:reduce){.pvl-backdrop,.pvl-panel{transition:none}}
body.pvl-lock{overflow:hidden}
@media (max-width:600px){.pvl-villa,.pvl-guests{grid-column:1/-1}}
/* Hard reset against theme button styles (Hello Elementor colours buttons #c36) */
.pvl-root button.pvl-close{border:0!important;border-radius:50%!important;background:rgba(251,247,239,.92)!important;color:#1B1714!important;padding:0!important;box-shadow:none!important;font-family:var(--pvl-sans)!important;font-size:22px!important;line-height:40px!important;width:40px!important;height:40px!important}
.pvl-root button.pvl-close:hover,.pvl-root button.pvl-close:focus{background:#ECE2D0!important;color:#1B1714!important}
.pvl-root button.pvl-submit{border:0!important;border-radius:0!important;background:#C0663B!important;color:#fff!important;box-shadow:none!important;padding:0 28px!important;font-family:var(--pvl-sans)!important;font-size:14px!important;font-weight:500!important;letter-spacing:.14em!important;text-transform:uppercase!important;line-height:1.2!important}
.pvl-root button.pvl-submit:hover,.pvl-root button.pvl-submit:focus{background:#A4532E!important;color:#fff!important}
.pvl-root button.pvl-skip{border:0!important;background:none!important;color:#8C8273!important;padding:6px 0!important;box-shadow:none!important;font-family:var(--pvl-sans)!important;font-size:13px!important;text-decoration:underline!important;text-transform:none!important;letter-spacing:0!important}
.pvl-root button.pvl-skip:hover,.pvl-root button.pvl-skip:focus{background:none!important;color:#1B1714!important}
.pvl-root input,.pvl-root select{box-shadow:none!important}
@media (min-width:900px) and (max-height:760px){.pvl-body{padding-top:30px;padding-bottom:26px}.pvl-sub{margin-bottom:16px}.pvl-form{gap:10px 14px}.pvl-field input,.pvl-field select{height:42px}}
/* Floating reopen tab */
.pvl-pill{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:2147482999;border:0!important;border-radius:999px!important;background:#C0663B!important;color:#fff!important;font-family:"Jost",system-ui,sans-serif!important;font-size:13px!important;font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase!important;padding:12px 18px!important;line-height:1.2!important;box-shadow:0 10px 30px rgba(27,23,20,.3)!important;cursor:pointer;animation:pvlpill .5s cubic-bezier(.16,1,.3,1)}
.pvl-pill:hover,.pvl-pill:focus{background:#A4532E!important;color:#fff!important}
.pvl-pill[hidden]{display:none!important}
@keyframes pvlpill{from{transform:translateY(20px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.pvl-pill{animation:none}}
