/* Detail-only presentation. Reservation form and price calculation are unchanged. */
body.gz-package-ready .product-list { color: var(--gz-text); font-family: var(--gz-font); font-weight: var(--gz-weight-body); }
body.gz-package-ready .gz-pd-head,
body.gz-package-ready .gz-pd-action,
body.gz-package-ready .gz-pd-flight-note,
body.gz-package-ready .gz-pd-nav { flex: 0 0 100%; width: 100%; box-sizing: border-box; }
body.gz-package-ready .product-notification-area,
body.gz-package-ready .show-filter-mobile { display: none; }
body.gz-package-ready .gz-pd-head { margin: var(--gz-space-6) 0 var(--gz-space-4); }
body.gz-package-ready .gz-pd-kicker { display: block; margin-bottom: var(--gz-space-2); color: var(--gz-action-hover); font-size: var(--gz-type-note); font-weight: var(--gz-weight-control); }
body.gz-package-ready .gz-pd-title { margin: 0; color: var(--gz-title); font-size: var(--gz-type-title); line-height: 1.3; font-weight: var(--gz-weight-title); letter-spacing: -.03em; }
body.gz-package-ready .gz-pd-product { margin: var(--gz-space-3) 0 0; color: var(--gz-text-muted); font-size: var(--gz-type-label); font-weight: var(--gz-weight-body); line-height: var(--gz-line-body); overflow-wrap: anywhere; }
body.gz-package-ready .gz-pd-action { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: var(--gz-space-4); margin: var(--gz-space-4) 0; padding: var(--gz-space-4); border-radius: var(--gz-radius-md); background: var(--gz-action-soft); }
body.gz-package-ready .gz-pd-price-title { margin: 0; font-size: var(--gz-type-section); line-height: 1.35; font-weight: var(--gz-weight-heading); color: var(--gz-title); }
body.gz-package-ready .gz-pd-price-note { margin: var(--gz-space-2) 0 0; font-size: var(--gz-type-note); line-height: 1.5; color: var(--gz-text-muted); }
body.gz-package-ready .gz-pd-actions { display: grid; grid-template-columns: minmax(0,1fr); gap: var(--gz-space-2); }
body.gz-package-ready .gz-pd-price-link { display: inline-block; margin-top: var(--gz-space-2); padding: 10px 0; color: var(--gz-action-hover); font-size: var(--gz-type-label); font-weight: var(--gz-weight-control); text-decoration: underline; text-underline-offset: 3px; }
body.gz-package-ready .gz-pd-flight-note { margin: 0 0 var(--gz-space-4); padding: var(--gz-space-3) var(--gz-space-4); border: 1px solid var(--gz-border); border-radius: var(--gz-radius-sm); color: var(--gz-text); font-size: var(--gz-type-note); font-weight: var(--gz-weight-body); line-height: 1.6; }
body.gz-package-ready .gz-pd-flight-note[hidden] { display: none; }
body.gz-package-ready .gz-pd-price-link[hidden],
body.gz-package-ready .gz-pd-nav[hidden] { display: none !important; }
body.gz-package-ready .gz-pd-nav { display: flex; gap: var(--gz-space-2); overflow-x: auto; margin: 0 0 var(--gz-space-6); padding: var(--gz-space-2) 0; border-bottom: 1px solid var(--gz-border); }
body.gz-package-ready .gz-pd-nav a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; padding: var(--gz-space-2) var(--gz-space-3); border-radius: var(--gz-radius-sm); color: var(--gz-text); font-size: var(--gz-type-label); font-weight: var(--gz-weight-control); text-decoration: none; }
body.gz-package-ready .gz-pd-nav a:hover { background: var(--gz-action-soft); color: var(--gz-action-hover); }
body.gz-package-ready .gz-pd-nav a:focus-visible,
body.gz-package-ready .gz-pd-price-link:focus-visible { outline: 3px solid var(--gz-action); outline-offset: 2px; }
body.gz-package-ready #hotel-view .st-service-feature { border: 1px solid var(--gz-border); border-radius: var(--gz-radius-md); padding: var(--gz-space-4); margin-bottom: var(--gz-space-6); background: var(--gz-surface); }
body.gz-package-ready #hotel-view .st-service-feature .item { gap: var(--gz-space-2); padding: var(--gz-space-2) 0; }
body.gz-package-ready #hotel-view .st-service-feature .icon { display: none; }
body.gz-package-ready #hotel-view .st-service-feature .name { font-size: var(--gz-type-note); line-height: 1.5; color: var(--gz-text-muted); margin-bottom: var(--gz-space-1); }
body.gz-package-ready #hotel-view .st-service-feature .value { margin: 0; font-size: var(--gz-type-label); line-height: 1.5; font-weight: var(--gz-weight-control); color: var(--gz-text); }
body.gz-package-ready #hotel-view .st-service-feature .value.r { color: var(--gz-warning); }
body.gz-package-ready #hotel-view .gallery-container { margin-bottom: var(--gz-section-gap); border-radius: var(--gz-radius-md); overflow: hidden; }
body.gz-package-ready .gz-pd-facts { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--gz-space-4); margin: 0 0 var(--gz-section-gap); padding: 0; }
body.gz-package-ready .gz-pd-facts > br { display: none; }
body.gz-package-ready .gz-pd-fact { min-width: 0; padding: var(--gz-space-4); border: 1px solid var(--gz-border); border-radius: var(--gz-radius-md); background: var(--gz-surface); }
body.gz-package-ready .gz-pd-fact h4 { margin: 0 0 var(--gz-space-3); padding: 0; font-size: var(--gz-type-section); line-height: 1.35; font-weight: var(--gz-weight-heading); color: var(--gz-title); }
body.gz-package-ready .gz-pd-fact .local-rules-table-title { margin: 0; padding: 0; border: 0; background: transparent; }
body.gz-package-ready .gz-pd-fact .local-rules-table-content { padding: 0; margin: 0; border: 0; background: transparent; color: var(--gz-text); font-size: var(--gz-type-body); font-weight: var(--gz-weight-body); line-height: var(--gz-line-body); }
body.gz-package-ready .gz-pd-fact p { margin: 0; font-size: inherit; line-height: inherit; }
body.gz-package-ready .gz-pd-target { scroll-margin-top: var(--gz-space-6); }
body.gz-package-ready .gz-pd-follow { margin: var(--gz-section-gap) 0; padding: var(--gz-space-6); border-top: 1px solid var(--gz-border); border-bottom: 1px solid var(--gz-border); }
body.gz-package-ready .gz-pd-follow p { margin: 0 0 var(--gz-space-4); font-size: var(--gz-type-body); font-weight: var(--gz-weight-body); line-height: var(--gz-line-body); }
body.gz-package-ready .gz-pd-follow .gz-pd-actions { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
body.gz-package-ready .gz-pd-quote-help { margin: var(--gz-space-2) 0 0; color: var(--gz-text-muted); font-size: var(--gz-type-note); line-height: 1.5; }
@media(max-width:768px) {
  body.gz-package-ready .gz-pd-title { font-size: var(--gz-type-title-mobile); }
  body.gz-package-ready .gz-pd-price-title,
  body.gz-package-ready .gz-pd-fact h4 { font-size: var(--gz-type-section-mobile); }
  body.gz-package-ready .gz-pd-head { margin-top: var(--gz-space-4); }
  body.gz-package-ready .gz-pd-action { grid-template-columns: minmax(0,1fr); gap: var(--gz-space-3); }
  body.gz-package-ready .gz-pd-actions { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  body.gz-package-ready .gz-pd-facts { grid-template-columns: minmax(0,1fr); }
  body.gz-package-ready .gz-r-dock { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: var(--gz-space-2); }
  body.gz-package-ready .gz-r-dock .gz-r-openbtn { margin: 0; font-size: var(--gz-type-label); border-radius: var(--gz-button-radius); }
  body.gz-package-ready.gz-r-open .gz-r-dock { display: none; }
  body.gz-package-ready .gz-pd-follow { padding: var(--gz-space-4) 0; }
}
@media(max-width:359px) {
  body.gz-package-ready .gz-pd-action .gz-pd-actions,
  body.gz-package-ready .gz-pd-follow .gz-pd-actions { grid-template-columns: minmax(0,1fr); }
}

/* Native package reservation flow. Conditions and displayed totals come from the existing form. */
body.gz-package-ready .gz-pd-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; list-style: none; padding: 0; margin: 16px 0 0; font-size: 14px; color: var(--gz-text-muted); }
body.gz-package-ready .gz-pd-steps li { min-width: 0; display: flex; align-items: center; gap: 6px; font-weight: 500; }
body.gz-package-ready .gz-pd-steps li[aria-current] { color: var(--gz-action-hover); font-weight: 650; }
body.gz-package-ready .gz-pd-steps span { flex: none; width: 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--gz-action-soft); font-size: 13px; }
body.gz-package-ready .gz-pd-selection-status { margin: 12px 0 8px; font-size: 14px; font-weight: 500; line-height: 1.6; color: var(--gz-text-muted); overflow-wrap: anywhere; }
body.gz-package-ready .gz-pd-selection-status.is-contact { color: var(--gz-warning); }
body.gz-package-ready .gz-pd-contact-link { display: inline-flex; align-items: center; min-height: 44px; margin: 0 0 8px; font-size: 15px; font-weight: 650; line-height: 1.5; color: var(--gz-action-hover); text-decoration: underline; text-underline-offset: 3px; }
body.gz-package-ready .gz-pd-contact-link[hidden] { display: none; }
body.gz-package-ready .gz-pd-contact-link:focus-visible { outline: 3px solid var(--gz-action); outline-offset: 3px; }
body.gz-package-ready .gz-pd-dock-summary { grid-column: 1 / -1; margin: 0; color: var(--gz-text-muted); font-size: 13px; line-height: 1.5; font-weight: 500; text-align: center; }
body.gz-package-ready .gz-pd-actions .gzds-button { min-width: 0; white-space: normal; word-break: keep-all; }
@media(max-width:768px) {
  body.gz-package-ready .gz-pd-steps { font-size: 13px; }
  body.gz-package-ready .gz-pd-steps li { gap: 4px; }
  body.gz-package-ready .gz-pd-steps span { width: 20px; height: 20px; }
  body.gz-package-ready .gz-r-dock .gz-r-openbtn { white-space: normal; word-break: keep-all; line-height: 1.4; }
}

/* 2026-10-10 마감 임박 · 프로모션 안내 2줄 · 아동 3명 이상 안내 (정대표 회신 1 · 5절). 칩 13px · 650 (디자인 시트 v1.3) */
body.gz-package-ready .gz-pd-deadline { display: inline-block; margin: 0 0 var(--gz-space-2); padding: 2px var(--gz-space-2); border: 1px solid var(--gz-warning); border-radius: var(--gz-radius-sm); color: var(--gz-warning); font-size: 13px; font-weight: var(--gz-weight-control); line-height: 1.5; }
body.gz-package-ready .gz-pd-policy { margin: var(--gz-space-2) 0 0; padding-left: 1.1em; font-size: var(--gz-type-note); line-height: 1.5; color: var(--gz-text-muted); }
body.gz-package-ready .gz-pd-policy li { margin: 2px 0 0; }
.gz-pax-note { margin: var(--gz-space-2, 8px) 0 0; padding-left: 6px; font-size: 13px; line-height: 1.5; color: var(--gz-text-muted, #475569); }
.gz-pax-note a { color: var(--gz-action-hover, #1e3a8a); text-decoration: underline; text-underline-offset: 3px; }
