.kmh-b1{background:#f3f8fa;min-height:70vh;padding:38px 18px 80px;color:#082d4b}.kmh-b1 *{box-sizing:border-box}.kmh-b1-shell{max-width:1060px;margin:0 auto}.kmh-b1-local,.kmh-b1-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#0967a6}.kmh-b1 h1{font-size:clamp(38px,6vw,68px);line-height:1;margin:12px 0 18px}.kmh-b1 h2{margin:6px 0 8px}.kmh-b1-lead{font-size:18px;max-width:720px}.kmh-b1-cards{display:grid;gap:18px;margin:28px 0}.kmh-b1-card,.kmh-b1-total,.kmh-b1-checkout,.kmh-b1-order-head,.kmh-b1-general{background:#fff;border:1px solid #cbdde7;border-radius:14px;padding:22px;box-shadow:0 8px 24px rgba(9,53,79,.05)}.kmh-b1-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:24px}.kmh-b1-card dl,.kmh-b1-order-head dl{margin:0;display:grid;gap:8px}.kmh-b1-card dl div,.kmh-b1-order-head dl div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #e4edf2}.kmh-b1-card dt{color:#587182}.kmh-b1-card dd{margin:0;font-weight:800}.kmh-b1-pill{display:inline-block;padding:7px 11px;border-radius:999px;background:#e7f5f8;font-weight:700;font-size:13px}.kmh-b1-total{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.kmh-b1-total span{display:block;color:#587182;margin-top:3px}.kmh-b1-total b{font-size:30px}.kmh-b1-button,.kmh-b1-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border:2px solid #087ec1;border-radius:8px;padding:10px 20px;background:#087ec1;color:#fff!important;font-weight:800;text-decoration:none;cursor:pointer}.kmh-b1-actions button:first-child{background:#fff;color:#087ec1!important}.kmh-b1-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:24px 0}.kmh-b1-steps span{padding:12px;background:#e4edf2;border-radius:8px;text-align:center;font-weight:700}.kmh-b1-steps span.is-active{background:#075c84;color:#fff}.kmh-b1-checkout>section{display:none}.kmh-b1-checkout>section.is-active{display:block}.kmh-b1-checkout-row{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #d9e6ed;padding:14px 0}.kmh-b1-checkout-row span{display:block;color:#587182}.kmh-b1-checkout-total{font-size:20px}.kmh-b1-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.kmh-b1 label{display:grid;gap:6px;font-weight:700}.kmh-b1 input:not([type=radio]):not([type=checkbox]){width:100%;min-height:50px;border:1px solid #9eb6c4;border-radius:6px;padding:10px 12px;font-size:16px}.kmh-b1 fieldset{border:0;padding:18px 0;display:grid;gap:12px}.kmh-b1 fieldset label,.kmh-b1-consent{display:flex;align-items:flex-start;gap:10px}.kmh-b1 input[type=radio],.kmh-b1 input[type=checkbox]{width:22px;height:22px;flex:0 0 auto}.kmh-b1-actions{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.kmh-b1-card-element{border:1px solid #9eb6c4;border-radius:8px;padding:16px;background:#fff;min-height:54px}.kmh-b1-test-card{background:#fff4d8;padding:12px;border-radius:7px}.kmh-b1-error{border-left:5px solid #b42318;background:#fff1f0;padding:18px;color:#8f1b13}.kmh-b1-success{border-left:5px solid #18864b;background:#e9f9ef;padding:18px;color:#116238}.kmh-b1-order-head{display:flex;justify-content:space-between;gap:28px}.kmh-b1-order-head dl{min-width:280px}.kmh-b1-context{display:flex;gap:8px;overflow-x:auto;padding:18px 0}.kmh-b1-context button{white-space:nowrap;min-height:48px;border:1px solid #9eb6c4;background:#fff;border-radius:999px;padding:10px 16px}.kmh-b1-context button.is-active{background:#075c84;color:#fff}.kmh-b1-portal-card details{grid-column:1/-1;border-top:1px solid #d9e6ed;padding-top:14px}.kmh-b1-portal-card summary{font-weight:800;cursor:pointer}.kmh-b1-card-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;color:#425e70}.kmh-b1-card-links span{background:#eef5f7;padding:8px 10px;border-radius:6px}.kmh-b1 :focus-visible{outline:3px solid #ffb400;outline-offset:3px}@media(max-width:700px){.kmh-b1{padding-left:12px;padding-right:12px}.kmh-b1-card,.kmh-b1-order-head{grid-template-columns:1fr;display:grid}.kmh-b1-order-head dl{min-width:0}.kmh-b1-grid{grid-template-columns:1fr}.kmh-b1-steps{grid-template-columns:repeat(2,1fr)}.kmh-b1-total{align-items:flex-start}.kmh-b1-actions>*{flex:1}}@media(max-width:390px){.kmh-b1-steps span{font-size:12px;padding:9px 4px}.kmh-b1-card,.kmh-b1-checkout,.kmh-b1-order-head,.kmh-b1-general{padding:16px}.kmh-b1-total{display:grid}.kmh-b1-button{width:100%}}
.kmh-b1-payment-panel{background:#fff;border:1px solid #cbdde7;border-radius:14px;padding:22px;margin:18px 0;box-shadow:0 8px 24px rgba(9,53,79,.05)}.kmh-b1-context a{display:inline-flex;align-items:center;white-space:nowrap;min-height:48px;border:1px solid #9eb6c4;background:#fff;border-radius:999px;padding:10px 16px;color:#075c84;text-decoration:none;font-weight:700}.kmh-b1-context a.is-active{background:#075c84;color:#fff}.kmh-b1-card-links a{background:#e7f5f8;padding:8px 10px;border-radius:6px;color:#075c84;font-weight:700;text-decoration:none}.kmh-b1-future-total{margin-top:-8px}
.kmh-b1-account-state,.kmh-b1-account-choice,.kmh-b1-policy-preview,.kmh-b1-consents{margin-top:18px;padding:16px;border:1px solid #cbdde7;border-radius:9px;background:#f8fbfc}.kmh-b1-account-state p{margin:6px 0 0}.kmh-b1-password-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:6px 0 4px 32px}.kmh-b1-password-fields[hidden]{display:none}.kmh-b1-policy-preview h3{margin-top:0}.kmh-b1-policy-preview ul{margin-bottom:0}.kmh-b1-consents{display:grid;gap:12px}.kmh-b1-consents p{margin:0}.kmh-b1-consent span{font-weight:600}.kmh-b1-consent a{font-weight:800}@media(max-width:700px){.kmh-b1-password-fields{grid-template-columns:1fr;padding-left:0}}
.kmh-booking-financial-summary{display:grid;gap:0;margin:12px 0 0}.kmh-booking-financial-summary>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid #d9e6ed}.kmh-booking-financial-summary dt{color:#405b6d}.kmh-booking-financial-summary dd{margin:0;text-align:right;font-weight:700}.kmh-booking-financial-summary>.is-total dt{color:#082d4b}@media(max-width:480px){.kmh-booking-financial-summary>div{align-items:flex-start}.kmh-booking-financial-summary dt{max-width:62%}}
.kmh-phase3-staging-marker {
  margin: 0 0 24px;
  padding: 14px 18px;
  border: 3px solid #9f1c14;
  border-radius: 8px;
  background: #fff1ef;
  color: #71130e;
  font-size: 1rem;
  letter-spacing: .02em;
  text-align: center;
}

.kmh-b1-actions [hidden] {
  display: none;
}

.kmh-b1 [aria-invalid="true"] {
  border-color: #b42318;
  box-shadow: 0 0 0 2px rgba(180, 35, 24, .16);
}

.kmh-b1 #kmh-b1-message:not(:empty) {
  margin-top: 18px;
}

.kmh-b1 #kmh-b1-message a {
  color: inherit;
  font-weight: 800;
  text-decoration: underline;
}

.kmh-b1-payment-summary {
  display: grid;
  gap: 18px;
}

.kmh-b1-payment-summary > h2,
.kmh-b1-payment-summary > p,
.kmh-b1-payment-unit h3,
.kmh-b1-payment-unit p {
  margin: 0;
}

.kmh-b1-payment-unit {
  min-width: 0;
  padding: 18px;
  border: 1px solid #d9e6ed;
  border-radius: 10px;
  background: #f8fbfc;
}

.kmh-b1-payment-stay {
  margin-top: 6px !important;
  color: #405b6d;
}

.kmh-b1-payment-lines {
  display: grid;
  gap: 0;
  margin: 14px 0 0;
}

.kmh-b1-payment-lines > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 20px;
  padding: 9px 0;
  border-bottom: 1px solid #d9e6ed;
}

