.booking-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5)}.booking-summary{margin-top:var(--space-5);padding:0 var(--space-3)}.booking-summary .price-breakdown{border-top:0;margin-top:0;padding-top:0}@media (max-width:1023px){.booking-card{position:static;max-height:none;overflow:visible;box-shadow:var(--shadow-sm)}}@media (max-width:767px){.booking-card{padding:var(--space-4)}}.booking-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-5)}.booking-card__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-strong);margin:0}.booking-card__badge{display:inline-flex;align-items:center;gap:var(--space-1);flex:0 0 auto;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-primary-700);white-space:nowrap}.booking-step{margin-bottom:var(--space-5)}.booking-step__head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.booking-step__num{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 auto;border-radius:var(--radius-pill);background:var(--color-primary-700);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:1}.booking-step__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin:0;margin:0 !important}.booking-step__optional{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted)}.booking-dates{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media (max-width:400px){.booking-dates{grid-template-columns:1fr}}.booking-dates > div{margin-bottom:0}.accessory-item{display:block;padding:var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-md);margin-bottom:var(--space-2);transition:border-color var(--duration-normal) var(--ease-standard),background-color var(--duration-normal) var(--ease-standard)}.accessory-item:has(.accessory-checkbox:checked){border-color:var(--color-primary-600);background:var(--color-primary-050)}.accessory-item__label{display:flex;align-items:flex-start;gap:var(--space-3);margin:0;cursor:pointer}.accessory-checkbox{flex:0 0 auto;width:20px;height:20px;margin-top:2px;accent-color:var(--color-primary-700);cursor:pointer}.accessory-item__body{flex:1 1 auto;min-width:0}.accessory-item__name{display:flex;justify-content:space-between;gap:var(--space-2);min-width:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong)}.accessory-item__name > span:first-child{min-width:0;overflow-wrap:anywhere}.accessory-item__price{color:var(--color-primary-700);white-space:nowrap}.accessory-item__desc{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.accessory-item.accessory-unavailable{opacity:0.55}.accessory-item.accessory-unavailable .accessory-item__label{cursor:not-allowed}.accessory-unavailable-badge{display:inline-block;margin-top:var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-warning);background:var(--color-warning-bg);border-radius:var(--radius-pill);padding:0.1rem 0.55rem}.mandatory-cost{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-subtle);border:1px solid var(--color-border-light);border-radius:var(--radius-md)}.mandatory-cost__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong)}.mandatory-cost__tag{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-warning);margin-top:2px}.mandatory-cost__hint{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.mandatory-cost__price{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-primary-700);white-space:nowrap}.price-breakdown{border-top:1px solid var(--color-border-light);padding-top:var(--space-4);margin-top:var(--space-4)}.price-row{display:flex;justify-content:space-between;gap:var(--space-3);min-width:0;font-size:var(--font-size-sm);color:var(--color-text);padding:var(--space-1) 0}.price-row__value{font-weight:var(--font-weight-medium);color:var(--color-text-strong);white-space:nowrap}.price-breakdown-segments{margin:0 0 var(--space-2);padding:0 0 var(--space-2);border-bottom:1px dashed var(--color-border-light)}.price-segment-row{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-muted);padding:2px 0}.price-segment-row__label{overflow-wrap:anywhere}.price-segment-row__value{white-space:nowrap;color:var(--color-text)}.price-total{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.price-total__label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-strong)}.price-total__value{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-primary-800);min-width:0;text-align:right;overflow-wrap:anywhere}.price-deposit{display:flex;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-2);font-size:var(--font-size-base);color:var(--color-text-muted)}.price-deposit__value{white-space:nowrap}.booking-trust{list-style:none;margin:var(--space-4) 0 0;padding:var(--space-4) 0 0;border-top:1px solid var(--color-border-light);display:grid;gap:var(--space-2)}.booking-trust li{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-muted)}.booking-trust li i{color:var(--color-primary-600);font-size:1rem}.booking-card__cta{margin-top:var(--space-4)}.booking-card .form-label{text-transform:none;letter-spacing:normal;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-strong);margin-bottom:6px}.booking-card .form-control{min-height:48px;padding:11px 12px;font-size:16px;color:var(--color-text-strong);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.booking-card .form-control:focus{border-color:var(--color-primary-600);box-shadow:var(--focus-ring)}.booking-card .form-control.is-invalid{border-color:var(--color-danger)}.booking-card .form-control.is-invalid:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px rgba(217,87,99,0.16)}.booking-card .form-check-label{text-transform:none;font-size:var(--font-size-sm);color:var(--color-text);line-height:1.45}.booking-card .form-check-input:focus{border-color:var(--color-primary-600);box-shadow:var(--focus-ring)}.booking-card .form-check-input:checked{background-color:var(--color-primary-700);border-color:var(--color-primary-700)}#booking-success-message{border:1px solid var(--color-border-light);background:var(--color-primary-050);color:var(--color-text-strong)}.booking-success__cta{margin-top:var(--space-2);width:100%;max-width:320px;justify-content:center;text-decoration:none}@media (max-width:480px){.booking-success__cta{max-width:100%}}