/* =========================================================
   TAKE 5 FINAL REQUIREMENTS PASS
   Content/layout overrides only. Existing navbar/footer remain.
   ========================================================= */
html{scroll-behavior:smooth}
body{scroll-behavior:smooth}

/* One heading voice across the site. Body/UI typography stays intact. */
h1,h2,h3,h4,h5,h6,
.t5-home-page h1,.t5-home-page h2,.t5-home-page h3,.t5-home-page h4,.t5-home-page h5,.t5-home-page h6{
  font-family:"Libre Baskerville",Georgia,"Times New Roman",serif!important;
  letter-spacing:-.02em;
}

/* Internal pages: always the existing Take 5 white navigation. */
body:not(.t5-home-page) .t5-site-nav,
body:not(.t5-home-page) header .t5-site-nav{
  background:#fff!important;
  color:#111820!important;
  box-shadow:0 1px 0 rgba(13,20,32,.08)!important;
}
body:not(.t5-home-page) .t5-site-nav .nav-link,
body:not(.t5-home-page) .t5-site-nav .t5-site-icon,
body:not(.t5-home-page) .t5-site-nav .t5-site-lang{color:#111820!important}

/* Catalog breathing room and smaller cards, matching Stays. */
.t5-catalog-page>.container.py-5,.t5-catalog-page .t5-catalog-frame,.t5-destinations-page>.container.py-5{
  width:min(1420px,calc(100% - 180px))!important;
}
#destGrid,#expGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
#destGrid .t5-journey-media,#expGrid .t5-journey-media{height:205px!important;min-height:205px!important}
#destGrid .t5-journey-body,#expGrid .t5-journey-body{padding:15px 16px 17px!important}
#destGrid .t5-journey-body h5,#expGrid .t5-journey-body h5{font-size:20px!important;line-height:1.15!important}
#destGrid .t5-journey-body p,#expGrid .t5-journey-body p{font-size:11.5px!important;min-height:48px!important;line-height:1.5!important}
#destGrid .t5-journey-pills,#expGrid .t5-journey-pills{left:10px!important;right:auto!important;bottom:10px!important;display:flex!important;gap:5px!important}
#destGrid .t5-journey-pills span,#expGrid .t5-journey-pills span{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:26px!important;padding:6px 9px!important;background:#0d2d56!important;color:#fff!important;
  border:0!important;border-radius:0!important;opacity:1!important;visibility:visible!important;
  text-shadow:none!important;box-shadow:none!important;position:relative!important;z-index:4!important;
}
#destGrid .t5-journey-link,#expGrid .t5-journey-link{font-size:11px!important}

