.hb-booking-wrap{
  max-width:1180px;
  margin:0 auto;
  padding:12px 16px 56px;
}

.hb-booking-title{
  font-size:clamp(34px,4vw,64px);
  line-height:1.05;
  font-weight:900;
  margin:0 0 18px;
}

.hb-progress{margin:10px 0 18px}
.hb-progress ol{display:flex;gap:10px;list-style:none;margin:0;padding:0;align-items:center;flex-wrap:wrap}
.hb-step{display:flex;align-items:center;gap:8px;color:#64748b;font-weight:700;font-size:14px;line-height:1}
.hb-step__dot{width:10px;height:10px;border-radius:999px;border:2px solid rgba(15,23,42,.22);display:inline-block}
.hb-step--done{color:#2f855a}.hb-step--done .hb-step__dot{background:#2f855a;border-color:#2f855a}
.hb-step--active{color:#111827}.hb-step--active .hb-step__dot{background:#111827;border-color:#111827}
.hb-progress ol .hb-step:not(:last-child)::after{content:"";display:inline-block;width:24px;height:2px;background:rgba(15,23,42,.12);margin-left:2px}

.hb-booking-grid{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr);
  gap:22px;
  align-items:start;
}
@media (max-width:980px){.hb-booking-grid{grid-template-columns:1fr}}

.hb-card__pad{padding:18px}
.hb-booking-main>.hb-card:first-of-type{margin-top:10px}
.hb-back-link{
  display:inline-block;
  margin:0 0 10px;
  color:#3a6b23;
  text-decoration:none;
  font-weight:600;
}
.hb-back-link:hover{text-decoration:underline}

@media (min-width:1025px){
  .hb-booking-side{position:sticky;top:120px;align-self:start}
}

.hb-summary-toggle{
  display:none;
  width:100%;
  border:0;
  background:transparent;
  padding:14px 18px;
  font-size:16px;
  font-weight:800;
  text-align:left;
  cursor:pointer;
}
.hb-summary-toggle__chev{float:right;opacity:.65;transition:transform .15s ease}
.hb-booking-side.is-collapsed .hb-summary-toggle__chev{transform:rotate(-90deg)}
.hb-booking-side.is-collapsed .hb-summary-body{display:none}
@media (max-width:768px){.hb-summary-toggle{display:block}}

.hb-form{display:block !important}
.hb-form-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}
@media (min-width:721px){.hb-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hb-field{margin:0;min-width:0}
.hb-field label{display:block;font-size:13px;font-weight:700;color:#0f172a;margin:0 0 6px}
.hb-field input[type="text"],
.hb-field input[type="email"],
.hb-field input[type="tel"],
.hb-field input[type="number"],
.hb-field textarea{
  width:100%;
  height:48px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.18);
  background:#fff;
  box-sizing:border-box;
  font-size:16px;
  box-shadow:inset 0 1px 0 rgba(15,23,42,.03);
}
.hb-field textarea{height:110px;resize:vertical}
.hb-field input:focus,.hb-field textarea:focus{outline:none;border-color:rgba(6,95,70,.65);box-shadow:0 0 0 4px rgba(16,185,129,.15)}
.hb-field.is-error input,.hb-field.is-error textarea{border-color:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.08)}
.hb-error-msg{margin-top:6px;color:#b91c1c;font-size:13px;font-weight:600}
.hb-field--full{grid-column:1/-1}

.hb-divider{height:1px;background:rgba(15,23,42,.10);margin:18px 0}
.hb-section-title{font-size:18px;line-height:1.2;font-weight:800;margin:0 0 12px}

.hb-passenger-grid{display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:981px){.hb-passenger-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hb-passenger-card{border:1px solid rgba(15,23,42,.10);border-radius:18px;padding:16px;background:#fff}
.hb-passenger-card h4{margin:0 0 12px;font-size:18px;line-height:1.2;font-weight:800}

.hb-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.hb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 18px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.14);
  background:#fff;
  color:#0f172a;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  transition:filter .15s ease, transform .05s ease;
}
.hb-btn:focus-visible{outline:3px solid rgba(34,197,94,.35);outline-offset:2px}
.hb-btn--primary{background:#1f6f43;border-color:#1f6f43;color:#fff}
.hb-btn--primary:hover{filter:brightness(.96)}
.hb-btn[disabled]{opacity:.7;cursor:not-allowed}
.hb-spinner{display:inline-block;width:16px;height:16px;margin-left:10px;border:2px solid rgba(255,255,255,.55);border-top-color:#fff;border-radius:50%;animation:hbspin .8s linear infinite}
@keyframes hbspin{to{transform:rotate(360deg)}}

.hb-summary-img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  display:block;
  border-top-left-radius:16px;
  border-top-right-radius:16px;
}
.hb-summary-title{font-size:20px;font-weight:900;margin:0 0 6px}
.hb-summary-sub{font-size:14px;color:#475569;margin:0 0 12px}
.hb-kv{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:14px;padding:10px 0;border-bottom:1px dashed rgba(15,23,42,.12)}
.hb-kv:last-child{border-bottom:0}
.hb-k{color:#475569}
.hb-v{color:#0f172a;font-weight:800;text-align:right}

.hb-note{margin-top:12px;font-size:13px;color:#475569;background:rgba(2,132,199,.08);border:1px solid rgba(2,132,199,.18);padding:10px 12px;border-radius:12px}
.hb-note--warning{color:#6b5522;background:#fff8e6;border-color:#ecd28a}
.hb-note--info{color:#0f4c81;background:#eef7ff;border-color:#bfdcff}

.hb-checkrate-card p:last-child,.hb-submit-result p:last-child{margin-bottom:0}
.hb-submit-result--success{border-left:4px solid #198754}
.hb-submit-result--error{border-left:4px solid #dc2626}
.hb-submit-result--info{border-left:4px solid #2271b1}
.hb-errors{border-left:4px solid #dc2626}
.hb-errors ul{margin:0;padding-left:18px}
.hb-inline-details{margin-top:10px}
.hb-inline-details summary{cursor:pointer;font-weight:700}

@media (max-width:900px){
  .hb-booking-title{font-size:52px}
}
@media (max-width:680px){
  .hb-booking-wrap{padding-left:10px;padding-right:10px}
  .hb-booking-title{font-size:44px}
  .hb-actions{flex-direction:column;align-items:stretch}
  .hb-btn{width:100%}
  .hb-kv{grid-template-columns:1fr}
  .hb-v{text-align:left}
}

.hb-booking-intro{
  margin:0 0 18px;
}
.hb-booking-kicker{
  margin:0 0 8px;
  font-size:28px;
  line-height:1.08;
  font-weight:900;
}
.hb-booking-lead{
  margin:0;
  max-width:820px;
  color:#475569;
  font-size:16px;
  line-height:1.65;
}

.hb-booking-form-shell{margin-top:16px}
.hb-form-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:8px}
.hb-form-header h2{margin:0 0 6px}
.hb-form-subtitle{margin:0;color:#475569;max-width:760px;line-height:1.6}

.hb-checkrate-compact{margin-top:10px;padding:14px 18px !important}
.hb-checkrate-compact__row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.hb-checkrate-compact__main{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}
.hb-checkrate-compact__main strong{font-size:15px;line-height:1.2;color:#0f172a}
.hb-checkrate-compact__text{color:#475569;font-size:14px;line-height:1.5}
.hb-checkrate-compact__comments{margin-top:10px}
.hb-checkrate-compact .hb-inline-details{margin-top:0}
.hb-checkrate-compact .hb-inline-details summary{font-size:14px}

.hb-holder-actions{margin:14px 0 0}
.hb-holder-help{margin:8px 0 0;color:#64748b;font-size:13px;line-height:1.55;max-width:760px}
.hb-check{display:inline-flex;gap:10px;align-items:flex-start;cursor:pointer;font-weight:700;color:#0f172a}
.hb-check input{width:18px !important;height:18px !important;margin-top:2px;accent-color:#1f6f43}
.hb-check--sync span{display:block}

.hb-passenger-help{margin:-2px 0 12px;color:#64748b;font-size:13px;line-height:1.5}
.hb-booking-trust{margin:16px 0 14px;padding:14px 16px;border-radius:16px;background:linear-gradient(180deg,#f7fbf8 0%, #f1f7f3 100%);border:1px solid rgba(31,111,67,.16)}
.hb-booking-trust strong{display:block;margin:0 0 8px;font-size:15px}
.hb-booking-trust ul{margin:0;padding-left:18px;color:#475569}
.hb-booking-trust li{margin:0 0 4px}
.hb-actions--booking{margin-top:14px}
.hb-btn--submit{min-width:220px;font-size:16px;box-shadow:0 12px 28px rgba(31,111,67,.18)}

.hb-booking-side--elevated{padding:0;overflow:hidden;border-radius:22px}
.hb-summary-helper{margin:0 0 14px;color:#64748b;font-size:14px;line-height:1.55}
.hb-price-highlight{margin:14px 0;padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,#0f172a 0%, #1f2937 100%);color:#fff;box-shadow:0 18px 36px rgba(15,23,42,.16)}
.hb-price-highlight__label{font-size:12px;letter-spacing:.06em;text-transform:uppercase;opacity:.72;margin-bottom:8px;font-weight:700}
.hb-price-highlight__value{font-size:30px;line-height:1.08;font-weight:900}
.hb-price-highlight__meta{margin-top:8px;font-size:13px;line-height:1.55;opacity:.84}

.hb-summary-body .hb-kv{padding:12px 0}
.hb-summary-body .hb-kv .hb-k{font-size:13px}
.hb-summary-body .hb-kv .hb-v{font-size:14px;line-height:1.45}
.hb-summary-body .hb-note{margin-top:14px}

@media (max-width:980px){
  .hb-booking-kicker{font-size:24px}
  .hb-booking-lead{font-size:15px}
}
@media (max-width:768px){
  .hb-form-header{display:block}
  .hb-checkrate-compact__row{display:block}
  .hb-checkrate-compact__main{display:flex}
  .hb-booking-side--elevated{margin-top:18px}
  .hb-price-highlight__value{font-size:26px}
}
@media (max-width:680px){
  .hb-booking-kicker{font-size:22px}
  .hb-booking-lead{font-size:15px}
  .hb-holder-help,.hb-passenger-help,.hb-summary-helper,.hb-price-highlight__meta{font-size:12px}
  .hb-checkrate-compact{padding:12px 14px !important}
}


/* V2.4.1 booking parity polish */
.hb-booking-wrap{padding-bottom:64px}
.hb-booking-grid{gap:26px}
.hb-booking-form-shell{box-shadow:0 18px 42px rgba(15,23,42,.05)}
.hb-booking-side--elevated{box-shadow:0 18px 42px rgba(15,23,42,.06)}
.hb-summary-body{background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%)}
.hb-summary-body .hb-kv{gap:16px}
.hb-booking-trust li{margin:0 0 8px}
.hb-booking-trust li:last-child{margin-bottom:0}
.hb-holder-actions{padding:4px 0 2px}
.hb-actions--booking .hb-btn--secondary{background:#fff}
@media (min-width:1025px){
  .hb-booking-side{top:112px}
}


/* V2.4.3 final UI parity polish before certification */
.hb-checkrate-compact__main strong{font-size:16px}
.hb-checkrate-compact__text{font-size:14px}
.hb-summary-helper{max-width:34ch}
.hb-summary-body .hb-kv .hb-k{font-weight:600}
.hb-summary-body .hb-note--warning{margin-top:16px}

/* V2.4.4 final polish before certification */
.hb-checkrate-compact__main strong{font-size:17px}
.hb-checkrate-compact__text{line-height:1.6}
.hb-booking-form-shell .hb-form-grid{margin-top:2px}
.hb-booking-side--elevated .hb-summary-title{line-height:1.12}
.hb-summary-body .hb-kv .hb-v{letter-spacing:-.01em}
.hb-btn--submit{min-width:240px}
.hb-field input[aria-invalid="true"],
.hb-field textarea[aria-invalid="true"]{border-color:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.08)}

.hb-room-guest-groups{display:grid;gap:18px}.hb-room-guest-group{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fafbfc}.hb-room-guest-group__title{margin:0 0 12px;font-size:18px}


/* V2.8.1.0 booking premium checkout polish */
.hb-booking-wrap{
  max-width:1240px;
  padding-top:18px;
}
.hb-booking-grid{
  gap:28px;
  align-items:start;
}
.hb-booking-title{
  letter-spacing:-0.03em;
  margin-bottom:14px;
}
.hb-booking-main > .hb-card,
.hb-booking-side--elevated{
  border-radius:24px;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 18px 42px rgba(15,23,42,.06);
  background:#fff;
}
.hb-booking-form-shell{
  margin-top:18px;
}
.hb-card__pad{
  padding:22px;
}
.hb-booking-kicker{
  font-size:clamp(30px,3vw,46px);
  letter-spacing:-0.03em;
  margin-bottom:10px;
}
.hb-booking-lead{
  max-width:760px;
  font-size:17px;
  color:#5a6678;
}
.hb-checkrate-compact{
  background:linear-gradient(180deg,#fbfdfc 0%,#f6fbf8 100%);
  border:1px solid rgba(31,111,67,.10);
}
.hb-checkrate-compact__main{
  gap:10px 14px;
}
.hb-checkrate-compact__main strong{
  font-size:18px;
  font-weight:900;
  letter-spacing:-0.02em;
}
.hb-checkrate-compact__text{
  display:block;
  width:100%;
  color:#5b6678;
  font-size:15px;
}
.hb-checkrate-compact .hb-pill{
  min-height:34px;
  padding:7px 12px;
  font-size:13px;
  font-weight:800;
}
.hb-checkrate-compact__comments{
  margin-top:14px;
}
.hb-inline-details--booking-rate .hb-inline-details__summary{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 10px;
  font-size:13px;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:800;
  color:#1f6f43;
}
.hb-inline-details__body--booking-comment{
  padding:14px 16px;
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  border:1px solid rgba(15,23,42,.08);
  color:#334155;
  font-size:14px;
  line-height:1.7;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.hb-form-header h2,
.hb-section-title{
  font-size:clamp(22px,2vw,28px);
  line-height:1.12;
  letter-spacing:-0.02em;
  font-weight:900;
}
.hb-form-subtitle{
  font-size:16px;
  color:#5a6678;
}
.hb-form-grid{
  gap:16px;
}
.hb-field label{
  margin-bottom:8px;
  font-size:13px;
  text-transform:none;
}
.hb-field input[type="text"],
.hb-field input[type="email"],
.hb-field input[type="tel"],
.hb-field input[type="number"],
.hb-field textarea{
  height:54px;
  border-radius:16px;
  border-color:rgba(15,23,42,.12);
  background:#fff;
  box-shadow:0 1px 0 rgba(15,23,42,.02), inset 0 1px 0 rgba(255,255,255,.75);
}
.hb-field textarea{
  min-height:124px;
  padding-top:14px;
}
.hb-field input::placeholder,
.hb-field textarea::placeholder{
  color:#94a3b8;
}
.hb-holder-actions{
  margin-top:18px;
  padding:14px 16px;
  border-radius:18px;
  background:#f8fbff;
  border:1px solid rgba(15,23,42,.07);
}
.hb-holder-help,
.hb-passenger-help{
  color:#667085;
}
.hb-passenger-card{
  border-radius:20px;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 10px 24px rgba(15,23,42,.03);
  padding:18px;
}
.hb-passenger-card h4{
  font-size:24px;
  letter-spacing:-0.02em;
  margin-bottom:8px;
}
.hb-booking-trust{
  margin-top:18px;
  border-radius:18px;
  background:linear-gradient(180deg,#f8fcf9 0%,#f1f7f3 100%);
}
.hb-booking-trust strong{
  font-size:16px;
}
.hb-note{
  border-radius:16px;
  padding:14px 16px;
  line-height:1.65;
}
.hb-actions--booking{
  margin-top:18px;
  gap:14px;
}
.hb-btn{
  min-height:52px;
  border-radius:16px;
  font-size:15px;
}
.hb-btn--submit{
  min-width:240px;
  box-shadow:0 16px 32px rgba(31,111,67,.18);
}
.hb-summary-toggle{
  font-size:17px;
  font-weight:900;
}
.hb-summary-body{
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
}
.hb-summary-img{
  aspect-ratio:16/9;
}
.hb-summary-title{
  font-size:22px;
  line-height:1.1;
  letter-spacing:-0.02em;
}
.hb-summary-sub{
  font-size:15px;
}
.hb-summary-helper{
  font-size:14px;
  color:#64748b;
}
.hb-badges{
  gap:10px;
}
.hb-badges .hb-pill{
  min-height:32px;
  padding:6px 12px;
  font-size:12px;
  font-weight:800;
}
.hb-price-highlight{
  border-radius:20px;
  padding:18px 20px;
  box-shadow:0 22px 44px rgba(15,23,42,.18);
}
.hb-price-highlight__value{
  font-size:clamp(34px,4vw,46px);
  letter-spacing:-0.03em;
}
.hb-price-highlight__meta{
  font-size:13px;
}
.hb-summary-body .hb-kv{
  padding:13px 0;
}
.hb-summary-body .hb-kv .hb-k{
  font-size:13px;
  text-transform:none;
}
.hb-summary-body .hb-kv .hb-v{
  font-size:15px;
  line-height:1.4;
}
.hb-summary-body .hb-note--warning{
  font-size:14px;
}
@media (min-width:981px){
  .hb-booking-main > .hb-card:first-of-type,
  .hb-booking-form-shell{overflow:hidden}
}
@media (max-width:980px){
  .hb-booking-wrap{padding-top:12px}
  .hb-booking-grid{gap:20px}
  .hb-card__pad{padding:18px}
  .hb-booking-kicker{font-size:26px}
  .hb-booking-lead{font-size:15px}
}
@media (max-width:768px){
  .hb-booking-wrap{padding-left:12px;padding-right:12px}
  .hb-booking-title{font-size:56px;line-height:0.98}
  .hb-booking-kicker{font-size:24px}
  .hb-card__pad{padding:16px}
  .hb-checkrate-compact__main strong{font-size:16px}
  .hb-inline-details__body--booking-comment{font-size:13px;line-height:1.65}
  .hb-field input[type="text"],
  .hb-field input[type="email"],
  .hb-field input[type="tel"],
  .hb-field input[type="number"],
  .hb-field textarea{height:50px}
  .hb-field textarea{min-height:112px}
  .hb-passenger-card h4{font-size:20px}
  .hb-price-highlight{padding:16px 18px}
  .hb-price-highlight__value{font-size:30px}
}
@media (max-width:680px){
  .hb-booking-title{font-size:48px}
  .hb-booking-kicker{font-size:22px}
  .hb-form-header h2,
  .hb-section-title{font-size:24px}
  .hb-btn{min-height:50px}
  .hb-booking-side{order:-1}
  .hb-booking-side--elevated{border-radius:20px}
  .hb-summary-toggle{display:flex;justify-content:space-between;align-items:center;padding:16px 16px 10px}
}

/* V2.8.2.2 mobile booking summary visibility fix */
@media (max-width: 680px){
  .hb-booking-side{order:-1; display:block !important; width:100%;}
  .hb-booking-side.is-collapsed .hb-summary-body{display:block !important;}
  .hb-booking-side.is-collapsed .hb-summary-toggle__chev{transform:none;}
  .hb-summary-toggle{display:flex; justify-content:space-between; align-items:center; padding:14px 16px 8px; cursor:default;}
  .hb-summary-toggle__chev{display:none;}
  .hb-booking-side--elevated{margin:0 0 18px; overflow:hidden;}
  .hb-booking-side--elevated .hb-summary-img{display:block; aspect-ratio:16/10; border-radius:18px 18px 0 0;}
  .hb-summary-body .hb-card__pad{padding:18px;}
  .hb-summary-title{font-size:24px; line-height:1.1;}
  .hb-summary-sub,.hb-summary-helper{font-size:14px; line-height:1.5;}
  .hb-summary-body .hb-kv{grid-template-columns:1fr; gap:4px; padding:10px 0;}
  .hb-summary-body .hb-kv .hb-v{text-align:left; font-size:15px;}
  .hb-price-highlight{padding:18px; border-radius:18px;}
  .hb-price-highlight__value{font-size:32px; line-height:1.05; white-space:normal; overflow-wrap:anywhere;}
}

/* V2.8.2.3 mobile booking containment + alignment fix */
@media (max-width: 680px){
  html, body{overflow-x:hidden !important;}
  .hb-booking-wrap, .hb-booking-wrap *{box-sizing:border-box;}
  .hb-booking-wrap{width:100% !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important;padding-left:18px !important;padding-right:18px !important;overflow-x:hidden !important;}
  .hb-booking-grid,.hb-booking-main,.hb-booking-side,.hb-booking-main > .hb-card,.hb-booking-side--elevated,.hb-booking-form-shell,.hb-summary-body,.hb-card__pad,.hb-form,.hb-form-grid,.hb-passenger-grid,.hb-room-guest-groups,.hb-room-guest-group,.hb-passenger-card,.hb-actions,.hb-note,.hb-booking-trust,.hb-checkrate-compact,.hb-inline-details__body--booking-comment{width:100% !important;max-width:100% !important;min-width:0 !important;}
  .hb-booking-grid{display:flex !important;flex-direction:column !important;gap:18px !important;}
  .hb-booking-side{order:-1 !important;display:block !important;position:static !important;}
  .hb-booking-side--elevated{margin:0 0 18px 0 !important;border-radius:22px !important;overflow:hidden !important;}
  .hb-booking-side.is-collapsed .hb-summary-body{display:block !important;}
  .hb-summary-toggle{display:flex !important;justify-content:space-between !important;align-items:center !important;padding:16px 18px 8px !important;cursor:default !important;font-size:22px !important;line-height:1.1 !important;}
  .hb-summary-toggle__chev{display:none !important;}
  .hb-summary-body .hb-card__pad{padding:18px !important;}
  .hb-summary-img{width:100% !important;max-width:100% !important;height:auto !important;aspect-ratio:16/10 !important;object-fit:cover !important;border-radius:18px 18px 0 0 !important;}
  .hb-booking-title{font-size:clamp(44px,13vw,58px) !important;line-height:.96 !important;letter-spacing:-.04em !important;overflow-wrap:break-word !important;max-width:100% !important;}
  .hb-booking-kicker{font-size:clamp(34px,10vw,46px) !important;line-height:1.02 !important;letter-spacing:-.035em !important;overflow-wrap:break-word !important;}
  .hb-booking-lead,.hb-form-subtitle,.hb-summary-helper,.hb-summary-sub,.hb-checkrate-compact__text,.hb-inline-details__body--booking-comment,.hb-booking-trust,.hb-note{overflow-wrap:anywhere !important;word-break:normal !important;}
  .hb-summary-title{font-size:26px !important;line-height:1.1 !important;overflow-wrap:break-word !important;}
  .hb-badges{display:flex !important;flex-wrap:wrap !important;gap:8px !important;max-width:100% !important;}
  .hb-badges .hb-pill{white-space:normal !important;}
  .hb-summary-body .hb-kv{grid-template-columns:1fr !important;gap:4px !important;padding:10px 0 !important;}
  .hb-summary-body .hb-kv .hb-v{text-align:left !important;overflow-wrap:anywhere !important;}
  .hb-price-highlight{padding:18px !important;border-radius:20px !important;}
  .hb-price-highlight__value{font-size:clamp(34px,10vw,42px) !important;line-height:1.04 !important;white-space:normal !important;overflow-wrap:anywhere !important;}
  .hb-form-grid,.hb-passenger-grid,.hb-room-guest-groups{display:grid !important;grid-template-columns:1fr !important;}
  .hb-field input[type="text"],.hb-field input[type="email"],.hb-field input[type="tel"],.hb-field input[type="number"],.hb-field textarea{width:100% !important;max-width:100% !important;}
  .hb-passenger-card{padding:16px !important;}
  .hb-passenger-card h4{font-size:24px !important;}
  .hb-actions{align-items:stretch !important;}
  .hb-actions .hb-btn{width:100% !important;}
}
@media (max-width:420px){
  .hb-booking-wrap{padding-left:14px !important;padding-right:14px !important;}
  .hb-booking-title{font-size:clamp(40px,12vw,52px) !important;}
  .hb-booking-kicker{font-size:clamp(32px,9vw,42px) !important;}
  .hb-summary-title{font-size:24px !important;}
  .hb-price-highlight__value{font-size:34px !important;}
}
