/* Haven Group Cards — original size with full background images, 2026-10-07 */
.ht-homepage .gd-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  padding:26px!important;
  background:#2f2118!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:var(--r-lg)!important;
  box-shadow:none!important;
}
.ht-homepage .gd-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  transform:scale(1.001);
  transition:transform .45s ease;
}
.ht-homepage .gd-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(0,0,0,.25) 0%,rgba(0,0,0,.42) 38%,rgba(0,0,0,.84) 100%);
  pointer-events:none;
}
.ht-homepage .gd-card>*{
  position:relative;
  z-index:2;
}
.ht-homepage #gdGrid>.gd-card:nth-child(1)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(1)::before{background-image:url("/img/havensafarinew8-768.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(2)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(2)::before{background-image:url("/img/havensafari28-720.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(3)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(3)::before{background-image:url("/img/havensafari39.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(4)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(4)::before{background-image:url("/img/havensafarinew5-768.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(5)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(5)::before{background-image:url("/img/havenplace1-960.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(6)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(6)::before{background-image:url("/img/havenkili5.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(7)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(7)::before{background-image:url("/img/havenkilinew.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(8)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(8)::before{background-image:url("/img/machame-route-hero.webp")}
.ht-homepage #gdGrid>.gd-card:nth-child(9)::before,
.ht-homepage #gdSwiperWrapper>.gd-card:nth-child(9)::before{background-image:url("/img/rongai-route-hero.webp")}

.ht-homepage .gd-card:hover{
  background:#2f2118!important;
  border-color:rgba(255,255,255,.30)!important;
  transform:translateY(-4px)!important;
  box-shadow:0 16px 48px rgba(47,33,24,.30)!important;
}
.ht-homepage .gd-card:hover::before{transform:scale(1.045)}

