/* Tour detail — premium editorial booking experience */
body.inner-site:has(.tour-detail-hero){background:#f7f6f1}
.tour-detail-hero{min-height:clamp(650px,78vh,820px);padding:150px 0 88px;background-position:center 42%;overflow:hidden}
.tour-detail-hero:after{content:"";position:absolute;inset:auto 0 0;height:150px;z-index:0;background:linear-gradient(0deg,rgba(4,25,16,.62),transparent)}
.tour-detail-overlay{background:linear-gradient(90deg,rgba(3,25,16,.94) 0%,rgba(3,25,16,.78) 43%,rgba(3,25,16,.22) 76%,rgba(3,25,16,.08) 100%),linear-gradient(0deg,rgba(4,25,16,.36),transparent 52%)}
.tour-detail-hero .container-xxl{display:grid;grid-template-columns:minmax(0,760px) 1fr;align-items:end;gap:5rem}
.tour-detail-hero .inner-breadcrumb{grid-column:1/-1;margin-bottom:clamp(3rem,8vh,6rem);font-size:.76rem;letter-spacing:.12em}
.tour-detail-hero .container-xxl>:not(.inner-breadcrumb){grid-column:1}
.tour-detail-hero .eyebrow{display:flex;align-items:center;gap:.8rem;font-size:.78rem;letter-spacing:.18em}
.tour-detail-hero .eyebrow:before{content:"";width:34px;height:1px;background:#e2bc64}
.tour-detail-hero h1{font-size:clamp(4.4rem,7vw,7.6rem);max-width:900px;margin:.8rem 0 1.15rem;letter-spacing:-.025em;text-wrap:balance}
.tour-detail-hero p{max-width:720px;font-size:1.08rem;line-height:1.75;color:rgba(255,255,255,.86)}
.tour-hero-meta{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.8rem}
.tour-hero-meta span{display:inline-flex;align-items:center;gap:.55rem;min-height:42px;padding:.65rem .85rem;border:1px solid rgba(255,255,255,.22);background:rgba(8,41,26,.42);backdrop-filter:blur(10px);font-size:.82rem;color:#fff}
.tour-hero-meta i{color:#e2bc64}
.tour-detail-hero .btn{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.3rem}
.tour-detail-hero .btn-gold{box-shadow:0 12px 34px rgba(201,155,50,.22)}

.tour-anchor-nav{position:sticky;top:91px;z-index:1020;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(8,41,26,.1);box-shadow:0 10px 35px rgba(8,41,26,.06);backdrop-filter:blur(16px)}
.tour-anchor-nav .container-xxl{min-height:76px;display:flex;align-items:center;gap:1.8rem;overflow-x:auto;scrollbar-width:none}
.tour-anchor-nav .container-xxl::-webkit-scrollbar{display:none}
.tour-anchor-nav a:not(.btn){position:relative;display:flex;align-items:center;min-height:76px;white-space:nowrap;color:#526057;font-size:.84rem;font-weight:700}
.tour-anchor-nav a:not(.btn):hover{color:var(--green)}
.tour-anchor-nav a:not(.btn):first-child:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--gold)}
.tour-anchor-nav .btn{margin-left:auto;flex:0 0 auto}

body.inner-site:has(.tour-detail-hero) .section{padding:100px 0}
#overview,#itinerary,#included,#departures{scroll-margin-top:175px}
#overview{background:#fff}
#overview>.container-xxl>.row{align-items:start}
#overview .eyebrow,#itinerary .eyebrow,#included .eyebrow,#departures .eyebrow{font-size:.76rem;letter-spacing:.16em}
#overview h2,#itinerary h2,#departures h2{font-family:'Cormorant Garamond',serif;font-size:clamp(3.5rem,5vw,5.7rem);line-height:.94;letter-spacing:-.02em;color:var(--green-deep)}
#overview .lead-copy{max-width:820px;font-family:'Cormorant Garamond',serif;font-size:clamp(1.55rem,2.1vw,2.15rem);line-height:1.48;color:#33483b;margin:1.2rem 0 2.5rem}
.mini-benefit{height:100%;display:flex;align-items:flex-start;gap:.85rem;padding:1.1rem 1.2rem;background:#f7f5ee;border:1px solid #ebe6d9;color:#34453b;font-size:.9rem;line-height:1.55}
.mini-benefit i{margin-top:.25rem;color:var(--gold-dark)}
#overview h3{font-family:'Cormorant Garamond',serif;font-size:2.5rem;color:var(--green-deep)}
#overview .table-responsive{margin-top:1.25rem;border:1px solid #e5e2d9;box-shadow:0 18px 50px rgba(8,41,26,.06)}
#overview table{margin:0;background:#fff}
#overview thead th{padding:1rem 1.15rem;background:var(--green-deep);border:0;color:#fff;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase}
#overview tbody td{padding:1.25rem 1.15rem;border-color:#ebe8df;color:#35433a;font-size:.88rem;vertical-align:top}
#overview tbody tr:hover{background:#fbfaf5}
#overview tbody td:nth-child(2),#overview tbody td:nth-child(3){font-weight:800;color:var(--green);white-space:nowrap}
#overview tbody strong{display:block;font-family:'Cormorant Garamond',serif;font-size:1.45rem;color:var(--green-deep)}
.booking-card{position:sticky;top:106px;padding:2rem;background:var(--green-deep);color:#fff;box-shadow:0 24px 70px rgba(8,41,26,.22);border-top:4px solid var(--gold)}
.booking-card .eyebrow{color:#e7c66d}
.booking-card h3{font-size:clamp(2.7rem,4vw,3.8rem)!important;color:#fff!important;margin:.4rem 0 .1rem}
.booking-card>p{color:rgba(255,255,255,.65);font-size:.88rem}
.booking-card .key-line{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;margin:1.25rem 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);font-size:.84rem}
.booking-card .key-line span{color:rgba(255,255,255,.65)}
.booking-card .btn{min-height:50px;display:flex;align-items:center;justify-content:center}
.booking-card .btn-plan{background:var(--gold);border-color:var(--gold);color:#102c1f}
.booking-card .btn-outline-green{border-color:rgba(255,255,255,.35);color:#fff}
.booking-card .btn-outline-green:hover{background:#fff;color:var(--green-deep)}

#itinerary{background:#f3f0e7}
#itinerary .section-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;max-width:none;margin-bottom:3rem}
.itinerary-timeline{position:relative;max-width:1050px;margin:0 auto}
.itinerary-timeline:before{content:"";position:absolute;top:30px;bottom:30px;left:54px;width:1px;background:#cfc7b4}
.itinerary-day{position:relative;display:grid;grid-template-columns:108px 1fr;gap:1.5rem;margin-bottom:1rem}
.it-day-num{position:relative;z-index:1;width:108px;height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--green-deep);color:#e8c870;font-size:.7rem;letter-spacing:.12em;border:8px solid #f3f0e7}
.it-day-num b{display:block;font-family:'Cormorant Garamond',serif;font-size:2.4rem;line-height:.9;color:#fff}
.it-day-body{padding:1.55rem 1.8rem;background:#fff;border:1px solid #e3ded2;box-shadow:0 12px 32px rgba(8,41,26,.035)}
.it-day-body h3{font-family:'Cormorant Garamond',serif;font-size:2rem;line-height:1.05;color:var(--green-deep);margin:.25rem 0 .55rem}
.it-day-body p{max-width:820px;margin:0 0 .85rem;color:#647067;font-size:.95rem;line-height:1.7}
.soft-chip{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .65rem;background:#eef3ee;color:var(--green);font-size:.76rem;font-weight:700}

#included{background:#fff}
.list-panel{height:100%;padding:2.4rem;background:#f8f7f3;border:1px solid #e6e3da}
.list-panel.good{background:var(--green-deep);border-color:var(--green-deep);color:#fff}
.list-panel h3{font-family:'Cormorant Garamond',serif;font-size:2.7rem;color:var(--green-deep);margin:.4rem 0 1.5rem}
.list-panel.good h3{color:#fff}
.list-panel p{display:flex;gap:.8rem;padding:.85rem 0;margin:0;border-top:1px solid rgba(8,41,26,.1);color:#59665e;font-size:.94rem;line-height:1.55}
.list-panel.good p{border-color:rgba(255,255,255,.13);color:rgba(255,255,255,.82)}
.list-panel i{width:20px;margin-top:.25rem;color:#a84e3e}
.list-panel.good i{color:#e7c66d}

#departures{background:#eef1ec}
#departures .row{margin-top:2rem}
#departures .info-card,#departures .note-card{height:100%;padding:2rem;background:#fff;border:1px solid #dfe5de;box-shadow:0 14px 38px rgba(8,41,26,.045)}
#departures .info-card h3{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--green-deep);margin:.6rem 0 1rem}
#departures .info-card p{font-size:.9rem;color:#5e6a62}
#departures .text-link{display:inline-flex;margin-top:.6rem;font-size:.82rem}
.tour-practical{background:var(--green-deep);color:#fff}.tour-practical .section-head h2{color:#fff}.practical-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1.5rem}.practical-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.12)}.practical-facts>div{min-height:150px;padding:1.5rem;background:#0c3524}.practical-facts i{color:#e7c66d;font-size:1.2rem}.practical-facts span,.practical-facts strong{display:block}.practical-facts span{margin-top:1rem;color:rgba(255,255,255,.55);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.practical-facts strong{margin-top:.35rem;font-family:'Cormorant Garamond',serif;font-size:1.55rem;line-height:1.15}.requirement-list{padding:2rem;background:#fff;color:var(--green-deep)}.requirement-list h3{font-family:'Cormorant Garamond',serif;font-size:2.4rem}.requirement-list p{display:flex;gap:.75rem;margin:0;padding:.9rem 0;border-top:1px solid var(--line);color:#56635b;font-size:.9rem;line-height:1.55}.requirement-list i{margin-top:.25rem;color:var(--gold-dark)}

@media(max-width:991.98px){
  .tour-detail-hero .container-xxl{display:block}.tour-detail-hero .inner-breadcrumb{margin-bottom:4rem}.tour-detail-hero{background-position:60% center}
  .tour-anchor-nav{top:80px}.tour-anchor-nav .container-xxl{gap:1.2rem}.tour-anchor-nav .btn{display:none}
  body.inner-site:has(.tour-detail-hero) .section{padding:76px 0}.booking-card{position:relative;top:auto;margin-top:1rem}
  #itinerary .section-head{display:block}.practical-grid{grid-template-columns:1fr}
}
@media(max-width:767.98px){
  .tour-detail-hero{min-height:690px;padding:100px 0 55px;background-position:64% center}.tour-detail-overlay{background:linear-gradient(90deg,rgba(3,25,16,.92),rgba(3,25,16,.52)),linear-gradient(0deg,rgba(3,25,16,.72),transparent 50%)}
  .tour-detail-hero .inner-breadcrumb{margin-bottom:2.6rem}.tour-detail-hero h1{font-size:clamp(3.5rem,16vw,5rem)}.tour-detail-hero p{font-size:1rem}
  .tour-hero-meta{gap:.45rem}.tour-hero-meta span{font-size:.76rem}.tour-detail-hero .d-flex.gap-3{gap:.55rem!important}.tour-detail-hero .btn{width:100%}
  .tour-anchor-nav{top:72px}.tour-anchor-nav a:not(.btn){min-height:64px;font-size:.78rem}.tour-anchor-nav .container-xxl{min-height:64px}
  body.inner-site:has(.tour-detail-hero) .section{padding:60px 0}#overview h2,#itinerary h2,#departures h2{font-size:3.25rem}
  #overview .lead-copy{font-size:1.45rem}#overview .table-responsive{overflow:visible;border:0;box-shadow:none}#overview table,#overview tbody,#overview tr,#overview td{display:block;width:100%}#overview thead{display:none}#overview tbody tr{margin-bottom:1rem;padding:1rem;background:#fff;border:1px solid #e5e2d9;box-shadow:0 10px 28px rgba(8,41,26,.045)}#overview tbody td{display:grid;grid-template-columns:88px 1fr;gap:.8rem;padding:.65rem .35rem;border:0;border-bottom:1px solid #efede6;white-space:normal!important}#overview tbody td:last-child{border:0}#overview tbody td:before{font-size:.68rem;font-weight:800;letter-spacing:.08em;color:var(--gold-dark);text-transform:uppercase}#overview tbody td:nth-child(1):before{content:"Package"}#overview tbody td:nth-child(2):before{content:"Double"}#overview tbody td:nth-child(3):before{content:"Single"}#overview tbody td:nth-child(4):before{content:"Notes"}
  .booking-card,.list-panel{padding:1.5rem}.itinerary-timeline:before{left:31px}.itinerary-day{grid-template-columns:64px 1fr;gap:.65rem}.it-day-num{width:64px;height:78px;border-width:5px}.it-day-num b{font-size:1.75rem}.it-day-body{padding:1.2rem}.it-day-body h3{font-size:1.65rem}.it-day-body p{font-size:.87rem}.practical-facts{grid-template-columns:1fr}.practical-facts>div{min-height:120px}.requirement-list{padding:1.5rem}
}
