/* Kavan Kit — Header (V4, STYLES §11): promo dot, hamburger bars, mobile side drawer menu. */
.kv-promo-label::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#A3AC85;vertical-align:middle;margin-right:10px;position:relative;top:-1px}
.e-con.kv-burger-bars,.kv-burger-bars{height:1.5px !important;min-height:1.5px !important;min-width:0 !important;overflow:visible !important}
.e-con.kv-burger-bars > *{display:none !important}
.kv-burger-bars::before,.kv-burger-bars::after{content:'';position:absolute;left:0;height:1.5px;border-radius:1px;transition:transform .2s}
.kv-burger-bars::before{top:-6.5px;width:22px;background:#EFECE1}
.kv-burger-bars::after{top:6.5px;width:14px;background:#A3AC85}
.kv-mnav .kv-burger-bars{background:transparent !important}
.kv-mnav .kv-burger-bars::before{top:0;transform:rotate(45deg)}
.kv-mnav .kv-burger-bars::after{top:0;width:22px;background:#EFECE1;transform:rotate(-45deg)}
/* Mobile menu: a drawer that slides in from the right edge over a dimmed page. */
.kv-mnav{display:flex !important;z-index:100000 !important;transform:translateX(105%);visibility:hidden;transition:transform .32s cubic-bezier(.2,.7,.2,1),visibility 0s linear .32s}
html.kv-mnav-open .kv-mnav{transform:translateX(0);visibility:visible;transition:transform .32s cubic-bezier(.2,.7,.2,1)}
body::after{content:'';position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(20,23,15,.55);z-index:99999;opacity:0;pointer-events:none;transition:opacity .32s}
html.kv-mnav-open body::after{opacity:1;pointer-events:auto;cursor:pointer}
html.kv-mnav-open,html.kv-mnav-open body{overflow:hidden}
@media (min-width:1025px){.kv-mnav{display:none !important}html.kv-mnav-open body::after{opacity:0;pointer-events:none}}
@media (prefers-reduced-motion:reduce){.kv-mnav,html.kv-mnav-open .kv-mnav,body::after{transition:none}}
/* Language switcher (EN | ES): a two-option pill. The active language (.kv-lang-cur) is filled
   sand with dark text; the other one (.kv-lang-alt) is a link with a hover/focus state. */
.kv-lang{display:inline-flex !important;align-items:center !important;column-gap:2px !important;gap:2px !important;padding:3px !important;border:1px solid rgba(239,236,225,.32) !important;border-radius:999px !important;background:rgba(20,23,15,.3) !important;flex:0 0 auto !important;width:auto}
.kv-lang .kv-lang-cur,.kv-lang .kv-lang-alt{font-size:13px !important;line-height:1 !important;letter-spacing:.12em !important;font-weight:600 !important;white-space:nowrap;border-radius:999px;margin:0 !important}
.kv-lang .kv-lang-cur{background:#EFECE1 !important;color:#14170F !important;padding:9px 13px !important;cursor:default}
.kv-lang .kv-lang-alt{padding:0 !important;color:rgba(239,236,225,.8) !important}
.kv-lang .kv-lang-alt a{display:block !important;padding:9px 13px !important;border-radius:999px;color:rgba(239,236,225,.8) !important;cursor:pointer;transition:background-color .2s,color .2s}
.kv-lang .kv-lang-alt a:hover{color:#FFFFFF !important;background:rgba(239,236,225,.16)}
.kv-lang .kv-lang-alt a:focus-visible{outline:2px solid #EFECE1;outline-offset:2px}
/* Compact copy in the tablet/mobile bar, right beside MENU, so the other language is visible
   without opening the drawer. Hidden on desktop, where the copy inside the bar's right group shows. */
.kv-lang.kv-lang-bar{display:none !important}
@media (max-width:1024px){.kv-lang.kv-lang-bar{display:inline-flex !important;margin-left:auto !important;margin-right:14px !important}}
@media (max-width:767px){.kv-lang.kv-lang-bar .kv-lang-cur,.kv-lang.kv-lang-bar .kv-lang-alt a{padding:10px 12px !important}.kv-lang.kv-lang-bar{margin-right:10px !important}}
/* Larger, full-width version inside the drawer menu, with the language names spelled out. */
.kv-lang.kv-lang-lg{display:flex !important;width:100% !important;padding:4px !important}
.kv-lang.kv-lang-lg .kv-lang-cur,.kv-lang.kv-lang-lg .kv-lang-alt{flex:1 1 0;text-align:center;font-size:14px !important;letter-spacing:.08em !important}
.kv-lang.kv-lang-lg .kv-lang-cur,.kv-lang.kv-lang-lg .kv-lang-alt a{padding:15px 12px !important}
/* Pages without a photo hero (first section has kv-under-header): the header bar becomes solid Ink
   so its light text stays readable over the sand background. */
body:has(.kv-under-header) [data-elementor-type="header"] .kv-glass-dark{background:#14170F !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important}
/* Promotions panel: a card with the class kv-promo-off is switched off on the site (e.g. a relocation
   deal waiting for its next date). In the Elementor editor it stays visible, dimmed and dashed, so it
   can be filled in; remove the class to publish it. */
.kv-promo-off{display:none !important}
.elementor-editor-active .kv-promo-off{display:flex !important;opacity:.55;outline:2px dashed #A79F87;outline-offset:-2px}
/* In the Elementor editor the menu is shown inline below the bar so it can be edited. */
.elementor-editor-active .kv-mnav{display:flex !important;position:relative !important;z-index:auto !important;margin-top:120px;transform:none;visibility:visible;width:auto;max-width:none;box-shadow:none}
.elementor-editor-active body::after{display:none}