.ht-homepage .gd-card-header{
  margin-bottom:16px!important;
}
.ht-homepage .gd-card-type,
.ht-homepage .gd-card-type.combo{
  background:rgba(61,120,62,.92)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.20)!important;
}
.ht-homepage .gd-spots,
.ht-homepage .gd-spots.low,
.ht-homepage .gd-spots i{
  color:#fff!important;
  text-shadow:0 1px 7px rgba(0,0,0,.65)!important;
}
.ht-homepage .gd-card-title{
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.72)!important;
}
.ht-homepage .gd-card-route,
.ht-homepage .gd-detail{
  color:rgba(255,255,255,.88)!important;
  text-shadow:0 1px 8px rgba(0,0,0,.60)!important;
}
.ht-homepage .gd-detail i{color:#fff!important}
.ht-homepage .gd-card-bottom{
  margin:0!important;
  padding-top:18px!important;
  border-top:1px solid rgba(255,255,255,.28)!important;
  background:transparent!important;
}
.ht-homepage .gd-price,
.ht-homepage .gd-price span,
.ht-homepage .gd-deposit{
  color:#fff!important;
  text-shadow:0 1px 8px rgba(0,0,0,.65)!important;
}
.ht-homepage .gd-book-btn,
.ht-homepage .gd-book-btn:hover{
  background:#3d783e!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.24)!important;
}

/* Responsive group carousel: 4 desktop, 2 tablet, 1 mobile */
.ht-homepage #gdGrid{display:none!important}
.ht-homepage .gd-swiper-wrap{
  display:block!important;
  margin-bottom:44px!important;
}
.ht-homepage .gd-swiper-wrap .swiper{
  overflow:hidden!important;
  padding-bottom:36px!important;
}
.ht-homepage .swiper-groups .swiper-wrapper{align-items:stretch!important}
.ht-homepage .swiper-groups .swiper-slide{height:auto!important}
.ht-homepage .swiper-groups .gd-card{height:100%!important}
@media(max-width:639px){
  .ht-homepage .gd-swiper-wrap{margin-bottom:34px!important}
}

/* Group Departures polish — equal cards + premium slider controls, 2026-10-07 */
.ht-homepage .group-section{
  position:relative!important;
  overflow:hidden!important;
  padding-top:92px!important;
  padding-bottom:92px!important;
  background:
    radial-gradient(circle at 8% 12%,rgba(201,191,161,.20),transparent 28%),
    radial-gradient(circle at 92% 88%,rgba(61,120,62,.10),transparent 30%),
    #f8f7f2!important;
}
.ht-homepage .group-section::before{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-120px;
  top:70px;
  border-radius:50%;
  border:1px solid rgba(61,120,62,.10);
  box-shadow:0 0 0 34px rgba(61,120,62,.035),0 0 0 70px rgba(61,120,62,.02);
  pointer-events:none;
}
.ht-homepage .group-section>.ht-container{
  position:relative;
  z-index:1;
}
.ht-homepage .group-commercial-head{
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)!important;
  gap:42px!important;
  align-items:end!important;
  margin-bottom:26px!important;
}
.ht-homepage .group-commercial-head .ht-title{
  margin-bottom:0!important;
}
.ht-homepage .group-commercial-head>p{
  margin:0!important;
  max-width:560px!important;
  justify-self:end!important;
  color:#555!important;
  line-height:1.7!important;
}
.ht-homepage .gd-filters{
  display:inline-flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 22px!important;
  padding:6px!important;
  border:1px solid rgba(47,33,24,.10)!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(47,33,24,.06)!important;
}
.ht-homepage .gd-filter{
  min-height:40px!important;
  padding:0 18px!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#4a433c!important;
  font-size:.76rem!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.ht-homepage .gd-filter.active,
.ht-homepage .gd-filter:hover{
  background:#3d783e!important;
  color:#fff!important;
}
.ht-homepage .gd-swiper-wrap{
  position:relative!important;
  padding:18px 18px 14px!important;
  border:1px solid rgba(47,33,24,.09)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.78)!important;
  box-shadow:0 20px 55px rgba(47,33,24,.08)!important;
  backdrop-filter:blur(8px);
}
.ht-homepage .gd-slider-head{
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:12px!important;
}
.ht-homepage .gd-slider-count{
  display:inline-flex!important;
  align-items:center!important;
  min-height:34px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  background:#eef3eb!important;
  color:#3d783e!important;
  font-size:.72rem!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
.ht-homepage .gd-slider-nav{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
.ht-homepage .gd-slider-nav button{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.40)!important;
  border-radius:50%!important;
  background:#3d783e!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(61,120,62,.22)!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.ht-homepage .gd-slider-nav button i{
  color:#fff!important;
  font-size:.88rem!important;
}
.ht-homepage .gd-slider-nav button:hover{
  transform:translateY(-2px)!important;
  background:#315f33!important;
  box-shadow:0 12px 25px rgba(61,120,62,.28)!important;
}
.ht-homepage .gd-slider-nav button:active{
  transform:translateY(0)!important;
}
.ht-homepage .gd-slider-nav button.swiper-button-disabled{
  opacity:.32!important;
  cursor:default!important;
  transform:none!important;
  box-shadow:none!important;
}
.ht-homepage .swiper-groups .swiper-wrapper{
  align-items:stretch!important;
}
.ht-homepage .swiper-groups .swiper-slide{
  height:auto!important;
  display:flex!important;
}
.ht-homepage .swiper-groups .gd-card{
  width:100%!important;
  height:410px!important;
  min-height:410px!important;
  max-height:410px!important;
  display:flex!important;
  flex-direction:column!important;
}
.ht-homepage .gd-card-header{
  flex:0 0 auto!important;
}
.ht-homepage .gd-card-title{
  margin-top:auto!important;
}
.ht-homepage .gd-card-details{
  flex:0 0 auto!important;
}
.ht-homepage .gd-card-bottom{
  flex:0 0 auto!important;
  margin-top:auto!important;
}
.ht-homepage .swiper-groups .swiper-pagination{
  position:static!important;
  margin-top:14px!important;
}
.ht-homepage .swiper-groups .swiper-pagination-bullet{
  width:7px!important;
  height:7px!important;
  margin:0 4px!important;
  border-radius:999px!important;
  background:#3d783e!important;
  opacity:.20!important;
  transition:width .2s ease,opacity .2s ease!important;
}
.ht-homepage .swiper-groups .swiper-pagination-bullet-active{
  width:26px!important;
  opacity:1!important;
}
@media(max-width:1023px){
  .ht-homepage .group-section{
    padding-top:76px!important;
    padding-bottom:76px!important;
  }
  .ht-homepage .group-commercial-head{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .ht-homepage .group-commercial-head>p{
    justify-self:start!important;
  }
  .ht-homepage .swiper-groups .gd-card{
    height:395px!important;
    min-height:395px!important;
    max-height:395px!important;
  }
}
@media(max-width:639px){
  .ht-homepage .group-section{
    padding-top:60px!important;
    padding-bottom:60px!important;
  }
  .ht-homepage .group-commercial-head{
    margin-bottom:20px!important;
  }
  .ht-homepage .gd-filters{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,1fr)!important;
    border-radius:16px!important;
    padding:5px!important;
  }
  .ht-homepage .gd-filter{
    min-width:0!important;
    padding:0 8px!important;
  }
  .ht-homepage .gd-swiper-wrap{
    padding:14px 12px 12px!important;
    border-radius:20px!important;
  }
  .ht-homepage .gd-slider-head{
    min-height:48px!important;
    margin-bottom:9px!important;
  }
  .ht-homepage .gd-slider-nav button{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }
  .ht-homepage .swiper-groups .gd-card{
    height:380px!important;
    min-height:380px!important;
    max-height:380px!important;
  }
}

/* UI7: clean slider, no outer container, 3 desktop / 1 tablet-mobile */
.ht-homepage .gd-swiper-wrap{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:visible!important;
}
.ht-homepage .gd-swiper-wrap .swiper{
  overflow:hidden!important;
  padding:0 0 34px!important;
}
.ht-homepage .gd-slider-head{
  margin-bottom:14px!important;
}
.ht-homepage .swiper-groups .gd-card{
  height:400px!important;
  min-height:400px!important;
  max-height:400px!important;
}
.ht-homepage .gd-card::after{
  background:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.28) 42%,rgba(0,0,0,.74) 100%)!important;
}
.ht-homepage .gd-card::before{
  filter:saturate(1.04) contrast(1.02)!important;
}
.ht-homepage .gd-slider-nav button{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  border:1px solid rgba(61,120,62,.18)!important;
  background:#fff!important;
  color:#3d783e!important;
  box-shadow:0 8px 22px rgba(47,33,24,.10)!important;
}
.ht-homepage .gd-slider-nav button i{color:#3d783e!important}
.ht-homepage .gd-slider-nav button:hover{
  background:#3d783e!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(61,120,62,.22)!important;
}
.ht-homepage .gd-slider-nav button:hover i{color:#fff!important}
.ht-homepage .gd-slider-count{
  background:transparent!important;
  padding:0!important;
  color:#5d564f!important;
  min-height:0!important;
}
@media(max-width:1023px){
  .ht-homepage .swiper-groups .gd-card{
    height:390px!important;
    min-height:390px!important;
    max-height:390px!important;
  }
}
@media(max-width:639px){
  .ht-homepage .swiper-groups .gd-card{
    height:380px!important;
    min-height:380px!important;
    max-height:380px!important;
  }
}

/* Keep the correct photo with each tour even after filtering/reordering */
.ht-homepage .gd-card:has(.gd-book-btn[href*="tanzania-highlights-safari-4-days"])::before{background-image:url("/img/havensafarinew8-768.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="tanzania-classic-safari-6-days"])::before{background-image:url("/img/havensafari28-720.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="tanzania-exquisite-7-days-safari"])::before{background-image:url("/img/havensafari39.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="northern-tanzania-grand-safari"])::before{background-image:url("/img/havensafarinew5-768.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="southern-secrets-safari-5-days"])::before{background-image:url("/img/havenplace1-960.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="mount-kilimanjaro-trekking-6-days-marangu-route"])::before{background-image:url("/img/havenkili5.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="mount-kilimanjaro-trekking-7-days-lemosho-route"])::before{background-image:url("/img/havenkilinew.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="mount-kilimanjaro-trekking-7-days-machame-route"])::before{background-image:url("/img/machame-route-hero.webp")!important}
.ht-homepage .gd-card:has(.gd-book-btn[href*="mount-kilimanjaro-trekking-7-days-rongai-route"])::before{background-image:url("/img/rongai-route-hero.webp")!important}
