.elementor-130 .elementor-element.elementor-element-46ee550{--display:flex;--min-height:153px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--margin-top:2px;--margin-bottom:2px;--margin-left:2px;--margin-right:2px;--padding-top:2px;--padding-bottom:2px;--padding-left:2px;--padding-right:2px;--e-transform-origin-x:center;--e-transform-origin-y:center;}.elementor-130 .elementor-element.elementor-element-9518d56{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-130 .elementor-element.elementor-element-2f4b166{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-130 .elementor-element.elementor-element-7f4fa15.elementor-element{--align-self:center;}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-menu-toggle{margin:0 auto;background-color:var( --e-global-color-text );}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:26px;font-weight:600;}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--main .elementor-item{color:#C5CE29;fill:#C5CE29;}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--main .elementor-item:focus{color:#F3A800;fill:#F3A800;}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--dropdown a, .elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-menu-toggle{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-primary );}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--dropdown a:hover,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--dropdown a:focus,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-menu-toggle:hover,
					.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-menu-toggle:focus{color:var( --e-global-color-primary );}.elementor-130 .elementor-element.elementor-element-7f4fa15 div.elementor-menu-toggle{color:var( --e-global-color-accent );}.elementor-130 .elementor-element.elementor-element-7f4fa15 div.elementor-menu-toggle svg{fill:var( --e-global-color-accent );}.elementor-130 .elementor-element.elementor-element-811abbe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu .elementor-item{font-size:22px;}}@media(max-width:767px){.elementor-130 .elementor-element.elementor-element-46ee550{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-130 .elementor-element.elementor-element-46ee550.e-con{--align-self:center;}.elementor-130 .elementor-element.elementor-element-9724268.elementor-element{--align-self:center;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-130 .elementor-element.elementor-element-7f4fa15 .elementor-nav-menu .elementor-item{font-size:18px;}.elementor-130 .elementor-element.elementor-element-7a11c1b.elementor-element{--align-self:flex-end;}}@media(min-width:768px){.elementor-130 .elementor-element.elementor-element-9518d56{--width:25%;}.elementor-130 .elementor-element.elementor-element-2f4b166{--width:50%;}.elementor-130 .elementor-element.elementor-element-811abbe{--width:25%;}}/* Start custom CSS for container, class: .elementor-element-46ee550 *//* ================================================
   WSD HEADER -- Full CSS
   Wildlife Safari Deals
   ================================================ */
 
/* ================================================
   FONT LOADING -- add this <link> in your <head>
   via Elementor Custom Code or functions.php:
 
   <link rel="preconnect" href="https://fonts.googleapis.com">
   <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
   <link href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;0,700&family=Bebas+Neue&family=Lora:wght@400;500&display=swap" rel="stylesheet">
   ================================================ */
 
/* ================================================
   GLOBAL TEXT RENDERING -- crisp on all screens
   ================================================ */
.elementor-location-header,
.elementor-location-header *,
header.site-header,
header.site-header * {
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-rendering: optimizeLegibility !important;
}
 
/* ================================================
   HEADER WRAPPER
   ================================================ */
.elementor-location-header,
header.site-header,
#masthead {
  background: #080F0A !important;
  border-bottom: 1px solid rgba(201,148,42,0.3) !important;
  font-family: 'Lora', Georgia, serif !important;
  width: 100% !important;
  box-sizing: border-box !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
  transition: transform 0.35s cubic-bezier(0.4,0,0.2,1), padding 0.35s cubic-bezier(0.4,0,0.2,1), min-height 0.35s cubic-bezier(0.4,0,0.2,1) !important;
}
 
/* Gold accent line -- brighter */
.elementor-location-header::after,
header.site-header::after {
  content: '' !important;
  display: block !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent 0%, #C9942A 20%, #F0C84A 50%, #C9942A 80%, transparent 100%) !important;
  opacity: 0.9 !important;
}
 
/* Inner container */
.elementor-location-header .elementor-container,
.elementor-location-header .elementor-row {
  min-height: 72px !important;
  align-items: center !important;
  padding: 0 48px !important;
}
 
/* ================================================
   LOGO
   ================================================ */
.elementor-location-header .elementor-site-title a,
.elementor-location-header .site-title a,
.elementor-widget-site-logo a,
.wsd-logo-link {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.65rem !important;
  font-weight: 700 !important;
  color: #D9A832 !important;
  letter-spacing: 1.2px !important;
  text-decoration: none !important;
  line-height: 1.1 !important;
  display: block !important;
  text-shadow: 0 1px 12px rgba(201,148,42,0.25) !important;
}
.elementor-location-header .elementor-site-title a:hover,
.elementor-location-header .site-title a:hover {
  color: #F0C84A !important;
  text-shadow: 0 2px 16px rgba(240,200,74,0.4) !important;
}
 
/* Tagline -- more visible */
.elementor-location-header .site-description,
.elementor-widget-site-logo .site-description,
.wsd-logo-sub {
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 0.6rem !important;
  letter-spacing: 5px !important;
  color: rgba(242,235,217,0.55) !important;
  text-transform: uppercase !important;
  margin-top: 3px !important;
  display: block !important;
}
 
/* ================================================
   NAV LINKS
   ================================================ */
.elementor-location-header .elementor-nav-menu a,
.elementor-location-header nav a,
.elementor-nav-menu--main .elementor-item {
  font-family: 'Lora', serif !important;
  font-size: 0.87rem !important;
  color: rgba(242,235,217,0.82) !important;
  text-decoration: none !important;
  padding: 8px 14px !important;
  border-radius: 4px !important;
  letter-spacing: 0.3px !important;
  transition: color 0.25s ease, background 0.25s ease !important;
  position: relative !important;
  display: block !important;
}
.elementor-location-header .elementor-nav-menu a:hover,
.elementor-nav-menu--main .elementor-item:hover {
  color: #F2EBD9 !important;
  background: rgba(201,148,42,0.1) !important;
}
.elementor-location-header .elementor-nav-menu .current-menu-item > a,
.elementor-nav-menu--main .elementor-item.elementor-item-active {
  color: #D9A832 !important;
}
 
/* Underline animation */
.elementor-nav-menu--main .elementor-item::after {
  content: '' !important;
  display: block !important;
  height: 1.5px !important;
  background: #D9A832 !important;
  transform: scaleX(0) !important;
  transform-origin: left !important;
  transition: transform 0.28s ease !important;
  margin-top: 2px !important;
}
.elementor-nav-menu--main .elementor-item:hover::after,
.elementor-nav-menu--main .elementor-item.elementor-item-active::after {
  transform: scaleX(1) !important;
}
 
/* ================================================
   DROPDOWNS
   ================================================ */
.elementor-location-header .elementor-nav-menu .sub-menu,
.elementor-nav-menu--main .elementor-nav-menu__container .sub-menu {
  background: #0D1A10 !important;
  border: 1px solid rgba(201,148,42,0.25) !important;
  border-radius: 8px !important;
  padding: 8px 0 !important;
  box-shadow: 0 16px 48px rgba(0,0,0,0.6) !important;
  min-width: 210px !important;
}
.elementor-location-header .elementor-nav-menu .sub-menu a,
.elementor-nav-menu--main .elementor-nav-menu__container .sub-menu a {
  font-family: 'Lora', serif !important;
  font-size: 0.83rem !important;
  color: rgba(242,235,217,0.72) !important;
  padding: 10px 20px !important;
  border-radius: 0 !important;
  border-left: 2px solid transparent !important;
  transition: color 0.2s, border-color 0.2s, background 0.2s !important;
}
.elementor-location-header .elementor-nav-menu .sub-menu a:hover {
  color: #D9A832 !important;
  background: rgba(201,148,42,0.08) !important;
  border-left-color: #D9A832 !important;
}
 
/* ================================================
   DESKTOP BUTTONS
   ================================================ */
.wsd-btn-primary,
.elementor-location-header .elementor-button.wsd-btn-primary {
  background: #C9942A !important;
  color: #080F0A !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  padding: 11px 26px !important;
  border-radius: 4px !important;
  border: 2px solid #C9942A !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: background 0.25s, color 0.25s, transform 0.2s, box-shadow 0.25s !important;
  cursor: pointer !important;
  -webkit-font-smoothing: antialiased !important;
}
.wsd-btn-primary:hover {
  background: #F0C84A !important;
  border-color: #F0C84A !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(201,148,42,0.45) !important;
}
.wsd-btn-ghost,
.elementor-location-header .elementor-button.wsd-btn-ghost {
  background: transparent !important;
  color: rgba(242,235,217,0.85) !important;
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.6px !important;
  padding: 9px 22px !important;
  border-radius: 4px !important;
  border: 1px solid rgba(242,235,217,0.35) !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: border-color 0.25s, color 0.25s, transform 0.2s !important;
  cursor: pointer !important;
  -webkit-font-smoothing: antialiased !important;
}
.wsd-btn-ghost:hover {
  border-color: #D9A832 !important;
  color: #D9A832 !important;
  transform: translateY(-2px) !important;
}
 
/* ================================================
   HAMBURGER
   ================================================ */
.elementor-nav-menu__toggle,
.elementor-menu-toggle {
  color: #D9A832 !important;
  border-color: rgba(201,148,42,0.4) !important;
}
.elementor-nav-menu__toggle i,
.elementor-menu-toggle i {
  color: #D9A832 !important;
  font-size: 1.4rem !important;
}
 
/* ================================================
   MOBILE DROPDOWN PANEL
   ================================================ */
.elementor-nav-menu--dropdown,
.elementor-nav-menu--indicator {
  background: #0D1A10 !important;
  border-top: 1px solid rgba(201,148,42,0.2) !important;
}
.elementor-nav-menu--dropdown .elementor-item,
.elementor-nav-menu--dropdown a {
  color: rgba(242,235,217,0.82) !important;
  border-bottom: 1px solid rgba(201,148,42,0.08) !important;
  font-family: 'Lora', serif !important;
  font-size: 0.92rem !important;
}
.elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-nav-menu--dropdown a:hover {
  color: #D9A832 !important;
  background: rgba(201,148,42,0.07) !important;
}
 
/* ================================================
   INJECTED MOBILE NAV BUTTONS
   ================================================ */
.wsd-mobile-nav-btns {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 14px 16px 18px !important;
  background: #0D1A10 !important;
  border-top: 1px solid rgba(201,148,42,0.18) !important;
}
.wsd-mobile-nav-btns .wsd-mobile-btn-primary {
  background: #C9942A !important;
  color: #080F0A !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  padding: 14px 20px !important;
  border-radius: 6px !important;
  border: none !important;
  text-align: center !important;
  text-decoration: none !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  -webkit-font-smoothing: antialiased !important;
}
.wsd-mobile-nav-btns .wsd-mobile-btn-primary:hover {
  background: #F0C84A !important;
}
.wsd-mobile-nav-btns .wsd-mobile-btn-ghost {
  background: transparent !important;
  color: rgba(242,235,217,0.85) !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  padding: 12px 20px !important;
  border-radius: 6px !important;
  border: 1px solid rgba(242,235,217,0.3) !important;
  text-align: center !important;
  text-decoration: none !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  -webkit-font-smoothing: antialiased !important;
}
.wsd-mobile-nav-btns .wsd-mobile-btn-ghost:hover {
  border-color: #D9A832 !important;
  color: #D9A832 !important;
}
 
/* ================================================
   SEARCH WIDGET
   ================================================ */
.elementor-location-header .elementor-search-form__input {
  background: #162218 !important;
  border: 1px solid rgba(201,148,42,0.4) !important;
  color: #F2EBD9 !important;
  font-family: 'Lora', serif !important;
  border-radius: 50px !important;
  padding: 10px 20px !important;
}
.elementor-location-header .elementor-search-form__input::placeholder {
  color: rgba(242,235,217,0.4) !important;
}
.elementor-location-header .elementor-search-form__submit {
  background: #C9942A !important;
  color: #080F0A !important;
  border-radius: 50px !important;
}
 
/* ================================================
   TABLET
   ================================================ */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-container,
  .elementor-location-header .elementor-row {
    padding: 0 24px !important;
  }
}
 
/* ================================================
   MOBILE -- BASE STATE
   ================================================ */
@media (max-width: 767px) {
 
  .elementor-location-header .elementor-container,
  .elementor-location-header .elementor-row {
    min-height: 56px !important;
    padding: 0 16px !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
 
  .elementor-location-header .elementor-column {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
  }
 
  .elementor-location-header .elementor-column:first-child {
    flex: 1 !important;
  }
 
  .elementor-location-header .elementor-column:last-child {
    flex: 0 0 auto !important;
  }
 
  .elementor-location-header .elementor-widget-wrap,
  .elementor-location-header .elementor-widget-container,
  .elementor-location-header .elementor-element,
  .elementor-location-header .elementor-section,
  .elementor-location-header .elementor-inner-section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-items: center !important;
  }
 
  /* Logo -- sharp and prominent on mobile */
  .elementor-location-header .elementor-site-title a,
  .elementor-location-header .site-title a {
    font-size: 1.3rem !important;
    letter-spacing: 0.8px !important;
    color: #D9A832 !important;
    transition: font-size 0.3s ease, letter-spacing 0.3s ease !important;
  }
 
  .elementor-location-header .elementor-site-logo img,
  .elementor-location-header .custom-logo {
    height: 44px !important;
    width: auto !important;
    transition: height 0.3s ease !important;
  }
 
  .elementor-location-header .site-description {
    opacity: 1 !important;
    max-height: 30px !important;
    margin-top: 3px !important;
    transition: opacity 0.25s ease, max-height 0.25s ease, margin 0.25s ease !important;
  }
 
  /* Hide desktop CTA buttons on mobile */
  .elementor-location-header .wsd-btn-primary,
  .elementor-location-header .wsd-btn-ghost,
  .elementor-location-header .elementor-button.wsd-btn-primary,
  .elementor-location-header .elementor-button.wsd-btn-ghost,
  .elementor-location-header .elementor-widget-button {
    display: none !important;
  }
 
  .elementor-nav-menu__toggle,
  .elementor-menu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}
 
/* ================================================
   MOBILE -- SLIDE AWAY ON SCROLL DOWN
   ================================================ */
@media (max-width: 767px) {
  .wsd-header-hidden .elementor-location-header,
  .wsd-header-hidden header.site-header,
  .wsd-header-hidden #masthead {
    transform: translateY(-100%) !important;
  }
}
 
