/* Shared premium presentation for inner pages. Homepage retains its approved layer.
   No display/state, visibility, order, data or interaction rules are changed. */
body.premium-site:not(:has(#home)) {
  --teal: #124b51;
  --teal-dark: #0b383e;
  --blue: #124b51;
  --primary: #124b51;
  --primary-lt: #124b51;
  --brand-primary: #124b51;
  --brand-primary-hover: #0b383e;
  --brand-ink: #243a3b;
  --brand-muted: #63706b;
  --brand-border: #e1e2d8;
  --brand-soft: #f7f5f0;
  --bg-light: #f7f5f0;
  --brand-shadow: 0 8px 26px rgba(20,57,58,.07);
  --site-heading-font: Georgia, 'Times New Roman', serif;
  background: #f7f5f0;
  color: #243a3b;
}
body.premium-site:not(:has(#home)) :is(h1,h2,h1 *,h2 *) {
  font-family: Georgia, 'Times New Roman', serif !important;
  letter-spacing: -.025em;
}
body.premium-site:not(:has(#home)) h1 { font-weight: 700 !important; }
body.premium-site:not(:has(#home)) h2 { font-weight: 400 !important; }
body.premium-site:not(:has(#home)) :is(h1,h2) em { font-style: italic; }
body.premium-site:not(:has(#home)) :is(main,.about-page,.career-page,.hf-b2b,.journal,.cp,.cp-body,.pp-body,.tc-body,.canp-body,.ud-main) {
  background-color: #f7f5f0 !important;
}
body.premium-site:not(:has(#home)) :is(.section,.section-pad,.contact-section,.journal-section,.trips-page-section,.cp-faq,.career-intro,.career-opportunities,.career-application,.career-faq) {
  background-color: #f7f5f0 !important;
}
body.premium-site:not(:has(#home)) :is(.topbar,.topbar.is-scrolled) { background: #124b51 !important; }
body.premium-site:not(:has(#home)) .topbar .brand-wordmark { color: #fff !important; text-shadow: none !important; }
body.premium-site:not(:has(#home)) .topbar .brand-logo-mark img { filter: brightness(0) invert(1) !important; }
body.premium-site:not(:has(#home)) .topbar :is(.call-btn,.main-nav>a,.upcoming-toggle,.category-toggle) { color: #fff !important; }
body.premium-site .topbar .main-nav.is-open > a,
body.premium-site .topbar .main-nav.is-open > a:visited,
body.premium-site .topbar .main-nav.is-open > a:hover,
body.premium-site .topbar .main-nav.is-open > a.active,
body.premium-site .topbar .main-nav.is-open :is(.upcoming-toggle,.category-toggle) {
  color: #fff !important;
  opacity: 1;
  text-shadow: none !important;
}
body.premium-site:not(:has(#home)) :is(.about-hero,.cp-hero,.pp-hero,.tc-hero,.canp-hero,.journal-hero) {
  background: #124b51 !important;
}
body.premium-site:not(:has(#home)) :is(.about-hero,.cp-hero,.pp-hero,.tc-hero,.canp-hero,.journal-hero) :is(h1,h2,p,.journal-lead,.journal-byline,.journal-crumbs,.journal-crumbs a,.journal-crumbs span) { color: #fff !important; }
body.premium-site:not(:has(#home)) :is(.about-hero .badge,.journal-hero .journal-eyebrow) { color: #eadcc2 !important; background: transparent !important; }
body.premium-site:not(:has(#home)) :is(.trips-hero,.package-hero,.page-hero) h1 { color: #fff !important; }
body.premium-site:not(:has(#home)) :is(.obt-card,.journal-card,.why-tile,.career-opportunity,.hf-b2b-card,.booking-card-flow,.booking-subcard,.journal-aside) {
  border-color: #e1e2d8 !important;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(20,57,58,.06);
  background-color: #fff;
}
body.premium-site:not(:has(#home)) :is(.obt-card__title,.why-tile h3,.career-opportunity h3) { color: #163e42 !important; }
body.premium-site:not(:has(#home)) :is(.obt-card__price-new,.member-price,.journal-read,.journal-package small,.hf-b2b-eyebrow) { color: #124b51 !important; }
body.premium-site:not(:has(#home)) :is(.obt-card__btn,.callback-btn,.book-now,.date-card-book-btn,.download-itinerary,.touch-form button,.btn-primary,.btn-cta,.cp-submit,.career-primary-button,.hf-b2b-submit,.booking-next,.payment-options article>button,.coupon-apply button,.ud-btn-primary,.journal-button,.mobile-booking-action) {
  background: #124b51 !important;
  border-color: #124b51 !important;
  color: #fff !important;
  box-shadow: 0 3px 9px rgba(18,75,81,.12);
}
body.premium-site:not(:has(#home)) :is(.obt-card__btn,.callback-btn,.book-now,.touch-form button,.btn-primary,.btn-cta,.cp-submit,.career-primary-button,.hf-b2b-submit,.booking-next,.journal-button,.ud-btn-primary):hover:not(:disabled) {
  background: #0b383e !important;
  color: #fff !important;
}
body.premium-site:not(:has(#home)) :is(.obt-card__call,.obt-card__call svg,.obt-card__info-item svg,.btn-back,.ud-btn-outline,.ud-btn-sm) { color: #124b51 !important; border-color: #b8c9c6 !important; }
body.premium-site:not(:has(#home)) :is(.why-icon,.hf-b2b-benefits b) { background: #eee5d5 !important; color: #124b51 !important; }
body.premium-site:not(:has(#home)) .career-page { --career-blue:#124b51; --career-blue-dark:#0b383e; --career-soft:#f7f5f0; --career-ink:#163e42; }
body.premium-site:not(:has(#home)) :is(.booking-pills button.is-active,.booking-steps .step.is-done b,.booking-steps .step.is-done i,.payment-options article>b) { background:#124b51 !important; border-color:#124b51 !important; color:#fff !important; }
body.premium-site:not(:has(#home)) .booking-date-row button.is-selected { border-color:#124b51 !important; background:#eef3ef !important; }
body.premium-site:not(:has(#home)) .booking-steps .step.is-active b { background:#124b51 !important; border-color:#124b51 !important; color:#fff !important; }
body.premium-site:not(:has(#home)) .booking-steps :is(.step.is-active,.step.is-done) span { color:#124b51 !important; }
body.premium-site:not(:has(#home)) .booking-card-flow > h2 { background:#f1f3ed !important; }
body.premium-site:not(:has(#home)) :is(a,button,input,select,textarea):focus-visible { outline:3px solid #a67c40; outline-offset:3px; }
/* Compact editorial cards and aligned date/action row match the homepage. */
body.premium-site:not(:has(#home)) .journal-card { border:1px solid #deded3; overflow:hidden; }
body.premium-site:not(:has(#home)) .journal-card:hover { border-color:#c5b38f; box-shadow:0 14px 30px rgba(20,57,58,.11); }
body.premium-site:not(:has(#home)) .journal-card-image { height:auto; aspect-ratio:2/1; background:#f1f0e9; }
body.premium-site:not(:has(#home)) .journal-card-body { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:10px; padding:18px 22px; }
body.premium-site:not(:has(#home)) .journal-card-body > :is(.journal-label,h3,p) { grid-column:1/-1; }
body.premium-site:not(:has(#home)) .journal-label { align-self:start; padding:0 0 0 9px; border-left:2px solid #b49a6b; border-radius:0; background:transparent; color:#775e36; font-size:9px; letter-spacing:.13em; margin-bottom:10px; }
body.premium-site:not(:has(#home)) .journal-card :is(h3,h3 a) { font-family:Georgia,'Times New Roman',serif !important; color:#163e42; font-size:clamp(20px,1.7vw,23px) !important; font-weight:400 !important; line-height:1.23 !important; letter-spacing:-.025em; }
body.premium-site:not(:has(#home)) .journal-card h3 { margin:0 0 8px; }
body.premium-site:not(:has(#home)) .journal-card h3 a { -webkit-line-clamp:2; min-height:2.46em; }
body.premium-site:not(:has(#home)) .journal-card p { font-size:14px; line-height:1.5; color:#63706b; -webkit-line-clamp:2; margin-bottom:12px; }
body.premium-site:not(:has(#home)) .journal-card-meta { grid-column:1; grid-row:4; align-self:center; margin-top:0; padding-top:0; border:0; flex-wrap:wrap; gap:12px; color:#68766d; font-size:13px; }
body.premium-site:not(:has(#home)) .journal-read { grid-column:2; grid-row:4; align-self:center; justify-self:end; display:inline-flex; align-items:center; justify-content:center; gap:10px; width:max-content; max-width:100%; min-height:34px; padding:6px 10px; border:1px solid #124b51; border-radius:7px; margin:0; background:#124b51; color:#fff !important; text-decoration:none; font-size:12px; font-weight:600; }
body.premium-site:not(:has(#home)) .journal-read:hover { background:#0b383e; }
body.premium-site:not(:has(#home)) .journal-read > span[aria-hidden] { color:#eadcc2; }
body.premium-site:not(:has(#home)) .journal-read .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; border:0; }
@media(max-width:600px) {
  body.premium-site:not(:has(#home)) .journal-card-body { padding:16px; }
}
/* Tour navigation: colour treatment only; preserve sticky and scrolling rules. */
body.premium-site.tour-detail-page .detail-tab-strip,
body.premium-site.tour-detail-page .detail-tab-strip a,
body.premium-site.tour-detail-page .detail-tab-strip button {
  background: #124b51 !important;
  color: #fff !important;
  border-right-color: rgba(255,255,255,.22);
}
body.premium-site.tour-detail-page .detail-tab-strip a.is-active::after {
  background: #d8c4a0 !important;
}
/* Compact careers banner without clipping its content. */
body.premium-site.career-landing-page .career-hero { padding-block:24px; gap:24px; }
body.premium-site.career-landing-page .career-hero h1 { font-size:clamp(30px,3vw,42px) !important; margin-bottom:12px; }
body.premium-site.career-landing-page .career-eyebrow { margin-bottom:10px; padding:6px 10px; }
body.premium-site.career-landing-page .career-hero__content > p { font-size:15px; margin-bottom:16px; }
body.premium-site.career-landing-page .career-hero__notes { margin-top:16px; gap:8px 16px; }
body.premium-site.career-landing-page .career-hero__visual { min-height:160px; }
body.premium-site.career-landing-page .career-visual-card { min-height:160px; padding:18px; }
body.premium-site.career-landing-page .career-hero .career-primary-button { min-height:44px; }
@media(max-width:700px) {
  body.premium-site.career-landing-page .career-hero { padding:20px; }
  body.premium-site.career-landing-page .career-hero h1 { font-size:30px !important; }
  body.premium-site.career-landing-page .career-hero__visual { min-height:80px; }
  body.premium-site.career-landing-page .career-visual-card { min-height:80px; padding:10px; }
}
/* Careers typography follows the compact navigation/body scale. */
body.premium-site.career-landing-page .career-page { font-size:14px; }
body.premium-site.career-landing-page .career-page h2 { font-size:clamp(24px,2.1vw,30px) !important; line-height:1.25 !important; }
body.premium-site.career-landing-page .career-page h3 { font-size:17px !important; line-height:1.35 !important; }
body.premium-site.career-landing-page .career-page :is(p,li,.career-areas strong,.career-faq summary) { font-size:14px; line-height:1.65; }
body.premium-site.career-landing-page .career-hero h1 { font-size:clamp(28px,2.7vw,36px) !important; }
body.premium-site.career-landing-page .career-visual-card strong { font-size:26px; line-height:1.2; }
body.premium-site.career-landing-page .career-page .career-primary-button { font-size:14px !important; }
body.premium-site.career-landing-page .career-field :is(input,select,textarea) { font-size:14px; }
/* Careers section rhythm: one content width, compact gaps, clear white panels. */
body.premium-site.career-landing-page :is(.career-hero,.career-intro,.career-opportunities,.career-application,.career-faq,.career-breadcrumb) { width:min(1180px,calc(100% - 48px)); }
body.premium-site.career-landing-page .career-intro { padding:40px 0 32px; }
body.premium-site.career-landing-page .career-intro__grid { align-items:start; gap:32px; margin-bottom:24px; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); }
body.premium-site.career-landing-page .career-section-kicker { color:#826b44; font-size:11px; margin-bottom:10px; }
body.premium-site.career-landing-page .career-values { gap:18px; }
body.premium-site.career-landing-page .career-value-card { min-height:0; padding:22px; border-color:#e1e2d8; border-radius:12px; box-shadow:0 5px 16px #14393a07; }
body.premium-site.career-landing-page .career-value-card__icon { width:36px; height:36px; margin-bottom:14px; border-radius:9px; background:#eee5d5; color:#124b51; }
body.premium-site.career-landing-page .career-opportunities { gap:36px; padding:28px; background:#fff !important; border:1px solid #e1e2d8; border-radius:14px; align-items:start; }
body.premium-site.career-landing-page .career-areas > div { padding:13px 0; border-color:#e6e7dd; }
body.premium-site.career-landing-page .career-areas > div > span { color:#967c4f; }
body.premium-site.career-landing-page .career-application { padding:40px 0; gap:36px; align-items:start; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); }
body.premium-site.career-landing-page .career-application__privacy { background:#efeee6; border-color:#dfded1; color:#124b51; }
body.premium-site.career-landing-page .career-form-card { padding:26px; border:1px solid #e1e2d8; border-radius:14px; background:#fff; box-shadow:0 6px 22px #14393a08; }
body.premium-site.career-landing-page .career-faq { padding:0 0 40px; }
body.premium-site.career-landing-page .career-faq__list { padding:0 20px; background:#fff; border:1px solid #e1e2d8; border-radius:12px; }
body.premium-site.career-landing-page .career-faq summary::after { color:#124b51; }
@media(max-width:700px) {
  body.premium-site.career-landing-page :is(.career-hero,.career-intro,.career-opportunities,.career-application,.career-faq,.career-breadcrumb) { width:calc(100% - 32px); }
  body.premium-site.career-landing-page .career-intro { padding:28px 0; }
  body.premium-site.career-landing-page .career-intro__grid,
  body.premium-site.career-landing-page .career-application { grid-template-columns:minmax(0,1fr); gap:20px; }
  body.premium-site.career-landing-page .career-opportunities { grid-template-columns:minmax(0,1fr); padding:20px; gap:20px; }
  body.premium-site.career-landing-page .career-application { padding:28px 0; }
  body.premium-site.career-landing-page .career-form-card { padding:20px 16px; }
}
/* Place FAQs in the unused application column without changing form content. */
body.premium-site.career-landing-page .career-application { row-gap:0; align-items:stretch; grid-template-rows:auto 1fr; }
body.premium-site.career-landing-page .career-application__intro {
  grid-column:1; grid-row:1;
  padding:26px 26px 22px;
  border:1px solid #e1e2d8;
  border-bottom:0;
  border-radius:14px 14px 0 0;
  background:#fff;
}
body.premium-site.career-landing-page .career-application > .career-form-card { grid-column:2; grid-row:1 / span 2; }
body.premium-site.career-landing-page .career-application > .career-faq {
  grid-column:1; grid-row:2; width:100%; margin:0; padding:22px 26px 26px;
  align-self:stretch;
  border:1px solid #e1e2d8;
  border-top:0;
  border-radius:0 0 14px 14px;
  background:#fff !important;
  box-shadow:0 8px 18px #14393a05;
}
body.premium-site.career-landing-page .career-application > .career-form-card { align-self:stretch; }
body.premium-site.career-landing-page .career-application > .career-faq h2 { font-size:25px !important; margin-bottom:18px; }
@media(max-width:700px) {
  body.premium-site.career-landing-page .career-application > :is(.career-application__intro,.career-form-card,.career-faq) { grid-column:1; grid-row:auto; }
  body.premium-site.career-landing-page .career-application { row-gap:20px; grid-template-rows:auto; }
  body.premium-site.career-landing-page .career-application__intro,
  body.premium-site.career-landing-page .career-application > .career-faq { padding:20px; border:1px solid #e1e2d8; border-radius:14px; }
}
/* Compact application fields while retaining all labels and validation space. */
body.premium-site.career-landing-page .career-form-card { padding:20px; }
body.premium-site.career-landing-page .career-form__grid { gap:12px 14px; }
body.premium-site.career-landing-page .career-field { gap:5px; }
body.premium-site.career-landing-page .career-field :is(input:not([type="file"]),select) { min-height:40px; padding:8px 11px; }
body.premium-site.career-landing-page .career-field textarea { min-height:80px; height:80px; padding:8px 11px; }
body.premium-site.career-landing-page .career-consent { margin-top:14px; }
body.premium-site.career-landing-page .career-form__footer { margin-top:14px; padding-top:12px; }
body.premium-site.career-landing-page .career-form__footer .career-primary-button { min-height:42px; }
/* Contact-only text scale; FAQ page shares cp classes and is excluded. */
body.premium-site .cp:has(.cp-form-wrap) { font-size:14px; }
body.premium-site .cp:has(.cp-form-wrap) h1 { font-size:clamp(28px,2.7vw,36px) !important; line-height:1.2 !important; }
body.premium-site .cp:has(.cp-form-wrap) h2 { font-size:clamp(24px,2.1vw,30px) !important; line-height:1.25 !important; }
body.premium-site .cp:has(.cp-form-wrap) :is(p,.cp-tagline,.cp-info-label,.cp-info-sub,.cp-info-val,.cp-phone-line,.cp-flabel,.cp-submit,.cp-faq-q,input,select,textarea) { font-size:14px; line-height:1.6; }
body.premium-site .cp:has(.cp-form-wrap) .cp-form-wrap h3 { font-size:20px !important; line-height:1.3; }
body.premium-site .cp:has(.cp-form-wrap) :is(.cp-field-error,.cp-alert) { font-size:13px; }
body.premium-site .cp:has(.cp-form-wrap) .cp-faq-answer-content { padding:0 18px 16px; color:#555; font-size:14px; line-height:1.7; }
body.premium-site .cp:has(.cp-form-wrap) .cp-faq-answer-content p { padding:0; margin:0 0 8px; }
body.premium-site .cp:has(.cp-form-wrap) .cp-faq-answer-content :is(ul,ol) { padding-left:20px; }
body.premium-site .cp:has(.cp-form-wrap) .cp-form-wrap {
  background:#fff;
  border:1px solid #e1e2d8;
  border-top:3px solid #124b51;
  border-radius:14px;
  box-shadow:0 8px 26px rgba(20,57,58,.07);
}
body.premium-site .cp:has(.cp-form-wrap) .cp-form-wrap h3 { color:#124b51; border-bottom-color:#e1e2d8; }
body.premium-site .cp:has(.cp-form-wrap) .cp-form-wrap h3::after { background:#e1e2d8; }
body.premium-site .cp:has(.cp-form-wrap) .cp-fi :is(input,select,textarea):focus { border-color:#124b51; box-shadow:0 0 0 3px rgba(18,75,81,.1); }
body.premium-site .cp .cp-faq-answer-content { padding:0 18px 16px; color:#555; font-size:14px; line-height:1.7; }
body.premium-site .cp .cp-faq-answer-content p { padding:0; margin:0 0 8px; }
body.premium-site .cp .cp-faq-answer-content :is(ul,ol) { padding-left:20px; }
body.premium-site .cp .cp-faq-item.open .cp-faq-ans { max-height:none; }
body.premium-site .pp .pp-body { max-width:1100px; }
body.premium-site .pp :is(p,li,.pp-intro,.pp-sub-item,.pp-updated) { font-size:14px; line-height:1.7; }
body.premium-site .pp .pp-body h2 { font-size:24px !important; line-height:1.3; }
body.premium-site .pp .pp-body h3 { font-size:16px !important; line-height:1.4; }
body.premium-site :is(.tc-body,.canp-body) { max-width:1100px; }
body.premium-site :is(.tc,.canp) :is(p,li,.tc-intro,.canp-intro,.tc-sub-item,.canp-sub-item,.tc-updated,.canp-updated) { font-size:14px; line-height:1.7; }
body.premium-site :is(.tc-body,.canp-body) h2 { font-size:24px !important; line-height:1.3; }
body.premium-site :is(.tc-body,.canp-body) h3 { font-size:16px !important; line-height:1.4; }
body.premium-site :is(.tc-body,.canp-body) :is(p,li,a,span,strong,b,small,td,th) { font-size:14px !important; }
/* About page: readable navigation-scale copy and a restrained card rhythm. */
body.premium-site .about-page { font-size:14px; }
body.premium-site .about-page :is(p,li,.section-body,.stat-label,.btn-cta) { font-size:14px !important; line-height:1.7; }
body.premium-site .about-page h1 { font-size:clamp(30px,3.1vw,42px) !important; line-height:1.18 !important; }
body.premium-site .about-page h2 { font-size:clamp(25px,2.3vw,32px) !important; line-height:1.25 !important; color:#163e42; }
body.premium-site .about-page h3 { font-size:17px !important; line-height:1.35; color:#163e42; }
body.premium-site .about-page .section-pad { padding:24px 24px; }
body.premium-site .about-page .reviews-section { padding-top:24px !important; padding-bottom:24px !important; }
body.premium-site .about-page .container-md { max-width:1180px; }
body.premium-site .about-page .about-hero { min-height:360px; }
body.premium-site .about-page .about-hero-inner { padding:80px 24px 64px; }
body.premium-site .about-page .about-split { gap:36px; align-items:center; }
body.premium-site .about-page .split-img { border-radius:14px; box-shadow:0 8px 24px #14393a10; }
body.premium-site .about-page .section-tag { color:#826b44; background:#eee5d5; }
body.premium-site .about-page :is(.why-card,.guider-card,.team-card) { border:1px solid #e1e2d8; border-radius:14px; background:#fff; box-shadow:0 6px 22px #14393a08; }
body.premium-site .about-page :is(.why-card,.guider-card) { padding:22px; }
body.premium-site .about-page :is(.why-icon,.guider-icon) { background:#eee5d5; color:#124b51; }
body.premium-site .about-page .stats-bar { border:1px solid #e1e2d8; border-radius:14px; box-shadow:0 8px 26px #14393a0c; }
body.premium-site .about-page .stat-num { color:#124b51; font-size:28px; }
body.premium-site .about-page .cta-banner { background:#124b51; border-radius:16px; padding:32px 24px; }
body.premium-site .about-page .cta-banner :is(h2,p) { color:#fff !important; }
body.premium-site .about-page .cta-banner .btn-cta { background:#eadcc2 !important; border-color:#eadcc2 !important; color:#124b51 !important; }
body.premium-site .about-page :is(.section-body,.why-card,.guider-card,.team-info,.review-card) :is(p,li,a,small,strong,b) { font-size:14px !important; line-height:1.7; }
body.premium-site .about-page .about-hero p { font-size:14px !important; }
body.premium-site .about-page :is(.why-grid,.guiders-grid) { gap:18px; margin-top:26px; }
body.premium-site .about-page .section-title { margin-bottom:16px; }
body.premium-site .about-page .section-body { max-width:none; color:#53675f; }
body.premium-site .about-page :is(.why-card,.guider-card):hover { transform:translateY(-3px); border-color:#c5b38f; box-shadow:0 10px 26px #14393a12; }
@media(max-width:767px) {
  body.premium-site .about-page .section-pad { padding:18px 16px; }
  body.premium-site .about-page .about-split { gap:22px; }
  body.premium-site .about-page .about-hero { min-height:0; }
}
/* About hero: editorial alignment, natural title wrapping, compact statistics. */
body.premium-site .about-page .about-hero {
  min-height:340px;
  background:#0e3439 !important;
}
body.premium-site .about-page .about-hero::before {
  opacity:.6;
  background-position:center 55%;
}
body.premium-site .about-page .about-hero::after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(5,30,34,.88),rgba(5,30,34,.55) 55%,rgba(5,30,34,.12));
  pointer-events:none;
}
body.premium-site .about-page .about-hero-inner {
  width:min(1180px,calc(100% - 48px));
  max-width:none;
  padding:56px 0 70px;
  text-align:left;
}
body.premium-site .about-page .about-hero .badge {
  padding:0;
  border-radius:0;
  margin-bottom:18px;
  letter-spacing:.15em;
  font-size:11px;
}
body.premium-site .about-page .about-hero h1 {
  max-width:720px;
  font-size:clamp(30px,3.4vw,46px) !important;
  font-weight:400 !important;
  line-height:1.16 !important;
  margin:0 0 18px;
  text-wrap:balance;
}
body.premium-site .about-page .about-hero h1 br { display:none; }
body.premium-site .about-page .about-hero p { max-width:620px; margin:0; line-height:1.7; color:#f4f5ee !important; }
body.premium-site .about-page .stats-bar {
  position:relative;
  z-index:3;
  max-width:1180px;
  width:calc(100% - 48px);
  margin:-30px auto 12px;
  padding:20px 16px;
  border-radius:12px;
}
body.premium-site .about-page .stat-item { padding:4px 16px; }
body.premium-site .about-page .stat-num { font-size:26px; line-height:1.2; }
body.premium-site .about-page .stat-label { font-size:11px !important; letter-spacing:.07em; margin-top:7px; }
@media(max-width:767px) {
  body.premium-site .about-page .about-hero-inner { width:calc(100% - 32px); padding:44px 0 56px; }
  body.premium-site .about-page .about-hero h1 { font-size:32px !important; }
  body.premium-site .about-page .stats-bar { width:calc(100% - 32px); padding:14px 10px; }
  body.premium-site .about-page .stat-item { padding:10px; }
}
body.premium-site .about-page .about-social-stats { position:relative; z-index:3; display:flex; align-items:center; justify-content:space-around; gap:16px; margin:-28px auto 12px; padding:18px 24px; background:#124b51; border:1px solid #d1c09c; border-radius:14px; box-shadow:0 8px 24px #14393a12; }
body.premium-site .about-social-stats .stat { display:flex; align-items:center; justify-content:center; gap:12px; flex:1; min-width:0; text-decoration:none; }
body.premium-site .about-social-stats .stat-icon { display:grid; place-items:center; width:42px; height:42px; flex-shrink:0; border-radius:50%; }
body.premium-site .about-social-stats .google { background:#fff; }
body.premium-site .about-social-stats .g-letter { font-size:23px; font-weight:800; color:#4285f4; }
body.premium-site .about-social-stats .insta { background:linear-gradient(35deg,#ffcf5e,#ff426b,#9e36cc); }
body.premium-site .about-social-stats .smile { background:#ffd43d; font-size:28px; }
body.premium-site .about-social-stats .stat-text strong { display:block; color:#fff; font-size:20px; line-height:1.25; font-weight:800; }
body.premium-site .about-social-stats .stat-text small { display:block; color:#fff; font-size:12px; line-height:1.5; font-weight:600; }
body.premium-site .about-social-stats .dot { width:5px; height:5px; border-radius:50%; background:#ffffff65; }
@media(max-width:600px) {
  body.premium-site .about-page .about-social-stats { padding:14px 10px; gap:8px; flex-wrap:wrap; }
  body.premium-site .about-social-stats .stat { gap:7px; flex:1 1 130px; }
  body.premium-site .about-social-stats .dot { display:none; }
  body.premium-site .about-social-stats .stat-text strong { font-size:17px; }
  body.premium-site .about-social-stats .stat-icon { width:32px; height:32px; }
}
body.premium-site .about-page .about-social-stats { padding-top:10px; padding-bottom:10px; border-radius:999px; }
body.premium-site .about-social-stats .stat-icon { width:36px; height:36px; }
@media(max-width:600px) {
  body.premium-site .about-page .about-social-stats { padding:10px 14px; border-radius:28px; }
  body.premium-site .about-social-stats .stat-icon { width:30px; height:30px; }
}
body.premium-site.journal-page .journal-read,
body.premium-site.journal-page .journal-read:visited,
body.premium-site.journal-page .journal-read:hover { color:#fff !important; font-size:14px !important; }
body.premium-site.journal-page .journal-read > span[aria-hidden] { color:#fff !important; }
body.premium-site:not(:has(#home)) .journal .journal-card .journal-read,
body.premium-site:not(:has(#home)) .journal .journal-card .journal-read:visited,
body.premium-site:not(:has(#home)) .journal .journal-card .journal-read:hover {
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-size:14px !important;
}
/* Article reading text matches the shared 14px navigation scale. */
body.premium-site.journal-page .journal:not(.journal-index) :is(.journal-prose,.journal-prose p,.journal-prose li,.journal-prose td,.journal-prose th,.journal-prose a,.journal-prose blockquote,.journal-lead,.journal-byline,.journal-aside p,.journal-package strong,.journal-package small) {
  font-size:14px !important;
  line-height:1.75;
}
body.premium-site.journal-page .journal:not(.journal-index) .journal-prose h2 { font-size:24px !important; }
body.premium-site.journal-page .journal:not(.journal-index) .journal-prose h3 { font-size:20px !important; }
body.premium-site.journal-page .journal:not(.journal-index) .journal-prose h4 { font-size:17px !important; }
/* Package reading copy and actions use the shared navigation text scale. */
body.premium-site.tour-detail-page main.tour-detail-page :is(p,li,td,th,.about-short,.about-full,.term-content,.itinerary-body-text,.day-title,.info-block-title,.info-block-content,.highlight-card,.highlight-other-list,.costing-note,.date-card-body,.price-widget-list) {
  font-size:14px !important;
  line-height:1.65;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(p,li,td,th,.about-short,.about-full,.term-content,.itinerary-body-text) :is(span,strong,b,a) { font-size:14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.detail-tab-track a,.package-chip-row>span,.btn-download-pdf,.btn-enquiry,.book-now,.download-itinerary,.date-card-book-btn,.content-read-more,.mobile-booking-action) { font-size:14px !important; }
/* Balanced package booking card: one supporting text scale and clear price. */
body.premium-site.tour-detail-page .price-widget {
  padding:22px !important;
  border:1px solid #e0e4da !important;
  border-top:3px solid #b49a6b !important;
  border-radius:14px;
  box-shadow:0 8px 26px rgba(20,57,58,.08);
}
body.premium-site.tour-detail-page .price-widget .duration-pill {
  position:static !important;
  display:inline-flex;
  margin:0 0 16px;
  border:1px solid #d9dfd4;
  border-radius:6px;
}
body.premium-site.tour-detail-page .price-widget .duration-pill b {
  padding:6px 10px;
  background:#f3f1e9;
  color:#124b51;
  font-size:13px !important;
  font-weight:600;
  line-height:1.4;
}
body.premium-site.tour-detail-page .price-widget .duration-pill b:last-child { background:#124b51; color:#fff; }
body.premium-site.tour-detail-page .price-widget > p { margin:0 0 6px; color:#68776e; font-size:14px !important; }
body.premium-site.tour-detail-page .price-widget > strong { color:#163e42; font-size:32px !important; line-height:1.2; font-weight:700; }
body.premium-site.tour-detail-page .price-widget > strong span { font-size:14px !important; font-weight:400; color:#68776e; }
body.premium-site.tour-detail-page .price-widget > em { margin:10px 0 4px; color:#124b51; font-size:13px !important; font-weight:500; line-height:1.5; }
body.premium-site.tour-detail-page .price-widget > small { position:static !important; display:block; margin-bottom:18px; color:#778277; font-size:12px !important; line-height:1.5; }
body.premium-site.tour-detail-page .price-widget .price-actions { gap:10px; }
body.premium-site.tour-detail-page .price-widget :is(.btn-download-pdf,.btn-enquiry) {
  display:flex; align-items:center; justify-content:center;
  min-height:42px; height:42px; padding:8px;
  border:1px solid #b7c9c1 !important; border-radius:7px;
  background:#fff !important; color:#124b51 !important;
  font-size:14px !important; font-weight:600; text-decoration:none; line-height:1.3;
}
body.premium-site.tour-detail-page .price-widget .book-now {
  height:44px; min-height:44px !important; margin:12px 0 18px;
  border-radius:7px !important; font-size:14px !important; font-weight:600;
  animation:none; box-shadow:none;
}
body.premium-site.tour-detail-page .price-widget .price-widget-list { border-top:1px solid #e2e5db; padding-top:16px; gap:9px; }
body.premium-site.tour-detail-page .price-widget .price-widget-list li { font-size:14px !important; color:#4a6056; line-height:1.5; }
/* Keep the price card compact, with aligned label and duration. */
body.premium-site.tour-detail-page .price-widget {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  column-gap:12px;
  padding:24px !important;
  border-top:1px solid #e0e4da !important;
  border-radius:16px;
  box-shadow:0 8px 28px rgba(20,57,58,.07);
}
body.premium-site.tour-detail-page .price-widget > .duration-pill { grid-column:2; grid-row:1; align-self:center; margin:0; border:0; border-radius:5px; }
body.premium-site.tour-detail-page .price-widget .duration-pill b,
body.premium-site.tour-detail-page .price-widget .duration-pill b:last-child { background:#edf2ed; color:#31564f; padding:5px 7px; font-size:12px !important; font-weight:500; }
body.premium-site.tour-detail-page .price-widget .duration-pill b:last-child { border-left:1px solid #d4ded4; }
body.premium-site.tour-detail-page .price-widget > p { grid-column:1; grid-row:1; align-self:center; margin:0; font-size:13px !important; }
body.premium-site.tour-detail-page .price-widget > strong { grid-column:1/-1; margin-top:16px; font-size:34px !important; letter-spacing:-.025em; }
body.premium-site.tour-detail-page .price-widget > :is(em,small,.price-actions,.book-now,.price-widget-list) { grid-column:1/-1; }
body.premium-site.tour-detail-page .price-widget > em { margin-top:8px; color:#63756b; font-size:12px !important; }
body.premium-site.tour-detail-page .price-widget > small { margin:0 0 20px; font-size:12px !important; color:#839087; }
body.premium-site.tour-detail-page .price-widget .price-actions { gap:10px; }
body.premium-site.tour-detail-page .price-widget :is(.btn-download-pdf,.btn-enquiry) { border-color:#d4dfd5 !important; background:#f8f9f5 !important; border-radius:8px; font-size:13px !important; }
body.premium-site.tour-detail-page .price-widget .book-now { margin:12px 0 18px; height:46px; min-height:46px !important; border-radius:8px !important; letter-spacing:.015em; }
body.premium-site.tour-detail-page .price-widget .price-widget-list { gap:8px; }
body.premium-site.tour-detail-page .price-widget .price-widget-list li { font-size:13px !important; }
body.premium-site.tour-detail-page,
body.premium-site.tour-detail-page main.tour-detail-page,
body.premium-site.tour-detail-page .package-detail-body { background-color:#f7f5f0 !important; }
/* Tight booking summary: remove inherited spacer margins and align the notes. */
body.premium-site.tour-detail-page .price-widget { padding:18px 20px !important; row-gap:0; border-radius:12px; }
body.premium-site.tour-detail-page .price-widget > strong { grid-row:2; margin:12px 0 6px; font-size:30px !important; }
body.premium-site.tour-detail-page .price-widget > em { grid-column:1; grid-row:3; width:auto; margin:0; font-size:12px !important; align-self:center; }
body.premium-site.tour-detail-page .price-widget > small { grid-column:2; grid-row:3; text-align:right; margin:0; font-size:11px !important; align-self:center; white-space:normal; }
body.premium-site.tour-detail-page .price-widget .price-actions { grid-row:4; margin:14px 0 0; gap:8px; }
body.premium-site.tour-detail-page .price-widget :is(.btn-download-pdf,.btn-enquiry) { min-height:36px; height:36px; padding:6px 8px; font-weight:500; border-radius:6px; }
body.premium-site.tour-detail-page .price-widget .book-now { grid-row:5; height:40px; min-height:40px !important; padding:8px; margin:10px 0 14px; border-radius:6px !important; }
body.premium-site.tour-detail-page .price-widget .price-widget-list { grid-row:6; padding:12px 0 0; margin:0; gap:7px; border-top:1px solid #e2e5db; text-align:left; }
body.premium-site.tour-detail-page main.tour-detail-page .price-widget .price-widget-list li { font-size:13px !important; line-height:1.45; }
body.premium-site.tour-detail-page .price-widget .price-widget-list li::before { width:15px; height:15px; font-size:10px; background:#124b51; }
@media(max-width:360px) {
  body.premium-site.tour-detail-page .price-widget { padding:16px !important; column-gap:8px; }
  body.premium-site.tour-detail-page .price-widget > small { font-size:10px !important; }
}
/* A small outlined chevron replaces the oversized summary arrow. */
body.premium-site.tour-detail-page .about-trip-box .about-read-more {
  width:36px !important; height:36px !important;
  min-width:36px; min-height:36px;
  padding:0; border:3px solid #fff !important; border-radius:50%;
  background:#124b51 !important; color:#fff !important;
  font-size:0 !important; line-height:1;
  box-shadow:0 3px 10px rgba(18,75,81,.18);
  display:grid; place-items:center;
  transition:background .2s ease,box-shadow .2s ease;
}
body.premium-site.tour-detail-page .about-trip-box .about-read-more::after {
  content:''; width:8px; height:8px;
  border-right:1.5px solid #fff; border-bottom:1.5px solid #fff;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .2s ease;
}
body.premium-site.tour-detail-page .about-trip-box:has(.about-full[style*="block"]) .about-read-more::after { transform:translateY(2px) rotate(225deg); }
body.premium-site.tour-detail-page .about-trip-box .about-read-more:hover { background:#0b383e !important; box-shadow:0 4px 14px rgba(18,75,81,.25); }
/* Consistent tour reading typography across rich-text sections. */
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.about-short,.highlight-panel,.itinerary-body-text,.inc-exc-content,.text-detail-panel,.costing-panel,.dates-panel,.hf-faq-item,.review-card) {
  font-size:14px;
  line-height:1.7;
  color:#243e3d;
  text-align:left;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.highlight-panel,.itinerary-body-text,.inc-exc-content,.term-content,.hf-faq-item,.review-card) :is(p,li,span,a,strong,b) {
  font-size:14px !important;
  line-height:1.7 !important;
  letter-spacing:normal;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.highlight-panel,.itinerary-panel,.inc-exc-content,.text-detail-panel,.costing-panel,.dates-panel) :is(h2,h3) {
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(23px,2vw,28px) !important;
  font-weight:400 !important;
  line-height:1.25 !important;
  letter-spacing:-.025em;
  color:#163e42 !important;
  text-align:left;
  margin:22px 0 12px;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.highlight-panel,.itinerary-panel,.text-detail-panel,.costing-panel,.dates-panel) > :is(h2,h3):first-child { margin-top:0; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.itinerary-body-text,.inc-exc-content,.term-content) p { margin:0 0 12px; text-align:left !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.itinerary-body-text,.inc-exc-content,.term-content) :is(ul,ol) { margin:8px 0 16px; padding-left:24px; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.about-full,.itinerary-body-text,.inc-exc-content,.term-content) li { margin:0 0 7px; text-align:left !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.day-title,.info-block-title,.dp-label,.dp-avail-label) { font-size:14px !important; line-height:1.5; font-weight:600; }
/* Highlights: even reading rhythm and aligned location icons. */
body.premium-site.tour-detail-page main.tour-detail-page .highlight-panel { padding:22px 20px; border-radius:12px; margin-bottom:24px; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-panel .section-heading { margin:0 0 18px; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-panel .section-heading p { margin:0; font-size:14px !important; line-height:1.65 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-grid { column-gap:24px; row-gap:14px; margin:0; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-card { align-items:flex-start; gap:10px; padding:0; margin:0; font-size:14px !important; line-height:1.65; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-icon { flex:0 0 18px; width:18px; height:23px; margin:0; background:transparent !important; color:#124b51; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-icon svg { width:17px; height:17px; }
body.premium-site.tour-detail-page main.tour-detail-page .other-highlight-box { margin-top:22px; padding-top:18px; border-top:1px solid #e5e7de; }
body.premium-site.tour-detail-page main.tour-detail-page .other-highlight-box h2 { font-size:24px !important; margin:0 0 12px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-other-list { margin:0; padding-left:20px; }
body.premium-site.tour-detail-page main.tour-detail-page .highlight-other-list li { padding:0; margin:0 0 7px; font-size:14px !important; line-height:1.65 !important; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .highlight-panel { padding:18px 16px; }
  body.premium-site.tour-detail-page main.tour-detail-page .highlight-grid { grid-template-columns:minmax(0,1fr); row-gap:12px; }
}
body.premium-site.tour-detail-page main.tour-detail-page .highlight-other-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:28px;
  row-gap:10px;
}
body.premium-site.tour-detail-page main.tour-detail-page .highlight-other-list li { margin:0; padding-right:8px; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .highlight-other-list { grid-template-columns:minmax(0,1fr); }
}
/* Tour introduction: natural title wrapping and restrained metadata badges. */
body.premium-site.tour-detail-page main.tour-detail-page .package-detail-left > h1 {
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:clamp(25px,2.3vw,32px) !important;
  font-weight:600 !important;
  line-height:1.22 !important;
  letter-spacing:-.025em;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  margin:0 0 16px;
  color:#163e42;
}
body.premium-site.tour-detail-page main.tour-detail-page .package-chip-row { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0 0 22px; }
body.premium-site.tour-detail-page main.tour-detail-page .package-chip-row > span {
  display:inline-flex; align-items:center; gap:6px;
  padding:7px 10px; min-height:32px;
  border:1px solid #dedfd3; border-radius:6px;
  background:#eeeee5; color:#3b5750;
  font-size:13px !important; font-weight:500; line-height:1.3;
}
body.premium-site.tour-detail-page main.tour-detail-page .package-chip-row svg { flex-shrink:0; width:13px; height:13px; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .package-detail-left > h1 { font-size:25px !important; }
  body.premium-site.tour-detail-page main.tour-detail-page .package-chip-row { gap:8px; margin-bottom:18px; }
}
@media(min-width:768px) {
  body.premium-site.tour-detail-page main.tour-detail-page .package-detail-left > h1 {
    font-size:clamp(19px,1.8vw,26px) !important;
    white-space:nowrap !important;
  }
}
body.premium-site.tour-detail-page .package-detail-body { padding-top:18px !important; }
body.premium-site.tour-detail-page .hf-media-hero { margin-bottom:14px; }
/* Itinerary: compact accordion headers, calm surfaces and consistent copy. */
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-panel > h2 { font-size:26px !important; margin:0 0 18px; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-day { border:1px solid #dce2d8; border-radius:10px; margin-bottom:12px; overflow:hidden; background:#fff; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-head { padding:14px 16px; gap:12px; min-height:54px; background:#fff; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-day.active .itinerary-head { background:#f0f3ed; border-bottom:1px solid #e1e5db; }
body.premium-site.tour-detail-page main.tour-detail-page .day-badge { flex-shrink:0; padding:5px 8px; border-radius:5px; background:#e8eee6; color:#124b51; font-size:13px !important; font-weight:600; white-space:nowrap; }
body.premium-site.tour-detail-page main.tour-detail-page .day-title { font-size:14px !important; font-weight:500; color:#294c45; line-height:1.5; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-chevron { color:#124b51; flex-shrink:0; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-content { padding:16px; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-day-img { width:100%; height:240px; object-fit:cover; border-radius:8px; margin:0 0 16px; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-body-text { font-size:14px; line-height:1.7; color:#314c43; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-body-text p { margin:0 0 10px; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-body-text li { margin-bottom:8px; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-body-text :is(mark,[style*="background-color: rgb(255, 255, 0)"],[style*="background-color: yellow"]) { background:#eee5d5 !important; color:#604d2d !important; border-radius:3px; padding:2px 5px; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-info-footer { margin-top:16px; padding-top:14px; border-top:1px solid #e3e6dc; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-panel > .download-itinerary { min-height:42px !important; padding:10px 18px; margin-top:8px; font-size:14px !important; border-radius:7px !important; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .itinerary-head { padding:12px; gap:8px; }
  body.premium-site.tour-detail-page main.tour-detail-page .itinerary-content { padding:12px; }
  body.premium-site.tour-detail-page main.tour-detail-page .itinerary-day-img { height:180px; }
}
/* Inclusion/exclusion: reduce top whitespace and unify list rhythm. */
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-panel { margin-top:18px; border-color:#dce2d8; border-radius:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-head { padding:8px 18px 0; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-tab-btn { font-size:17px !important; padding:10px 12px; font-weight:600; color:#738177; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-tab-btn.is-active { color:#124b51; background:#fff; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-tab-btn.is-active::after { background:#124b51; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-body { margin-top:14px; padding:0 20px 20px; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-content :is(ul,ol) { margin:0; padding-left:0; gap:10px; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-content :is(li,p,div,span,strong) { font-size:14px !important; line-height:1.65 !important; text-align:left !important; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-content :is(li,p,div) { gap:10px; margin-bottom:0; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-content :is(li,p,div)::before { width:18px; height:18px; font-size:10px; margin-top:3px; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-panel { margin-top:8px !important; padding-top:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-head { padding-top:0 !important; margin-top:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-tab-btn { padding-top:8px !important; padding-bottom:8px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .inc-exc-body { margin-top:8px !important; padding-top:0 !important; }
/* Cost tables: compact rows, restrained borders and the shared teal header. */
body.premium-site.tour-detail-page main.tour-detail-page .costing-panel { padding:20px; border:1px solid #dce2d8; border-radius:12px; margin-top:16px; margin-bottom:20px; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-panel > h2 { margin:0 0 14px; font-size:26px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-panel .detail-table { width:100%; margin:0; border:1px solid #dce2d8; border-radius:8px; overflow:hidden; border-spacing:0; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-panel .detail-table th { background:#124b51 !important; color:#fff !important; padding:12px 14px; font-size:14px !important; font-weight:600; border-color:#ffffff26; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-panel .detail-table td { padding:12px 14px; color:#304d45; font-size:14px !important; line-height:1.5; border-color:#e0e5da; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-panel .detail-table tbody tr:nth-child(even) { background:#f8f8f3; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-note { margin:14px 0 0; font-size:13px !important; line-height:1.65; color:#68776e; }
body.premium-site.tour-detail-page main.tour-detail-page .costing-note b { color:#124b51 !important; font-size:13px !important; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .costing-panel { padding:16px; }
}
/* Amenities: equal compact cards with aligned thumbnails and labels. */
body.premium-site.tour-detail-page main.tour-detail-page .amenity-panel { padding:20px; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-panel > h2 { margin:0 0 16px; font-size:26px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-grid { gap:14px; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-card { display:flex; align-items:center; gap:12px; padding:14px; min-height:76px; background:#f8f8f3; border:1px solid #e1e5da; border-radius:10px; box-shadow:none; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-img-wrap { width:42px; height:42px; flex:0 0 42px; border-radius:8px; overflow:hidden; box-shadow:none; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-img-wrap img { width:100%; height:100%; object-fit:cover; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-card :is(h3,p,span,strong) { margin:0; font-size:14px !important; font-weight:500; line-height:1.45; color:#294b43; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .amenity-panel { padding:16px; }
  body.premium-site.tour-detail-page main.tour-detail-page .amenity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body.premium-site.tour-detail-page main.tour-detail-page .amenity-card { padding:10px; gap:8px; }
}
body.premium-site.tour-detail-page main.tour-detail-page .amenity-img-wrap { min-width:42px; }
body.premium-site.tour-detail-page main.tour-detail-page .amenity-grid { margin-top:0; }
/* Departure dates: compact, aligned cards; availability states stay intact. */
body.premium-site.tour-detail-page main.tour-detail-page .dates-panel { padding:20px; border:1px solid #dce2d8; border-radius:12px; margin-top:18px; }
body.premium-site.tour-detail-page main.tour-detail-page .dates-panel > h2 { font-size:26px !important; margin:0 0 14px; }
body.premium-site.tour-detail-page main.tour-detail-page .dp-label { margin:0 0 8px; }
body.premium-site.tour-detail-page main.tour-detail-page .city-pills { gap:8px; margin-bottom:16px; }
body.premium-site.tour-detail-page main.tour-detail-page .city-pill-btn { padding:7px 12px; min-height:34px; border:1px solid #d8dfd3; border-radius:6px; font-size:14px; color:#31564b; background:#fff; }
body.premium-site.tour-detail-page main.tour-detail-page .city-pill-btn.is-active { background:#edf2e9; border-color:#a4b9ab; color:#124b51; }
body.premium-site.tour-detail-page main.tour-detail-page .date-location-panel { padding:16px; border:1px solid #e1e5da; border-radius:10px; background:#fbfbf7; }
body.premium-site.tour-detail-page main.tour-detail-page .dp-avail-label { margin:0 0 12px; }
body.premium-site.tour-detail-page main.tour-detail-page .month-nav { margin:0 0 14px; }
body.premium-site.tour-detail-page main.tour-detail-page .month-title { font-size:14px; font-weight:600; color:#294b43; }
body.premium-site.tour-detail-page main.tour-detail-page .month-nav-btn { width:30px; height:30px; border:1px solid #d8dfd3; background:#fff; color:#124b51; font-size:21px; }
body.premium-site.tour-detail-page main.tour-detail-page .date-cards-grid { gap:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-new { padding:12px; border:1px solid #dfe4d9; border-radius:9px; background:#fff; box-shadow:none; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-badge { position:static; transform:none; width:fit-content; margin:0 auto 10px; padding:4px 9px; font-size:11px; line-height:1.4; border-radius:5px; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-body { padding:0; margin:0; font-size:14px !important; line-height:1.5; color:#294b43; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-book-btn { min-height:34px !important; padding:7px 10px; margin-top:10px; border-radius:6px !important; font-size:13px !important; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .dates-panel { padding:16px; }
  body.premium-site.tour-detail-page main.tour-detail-page .date-location-panel { padding:12px; }
}
body.premium-site.tour-detail-page main.tour-detail-page .dates-panel { margin-top:12px; margin-bottom:20px; padding-top:16px; padding-bottom:16px; }
body.premium-site.tour-detail-page main.tour-detail-page .dates-panel > h2 { margin-bottom:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .city-pills { margin-top:0; margin-bottom:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .date-cards-grid { margin-top:0; row-gap:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-new { min-height:0; margin-top:0; margin-bottom:0; }
/* One compact top inset for Costing, Amenities and Available Dates. */
body.premium-site.tour-detail-page main.tour-detail-page :is(.costing-panel,.amenity-panel,.dates-panel) {
  margin-top:8px !important;
  margin-bottom:12px !important;
  padding-top:10px !important;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.costing-panel,.amenity-panel,.dates-panel) > h2 {
  margin-top:0 !important;
  margin-bottom:12px !important;
  padding-top:0 !important;
}
/* Matching typography for all primary tour section titles. */
body.premium-site.tour-detail-page main.tour-detail-page :is(
  .other-highlight-box,.itinerary-panel,.costing-panel,.amenity-panel,
  .dates-panel,.text-detail-panel,.hf-tour-gallery__head
) > h2 {
  font-family:Georgia,'Times New Roman',serif !important;
  font-size:26px !important;
  font-weight:400 !important;
  line-height:1.25 !important;
  letter-spacing:-.025em !important;
  color:#163e42 !important;
  text-align:left !important;
  margin:0 0 14px !important;
  padding:0 !important;
}
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page :is(
    .other-highlight-box,.itinerary-panel,.costing-panel,.amenity-panel,
    .dates-panel,.text-detail-panel,.hf-tour-gallery__head
  ) > h2 { font-size:24px !important; }
}
/* Packing and policy copy: consistent subheadings and list rhythm. */
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel { padding:16px 20px; margin-top:12px; margin-bottom:12px; border-color:#dce2d8; border-radius:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content { color:#304d45; font-size:14px; line-height:1.7; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content :is(h2,h3,h4,h5) {
  font-family:var(--site-font) !important; font-size:15px !important;
  font-weight:600 !important; line-height:1.5 !important;
  margin:16px 0 8px !important; letter-spacing:normal;
  color:#244a41 !important;
}
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content > :first-child { margin-top:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content :is(p,li,span,div) { font-size:14px !important; line-height:1.7 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content p { margin:0 0 10px; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content :is(ul,ol) { padding-left:22px; margin:6px 0 14px; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content li { margin:0 0 5px; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .content-read-more { margin-top:12px; font-size:13px !important; color:#124b51; }
/* Uniform information panels and expand controls. */
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel {
  padding:18px 20px;
  margin:12px 0;
  border:1px solid #dce2d8;
  border-radius:12px;
  background:#fff;
}
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel > h2 { margin-bottom:14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content { color:#304d45; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content :is(p,li,span,strong,b) { font-size:14px !important; line-height:1.65 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .term-content p { margin-bottom:8px; }
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .content-read-more {
  display:flex; align-items:center; justify-content:center;
  width:fit-content; min-height:32px;
  margin:12px auto 0; padding:6px 14px;
  border:1px solid #b9cbc1; border-radius:6px;
  background:#f7f9f4; color:#124b51 !important;
  font-size:13px !important; font-weight:500; line-height:1.4;
  box-shadow:none; transform:none;
}
body.premium-site.tour-detail-page main.tour-detail-page .text-detail-panel .content-read-more:hover { background:#edf2e9; border-color:#124b51; box-shadow:none; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-tour-gallery { margin-top:12px !important; padding-top:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-tour-gallery__head { margin-top:0 !important; margin-bottom:10px !important; padding:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-tour-gallery__head h2 { margin-bottom:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-tour-gallery__grid { margin-top:0 !important; padding-top:0 !important; }
/* Compact transitions between supporting tour sections. */
body.premium-site.tour-detail-page main.tour-detail-page :is(.why-choose,.htp,.hfa,.reviews-section,.hf-review-submit,.hf-faq-wrap) {
  margin-top:12px !important;
  padding-top:10px !important;
  padding-bottom:14px !important;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.why-title,.htp-heading,.hfa-heading,.reviews-head) { margin-top:0 !important; margin-bottom:14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.why-title,.htp-heading,.hfa-heading,.reviews-head) h2 { margin-top:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-heading { margin-top:0 !important; margin-bottom:14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-submit > details { margin-top:0; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.similar-section,.journal-section) { margin-top:12px !important; padding-top:10px !important; padding-bottom:14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.similar-section .section-title,.journal-section-head) { margin-top:0 !important; margin-bottom:14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.similar-section,.journal-section) h2 { margin-top:0 !important; }
/* Remove stacked section spacing, including the preceding detail wrapper. */
body.premium-site.tour-detail-page .package-detail-body { padding-bottom:12px !important; margin-bottom:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.why-choose,.htp,.hfa,.reviews-section,.hf-review-submit,.hf-faq-wrap,.similar-section,.journal-section) {
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:0 !important;
  padding-bottom:16px !important;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.why-title,.htp-heading,.hfa-heading,.reviews-head,.section-title,.journal-section-head) {
  margin-top:0 !important;
  padding-top:0 !important;
  margin-bottom:12px !important;
}
body.premium-site.tour-detail-page main.tour-detail-page :is(.why-choose,.htp,.hfa,.reviews-section,.hf-faq-wrap,.similar-section,.journal-section) h2 { margin-top:0 !important; padding-top:0 !important; }
/* Tour benefits: compact cards with a consistent type and icon scale. */
body.premium-site.tour-detail-page main.tour-detail-page .why-title h2 { font-size:26px !important; margin:0 0 8px; }
body.premium-site.tour-detail-page main.tour-detail-page .why-title p { font-size:14px !important; margin:0; line-height:1.65; }
body.premium-site.tour-detail-page main.tour-detail-page .why-card-grid { gap:18px; margin-top:16px; }
body.premium-site.tour-detail-page main.tour-detail-page .why-tile { padding:20px; min-height:0; border:1px solid #dfe4d8; border-radius:12px; box-shadow:0 4px 14px #14393a05; }
body.premium-site.tour-detail-page main.tour-detail-page .why-tile .why-icon { width:42px; height:42px; padding:8px; border-radius:10px; margin:0 0 14px; }
body.premium-site.tour-detail-page main.tour-detail-page .why-tile .why-icon svg { width:26px; height:26px; }
body.premium-site.tour-detail-page main.tour-detail-page .why-tile h3 { font-size:16px !important; font-weight:600; line-height:1.4; margin:0 0 8px; padding:0; border:0; color:#163e42; }
body.premium-site.tour-detail-page main.tour-detail-page .why-tile h3::after { display:none; }
body.premium-site.tour-detail-page main.tour-detail-page .why-tile p { font-size:14px !important; line-height:1.65; margin:0; color:#53685d; }
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .why-card-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  body.premium-site.tour-detail-page main.tour-detail-page .why-tile { padding:16px; }
}
/* Travel photo stories: balanced heading, compact images and even gutters. */
body.premium-site.tour-detail-page main.tour-detail-page .htp-heading h2 { font-size:26px !important; line-height:1.25 !important; margin:0 0 8px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .htp-heading p { font-size:14px !important; line-height:1.65; margin:0; color:#63766a; }
body.premium-site.tour-detail-page main.tour-detail-page .htp-track { gap:16px; padding-bottom:8px; }
body.premium-site.tour-detail-page main.tour-detail-page .htp-card {
  height:clamp(260px,24vw,340px);
  aspect-ratio:auto;
  border:1px solid #e0e5da;
  border-radius:10px;
  background:#f0f0e8;
  box-shadow:none;
}
body.premium-site.tour-detail-page main.tour-detail-page .htp-card img { object-fit:contain; width:100%; height:100%; }
body.premium-site.tour-detail-page main.tour-detail-page .htp-expand { width:28px; height:28px; top:9px; right:9px; background:#ffffffed; color:#124b51; box-shadow:0 2px 6px #14393a14; }
@media(max-width:767px) {
  body.premium-site.tour-detail-page main.tour-detail-page .htp-heading h2 { font-size:24px !important; }
  body.premium-site.tour-detail-page main.tour-detail-page .htp-track { gap:10px; }
  body.premium-site.tour-detail-page main.tour-detail-page .htp-card { height:auto; aspect-ratio:4/5; }
}
/* Destination albums: match the scale of neighbouring photo sections. */
body.premium-site.tour-detail-page main.tour-detail-page .hfa { --hfa-gap:14px; --hfa-card:220px; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-heading { align-items:center; gap:16px; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-heading h2 { font-size:26px !important; line-height:1.25 !important; margin:0 0 8px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-heading p { font-size:14px !important; line-height:1.65; margin:0; color:#63766a; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-pause { padding:6px 12px; min-height:32px; border:1px solid #b9cbc1; border-radius:6px; background:#f7f9f4; color:#124b51; font-size:13px; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-rows { gap:14px; border-radius:10px; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-card { height:220px; border-radius:10px; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-card-label { padding:32px 12px 12px; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-card-label strong { font-size:14px; font-weight:600; }
body.premium-site.tour-detail-page main.tour-detail-page .hfa-card-label > span { font-size:11px; }
@media(max-width:767px) {
  body.premium-site.tour-detail-page main.tour-detail-page .hfa { --hfa-gap:10px; --hfa-card:180px; }
  body.premium-site.tour-detail-page main.tour-detail-page .hfa-heading h2 { font-size:24px !important; }
  body.premium-site.tour-detail-page main.tour-detail-page .hfa-card { height:180px; }
  body.premium-site.tour-detail-page main.tour-detail-page .hfa-rows { gap:10px; }
}
/* Testimonials: consistent compact identities, reading copy and controls. */
body.premium-site.tour-detail-page main.tour-detail-page .reviews-head h2 { font-size:26px !important; line-height:1.25 !important; margin:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .review-row { gap:18px; }
body.premium-site.tour-detail-page main.tour-detail-page .review-card-item { padding:20px; border:1px solid #dfe4d8; border-radius:12px; background:#fff; box-shadow:0 4px 14px #14393a05; }
body.premium-site.tour-detail-page main.tour-detail-page .review-top { gap:12px; margin-bottom:14px; align-items:center; }
body.premium-site.tour-detail-page main.tour-detail-page .review-top > img,
body.premium-site.tour-detail-page main.tour-detail-page .review-avatar-fallback { width:48px; height:48px; flex:0 0 48px; border-radius:50%; object-fit:cover; font-size:20px; background:#eef0e5; color:#124b51; }
body.premium-site.tour-detail-page main.tour-detail-page .review-top h3 { font-size:16px !important; line-height:1.4; margin:0 0 4px; font-weight:600; color:#163e42; }
body.premium-site.tour-detail-page main.tour-detail-page .review-top p { font-size:12px !important; line-height:1.5; margin:0; color:#738175; }
body.premium-site.tour-detail-page main.tour-detail-page .review-text { font-size:14px; line-height:1.65; margin-top:12px; color:#3e5349; scrollbar-width:thin; scrollbar-color:#b8c8b9 #f1f3ec; }
body.premium-site.tour-detail-page main.tour-detail-page .review-text p { font-size:14px !important; line-height:1.65 !important; }
body.premium-site.tour-detail-page main.tour-detail-page :is(.review-source-link,.review-full summary) { font-size:13px !important; color:#124b51; line-height:1.5; }
body.premium-site.tour-detail-page main.tour-detail-page .review-source-link { margin-top:12px; font-weight:500; }
body.premium-site.tour-detail-page main.tour-detail-page .review-controls button { width:34px; height:34px; border:1px solid #d4dfd3; border-radius:50%; background:#fff; color:#124b51; font-size:24px; box-shadow:none; }
body.premium-site.tour-detail-page main.tour-detail-page .review-top .quote { color:#b49a6b; font-size:32px; line-height:1; }
/* Review form: compact fields with the shared teal action style. */
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-submit > details { padding:18px 20px; border:1px solid #dce2d8; border-radius:12px; background:#fff; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-submit summary { font-size:16px; font-weight:600; color:#163e42; padding-bottom:10px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-note { margin:12px 0 16px; font-size:14px !important; line-height:1.65; color:#63766a; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-form { gap:14px 16px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-form label { gap:6px; font-size:13px; font-weight:600; color:#315448; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-form :is(input:not([type="radio"]),select,textarea) { padding:9px 11px; min-height:40px; font-size:14px; line-height:1.5; border:1px solid #d5dfd1; border-radius:7px; background:#fff; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-form textarea { min-height:100px; height:100px; resize:vertical; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-rating-stars { padding:4px 8px; background:#f6f3e9; border-color:#e3dcc8; border-radius:7px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-rating-stars label { width:28px; height:30px; font-size:24px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-rating-hint { font-size:12px; color:#738175; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-form button[type="submit"] { min-height:40px; padding:9px 18px; border-radius:7px; background:#124b51; color:#fff; font-size:14px; font-weight:600; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-review-form button[type="submit"]:hover { background:#0b383e; }
/* Tour FAQ: match the typography and surfaces of the other detail sections. */
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-wrap { background:transparent; border-radius:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-heading { font-family:Georgia,'Times New Roman',serif !important; font-size:26px !important; font-weight:400 !important; line-height:1.25 !important; color:#163e42; text-align:left; margin:0 0 14px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-list { background:#fff; border:1px solid #dce2d8; border-radius:12px; overflow:hidden; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-item { border:0; border-bottom:1px solid #e3e7dd; margin:0; padding:0; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-item:last-child { border-bottom:0; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-btn { padding:14px 18px; gap:12px; background:#fff; color:#244b41; font-size:14px !important; line-height:1.5; font-weight:500; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-q-text { font-size:14px !important; line-height:1.5 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-item.hf-open .hf-faq-btn { background:#f6f7f0; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-icon { width:16px; height:16px; color:#124b51; flex-shrink:0; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-ans-inner { padding:0 18px 16px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-ans-inner,
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-ans-inner :is(p,span,li,div,strong,a) { font-size:14px !important; line-height:1.7 !important; color:#53685d; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-ans-inner p { margin:0 0 8px; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-heading { color:#163e42 !important; text-align:left !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-btn { padding:14px 18px !important; color:#244b41 !important; background:#fff !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-item.hf-open .hf-faq-btn { background:#f6f7f0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-ans-inner { padding:0 18px 16px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-item:first-child { border-top:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .hf-faq-item:last-child { border-bottom:0 !important; }
/* Related packages: align the compact image/details/action rhythm. */
body.premium-site.tour-detail-page main.tour-detail-page .similar-section h2 { font-size:26px !important; line-height:1.25; margin:0 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .upcoming-row { gap:18px; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card { border:1px solid #dfe4d8; border-radius:12px; box-shadow:0 5px 18px #14393a08; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__img-wrap { aspect-ratio:1.6/1; overflow:hidden; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__img-wrap img { width:100%; height:100%; object-fit:cover; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__body { padding:16px; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__title { font-size:16px !important; line-height:1.4 !important; font-weight:600 !important; margin:0 0 12px; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__info-row { gap:10px; align-items:end; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__info-item { font-size:13px; line-height:1.5; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__info-item svg { color:#124b51; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__price-new { font-size:18px !important; color:#124b51; font-weight:700; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__actions { gap:8px; margin-top:14px; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section :is(.obt-card__btn,.obt-card__call) { min-height:40px !important; border-radius:7px !important; font-size:14px !important; box-shadow:none; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section .obt-card__call { min-width:40px; width:40px; }
body.premium-site.tour-detail-page main.tour-detail-page .similar-section :is(.obt-card__tag,.obt-card__dur) { font-size:11px; padding:5px 9px; }
/* Package travel guides: balanced editorial cards and readable actions. */
body.premium-site.tour-detail-page main.tour-detail-page .journal-section-head h2 { font-size:26px !important; line-height:1.25; margin:0 0 8px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-section-head p { font-size:14px !important; margin:0; color:#63766a; line-height:1.65; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-section-head > a { font-size:13px; color:#124b51; font-weight:500; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-slider { gap:18px; padding-top:0; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-slider .journal-card { flex-basis:calc((100% - 36px)/3); border-radius:12px; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-card-image { height:auto; aspect-ratio:2/1; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-card-body { padding:16px 18px; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-card :is(h3,h3 a) { font-size:20px !important; line-height:1.3 !important; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-card .journal-read,
body.premium-site.tour-detail-page main.tour-detail-page .journal-card .journal-read:visited,
body.premium-site.tour-detail-page main.tour-detail-page .journal-card .journal-read:hover { color:#fff !important; -webkit-text-fill-color:#fff !important; font-size:13px !important; }
body.premium-site.tour-detail-page main.tour-detail-page .journal-read > span[aria-hidden] { color:#fff !important; }
@media(max-width:900px) {
  body.premium-site.tour-detail-page main.tour-detail-page .journal-slider .journal-card { flex-basis:calc((100% - 18px)/2); }
}
@media(max-width:600px) {
  body.premium-site.tour-detail-page main.tour-detail-page .journal-slider .journal-card { flex-basis:100%; }
}
/* Keep accessible link labels inside their horizontally scrolling cards. */
.departure-season-notice { display:flex; align-items:flex-start; gap:12px; margin:0 0 16px; padding:14px 16px; background:#f7f5ec; border:1px solid #e2dfcf; border-left:3px solid #124b51; border-radius:9px; }
.departure-season-notice-icon { display:grid; place-items:center; flex:0 0 32px; height:32px; border-radius:8px; background:#e6ece2; color:#124b51; }
.departure-season-notice-icon svg { width:20px; height:20px; }
body.premium-site.tour-detail-page main.tour-detail-page .departure-season-notice p,
body.premium-site .booking-main .departure-season-notice p { margin:0; font-size:13px!important; line-height:1.7; color:#56665d; }
.departure-season-notice strong { color:#124b51; font-weight:600; }
.departure-season-notice.itinerary-upgrade-notice { align-items:center; gap:12px; padding:13px 16px; border:1px solid #ead9d3; border-left:3px solid #a43740; border-radius:10px; background:linear-gradient(110deg,#fff5f1 0%,#faf8f0 100%); box-shadow:0 3px 12px rgba(92,42,38,.035); }
.home-meghalaya-upgrade { display:flex; align-items:center; gap:12px; margin:0 0 18px; padding:13px 16px; border:1px solid #ead9d3; border-left:3px solid #a43740; border-radius:10px; background:linear-gradient(105deg,#fff5f1 0%,#fbf8f2 100%); box-shadow:0 5px 18px rgba(82,39,35,.045); }
.home-meghalaya-upgrade__mark { display:grid; place-items:center; flex:0 0 30px; height:30px; border:1px solid #e9c7c4; border-radius:50%; background:#f7e7e2; color:#982f3b; font-family:Georgia,serif; font-size:19px; font-weight:700; }
.home-meghalaya-upgrade strong { display:block; margin-bottom:3px; color:#922e39; font-size:13px; font-weight:700; letter-spacing:.2px; }
.home-meghalaya-upgrade p { margin:0; color:#62504c; font-size:13px; line-height:1.55; }
.home-meghalaya-upgrade p b { color:#922e39; font-weight:700; }
@media(max-width:600px) { .home-meghalaya-upgrade { align-items:flex-start; gap:9px; margin-bottom:14px; padding:11px 12px; } .home-meghalaya-upgrade__mark { flex-basis:26px; height:26px; font-size:17px; } .home-meghalaya-upgrade strong { font-size:12px; } .home-meghalaya-upgrade p { font-size:12px; line-height:1.5; } }
.itinerary-upgrade-notice .departure-season-notice-icon { flex:0 0 34px; height:34px; border:1px solid #e9c7c4; border-radius:50%; background:#f7e7e2; color:#9a303c; }
.itinerary-upgrade-copy { min-width:0; }
.itinerary-upgrade-label { display:block; margin:0 0 4px; color:#9a3942; font-size:10px; font-weight:700; letter-spacing:1px; line-height:1.4; text-transform:uppercase; }
.itinerary-upgrade-label > span { margin:0 5px; color:#b6877b; }
body.premium-site.tour-detail-page main.tour-detail-page .itinerary-upgrade-notice p,
body.premium-site .booking-main .itinerary-upgrade-notice p { color:#62504c; font-size:13px!important; line-height:1.65; }
.departure-season-notice.itinerary-upgrade-notice strong { color:#982f3b; font-weight:700; }
.itinerary-upgrade-pending { display:block; margin-top:4px; color:#7a6861; font-size:12px; line-height:1.5; }
@media(max-width:540px) { .departure-season-notice.itinerary-upgrade-notice { align-items:flex-start; gap:10px; padding:12px; } .itinerary-upgrade-notice .departure-season-notice-icon { flex-basis:28px; height:28px; } .itinerary-upgrade-notice .departure-season-notice-icon svg { width:17px; height:17px; } .itinerary-upgrade-label { font-size:9px; letter-spacing:.7px; } }
body.premium-site .obt-card__img-wrap:has(.legacy-departure-label)::after { content:""; position:absolute; inset:auto 0 0; height:72px; background:linear-gradient(transparent,rgba(12,30,29,.78)); pointer-events:none; z-index:1; }
body.premium-site .obt-card__img-wrap .legacy-departure-label { position:absolute; right:12px; bottom:13px; z-index:2; display:inline-flex; align-items:center; gap:4px; margin:0; padding:7px 6px; border:1px solid #fff8edb3; border-left:2px solid #a63640; border-radius:4px; background:#fffaf1; color:#91313b; font-family:inherit; line-height:1.2; white-space:nowrap; box-shadow:none; }
body.premium-site .legacy-departure-label svg { flex:0 0 12px; color:#a63640; }
body.premium-site .legacy-departure-label strong { color:#91313b; font-family:inherit; font-size:10px; font-weight:600; line-height:1.2; letter-spacing:0; }
body.premium-site .obt-card__img-wrap:has(.legacy-departure-label) .obt-card__dur { z-index:2; bottom:13px; left:12px; display:inline-flex; align-items:center; min-height:28px; max-width:calc(100% - 155px); margin:0; padding:5px 0; border:0!important; border-radius:0; background:transparent!important; color:#fff!important; font-size:11px; font-weight:500; line-height:1.3; box-shadow:none; }
body.premium-site .obt-card__img-wrap:has(.legacy-departure-label) .obt-card__dur svg { color:#eee4d1; stroke:currentColor; }
.departure-season-notice .departure-season-amount { color:#a63232; }
.legacy-departure-label--season { max-width:calc(100% - 135px); padding:6px 9px; white-space:normal; line-height:1.25; }
.obt-card__img-wrap:has(.legacy-departure-label--season) .obt-card__dur { left:14px; right:auto; bottom:14px; background:rgba(20,38,38,.72); color:#fff; }
.obt-card__img-wrap:has(.legacy-departure-label--season) .obt-card__dur svg { color:#eee4d1; stroke:currentColor; }
.obt-card__img-wrap:has(.new-departure-label) .legacy-departure-label { max-width:calc(100% - 135px); background:linear-gradient(140deg,#a43740,#7f2634); border-color:rgba(255,255,255,.7); color:#fff; box-shadow:0 5px 14px rgba(86,27,36,.28); }
.obt-card__img-wrap:has(.new-departure-label) .legacy-departure-label svg { color:#f4dfbd; stroke:currentColor; }
.obt-card__img-wrap:has(.new-departure-label) .obt-card__dur { left:14px; right:auto; bottom:14px; background:rgba(20,38,38,.72); color:#fff; }
.obt-card__img-wrap:has(.new-departure-label) .obt-card__dur svg { color:#eee4d1; stroke:currentColor; }
@media(max-width:540px) { .departure-season-notice { gap:9px; padding:12px; } .departure-season-notice-icon { flex-basis:28px; height:28px; } }
@media(max-width:520px) { .legacy-departure-label--season { max-width:calc(100% - 120px); padding:5px 7px; font-size:10px; } .obt-card__img-wrap:has(.new-departure-label) .legacy-departure-label { max-width:calc(100% - 120px); } }
.departure-slot-info { display:flex; flex-direction:column; justify-content:center; min-height:38px; margin-top:7px; padding:5px 6px; border-radius:5px; color:#6d7973; font-size:11px; line-height:1.35; }
body.premium-site.tour-detail-page main.tour-detail-page .date-cards-grid { align-items:stretch; grid-auto-rows:1fr; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-new { height:auto; align-self:stretch; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-body { width:100%; padding-bottom:10px; }
body.premium-site.tour-detail-page main.tour-detail-page .date-card-book-btn { margin-top:auto; }
body.premium-site .journal-read { position:relative; }
@media(max-width:380px) {
  body.premium-site:not(:has(#home)) .topbar { gap:6px !important; padding-inline:10px !important; }
  body.premium-site:not(:has(#home)) .topbar .brand-logo-link { gap:5px !important; }
  body.premium-site:not(:has(#home)) .topbar .brand-wordmark { font-size:14px !important; }
  body.premium-site:not(:has(#home)) .topbar .brand-logo-mark { width:36px; height:36px; flex-basis:36px; }
  body.premium-site:not(:has(#home)) .topbar .brand-logo-mark img { width:127px; top:-4.4px; left:-2.4px; }
}
@media print {
  body.premium-site:not(:has(#home)),body.premium-site:not(:has(#home)) main { background:#fff !important; }
}
