/* StayHost Safari Lodge v0.3.20 / Build 23
 * Premium listing and single-experience presentation.
 */

/* Experience listing route hero. */
body.stayhost-safari-lodge .safari-ref-route-hero.safari-ref-elementor{
  isolation:isolate;
  min-height:440px!important;
  padding:142px 0 68px!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  text-align:left!important;
  background-position:center 46%!important;
}
body.stayhost-safari-lodge .safari-ref-route-hero.safari-ref-elementor:before{
  z-index:-1;
  background:linear-gradient(90deg,rgba(8,16,12,.82) 0%,rgba(8,16,12,.56) 46%,rgba(8,16,12,.18) 78%,rgba(8,16,12,.1) 100%)!important;
}
body.stayhost-safari-lodge .safari-ref-route-hero.safari-ref-elementor>.elementor-element{
  width:var(--sh-shell,min(1220px,calc(100% - 40px)))!important;
  max-width:var(--stayhost-container,1220px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  align-self:center!important;
}
body.stayhost-safari-lodge .safari-ref-route-hero .elementor-heading-title,
body.stayhost-safari-lodge .safari-ref-route-hero h1{
  max-width:780px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:#fff!important;
  font-family:var(--sh-heading-font,'Cormorant Garamond',Georgia,serif)!important;
  font-size:clamp(3.7rem,7vw,6.8rem)!important;
  font-weight:600!important;
  line-height:.92!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  text-shadow:0 3px 28px rgba(0,0,0,.24)!important;
}
body.stayhost-safari-lodge .safari-ref-route-hero p{
  max-width:650px!important;
  margin:20px 0 0!important;
  color:rgba(255,255,255,.9)!important;
  font-size:1.08rem!important;
  line-height:1.7!important;
}

/* Experience discovery surface. */
body.stayhost-safari-lodge .safari-ref-experiences{
  padding:64px 0 96px!important;
  background:#18231c!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-grid-controls{
  gap:14px!important;
  margin:0 0 34px!important;
  padding:20px!important;
  border:1px solid rgba(214,198,164,.24)!important;
  background:rgba(255,253,248,.065)!important;
  box-shadow:0 18px 48px rgba(4,10,7,.16)!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-grid-search input,
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-grid-category-filter select,
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-grid-date-filter input{
  height:48px!important;
  padding:10px 14px!important;
  border-color:rgba(221,214,201,.72)!important;
  background:var(--safari-ref-paper,#fffdf8)!important;
  font-size:.82rem!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-grid-list,
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-elementor-grid{
  gap:26px!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-item{
  border:1px solid rgba(221,214,201,.76)!important;
  background:var(--safari-ref-paper,#fffdf8)!important;
  box-shadow:0 16px 46px rgba(4,10,7,.2)!important;
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-item:hover{
  transform:translateY(-7px)!important;
  border-color:var(--safari-ref-tan,#c2a56b)!important;
  box-shadow:0 26px 64px rgba(4,10,7,.3)!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-image{
  min-height:260px!important;
  aspect-ratio:4/3!important;
  overflow:hidden!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-image-img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transition:transform .55s ease!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-item:hover .anyexp-card-image-img{transform:scale(1.045)!important}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-body{padding:27px 25px 25px!important}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-kicker{
  margin-bottom:10px!important;
  color:var(--safari-ref-olive,#70723a)!important;
  font-size:.66rem!important;
  letter-spacing:.16em!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-body h3,
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-body h3 a{
  font-size:2rem!important;
  line-height:1!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-excerpt{
  margin:2px 0 18px!important;
  color:var(--safari-ref-muted,#6b6a62)!important;
  font-size:.76rem!important;
  font-weight:700!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-meta{
  gap:7px!important;
  margin:0 0 18px!important;
  padding-top:16px!important;
  border-top:1px solid var(--safari-ref-line,#ddd6c9)!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-meta span{
  padding:5px 8px!important;
  background:#f4efe4!important;
  font-size:.62rem!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-price-from{
  margin:auto 0 17px!important;
  font-size:1.35rem!important;
}
body.stayhost-safari-lodge .safari-ref-experiences .anyexp-button{
  width:100%!important;
  min-height:44px!important;
  font-size:.65rem!important;
}

/* Cinematic single-experience hero. The experience plugin outputs structural
 * markup only, so the tenant theme owns all visible hero presentation. */
body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-hero{
  position:relative!important;
  overflow:hidden!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero{
  position:relative!important;
  isolation:isolate!important;
  display:flex!important;
  align-items:flex-end!important;
  width:100%!important;
  min-height:clamp(560px,72vh,760px)!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background-color:#17231b!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero-overlay{
  position:absolute!important;
  z-index:-1!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  background:linear-gradient(180deg,rgba(6,12,9,.2) 0%,rgba(6,12,9,.3) 40%,rgba(6,12,9,.88) 100%)!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero-inner{
  position:relative!important;
  z-index:1!important;
  width:var(--sh-shell,min(1220px,calc(100% - 40px)))!important;
  max-width:var(--stayhost-container,1220px)!important;
  margin:0 auto!important;
  padding:160px 0 74px!important;
  color:#fff!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-eyebrow{
  display:inline-flex!important;
  margin:0 0 18px!important;
  padding:7px 11px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  color:#fff!important;
  background:rgba(18,31,23,.42)!important;
  font-size:.68rem!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero h1{
  max-width:900px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  color:#fff!important;
  font-family:var(--sh-heading-font,'Cormorant Garamond',Georgia,serif)!important;
  font-size:clamp(4rem,8vw,7.4rem)!important;
  font-weight:600!important;
  line-height:.88!important;
  letter-spacing:-.045em!important;
  text-shadow:0 4px 34px rgba(0,0,0,.34)!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-tagline{
  margin:22px 0 0!important;
  color:rgba(255,255,255,.84)!important;
  font-size:.82rem!important;
  font-weight:800!important;
  letter-spacing:.19em!important;
  text-transform:uppercase!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero-meta{
  display:inline-flex!important;
  margin:26px 0 0!important;
  padding:11px 15px!important;
  border-left:3px solid var(--safari-ref-tan,#c2a56b)!important;
  background:rgba(7,14,10,.5)!important;
  color:#fff!important;
  font-size:.88rem!important;
  font-weight:650!important;
  letter-spacing:.02em!important;
}

/* Editorial experience detail content. */
body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-section{
  padding:84px 0 104px!important;
  background:var(--safari-ref-cream,#f5f1e8)!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-row{
  grid-template-columns:minmax(0,1fr) minmax(340px,380px)!important;
  gap:48px!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-detail-main{
  display:grid!important;
  gap:22px!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-section{
  margin:0!important;
  padding:36px 40px!important;
  border:1px solid var(--safari-ref-line,#ddd6c9)!important;
  border-radius:3px!important;
  background:var(--safari-ref-paper,#fffdf8)!important;
  box-shadow:0 14px 42px rgba(36,42,34,.065)!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-category-strip{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:17px 2px!important;
  border-width:1px 0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-category-strip .anyexp-card-meta{
  margin:0!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-section-kicker{
  color:var(--safari-ref-olive,#70723a)!important;
  font-size:.69rem!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-section h2{
  margin:0 0 18px!important;
  color:var(--safari-ref-ink,#161b17)!important;
  font-family:var(--sh-heading-font,'Cormorant Garamond',Georgia,serif)!important;
  font-size:clamp(2rem,3.1vw,3rem)!important;
  line-height:1!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-section p{
  margin:0!important;
  color:var(--safari-ref-muted,#6b6a62)!important;
  font-size:1rem!important;
  line-height:1.8!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-sidebar{
  top:92px!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form{
  margin:0!important;
  padding:32px!important;
  border:1px solid var(--safari-ref-line,#ddd6c9)!important;
  border-top:4px solid var(--safari-ref-olive,#70723a)!important;
  border-radius:3px!important;
  background:var(--safari-ref-paper,#fffdf8)!important;
  box-shadow:0 18px 52px rgba(36,42,34,.11)!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form h2{
  margin:0 0 14px!important;
  color:var(--safari-ref-ink,#161b17)!important;
  font-family:var(--sh-heading-font,'Cormorant Garamond',Georgia,serif)!important;
  font-size:2.35rem!important;
  line-height:1!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form>p{
  margin:0 0 25px!important;
  color:var(--safari-ref-muted,#6b6a62)!important;
  font-size:.9rem!important;
  line-height:1.65!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form label{
  display:grid!important;
  gap:7px!important;
  margin:0 0 15px!important;
  color:var(--safari-ref-ink,#161b17)!important;
  font-size:.76rem!important;
  font-weight:750!important;
  letter-spacing:.02em!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-form-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form input,
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form select,
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form textarea{
  width:100%!important;
  min-height:46px!important;
  padding:10px 12px!important;
  border:1px solid var(--safari-ref-line,#ddd6c9)!important;
  border-radius:2px!important;
  background:#fff!important;
  color:var(--safari-ref-ink,#161b17)!important;
  box-shadow:none!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form textarea{min-height:112px!important;resize:vertical!important}
body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form .anyexp-button{
  width:100%!important;
  min-height:48px!important;
  margin-top:5px!important;
}
body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-experience-gallery{
  margin-top:22px!important;
  background:var(--safari-ref-paper,#fffdf8)!important;
}

@media(max-width:980px){
  body.stayhost-safari-lodge .safari-ref-route-hero.safari-ref-elementor{min-height:390px!important;padding:126px 0 56px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero{min-height:570px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero-inner{padding:145px 0 58px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-row{grid-template-columns:minmax(0,1fr)!important;gap:34px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-sidebar{position:static!important;top:auto!important}
}
@media(max-width:700px){
  body.stayhost-safari-lodge .safari-ref-route-hero.safari-ref-elementor{min-height:360px!important;padding:110px 0 46px!important}
  body.stayhost-safari-lodge .safari-ref-route-hero .elementor-heading-title,
  body.stayhost-safari-lodge .safari-ref-route-hero h1{font-size:clamp(3.15rem,15vw,4.8rem)!important}
  body.stayhost-safari-lodge .safari-ref-experiences{padding:42px 0 68px!important}
  body.stayhost-safari-lodge .safari-ref-experiences .anyexp-grid-controls{padding:14px!important}
  body.stayhost-safari-lodge .safari-ref-experiences .anyexp-card-image{min-height:240px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero{min-height:520px!important;background-position:center!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero-inner{width:calc(100% - 28px)!important;padding:122px 0 45px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero h1{font-size:clamp(3.5rem,18vw,5.4rem)!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-safari-hero-meta{font-size:.75rem!important;line-height:1.5!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .safari-detail-section{padding:48px 0 68px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-section{padding:27px 24px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-category-strip{padding:15px 0!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-request-form{padding:25px 22px!important}
  body.stayhost-safari-lodge .safari-experience-detail-route .anyexp-form-grid{grid-template-columns:1fr!important;gap:0!important}
}