.kmh-b1-payment-lines dt {
  color: #405b6d;
}

.kmh-b1-payment-lines dd {
  margin: 0;
  text-align: right;
  font-weight: 800;
}

.kmh-b1-payment-lines .is-total,
.kmh-b1-payment-lines .is-due {
  color: #082d4b;
  font-size: 18px;
}

.kmh-b1-payment-lines .is-total dt,
.kmh-b1-payment-lines .is-due dt {
  color: inherit;
  font-weight: 800;
}

.kmh-b1-payment-combined {
  margin-top: 0;
  padding: 16px 18px;
  border: 2px solid #87b8d1;
  border-radius: 10px;
  background: #fff;
}

.kmh-b1-pass-estimate {
  display: grid;
  gap: 4px;
  margin-top: 14px;
  padding: 12px 14px;
  border-left: 4px solid #c88a00;
  background: #fff7df;
  color: #5b4310;
}

.kmh-b1-button[aria-busy="true"] {
  cursor: progress;
  opacity: .82;
}

@media (max-width: 480px) {
  .kmh-b1-payment-panel {
    padding: 16px;
  }

  .kmh-b1-payment-unit {
    padding: 14px;
  }

  .kmh-b1-payment-lines > div {
    align-items: flex-start;
  }

  .kmh-b1-payment-lines dt {
    max-width: 62%;
  }
}