/* ================================================
   MOBILE -- MINIMISED ON SCROLL
   ================================================ */
@media (max-width: 767px) {
 
  .wsd-mini .elementor-location-header .elementor-container,
  .wsd-mini .elementor-location-header .elementor-row {
    min-height: 40px !important;
    padding: 4px 12px !important;
  }
 
  .wsd-mini .elementor-location-header .elementor-widget-wrap {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }
 
  .wsd-mini .elementor-location-header .elementor-site-title a,
  .wsd-mini .elementor-location-header .site-title a {
    font-size: 0.82rem !important;
    letter-spacing: 0.2px !important;
    line-height: 1 !important;
    color: #D9A832 !important;
  }
 
  .wsd-mini .elementor-location-header .elementor-site-logo img,
  .wsd-mini .elementor-location-header .custom-logo {
    height: 26px !important;
    width: auto !important;
  }
 
  .wsd-mini .elementor-location-header .site-description {
    opacity: 0 !important;
    max-height: 0 !important;
    margin-top: 0 !important;
    overflow: hidden !important;
  }
 
  .wsd-mini .elementor-menu-toggle,
  .wsd-mini .elementor-nav-menu__toggle {
    width: 30px !important;
    height: 30px !important;
  }
  .wsd-mini .elementor-menu-toggle i,
  .wsd-mini .elementor-nav-menu__toggle i {
    font-size: 1.05rem !important;
  }
 
  .wsd-mini .elementor-location-header {
    border-bottom-color: rgba(201,148,42,0.1) !important;
  }
}
 
