.booking-panel{--booking-ink:var(--itin-ink,var(--brand-deep));--booking-rule:var(--itin-rule,var(--border));color:var(--booking-ink)}.booking-panel__heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.booking-panel__heading h3{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(24px,2vw,30px);font-weight:550;line-height:1.2}.booking-panel__heading p{color:var(--muted-foreground);margin-top:8px;font-size:13px}.booking-panel__trust{color:var(--muted-foreground);align-items:center;gap:7px;font-size:12px;display:inline-flex}.booking-panel__layout,.booking-panel__stays,.booking-panel__transport{align-items:start;gap:20px;min-width:0;display:grid}.booking-panel__option{border:1px solid var(--booking-rule);background:var(--card);border-radius:14px;min-width:0;overflow:hidden}.booking-panel__body{flex-direction:column;min-width:0;height:100%;padding:24px;display:flex}.booking-panel__option-heading{align-items:center;gap:12px;display:flex}.booking-panel__option-heading h4{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:18px;font-weight:600;line-height:1.35}.booking-panel__icon{background:var(--secondary);border-radius:10px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.booking-panel__meta{color:var(--muted-foreground);align-items:flex-start;gap:6px;margin-top:16px;font-size:12px;line-height:1.6;display:flex}.booking-panel__meta svg{flex-shrink:0;margin-top:3px}.booking-panel__description{color:var(--muted-foreground);overflow-wrap:anywhere;margin-top:12px;margin-bottom:24px;font-size:14px;line-height:1.7}.booking-panel__footer{border-top:1px solid var(--booking-rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:18px;display:flex}.booking-panel__price strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:23px;font-weight:600;display:block}.booking-panel__price span{color:var(--muted-foreground);font-size:12px;line-height:1.5;display:block}.booking-panel .booking-panel__book{background:var(--booking-ink);min-height:44px;box-shadow:none;border-radius:8px;gap:12px;padding:10px 18px;font-size:13px;transition:background-color .16s}.booking-panel .booking-panel__book:hover{background:var(--brand)}.booking-panel .booking-panel__book:focus-visible{outline:2px solid var(--booking-ink);outline-offset:4px}.booking-panel__media{background:var(--secondary);min-height:220px;position:relative;overflow:hidden}.booking-panel__placeholder{color:var(--muted-foreground);place-items:center;display:grid;position:absolute;inset:0}.booking-panel__photo{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .24s;position:absolute;inset:0}.booking-panel__photo.is-loaded{opacity:1}@media (width>=640px){.booking-panel__option--photo{grid-template-columns:minmax(180px,.8fr) minmax(0,1fr);display:grid}.booking-panel__transport{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1100px){.booking-panel__layout--with-transport{grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:24px}.booking-panel__transport{grid-template-columns:minmax(0,1fr);gap:16px}}@media (width<=639px){.booking-panel__body{padding:20px}}@media (prefers-reduced-motion:reduce){.booking-panel__photo,.booking-panel .booking-panel__book,.booking-panel__book svg{transition:none}}
