.jgt-product,.jgt-catalog,.jgt-information { color:#17352d; font:16px/1.65 system-ui,sans-serif; max-width:1100px; margin:0 auto 32px; }
.jgt-product button,.jgt-catalog button,.jgt-contact a,.jgt-fixed a { min-height:48px; padding:10px 16px; border:1px solid #9cb6a8; border-radius:8px; background:#fff; color:#17352d; font:inherit; cursor:pointer; }
.jgt-product button[aria-pressed=true],.jgt-catalog button[aria-pressed=true] { border:2px solid #175840; background:#e6f3eb; }
.jgt-product button:focus-visible,.jgt-catalog button:focus-visible,.jgt-product a:focus-visible { outline:3px solid #d49c37; outline-offset:3px; }
.jgt-product button:disabled,.jgt-product a[aria-disabled=true] { cursor:default; opacity:.65; }
.jgt-plans,.jgt-months,.jgt-dates,.jgt-flights,.jgt-catalog nav,.jgt-contact { display:flex; flex-wrap:wrap; gap:10px; margin:16px 0; }
.jgt-flights button { white-space:pre-line; text-align:left; width:100%; }
.jgt-dates button { flex:1 1 220px; }
.jgt-summary { display:block; box-sizing:border-box; width:100%; padding:16px; font:inherit; line-height:1.6; border:1px solid #9cb6a8; }
.jgt-itinerary { white-space:pre-wrap; }
.jgt-minimum { font-size:26px; font-weight:700; }
.jgt-badge { display:inline-block; background:#e6f3eb; padding:8px 12px; border-radius:8px; }
.jgt-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.jgt-card { border:1px solid #d7e4dc; border-radius:12px; overflow:hidden; padding:16px; }
.jgt-card img { width:100%; height:180px; object-fit:cover; }
.jgt-product-image { width:100%; height:auto; max-height:460px; object-fit:cover; }
.jgt-image-placeholder { display:grid; place-items:center; height:180px; background:#eff4f1; }
.jgt-card-link { color:inherit; text-decoration:none; }
.jgt-fixed { display:none; }
@media(max-width:767px) {
 .jgt-cards { grid-template-columns:1fr; }
 .jgt-product,.jgt-catalog,.jgt-information { padding:0 12px; }
 .jgt-information { padding-bottom:calc(110px + env(safe-area-inset-bottom)); }
 .jgt-fixed { position:fixed; bottom:0; left:0; right:0; z-index:90; display:flex; gap:8px; background:#fff; padding:10px 12px calc(10px + env(safe-area-inset-bottom)); box-shadow:0 -2px 12px #0002; }
 .jgt-fixed a { flex:1; display:grid; align-items:center; text-align:center; font-size:14px; text-decoration:none; }
 .jgt-months { flex-wrap:nowrap; overflow:auto; }
 .jgt-months button { flex:0 0 auto; }
 .jgt-product h2,.jgt-catalog h2 { font-size:25px; }
}
.jgt-fixed[hidden] { display:none; }
.jgt-customer-page .et-cart-info,.jgt-customer-page #sidebar,.jgt-customer-page #footer-widgets,.jgt-customer-page #footer-bottom,.jgt-customer-page #main-content .container:before { display:none; }
.jgt-customer-page #left-area { width:100%; padding-right:0; }
.jgt-customer-page.woocommerce div.product div.summary { float:none; width:100%; }
.jgt-customer-page .et_pb_row { width:92%; }
.jgt-customer-page #top-menu-nav,.jgt-customer-page #et_mobile_nav_menu { display:none; }
.jgt-brand { display:inline-block; color:#175840; font:700 19px/80px system-ui,sans-serif; }
@media(max-width:767px) { .jgt-brand { font-size:17px; line-height:64px; } }
.jgt-price { display:inline-block; min-width:7.2em; }
.jgt-options label{display:block;margin:12px 0}.jgt-options select{min-height:48px;max-width:100%;font-size:16px;padding:8px}.jgt-option-total{display:block;min-height:5em;line-height:1.6}.jgt-option-note{min-height:5em}
.jgt-copy-status{min-height:5em}
.jgt-option-room[hidden]{display:none}
.jgt-options [hidden]{display:none}

.jgt-profile-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin:12px 0}.jgt-profile-photos img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:8px}

/* Hotel names can be unbroken Korean or Latin text. Keep their full value readable. */
.jgt-product .jgt-options,.jgt-product .jgt-basis{overflow-wrap:anywhere}

/* Keep the mobile price bar compact; full selection remains in the quote card. */
@media(max-width:1000px){.native-booking .jgt-fixed-basis{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;max-height:36px;overflow:hidden}}

.jgt-profile-disclosure>summary{min-height:48px;padding:12px 8px;cursor:pointer;border:1px solid #c8d5c6;border-radius:10px;background:#f8faf5}.jgt-profile-disclosure[open]>summary{border-bottom-color:#164e3b;background:#f3f7ef}.jgt-profile-disclosure>summary:focus-visible{outline:3px solid #438365;outline-offset:3px}.jgt-profile-info-unavailable{min-height:48px}
@media(min-width:1001px){.native-booking .jgt-profile-photos img{max-height:280px}}

.jgt-product .jgt-itinerary,.jgt-product .jgt-summary-view{overflow-wrap:anywhere}