/* Journey planner: clear selected state. */
.t5-pick-card{position:relative;cursor:pointer;border:1px solid #dfe5eb!important;background:#fff!important;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}
.t5-pick-card.selected{background:#e8f4fb!important;border-color:#8ec7e5!important;box-shadow:inset 0 0 0 1px #8ec7e5!important;transform:translateY(-2px)}
.t5-pick-card .check{display:none;position:absolute;top:10px;right:10px;color:#0f4d84;background:#fff;border-radius:50%;font-size:17px;z-index:5}
.t5-pick-card.selected .check{display:block}
#activityGrid .t5-pick-card{cursor:default;background:#f7fafc!important;border-color:#dce5ec!important;transform:none!important;box-shadow:none!important}
#activityGrid .t5-pick-card .check{display:block;color:#0f4d84}

/* Make the destination planner guidance section navy. */
.t5-destinations-page .t5-next-step{background:#092d56!important;color:#fff!important;padding:48px 28px!important;border-radius:0!important}
.t5-destinations-page .t5-next-step h3{color:#fff!important;margin-bottom:10px!important}
.t5-destinations-page .t5-next-step p{color:rgba(255,255,255,.78)!important}
.t5-destinations-page .t5-next-step .btn-light{color:#0b315c!important;border:0!important}

/* About philosophy is centered and about Take 5 itself. */
.t5-about-philosophy{text-align:center}
.t5-about-section-heading{margin-left:auto!important;margin-right:auto!important;text-align:center!important}
.t5-about-values{text-align:center}
.t5-about-value{display:flex;flex-direction:column;align-items:center;text-align:center}
.t5-about-value p{margin-left:auto!important;margin-right:auto!important}
.t5-about-icon{margin-left:auto!important;margin-right:auto!important}

/* Stays: compact cards with the same generous outer whitespace. */
.t5-stays-discovery{padding-left:max(24px,8vw)!important;padding-right:max(24px,8vw)!important}
.t5-stays-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.t5-stay-card-media{height:205px!important}
.t5-stay-card-body{padding:17px!important}
.t5-stay-card-body h3{font-size:21px!important;line-height:1.15!important}
.t5-stay-card-body p{font-size:12px!important;line-height:1.55!important;min-height:56px!important}
.t5-stay-amenities{margin:10px 0 14px!important}
.t5-stay-amenities span{padding:5px 7px!important;font-size:9px!important}

/* Destination/experience heroes: stronger photographic treatment. */
.t5-d-hero{height:590px!important;background:#102b4d!important}
.t5-d-hero img{filter:saturate(.96) contrast(1.02)!important}
.t5-d-hero:after{background:linear-gradient(180deg,rgba(4,19,35,.04) 25%,rgba(4,19,35,.78) 100%)!important}
.t5-d-hero-content h1{font-family:"Libre Baskerville",Georgia,serif!important}

.experience-detail-hero,.t5-experience-hero{position:relative;overflow:hidden}

/* Existing experience detail hero is an image-led full-width composition. */
body:has(#t5Hero) .container-fluid.position-relative.p-0:nth-of-type(2){min-height:590px!important;height:590px!important}
body:has(#t5Hero) #t5Hero{filter:saturate(.96) contrast(1.03)!important}
body:has(#t5Hero) #t5Hero+div{background:linear-gradient(180deg,rgba(4,19,35,.04),rgba(4,19,35,.78))!important}

/* Blog featured field note is Arba Minch, not Lalibela. */
.t5-blog-feature-copy h2{font-family:"Libre Baskerville",Georgia,serif!important}

/* Video rail: keep the existing video/player functionality but visually integrate it. */
.t5-watch-section{background:#f1f5f8!important;color:#102033!important;border-top:1px solid #dfe5eb;border-bottom:1px solid #dfe5eb}
.t5-watch-inner{width:min(1420px,calc(100% - 160px))!important}
.t5-watch-rule{background:#123f7c!important;height:2px!important}
.t5-watch-head h2{color:#102033!important;font-family:"Libre Baskerville",Georgia,serif!important;font-size:22px!important;font-weight:500!important}
.t5-watch-arrow{color:#123f7c!important}
.t5-watch-card h3,.t5-watch-card h4{color:#102033!important}
.t5-watch-card p{color:#5e6b7a!important}
.t5-watch-card .t5-watch-play{background:#0d2d56!important;color:#fff!important}

/* Sitewide image cards never let badges become invisible. */
.t5-journey-pills span,.t5-filter-pill,.t5-card-badge{opacity:1!important;visibility:visible!important;color:#102033!important}

/* Remove destination difficulty from the UI if an older component still emits it. */
.t5-d-fact-difficulty,.t5-difficulty-filter{display:none!important}

@media(max-width:1200px){
  .t5-catalog-page>.container.py-5,.t5-catalog-page .t5-catalog-frame,.t5-destinations-page>.container.py-5,.t5-watch-inner{width:min(100% - 80px,1420px)!important}
  #destGrid,#expGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:800px){
  .t5-catalog-page>.container.py-5,.t5-catalog-page .t5-catalog-frame,.t5-destinations-page>.container.py-5,.t5-watch-inner{width:calc(100% - 36px)!important}
  #destGrid,#expGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .t5-stays-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  #destGrid,#expGrid,.t5-stays-grid{grid-template-columns:1fr!important}
  .t5-d-hero{height:520px!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Profile/testimonial avatars */
.t5-review-avatar,.t5-initial-avatar{width:48px!important;height:48px!important;min-width:48px!important;border-radius:50%!important;object-fit:cover!important;display:block!important;border:1px solid #dbe3ea!important;background:#eef4f7!important}
.t5-profile-panel{display:flex;align-items:center;gap:22px;padding:28px;border:1px solid #dfe5eb;background:#fff}
.t5-profile-avatar{width:86px;height:86px;border-radius:50%;object-fit:cover;border:1px solid #dbe3ea;background:#eef4f7}
.t5-profile-copy h2{margin:5px 0 7px;font-size:26px}
.t5-profile-copy p{color:#667486;font-size:13px;margin-bottom:12px}
@media(max-width:600px){.t5-profile-panel{align-items:flex-start;flex-direction:column}.t5-profile-avatar{width:72px;height:72px}}
.t5-registration-avatar-choice{display:grid;grid-template-columns:58px 1fr;gap:13px;align-items:center;padding:13px;margin:0 0 16px;border:1px solid #dfe5eb;background:#f8fafc}
.t5-registration-avatar-preview{width:58px;height:58px}.t5-registration-avatar-preview img{width:58px;height:58px;border-radius:50%;object-fit:cover}
.t5-registration-avatar-choice strong{display:block;font-size:13px;margin-bottom:3px}
@media(max-width:600px){.t5-registration-avatar-choice{grid-template-columns:52px 1fr}.t5-registration-avatar-preview,.t5-registration-avatar-preview img{width:52px;height:52px}}


/* Final navbar consistency */
.t5-site-nav{position:relative!important;background:#fff!important;color:#111820!important;border-bottom:1px solid rgba(16,24,33,.08)!important;box-shadow:0 1px 0 rgba(13,20,32,.05)!important;z-index:1000!important;}
.t5-site-nav-inner{min-height:72px!important;}
.t5-site-links .nav-link{color:#111820!important;}
.t5-site-links .nav-link.active{font-weight:600!important;}
.t5-site-plan{white-space:nowrap;}
.booking-auto-choice{cursor:default!important;}
.booking-auto-choice .check{opacity:1!important;}


/* Booking form/dropdown polish: native selects must stay above adjacent visual layers. */
.t5-booking-main{position:relative;z-index:20!important;overflow:visible!important}
.t5-booking-panel{position:relative;z-index:21!important;overflow:visible!important}
.t5-form-field{position:relative;z-index:22}
.t5-form-field:focus-within{z-index:50}
.t5-form-field .form-select{position:relative;z-index:51;min-height:54px!important;background-color:#fff!important;color:#102b43!important}
.t5-form-field .form-select option{background:#fff;color:#102b43}
.t5-booking-grid{position:relative;overflow:visible!important}
.t5-booking-aside{z-index:2}
/* When the journey has already been selected, make the generated destination impossible to lose visually. */
#selDestination:valid{color:#102b43!important}

.t5-site-lang .t5-icon-svg{width:.72em!important;height:.72em!important;margin-left:5px!important;vertical-align:-.08em!important}
.t5-site-actions .t5-icon-svg{color:currentColor}
.t5-booking-panel .t5-info-note .t5-icon-svg{margin-right:8px}
