/* YM Tour Detail Clean v1.0.1 — Sample 1 "Prestige Clean".
   Every rule is scoped under .yj.yj-detail so it wins over the theme's
   premium.css and YM Tour Design A without touching any other page. */

/* ---------- One smooth flow: remove the underlined section-link bar ---------- */
.yj.yj-detail .yj-dnav { display: none !important; }

/* ---------- Plain headings: no serif/italic accent words ---------- */
.yj.yj-detail h1 i,
.yj.yj-detail h2 i,
.yj.yj-detail h3 i {
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: inherit !important;
  color: inherit !important;
  letter-spacing: inherit !important;
}

/* ---------- Breathing room between sections ---------- */
.yj.yj-detail .yj-dsec { padding-top: 38px; padding-bottom: 6px; }
.yj.yj-detail .yj-dsec h2 { margin-bottom: 14px; letter-spacing: -0.01em; }
.yj.yj-detail .yj-k {
  font-size: 11px; font-weight: 800; letter-spacing: 0.18em;
  text-transform: uppercase; color: #C1121F;
}
.yj.yj-detail .yj-prose p { font-size: 15.5px; line-height: 1.75; color: #3c4149; }
.yj.yj-detail .yj-prose p + p { margin-top: 14px; }

/* ---------- Hero facts: one clean row, no pills ---------- */
.yj.yj-detail .yj-facts { gap: 10px 14px; align-items: center; }
.yj.yj-detail .yj-facts span {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; padding: 0 !important;
  font-weight: 600; color: #16181d;
}
.yj.yj-detail .yj-facts i { color: #e3b7ba; font-size: 8px; }

/* ---------- Key facts: clean divided strip, NO emoji markers ---------- */
.yj.yj-detail .yj-keyfacts {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; border-radius: 0 !important;
  border-top: 1px solid #ececf0 !important;
  border-bottom: 1px solid #ececf0 !important;
  padding: 6px 0 !important; gap: 0 !important;
}
.yj.yj-detail .yj-keyfacts article {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; border-radius: 0 !important;
  padding: 14px 16px 14px 0 !important;
}
.yj.yj-detail .yj-keyfacts small {
  font-size: 11px !important; letter-spacing: 0.06em;
  text-transform: uppercase; color: #8a8f98 !important; font-weight: 700;
}
.yj.yj-detail .yj-keyfacts small::before { content: none !important; display: none !important; }
.yj.yj-detail .yj-keyfacts strong { font-size: 15.5px; color: #16181d; margin-top: 3px; }
.yj.yj-detail .yj-keyfacts article span { color: #8a8f98; font-size: 12.5px; }

/* ---------- Route note: one soft panel ---------- */
.yj.yj-detail .yj-routenote {
  background: #fdf3f3 !important; border: 1px solid #f6dede !important;
  border-radius: 10px !important; box-shadow: none !important;
}
.yj.yj-detail .yj-routenote p { line-height: 1.65; color: #3c4149; }

/* ---------- Itinerary: connected timeline, calm ink numbers ---------- */
.yj.yj-detail ol.yj-timeline > li {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; border-radius: 0 !important;
  padding: 2px 0 26px 56px !important; margin: 0 !important; min-height: 0;
}
.yj.yj-detail ol.yj-timeline > li:last-child { padding-bottom: 4px !important; }
.yj.yj-detail ol.yj-timeline > li::before {
  background: #16181d !important; left: 0 !important; top: 0 !important;
  width: 34px; height: 34px; font-size: 14px;
}
.yj.yj-detail ol.yj-timeline > li::after {
  display: block !important; content: "" !important;
  position: absolute; left: 16px; top: 42px; bottom: 2px;
  width: 2px; background: #f3d9db;
}
.yj.yj-detail ol.yj-timeline > li:last-child::after { display: none !important; }
.yj.yj-detail ol.yj-timeline h3 { font-size: 16.5px; }
.yj.yj-detail ol.yj-timeline p { font-size: 14.5px; line-height: 1.65; color: #3c4149; }

/* ---------- Included / paid panels: soft, single border ---------- */
.yj.yj-detail .yj-fit,
.yj.yj-detail .yj-incl {
  border: 1px solid #ececf0 !important; border-radius: 12px !important;
  box-shadow: none !important; background: #fff !important;
}

/* ---------- Good to know: quiet rows with hairlines ---------- */
.yj.yj-detail .yj-practical { gap: 0 !important; }
.yj.yj-detail .yj-practical article {
  background: transparent !important; border: 0 !important;
  box-shadow: none !important; border-radius: 0 !important;
  border-bottom: 1px solid #f0f0f3 !important; padding: 13px 0 !important;
}
.yj.yj-detail .yj-practical article:last-child { border-bottom: 0 !important; }
.yj.yj-detail .yj-practical p { color: #5a5f68; line-height: 1.6; }

/* ---------- FAQ: calm rows ---------- */
.yj.yj-detail .yj-faq details {
  border: 0 !important; border-bottom: 1px solid #ececf0 !important;
  border-radius: 0 !important; box-shadow: none !important;
  background: transparent !important;
}
.yj.yj-detail .yj-faq summary { padding: 16px 0; font-size: 15.5px; }
.yj.yj-detail .yj-faq details p { line-height: 1.65; color: #3c4149; padding-bottom: 16px; }

/* ---------- Booking card: ink border, red button (Sample 1) ---------- */
.yj.yj-detail aside.yj-book {
  border: 1.5px solid #16181d !important; border-top: 1.5px solid #16181d !important;
  border-radius: 14px !important; box-shadow: none !important;
}
.yj.yj-detail .yj-save { color: #C1121F; letter-spacing: 0.06em; }

/* ---------- Injected "How booking works" steps ---------- */
.yj.yj-detail .ymtc-steps { margin-top: 16px; }
.yj.yj-detail .ymtc-step {
  display: flex; gap: 14px; padding: 14px 0;
  border-bottom: 1px solid #f0f0f3;
}
.yj.yj-detail .ymtc-step:last-child { border-bottom: 0; }
.yj.yj-detail .ymtc-step .ymtc-n {
  flex: 0 0 34px; height: 34px; border-radius: 50%;
  background: #C1121F; color: #fff; font-weight: 800; font-size: 15px;
  display: flex; align-items: center; justify-content: center;
}
.yj.yj-detail .ymtc-step b { display: block; font-size: 15.5px; color: #16181d; }
.yj.yj-detail .ymtc-step p { font-size: 14px; color: #5a5f68; line-height: 1.6; margin-top: 2px; }
