/* Shared detail component extensions; the SIAL scale remains the reference. */
.catalog-detail .tour-body{grid-column:1;grid-row:2;min-width:0;background:#fff;border:1px solid #dedfe0;border-radius:2px;margin-top:30px;padding:0 28px 28px}
.catalog-detail .detail-content-panels{display:grid}
.catalog-detail .detail-content-panel{grid-area:1/1/3/2;min-width:0}
.catalog-detail .program-timeline{display:grid;grid-template-columns:repeat(var(--day-count),minmax(106px,1fr));overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;gap:12px;padding-bottom:14px}
.catalog-detail .program-timeline [role=tab]{min-width:0}
.catalog-detail .timeline-label{white-space:normal}
.catalog-detail .booking-card .quote-price{font-size:25px;letter-spacing:-.6px}
.catalog-detail .booking-card h2{font-size:23px}
.catalog-detail .flight-airport .flight-city-name{font-size:18px;line-height:1.5;letter-spacing:-.4px;overflow-wrap:anywhere;white-space:normal}
.catalog-detail .flight-airport{min-width:0}
.catalog-detail .hotel-title-row h3{font-size:19px;line-height:1.5}
.catalog-detail .hotel-card-meta{flex-wrap:wrap;row-gap:10px}
.catalog-detail .hotel-card-meta>span:last-child{color:#7a807b;font-size:11px}
.catalog-detail .detail-content-panel>.detail-footnote{max-width:none}
.package-selection{padding-top:30px}
.package-selection details{border:1px solid #dce0dc;border-radius:2px;background:#fff}
.package-selection summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 23px;cursor:pointer;list-style:none}
.package-selection summary::-webkit-details-marker{display:none}
.package-selection summary small{display:block;color:#7b817d;font-size:10px;margin-bottom:5px}
.package-selection summary strong{font-size:14px;font-weight:500;line-height:1.7}
.package-selection summary .icon{width:18px;height:18px;flex-shrink:0}
.package-selection details[open] summary{border-bottom:1px solid #e6e8e4}
.package-selection details[open] summary>.icon{transform:rotate(180deg)}
.package-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px;gap:6px}
.package-options button{display:flex;align-items:center;justify-content:space-between;gap:20px;text-align:left;border:1px solid transparent;background:#fff;color:#37403b;padding:14px;font:inherit;cursor:pointer;min-width:0}
.package-options b{font-size:12px;font-weight:500;line-height:1.7;display:block}
.package-options small{display:block;color:#7a807c;font-size:11px;margin-top:4px}
.package-options button>span:last-child{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:12px}
.package-options .icon{width:16px;height:16px;visibility:hidden}
.package-options button[aria-pressed=true]{background:#f3f5f0;border-color:#d7ddd3}
.package-options button[aria-pressed=true] .icon{visibility:visible}
.package-options button:hover{background:#f6f7f4}
.catalog-detail .booking-note{font-size:11px;line-height:1.8}
.catalog-detail .tour-place{max-width:none}
@media(max-width:1000px){.catalog-detail .tour-body{padding:0 20px 24px}.catalog-detail .booking-card h2{font-size:21px}}
@media(max-width:800px){.catalog-detail .tour-body{grid-column:auto;grid-row:auto;margin-top:0}.package-selection{padding-top:22px}.package-options{grid-template-columns:1fr}.catalog-detail .hotel-title-row h3{font-size:17px}.catalog-detail .program-timeline{grid-template-columns:repeat(var(--day-count),125px)}.catalog-detail .flight-airport .flight-city-name{font-size:18px}}
@media(max-width:480px){.catalog-detail .tour-body{padding:0 16px 22px}.package-selection summary{padding:15px}.package-selection summary strong{font-size:13px}.package-options button{gap:10px;padding:12px}.package-options button>span:last-child{font-size:11px;gap:6px}.catalog-detail .hotel-card-meta{gap:12px}.catalog-detail .booking-card h2{font-size:23px}}