/* ================================================
   FLOATING BOOK NOW BUTTON -- mobile only
   ================================================ */
#wsd-float-btn {
  display: none;
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%) translateY(80px);
  z-index: 8000;
  background: #C9942A;
  color: #080F0A;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.6px;
  padding: 14px 30px;
  border-radius: 50px;
  border: none;
  cursor: pointer;
  box-shadow: 0 8px 32px rgba(201,148,42,0.6), 0 2px 8px rgba(0,0,0,0.35);
  transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), opacity 0.35s ease, background 0.25s ease;
  opacity: 0;
  white-space: nowrap;
  align-items: center;
  gap: 7px;
  -webkit-font-smoothing: antialiased;
}
#wsd-float-btn svg { flex-shrink: 0; }
#wsd-float-btn.wsd-float-visible {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
}
#wsd-float-btn:hover {
  background: #F0C84A;
  box-shadow: 0 12px 44px rgba(201,148,42,0.75), 0 4px 12px rgba(0,0,0,0.35);
}
#wsd-float-btn::before {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 54px;
  border: 2px solid rgba(201,148,42,0.55);
  animation: wsd-float-pulse 2.6s ease-out infinite;
  pointer-events: none;
}
@keyframes wsd-float-pulse {
  0%   { opacity: 1; transform: scale(1); }
  70%  { opacity: 0; transform: scale(1.1); }
  100% { opacity: 0; transform: scale(1.1); }
}
@media (max-width: 767px) {
  #wsd-float-btn { display: flex; }
}
 
