.booking-page{background:var(--paper);color:var(--ink)}
.booking-page .site-header{background:rgba(250,249,246,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}
.booking-hero{padding:150px 0 94px;background:linear-gradient(135deg,#f8fbfc 0%,#faf9f6 44%,#e9f1ef 100%)}
.booking-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:7%;align-items:start}
.booking-copy{padding-top:34px}
.booking-copy h1{max-width:760px;margin:16px 0 25px;font-size:clamp(3.2rem,5.4vw,5.9rem);line-height:.94;letter-spacing:-.06em}
.booking-lede{max-width:660px;font-size:1.18rem;line-height:1.68;color:var(--ink-soft)}
.meeting-details{margin-top:44px;border-top:1px solid var(--line)}
.meeting-details>div{display:grid;grid-template-columns:40px 190px 1fr;gap:18px;padding:21px 0;border-bottom:1px solid var(--line);align-items:start}
.meeting-details span{font:600 .65rem var(--mono);color:var(--clay);letter-spacing:.08em}
.meeting-details strong{font:600 .9rem var(--sans)}
.meeting-details p{margin:0;color:var(--ink-soft);font-size:.86rem;line-height:1.55}
.booking-note{margin-top:32px;padding:24px 26px;border-left:3px solid var(--clay);background:rgba(255,255,255,.58)}
.booking-note strong{font:500 1.22rem var(--serif)}
.booking-note p{margin:8px 0 0;color:var(--ink-soft);font-size:.9rem}
.scheduler-panel{background:#fff;border:1px solid rgba(21,54,74,.15);box-shadow:0 30px 80px rgba(21,54,74,.12);padding:34px 34px 25px;min-height:760px;scroll-margin-top:92px}
.scheduler-heading{padding:2px 7px 24px;border-bottom:1px solid var(--line)}
.scheduler-heading h2{font-size:2rem;margin:6px 0 9px;letter-spacing:-.04em}
.scheduler-heading p:last-child{margin:0;color:var(--ink-soft);font-size:.88rem}
.scheduler-frame{min-height:570px;margin-top:12px;overflow:hidden;background:#fff}
.meetings-iframe-container{min-height:570px}
.booking-fallback{margin:12px 7px 0;color:var(--ink-soft);font-size:.75rem;text-align:center}
.booking-fallback a{color:var(--rust);font-weight:600}
.booking-assurance{padding:86px 0;background:var(--navy);color:#fff}
.assurance-grid{display:grid;grid-template-columns:.55fr 1.2fr .8fr;gap:6%;align-items:start}
.assurance-grid .eyebrow{color:#a9d2d8}
.assurance-grid h2{margin:0;font-size:clamp(2.3rem,4vw,4.2rem);line-height:1.02;max-width:700px}
.assurance-grid>p:last-child{margin:0;color:#d8e2e2;line-height:1.7}
.booking-page footer{margin-top:0}
@media(max-width:1060px){.booking-grid{grid-template-columns:1fr;gap:55px}.booking-copy{padding-top:0}.scheduler-panel{min-height:700px}.assurance-grid{grid-template-columns:1fr;gap:22px}.assurance-grid>p:last-child{max-width:680px}}
@media(max-width:700px){.booking-hero{padding:118px 0 62px}.booking-copy h1{font-size:clamp(2.8rem,13vw,4.4rem)}.booking-lede{font-size:1rem}.meeting-details>div{grid-template-columns:30px 1fr;gap:8px 12px}.meeting-details p{grid-column:2}.scheduler-panel{padding:25px 12px 18px;margin:0 -8px;min-height:690px}.scheduler-heading{padding-left:10px;padding-right:10px}.scheduler-frame,.meetings-iframe-container{min-height:560px}.booking-assurance{padding:65px 0}.booking-page .nav .button-small{display:none}}
@media(prefers-reduced-motion:reduce){.booking-page *{scroll-behavior:auto!important}}
