/* Booking step: preserve the approved recruitment landing-page design. */
.booking-page{min-height:100vh;display:flex;flex-direction:column}
.booking-page main{flex:1}
.booking-back{font-family:var(--mono);font-size:13px;color:var(--sec);text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}
.booking-hero{padding-block:clamp(40px,5vw,64px) clamp(44px,5vw,72px)}
.booking-shell{max-width:1080px}
.booking-intro{display:grid;gap:18px;max-width:790px;margin:0 auto 36px;text-align:center}
.booking-intro h1{font-size:clamp(34px,4.1vw,56px);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
.booking-intro .dek{max-width:740px;margin-inline:auto;font-size:clamp(17px,1.6vw,20px);line-height:1.55}
.booking-calendar{background:#fff;border:1px solid var(--line2);border-radius:var(--r);overflow:hidden;min-width:0;color-scheme:light}
.meetings-iframe-container{width:100%;min-width:0;min-height:650px}
.meetings-iframe-container iframe{display:block;width:100%;min-width:0!important;border:0}
.booking-help{text-align:center;font-family:var(--mono);font-size:12px;line-height:1.6;color:var(--muted);margin-top:20px}
.booking-help a{display:inline-block;color:var(--cyan);text-underline-offset:4px;min-height:44px;padding-block:12px}
.booking-page footer{padding-bottom:34px}
@media(max-width:640px){
  .booking-back{display:none}
  .booking-intro{text-align:left;margin-bottom:28px}
}
@media(max-width:430px){
  .booking-shell{padding-inline:0}
  .booking-intro,.booking-help{padding-inline:16px}
  .booking-calendar{border-inline:0;border-radius:0}
}