/* ================================================
   MAP OVERLAY
   ================================================ */
#wsd-map-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 8001;
  background: rgba(8,15,10,0.93);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  padding: 0;
}
#wsd-map-overlay.wsd-map-overlay--open { display: flex; }
#wsd-map-panel {
  background: #fff;
  width: 100%;
  max-height: 92vh;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: 0 -12px 60px rgba(0,0,0,0.55);
  transform: translateY(100%);
  transition: transform 0.4s cubic-bezier(0.34,1.2,0.64,1);
}
#wsd-map-overlay.wsd-map-overlay--open #wsd-map-panel { transform: translateY(0); }
#wsd-map-handle {
  width: 40px;
  height: 4px;
  background: rgba(0,0,0,0.15);
  border-radius: 2px;
  margin: 12px auto 0;
  flex-shrink: 0;
}
#wsd-map-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px 10px;
  border-bottom: 1px solid rgba(0,0,0,0.08);
  flex-shrink: 0;
  gap: 8px;
}
#wsd-map-topbar-label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: 'Lora', Georgia, serif;
  font-size: 0.88rem;
  font-weight: 600;
  color: #0a1208;
}
#wsd-map-topbar-label svg { color: #C9942A; flex-shrink: 0; }
#wsd-map-close {
  background: rgba(0,0,0,0.07);
  border: none;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.2s, transform 0.2s;
}
#wsd-map-close:hover { background: rgba(0,0,0,0.13); transform: rotate(90deg); }
#wsd-map-search-bar {
  display: flex;
  align-items: center;
  background: #f7f0e3;
  border-bottom: 1px solid rgba(0,0,0,0.07);
  padding: 10px 12px;
  flex-shrink: 0;
}
#wsd-map-search-inner {
  display: flex;
  flex: 1;
  background: #fff;
  border-radius: 50px;
  border: 1.5px solid rgba(201,148,42,0.4);
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0,0,0,0.07);
}
#wsd-map-input {
  flex: 1;
  border: none;
  outline: none;
  padding: 11px 16px;
  font-family: 'Lora', Georgia, serif;
  font-size: 0.88rem;
  color: #1a1a14;
  background: transparent;
  min-width: 0;
}
#wsd-map-input::placeholder { color: #9a9080; }
#wsd-map-search-btn {
  background: #C9942A;
  color: #080F0A;
  border: none;
  padding: 11px 18px;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 0.88rem;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.22s;
  white-space: nowrap;
  flex-shrink: 0;
  -webkit-font-smoothing: antialiased;
}
#wsd-map-search-btn:hover { background: #F0C84A; }
#wsd-map-frame-wrap {
  flex: 1;
  min-height: 0;
  position: relative;
  background: #e8e4dc;
}
#wsd-map-iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  min-height: 380px;
  touch-action: none;
}
#wsd-map-caption {
  font-size: 0.72rem;
  color: #5c5847;
  padding: 8px 14px;
  background: #faf8f4;
  border-top: 1px solid rgba(0,0,0,0.06);
  display: flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
}
#wsd-map-caption svg { color: #C9942A; flex-shrink: 0; }/* End custom CSS */