.booking-hero{min-height:100svh;padding:168px 0 96px;background:radial-gradient(ellipse at 78% 115%,#5c3829 0,#2a211e 38%,#111210 76%);color:#fafaf8;display:flex;align-items:center}
.booking-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.72fr);gap:clamp(54px,8vw,128px);align-items:center}
.booking-intro h1{font-size:clamp(58px,7.5vw,112px);font-weight:430;line-height:.94;letter-spacing:-.075em;max-width:900px}.booking-intro h1 span{color:#c28a70}.booking-intro .lead{max-width:620px;margin-top:32px;color:#d6d1c8}.booking-facts{display:flex;flex-wrap:wrap;gap:12px;margin:38px 0 0;padding:0;list-style:none}.booking-facts li{display:flex;align-items:center;gap:10px;padding:9px 13px;border:1px solid #ffffff24;border-radius:999px;background:#ffffff08;font-size:13px;color:#ded9d1}.booking-facts li span{color:#c28a70}.booking-facts strong{font-weight:520}
.booking-panel{padding:28px;border:1px solid #ffffff2b;border-radius:28px;background:#f7f5f0;color:#222321;box-shadow:0 40px 90px #0007}.booking-panel-head{display:flex;align-items:center;gap:16px;padding-bottom:24px;border-bottom:1px solid #d9d5cc}.booking-panel-head img{width:42px;height:42px;object-fit:contain}.booking-panel-head h2{font-size:30px;letter-spacing:-.045em}.booking-panel .eyebrow{font-size:10px;color:#65665f}.connection-state{display:flex;gap:13px;margin:22px 0;padding:16px;border:1px solid #d8c2b5;border-radius:14px;background:#ede1d9}.connection-state .status-dot{width:9px;height:9px;border-radius:50%;background:#a66f58;margin-top:7px;box-shadow:0 0 0 5px #a66f5821;flex:0 0 auto}.connection-state .status-dot.active{background:#52765b;box-shadow:0 0 0 5px #52765b20}.connection-state strong{font-size:14px}.connection-state p{margin-top:5px;font-size:12px;line-height:1.55;color:#65665f}.cal-embed-shell{min-height:620px;overflow:hidden;border:1px solid #d9d5cc;border-radius:18px;background:#fff}.cal-inline{width:100%;height:620px;overflow:auto}.booking-fallback{display:none}.booking-panel>.btn{width:100%;margin-top:16px}.booking-panel .caption{margin-top:12px}
.fit-grid{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:clamp(60px,10vw,160px);align-items:start}.fit-grid>div:first-child{position:sticky;top:140px}.fit-copy{display:grid;gap:1px;background:#d6d2c8}.fit-card{display:grid;grid-template-columns:42px 1fr;column-gap:18px;padding:28px 0;background:#fafaf8}.fit-card>span{grid-row:1/3;color:#a66f58;font-size:12px;font-weight:650}.fit-card h3{font-size:24px}.fit-card p{grid-column:2;margin-top:8px;color:#65665f}
.booking-boundary{background:#222321!important;color:#fafaf8}.boundary-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:clamp(60px,10vw,160px)}.booking-boundary h2{max-width:620px}.booking-boundary p{max-width:700px;color:#c9c4ba;font-size:19px}.booking-boundary .text-link{color:#fafaf8}
@media(max-width:900px){.booking-hero{min-height:auto;padding:145px 0 72px}.booking-hero-grid,.fit-grid,.boundary-grid{grid-template-columns:1fr}.booking-hero-grid{gap:54px}.fit-grid,.boundary-grid{gap:42px}.fit-grid>div:first-child{position:static}.booking-panel{max-width:620px}}
@media(max-width:560px){.booking-hero{padding-top:126px}.booking-intro h1{font-size:clamp(51px,15vw,72px)}.booking-panel{padding:20px;border-radius:22px}.booking-facts{display:grid;grid-template-columns:1fr 1fr}.booking-facts li:last-child{grid-column:1/-1}.fit-card{grid-template-columns:32px 1fr;padding:24px 0}.cal-embed-shell{min-height:700px}.cal-inline{height:700px}}
@media(prefers-reduced-motion:reduce){.booking-page *{animation:none!important;transition:none!important}}
