/* Routes presentation, 2026-10-30. No business state, fields or handlers change.
   Deliberately scoped: shared shell, home, member and booking stay untouched. */
body.sx-business .legacy-products-page {
  color:#34483f;
  font-size:14px;
}
body.sx-business .legacy-products-page .product-layout { gap:28px; }
body.sx-business .legacy-products-page .legacy-filters { padding:12px 24px; }
body.sx-business .legacy-products-page .legacy-filters > div,
body.sx-business .legacy-products-page .legacy-filters > form { padding:12px 0; }
body.sx-business .legacy-products-page .legacy-filters strong { color:#526356; font-size:14px; }
body.sx-business .legacy-products-page .legacy-filters a {
  min-height:36px; padding:7px 12px; color:#4d5f51; font-size:14px;
  border:1px solid transparent; line-height:20px;
}
body.sx-business .legacy-products-page .legacy-filters a:hover { background:#f0f3ec; }
body.sx-business .legacy-products-page .legacy-filters a.active {
  color:#244e3c; background:#e9f0e7; border-color:#becdbb; font-weight:600;
}
body.sx-business .legacy-products-page .legacy-filters input {
  height:38px; color:#344c40; border-color:#cbcdbf; font-size:14px;
}
body.sx-business .legacy-products-page .legacy-filters button {
  min-height:38px; padding:0 22px; background:#2f5b4a; font-size:14px;
}
body.sx-business .legacy-products-page .legacy-sort { margin:20px 0 14px; height:48px; }
body.sx-business .legacy-products-page .legacy-sort nav a { color:#526356; font-size:14px; }
body.sx-business .legacy-products-page .legacy-sort nav a.active { color:#244e3c; }
body.sx-business .legacy-products-page .legacy-pager { color:#526356; font-size:13px; }
body.sx-business .legacy-products-page .legacy-pager a { width:32px; height:32px; }
body.sx-business .legacy-products-page .legacy-product-row {
  padding:20px; column-gap:20px; grid-template-columns:216px minmax(0,1fr) 128px;
  grid-template-rows:minmax(112px,auto) auto; border-color:#dcd8cc;
}
body.sx-business .legacy-products-page .product-copy { padding:0 0 16px; }
body.sx-business .legacy-products-page .product-copy h2 { margin:0 0 10px; font-size:21px; line-height:1.55; }
body.sx-business .legacy-products-page .product-copy p {
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
  overflow:hidden; max-height:3.7em; font-size:14px; line-height:1.85; color:#5b675b;
}
body.sx-business .legacy-products-page .product-facts {
  padding-top:12px; gap:8px 18px; border-color:#e8e5dc;
}
body.sx-business .legacy-products-page .product-facts div { gap:8px; font-size:13px; line-height:1.75; }
body.sx-business .legacy-products-page .product-facts dt { color:#626b5e; }
body.sx-business .legacy-products-page .product-facts dd {
  min-width:0; white-space:normal; overflow:visible; overflow-wrap:anywhere;
  color:#354e40; text-overflow:clip;
}
body.sx-business .legacy-products-page .product-price-area { padding-left:16px; gap:16px; }
body.sx-business .legacy-products-page .product-price-value { font-size:30px; color:#a53e2b; }
body.sx-business .legacy-products-page .product-price { white-space:nowrap; }
body.sx-business .legacy-products-page .product-currency,
body.sx-business .legacy-products-page .product-price-unit { font-size:12px; color:#626b5e; }
body.sx-business .legacy-products-page .product-detail-link { padding:10px 20px; font-size:14px; }
body.sx-business .legacy-products-page .product-aside { background:#faf8f1; }
body.sx-business .legacy-products-page .product-aside h2 { font-size:21px; }
body.sx-business .legacy-products-page .product-aside-item { padding:14px 16px; gap:10px; }
body.sx-business .legacy-products-page .product-aside-item strong { font-size:13px; color:#4d6051; line-height:1.8; }
body.sx-business .legacy-products-page .product-aside-item::before { font-size:16px; color:#6b7e67; }
body.sx-business .legacy-products-page .product-loading,
body.sx-business .legacy-products-page .product-error,
body.sx-business .legacy-products-page .product-empty { color:#526356; background:#fffdf8; }

/* Detail geometry follows the current YCSD page; Sanxia keeps its own shell
   and brand colours. All controls and original content remain in place. */
body.sx-business .detail-redesign {
  --route-header-height:77px; --route-nav-height:52px;
  font:16px/normal Arial,"Microsoft YaHei",sans-serif;
}
body.sx-business .detail-redesign .detail-overview-card {
  background:#fff; border:1px solid #e1e5dc; border-radius:12px;
  box-shadow:0 12px 32px -24px rgba(35,65,47,.32);
}
body.sx-business .detail-redesign .detail-overview-card .detail-info-panel {
  padding:22px 28px 20px; min-height:132px; gap:32px;
  grid-template-columns:minmax(0,1fr) 310px; border-color:#edf0e8;
}
body.sx-business .detail-redesign .detail-kicker { color:#60745d; font-size:12px; line-height:1.5; }
body.sx-business .detail-redesign .detail-product-card h1 {
  margin:12px 0 10px; color:#263e33;
  font:700 26px/1.3 Arial,"Microsoft YaHei",sans-serif;
}
body.sx-business .detail-redesign .detail-selected-meta { font-size:14px; line-height:1.7; }
body.sx-business .detail-redesign .detail-selected-meta b { color:#74816e; }
body.sx-business .detail-redesign .detail-selected-meta strong { color:#24392d; }
body.sx-business .detail-redesign .detail-hotline-card { background:#f6f8f2; border-color:#dce4d5; border-radius:10px; }
/* Keep the accepted telephone numeral typeface and original group binding. */
body.sx-business .detail-redesign .detail-overview-card .detail-media-schedule-panel {
  padding:28px; grid-template-columns:minmax(0,1fr) 440px; gap:28px;
  align-items:stretch;
}
body.sx-business .detail-redesign .detail-overview-card .detail-gallery {
  grid-template-rows:minmax(352px,1fr) 76px; min-height:439px;
  height:auto; max-height:none; align-self:stretch;
}
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_pic,
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_big_pic,
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_big_pic img {
  min-height:0; height:100%; max-height:none; border-radius:8px;
}
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_big_pic img {
  width:100%; object-fit:cover; object-position:center; background:#f1f3ec;
}
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_small_pic .s_img_box li img {
  object-fit:cover; background:#f1f3ec; border-radius:6px;
}
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_small_pic .s_img_box li.active img { border:2px solid #2f5b4a; }
body.sx-business .detail-redesign .detail-overview-card .detail-calendar-column {
  height:auto; min-height:439px; max-height:none; padding:20px 22px;
  display:grid; grid-template-rows:auto auto auto auto; align-content:start;
  gap:12px; background:#fff; border:1px solid #dce3d6; border-radius:10px;
}
body.sx-business .detail-redesign .detail-section-heading { line-height:1.5; }
body.sx-business .detail-redesign .detail-section-heading strong { font-size:18px; }
body.sx-business .detail-redesign .detail-month-controls { color:#2f5b4a; }
body.sx-business .detail-redesign .detail-month-controls b { font-size:14px; }
body.sx-business .detail-redesign .detail-month-controls button { font:28px/1 Arial,sans-serif; }
body.sx-business .detail-redesign .detail-month-controls button:hover { background:#edf2e8; }
body.sx-business .detail-redesign .detail-month-calendar { border-radius:6px; border-color:#e3e7df; }
body.sx-business .detail-redesign .detail-calendar-weekdays { color:#5f7257; background:#e5e9df; }
body.sx-business .detail-redesign .detail-calendar-weekdays span { background:#f5f7ef; }
body.sx-business .detail-redesign .detail-calendar-days {
  grid-template-rows:repeat(var(--calendar-weeks),minmax(46px,auto));
  background:#e5e9df;
}
body.sx-business .detail-redesign .detail-calendar-day {
  font:13.3333px/1.1 Arial,"Microsoft YaHei",sans-serif;
  gap:2px; padding:3px 1px;
}
body.sx-business .detail-redesign .detail-calendar-day-number { font-size:14px; }
body.sx-business .detail-redesign .detail-calendar-price { color:#c44e23; font-size:12px; }
body.sx-business .detail-redesign .detail-calendar-seats { color:#4d6a4b; font-size:11px; }
body.sx-business .detail-redesign button.detail-calendar-day:hover { background:#edf3e8; box-shadow:inset 0 0 0 1px #a0b496; }
body.sx-business .detail-redesign .detail-calendar-day.is-selected,
body.sx-business .detail-redesign .detail-calendar-day.is-selected:hover { color:#fff; background:#2f5b4a; border-radius:5px; box-shadow:none; }
body.sx-business .detail-redesign .detail-calendar-day.is-selected .detail-calendar-price,
body.sx-business .detail-redesign .detail-calendar-day.is-selected .detail-calendar-seats { color:#fff; }
body.sx-business .detail-redesign .detail-calendar-day.is-disabled { color:#a3aba0; background:#fafbf7; }
body.sx-business .detail-redesign .detail-selected-date { min-height:44px; margin:0; padding:4px 8px 4px 12px; border-radius:6px; }
body.sx-business .detail-redesign .detail-booking-button { height:36px; min-height:36px; padding:0 16px; border-radius:5px; font-size:14px; }
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_content_select_grouplist { color:#586c51; font-size:12px; }
body.sx-business .detail-redesign .detail-overview-card .tourgroup_ziliao_content_select_grouplist p { font-size:12px; color:#68755f; }
body.sx-business .detail-redesign .detail-content-panel {
  overflow:visible; margin-top:12px; padding:0 0 18px;
  background:#fff; border:1px solid #e1e5dc; border-radius:10px;
  box-shadow:0 10px 28px -24px rgba(35,65,47,.25);
}
body.sx-business .detail-redesign .tourgroup_prod_nav {
  position:sticky; top:var(--route-header-height); z-index:30;
  background:#fff; border-radius:10px 10px 0 0;
}
body.sx-business .detail-redesign .tourgroup_prod_nav .tourgroup_prod_nav_box .tourgroup_prod_nav_item {
  background:#fff; border-radius:10px 10px 0 0; border-bottom:1px solid #e6e9e2;
}
body.sx-business .detail-redesign #legacyDetailNav {
  display:flex; flex-wrap:nowrap; gap:0; padding:0 18px;
  overflow-x:auto; overflow-y:hidden; scrollbar-width:thin;
  scrollbar-color:#bdcbb8 #fff; min-height:var(--route-nav-height);
}
body.sx-business .detail-redesign #legacyDetailNav > a { display:flex; align-items:stretch; flex:0 0 auto; }
body.sx-business .detail-redesign #legacyDetailNav > a > li {
  width:auto; min-width:104px; height:52px; padding:0 8px;
  display:flex; align-items:center; justify-content:center; line-height:1.5;
  font-size:15px; color:#4f6256; white-space:nowrap; border-bottom:3px solid transparent;
  background:transparent;
}
body.sx-business .detail-redesign #legacyDetailNav > a:hover > li,
body.sx-business .detail-redesign #legacyDetailNav > a > li.active { color:#2f5b4a; border-bottom-color:#2f5b4a; background:transparent; }
body.sx-business .detail-redesign .tourgroup_ziliao_content_3 { max-width:none; margin:0; padding:6px 22px 0; }
body.sx-business .detail-redesign .legacy-detail-section {
  padding:18px 0 20px; font-size:14px; line-height:30px; color:#4d5e53;
  border-color:#e8ece4; scroll-margin-top:calc(var(--route-header-height) + var(--route-nav-height) + 20px);
}
body.sx-business .detail-redesign .legacy-detail-section h2 { margin:0 0 14px; color:#2c4737; font:700 18px/36px Arial,"Microsoft YaHei",sans-serif; }
body.sx-business .detail-redesign .legacy-detail-section h2::before { background:#2f5b4a; border-radius:2px; }
body.sx-business .detail-redesign .legacy-detail-section p { margin:0; color:#4d5e53; line-height:1.9; }
body.sx-business .detail-redesign .legacy-detail-section img { width:auto !important; height:auto !important; max-width:100%; margin-left:0; margin-right:0; }
body.sx-business .detail-redesign .legacy-detail-section table { max-width:100%; }
body.sx-business .detail-redesign .legacy-site-row { line-height:1.9; }
body.sx-business .legacy-products-page :is(a,button,input):focus-visible,
body.sx-business .detail-redesign :is(a,button,select):focus-visible { outline:2px solid #2f5b4a; outline-offset:3px; }
body.sx-business .detail-redesign .detail-calendar-day.is-selected:focus-visible { outline:2px solid #e0c47b; outline-offset:-3px; }

@media(max-width:1120px) {
  body.sx-business .legacy-products-page .product-layout { gap:20px; }
  body.sx-business .legacy-products-page .legacy-product-row { grid-template-columns:160px minmax(0,1fr) 124px; column-gap:16px; padding:16px; }
  body.sx-business .legacy-products-page .product-price-area { padding-left:12px; }
  body.sx-business .legacy-products-page .product-price-value { font-size:28px; }
  body.sx-business .legacy-products-page .product-image,
  body.sx-business .legacy-products-page .product-image-placeholder { width:160px; }
  body.sx-business .legacy-products-page .product-copy h2 { font-size:20px; }
  body.sx-business .legacy-products-page .product-facts { grid-template-columns:1fr; }
  body.sx-business .detail-redesign .detail-overview-card .detail-media-schedule-panel { grid-template-columns:minmax(0,1fr) 370px; gap:20px; padding:24px; }
  body.sx-business .detail-redesign .detail-product-card h1 { font-size:24px; }
}
@media(max-width:900px) {
  body.sx-business .detail-redesign .detail-overview-card .detail-media-schedule-panel { grid-template-columns:1fr; }
  body.sx-business .detail-redesign .detail-overview-card .detail-gallery { height:439px; }
}
@media(max-width:600px) {
  body.sx-business .legacy-products-page .legacy-filters { padding:12px; }
  body.sx-business .legacy-products-page .legacy-filters > div,
  body.sx-business .legacy-products-page .legacy-filters > form { padding:10px 0; }
  body.sx-business .legacy-products-page .legacy-filters input { font-size:12px; }
  body.sx-business .legacy-products-page .legacy-product-row { grid-template-columns:110px minmax(0,1fr); padding:12px; }
  body.sx-business .legacy-products-page .product-image,
  body.sx-business .legacy-products-page .product-image-placeholder { width:110px; }
  body.sx-business .legacy-products-page .product-copy h2 { font-size:18px; }
  body.sx-business .legacy-products-page .product-price-area { padding:12px 0 0; }
  body.sx-business .legacy-products-page .product-facts { grid-template-columns:1fr; }
  body.sx-business .detail-redesign .detail-overview-card .detail-info-panel { padding:20px; }
  body.sx-business .detail-redesign .detail-overview-card .detail-media-schedule-panel { padding:20px; }
  body.sx-business .detail-redesign .detail-overview-card .detail-gallery { height:330px; }
  body.sx-business .detail-redesign .tourgroup_ziliao_content_3 { padding:6px 20px 0; }
  body.sx-business .detail-redesign .legacy-detail-section { font-size:15px; }
}
