/* Approved individual tour itinerary layout */
.day-box.hw-itinerary-card {
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr) !important;
  grid-template-rows:1fr !important;
  align-items:stretch !important;
  gap:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid #e4ebe8 !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 8px 26px rgba(18,38,32,.06) !important;
}

.day-box.hw-itinerary-card > .day-image.hw-three-photo-gallery {
  grid-column:1 !important;
  grid-row:1 !important;
  position:relative !important;
  width:100% !important;
  height:100% !important;
  min-height:330px !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#dfe7e3 !important;
  cursor:pointer;
}

.hw-gallery-source-hidden { display:none !important; }
.hw-gallery-stage { position:absolute; inset:0; z-index:1; overflow:hidden; }
.hw-gallery-slide { position:absolute; inset:0; width:100%; height:100%; background-repeat:no-repeat; opacity:0; visibility:hidden; transition:opacity .28s ease; }
.hw-gallery-slide.active { opacity:1; visibility:visible; }

.hw-gallery-arrow { position:absolute; top:50%; z-index:5; width:48px; height:48px; padding:0; border:1px solid rgba(255,255,255,.82); border-radius:50%; background:rgba(8,22,18,.58); color:#fff; font-family:Arial,sans-serif; font-size:36px; font-weight:300; line-height:42px; text-align:center; cursor:pointer; opacity:0; transform:translateY(-50%); box-shadow:0 6px 18px rgba(0,0,0,.2); transition:opacity .2s ease, background .2s ease, transform .2s ease; }
.hw-gallery-prev { left:18px; }
.hw-gallery-next { right:18px; }
.day-image:hover .hw-gallery-arrow,.day-image:focus-within .hw-gallery-arrow,.day-image:focus .hw-gallery-arrow { opacity:1; }
.hw-gallery-arrow:hover { background:rgba(8,22,18,.82); transform:translateY(-50%) scale(1.05); }

.hw-gallery-dots { position:absolute; left:50%; bottom:16px; z-index:5; display:flex; gap:7px; transform:translateX(-50%); }
.hw-gallery-dot { width:10px; height:10px; padding:0; border:1px solid rgba(255,255,255,.95); border-radius:50%; background:rgba(255,255,255,.5); cursor:pointer; box-shadow:0 2px 6px rgba(0,0,0,.2); }
.hw-gallery-dot.active { background:#fff; transform:scale(1.18); }

.hw-day-content { grid-column:2 !important; grid-row:1 !important; display:flex; flex-direction:column; justify-content:center; align-items:stretch !important; min-width:0; padding:34px 38px !important; background:#fff; }

/* The heading, badge, title and body copy share exactly the same left edge. */
.day-box.hw-itinerary-card .hw-day-content > h3,
.hw-day-content > h3 {
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  align-self:stretch !important;
  gap:9px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 14px 0 !important;
  padding:0 !important;
  transform:none !important;
  position:relative !important;
  left:0 !important;
  color:#101828 !important;
  text-align:left !important;
  box-sizing:border-box !important;
}

.day-box.hw-itinerary-card .hw-day-content > h3 > .hw-day-badge,
.hw-day-badge,
.tour-content .hw-day-badge,
.tour-content h3 .hw-day-badge,
.tour-content span.hw-day-badge {
  display:inline-flex !important;
  align-self:flex-start !important;
  width:fit-content !important;
  margin:0 !important;
  padding:5px 10px !important;
  transform:none !important;
  position:relative !important;
  left:0 !important;
  border-radius:999px;
  background:#118c46 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:.72rem;
  line-height:1;
  font-weight:700;
  letter-spacing:.035em;
}

.day-box.hw-itinerary-card .hw-day-content > h3 > .hw-day-title,
.hw-day-title {
  display:block !important;
  align-self:stretch !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  position:relative !important;
  left:0 !important;
  color:#101828 !important;
  font-size:1.48rem;
  line-height:1.22;
  font-weight:700;
  letter-spacing:-.018em;
  text-align:left !important;
  box-sizing:border-box !important;
}

.day-box.hw-itinerary-card .hw-day-content > p,
.hw-day-content > p,
.hw-day-content .note-box p {
  width:100% !important;
  margin:0 0 13px 0 !important;
  padding:0 !important;
  transform:none !important;
  position:relative !important;
  left:0 !important;
  color:#475467 !important;
  font-size:.96rem !important;
  line-height:1.62 !important;
  text-align:justify !important;
  text-justify:inter-word;
  box-sizing:border-box !important;
}
.hw-day-content > p:last-child { margin-bottom:0 !important; }
.hw-day-content .note-box { margin:8px 0 0 !important; padding:13px 15px !important; border-left:3px solid #01b97d !important; border-radius:8px !important; background:#f5faf8 !important; }
.hw-day-content .note-box p { margin:0 !important; }

.day-box.hw-simple-card { display:block !important; padding:30px 34px !important; border:1px solid #e4ebe8 !important; border-radius:18px !important; background:#fff !important; box-shadow:0 8px 24px rgba(18,38,32,.05) !important; }
.day-box.hw-simple-card h3,.day-box.hw-simple-card p { margin-left:0 !important; margin-right:0 !important; }
.day-box.hw-simple-card p { text-align:justify !important; text-justify:inter-word; }

@media (max-width:991.98px) {
  .day-box.hw-itinerary-card { grid-template-columns:1fr !important; grid-template-rows:auto auto !important; }
  .day-box.hw-itinerary-card > .day-image.hw-three-photo-gallery { grid-column:1 !important; grid-row:1 !important; height:320px !important; min-height:320px !important; }
  .hw-day-content { grid-column:1 !important; grid-row:2 !important; padding:28px !important; }
  .hw-gallery-arrow { opacity:.92; }
}

@media (max-width:767.98px) {
  .day-box.hw-itinerary-card > .day-image.hw-three-photo-gallery { height:245px !important; min-height:245px !important; }
  .hw-day-content { padding:24px 22px !important; }
  .hw-day-title { font-size:1.28rem; }
  .hw-gallery-arrow { width:42px; height:42px; font-size:32px; line-height:37px; opacity:.92; }
  .hw-gallery-prev { left:12px; }
  .hw-gallery-next { right:12px; }
}
