.elementor-262 .elementor-element.elementor-element-b7c33d7{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-3bb7109 */:root{
  --sr-green:#173c2b;
  --sr-green-deep:#102d20;
  --sr-gold:#b89a62;
  --sr-white:#fffdf8;
  --sr-ink:#1d2a23;
  --sr-muted:#736f67;
  --sr-line:rgba(255,255,255,.16);
  --sr-shadow:0 18px 50px rgba(8,25,16,.16);
}


/* =========================================================
   SAFE RESET
========================================================= */

.sr-header *,
.sr-mobile-panel *{
  box-sizing:border-box;
}

.sr-header a,
.sr-mobile-panel a{
  text-decoration:none !important;
}

.sr-header button,
.sr-mobile-panel button{
  font:inherit;
}


/* =========================================================
   HEADER
========================================================= */

.sr-header{
  position:fixed;

  top:0;
  left:0;
  right:0;

  width:100%;
  max-width:none;

  z-index:9999;

  color:#fff;

  background:transparent;

  transition:
    background-color .3s ease,
    box-shadow .3s ease;
}

.sr-header.sr-scrolled{
  background:rgba(16,45,32,.98);

  box-shadow:0 10px 30px rgba(0,0,0,.12);
}


/* =========================================================
   HEADER INNER
========================================================= */

.sr-header-inner{
  width:100%;
  max-width:1240px;

  height:84px;
  min-height:84px;

  margin:0 auto;
  padding:0 28px;

  display:grid;

  grid-template-columns:
    190px
    minmax(0,1fr)
    190px;

  align-items:center;

  gap:28px;

  border-bottom:1px solid var(--sr-line);
}

.sr-header.sr-scrolled .sr-header-inner{
  border-bottom-color:rgba(255,255,255,.08);
}


/* =========================================================
   LOGO
========================================================= */

.sr-brand{
  width:190px;
  height:84px;

  margin:0;
  padding:0;

  display:flex;

  align-items:center;
  justify-content:flex-start;

  flex-shrink:0;

  background:transparent !important;

  color:#fff !important;

  border:0 !important;

  box-shadow:none !important;

  text-decoration:none !important;
}

.sr-logo{
  display:block;

  width:auto !important;
  height:100px !important;

  max-width:165px !important;
  max-height:100px !important;

  margin:0 !important;
  padding:0 !important;

  object-fit:contain;
  object-position:left center;

  background:transparent !important;

  border:0 !important;
  border-radius:0 !important;

  box-shadow:none !important;

  filter:none !important;

  opacity:1 !important;

  transform:none !important;
}

.sr-brand:hover,
.sr-brand:focus,
.sr-brand:active{
  background:transparent !important;

  border:0 !important;

  box-shadow:none !important;

  transform:none !important;
}

.sr-brand:hover .sr-logo,
.sr-brand:focus .sr-logo,
.sr-brand:active .sr-logo{
  opacity:1 !important;

  filter:none !important;

  transform:none !important;
}


/* =========================================================
   DESKTOP NAVIGATION
========================================================= */

.sr-nav{
  width:100%;
  height:84px;

  display:flex;

  align-items:center;
  justify-content:center;

  gap:2px;

  min-width:0;
}

.sr-nav-item{
  position:relative;

  height:84px;

  display:flex;

  align-items:center;
  justify-content:center;
}


/* =========================================================
   NAV LINKS
========================================================= */

.sr-header .sr-nav-link,
.sr-header .sr-nav-link:visited{
  height:84px;

  margin:0 !important;

  padding:0 11px;

  display:flex;

  align-items:center;
  justify-content:center;

  gap:6px;

  color:#fff !important;

  background:transparent !important;

  font-size:13px;
  font-weight:700;

  line-height:1 !important;

  letter-spacing:.01em;

  opacity:.88;

  border:0 !important;
  outline:0;

  box-shadow:none !important;

  text-decoration:none !important;

  transition:
    opacity .2s ease,
    color .2s ease;
}

.sr-header .sr-nav-link:hover,
.sr-header .sr-nav-link:focus,
.sr-header .sr-nav-link:active{
  color:#fff !important;

  background:transparent !important;

  opacity:1;

  text-decoration:none !important;

  box-shadow:none !important;
}

.sr-header .sr-nav-link:focus-visible{
  outline:2px solid var(--sr-gold);

  outline-offset:-6px;
}


/* =========================================================
   CARET
========================================================= */

.sr-caret{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  font-size:8px;

  line-height:1;

  color:inherit !important;

  transform:none;

  transition:transform .22s ease;
}

.sr-nav-item:hover .sr-caret{
  transform:rotate(180deg);
}


/* =========================================================
   DROPDOWN
========================================================= */

.sr-dropdown{
  position:absolute;

  top:76px;
  left:50%;

  width:290px;

  padding:10px;

  background:var(--sr-white);

  border:1px solid rgba(23,60,43,.07);

  border-radius:16px;

  box-shadow:var(--sr-shadow);

  opacity:0;

  visibility:hidden;

  pointer-events:none;

  transform:
    translateX(-50%)
    translateY(8px);

  transition:
    opacity .2s ease,
    transform .2s ease,
    visibility .2s ease;

  z-index:50;
}

.sr-dropdown::before{
  content:"";

  position:absolute;

  top:-12px;
  left:0;

  width:100%;
  height:14px;

  background:transparent;
}

.sr-nav-item:hover .sr-dropdown,
.sr-nav-item:focus-within .sr-dropdown{
  opacity:1;

  visibility:visible;

  pointer-events:auto;

  transform:
    translateX(-50%)
    translateY(0);
}


/* =========================================================
   DROPDOWN LINKS
========================================================= */

.sr-header .sr-dropdown a,
.sr-header .sr-dropdown a:visited{
  display:block;

  padding:13px 14px;

  border-radius:10px;

  background:transparent !important;

  color:var(--sr-ink) !important;

  text-decoration:none !important;

  box-shadow:none !important;

  transition:background-color .18s ease;
}

.sr-header .sr-dropdown a:hover,
.sr-header .sr-dropdown a:focus,
.sr-header .sr-dropdown a:active{
  background:#f1ede4 !important;

  color:var(--sr-ink) !important;

  text-decoration:none !important;

  box-shadow:none !important;
}

.sr-dropdown b{
  display:block;

  margin-bottom:3px;

  color:var(--sr-green) !important;

  font-size:14px;
  font-weight:700;

  line-height:1.3;
}

.sr-dropdown span{
  display:block;

  color:#726f68 !important;

  font-size:11.5px;
  font-weight:400;

  line-height:1.45;
}


/* =========================================================
   RIGHT ACTION AREA
========================================================= */

.sr-actions{
  width:190px;
  height:84px;

  margin:0;
  padding:0;

  display:flex;

  align-items:center;
  justify-content:flex-end;

  gap:10px;
}


/* =========================================================
   BOOK NOW
========================================================= */

.sr-header .sr-book-btn,
.sr-header .sr-book-btn:visited{
  width:auto;

  min-width:120px;

  height:48px;
  min-height:48px;

  margin:0 !important;

  padding:0 22px !important;

  display:inline-flex !important;

  align-items:center !important;
  justify-content:center !important;

  vertical-align:middle;

  border-radius:999px;

  background:var(--sr-white) !important;

  color:var(--sr-green) !important;

  font-size:13px;
  font-weight:800;

  line-height:1 !important;

  white-space:nowrap;

  border:0 !important;

  box-shadow:none !important;

  text-decoration:none !important;

  position:relative;

  top:0;

  transform:none;

  transition:
    transform .2s ease,
    background-color .2s ease;
}

.sr-header .sr-book-btn:hover,
.sr-header .sr-book-btn:focus,
.sr-header .sr-book-btn:active{
  background:#f2ede2 !important;

  color:var(--sr-green) !important;

  transform:translateY(-1px);

  text-decoration:none !important;

  box-shadow:none !important;
}

.sr-book-btn:focus-visible{
  outline:2px solid var(--sr-gold);

  outline-offset:3px;
}


/* =========================================================
   MOBILE MENU BUTTON
========================================================= */

.sr-menu-toggle{
  display:none;

  width:46px;
  height:46px;

  margin:0;
  padding:0;

  border-radius:50%;

  border:1px solid rgba(255,255,255,.28);

  background:rgba(255,255,255,.05) !important;

  color:#fff;

  cursor:pointer;

  align-items:center;
  justify-content:center;

  flex-direction:column;

  gap:4px;

  -webkit-tap-highlight-color:transparent;
}

.sr-menu-toggle:hover{
  background:rgba(255,255,255,.1) !important;
}

.sr-menu-toggle span{
  width:18px;
  height:1.5px;

  display:block;

  background:#fff;

  transition:
    transform .2s ease,
    opacity .2s ease;
}

.sr-menu-toggle.sr-open span:nth-child(1){
  transform:translateY(5.5px) rotate(45deg);
}

.sr-menu-toggle.sr-open span:nth-child(2){
  opacity:0;
}

.sr-menu-toggle.sr-open span:nth-child(3){
  transform:translateY(-5.5px) rotate(-45deg);
}


/* =========================================================
   MOBILE PANEL
========================================================= */

.sr-mobile-panel{
  display:none;

  position:fixed;

  top:0;
  right:0;
  bottom:0;

  width:min(420px,100%);

  padding:100px 28px 32px;

  background:var(--sr-green-deep);

  color:#fff;

  z-index:9998;

  overflow-y:auto;
  overflow-x:hidden;

  transform:translateX(100%);

  transition:transform .3s ease;
}

.sr-mobile-panel.sr-open{
  transform:translateX(0);
}


/* =========================================================
   MOBILE NAV
========================================================= */

.sr-mobile-nav{
  display:grid;

  gap:0;
}

.sr-mobile-item{
  border-bottom:1px solid rgba(255,255,255,.1);
}

.sr-mobile-panel .sr-mobile-link,
.sr-mobile-panel .sr-mobile-link:visited{
  width:100%;

  min-height:58px;

  margin:0;
  padding:0;

  display:flex;

  align-items:center;
  justify-content:space-between;

  background:transparent !important;

  border:0 !important;

  color:#fff !important;

  text-align:left;

  font-size:17px;
  font-weight:500;

  line-height:1.3;

  cursor:pointer;

  text-decoration:none !important;

  box-shadow:none !important;

  -webkit-tap-highlight-color:transparent;
}

.sr-mobile-panel .sr-mobile-link:hover,
.sr-mobile-panel .sr-mobile-link:focus,
.sr-mobile-panel .sr-mobile-link:active{
  color:#fff !important;

  background:transparent !important;

  text-decoration:none !important;
}

.sr-mobile-link span{
  color:rgba(255,255,255,.65) !important;
}


/* =========================================================
   MOBILE SUBMENU
========================================================= */

.sr-mobile-sub{
  max-height:0;

  overflow:hidden;

  transition:max-height .3s ease;
}

.sr-mobile-item.sr-open .sr-mobile-sub{
  max-height:320px;
}

.sr-mobile-panel .sr-mobile-sub a,
.sr-mobile-panel .sr-mobile-sub a:visited{
  display:block;

  margin:0;

  padding:7px 0 13px 14px;

  color:rgba(255,255,255,.68) !important;

  background:transparent !important;

  font-size:14px;

  text-decoration:none !important;
}

.sr-mobile-panel .sr-mobile-sub a:hover,
.sr-mobile-panel .sr-mobile-sub a:focus,
.sr-mobile-panel .sr-mobile-sub a:active{
  color:#fff !important;

  background:transparent !important;
}


/* =========================================================
   MOBILE CTA
========================================================= */

.sr-mobile-cta{
  margin-top:28px;

  display:grid;

  gap:10px;
}

.sr-mobile-cta a{
  min-height:52px;

  display:flex;

  align-items:center;
  justify-content:center;

  border-radius:999px;

  font-weight:800;

  text-decoration:none !important;
}

.sr-mobile-panel .sr-mobile-cta .primary,
.sr-mobile-panel .sr-mobile-cta .primary:hover,
.sr-mobile-panel .sr-mobile-cta .primary:focus,
.sr-mobile-panel .sr-mobile-cta .primary:active,
.sr-mobile-panel .sr-mobile-cta .primary:visited{
  background:var(--sr-white) !important;

  color:var(--sr-green) !important;
}

.sr-mobile-panel .sr-mobile-cta .secondary,
.sr-mobile-panel .sr-mobile-cta .secondary:hover,
.sr-mobile-panel .sr-mobile-cta .secondary:focus,
.sr-mobile-panel .sr-mobile-cta .secondary:active,
.sr-mobile-panel .sr-mobile-cta .secondary:visited{
  background:transparent !important;

  color:#fff !important;

  border:1px solid rgba(255,255,255,.25);
}


/* =========================================================
   PREVENT THEME / ELEMENTOR HOVER OVERRIDES
========================================================= */

.sr-header a,
.sr-header a:hover,
.sr-header a:focus,
.sr-header a:active,
.sr-header a:visited,
.sr-mobile-panel a,
.sr-mobile-panel a:hover,
.sr-mobile-panel a:focus,
.sr-mobile-panel a:active,
.sr-mobile-panel a:visited{
  text-decoration:none !important;
}

.sr-header a,
.sr-mobile-panel a,
.sr-header button,
.sr-mobile-panel button{
  -webkit-tap-highlight-color:transparent;
}


/* =========================================================
   ELEMENTOR WIDTH SAFETY
========================================================= */

.elementor-widget-html:has(.sr-header),
.elementor-widget-container:has(.sr-header){
  width:100% !important;

  max-width:none !important;
}


/* =========================================================
   MEDIUM DESKTOP
========================================================= */

@media(max-width:1180px){

  .sr-header-inner{
    grid-template-columns:
      165px
      minmax(0,1fr)
      165px;

    gap:18px;

    padding:0 20px;
  }

  .sr-brand{
    width:165px;
  }

  .sr-logo{
    height:62px !important;

    max-width:150px !important;
    max-height:62px !important;
  }

  .sr-actions{
    width:165px;
  }

  .sr-header .sr-nav-link{
    padding:0 8px;

    font-size:12px;
  }

  .sr-header .sr-book-btn{
    min-width:110px;

    padding:0 16px !important;
  }
}


/* =========================================================
   TABLET / MOBILE
========================================================= */

@media(max-width:980px){

  .sr-header-inner{
    height:74px;
    min-height:74px;

    grid-template-columns:
      1fr
      auto;

    gap:14px;

    padding:0 18px;
  }

  .sr-brand{
    width:auto;
    height:74px;
  }

  .sr-logo{
    height:58px !important;

    max-width:140px !important;
    max-height:58px !important;
  }

  .sr-nav{
    display:none;
  }

  .sr-actions{
    width:auto;
    height:74px;
  }

  .sr-actions .sr-book-btn{
    display:none !important;
  }

  .sr-menu-toggle{
    display:flex;
  }

  .sr-mobile-panel{
    display:block;
  }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media(max-width:480px){

  .sr-header-inner{
    padding:0 15px;
  }

  .sr-logo{
    height:52px !important;

    max-width:125px !important;
    max-height:52px !important;
  }

  .sr-mobile-panel{
    width:100%;

    padding:92px 22px 28px;
  }
}/* End custom CSS */