.team-booking-page{background:#f7f8ef;color:#233d31;padding:56px 0 80px}
.booking-intro{max-width:740px;margin:0 auto 36px;text-align:center}
.booking-intro h1{font-size:clamp(34px,4.7vw,58px);line-height:1.08;letter-spacing:-.045em;margin:14px 0 18px}
.booking-intro>p{max-width:580px;margin:auto;font-size:17px;line-height:1.7;color:#62705d}
.booking-layout{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.4fr);max-width:1100px;margin:auto;border:1px solid #d7dfd1;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 18px 65px #21392a08}
.booking-about{padding:36px;background:#eaf0e2;min-width:0}
.booking-about .booking-mark{display:block;width:40px;height:44px;color:#26a896;margin-bottom:30px}
.booking-about h2{font-size:28px;line-height:1.18;letter-spacing:-.025em;margin:0 0 18px}
.booking-about p{font-size:15px;line-height:1.7;color:#52634f}
.booking-meta{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}
.booking-meta span{border:1px solid #ccd7c4;border-radius:100px;padding:7px 11px;font-size:12px}
.booking-agenda{padding:18px 0 0;list-style:none;border-top:1px solid #cdd7c7;margin:24px 0}
.booking-agenda li{display:flex;gap:14px;padding:11px 0;font-size:14px;line-height:1.5}
.booking-agenda span{color:#268b76;font-size:12px;padding-top:2px}
.booking-about a{color:#246d5c;text-underline-offset:4px;overflow-wrap:anywhere}
.booking-main{padding:32px;min-width:0}
.booking-main h2{font-size:23px;line-height:1.3;margin:0 0 12px;letter-spacing:-.02em}
.booking-main fieldset{border:0;padding:0;margin:0;min-width:0}
.booking-main [hidden]{display:none!important}
.booking-main button,.booking-main input,.booking-main select,.booking-main textarea{font-family:inherit}
.booking-zone-label{display:block;font-size:12px;font-weight:600;color:#52634f;margin:18px 0 22px}
.booking-main select{display:block;width:100%;margin-top:7px;font-size:16px;padding:10px;border:1px solid #cbd7c8;border-radius:8px;background:#fff;color:#233d31}
.booking-week-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px 0}
.booking-week-nav strong{font-size:14px;text-align:center}
.booking-week-nav button{border:1px solid #ccd7c4;border-radius:50%;width:44px;height:44px;background:white;color:#233d31;font-size:20px;cursor:pointer}
.booking-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:7px;margin:18px 0 26px}
.booking-day{display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 4px;min-height:72px;border:1px solid #d5dfce;border-radius:12px;background:#f7f9f3;color:#36533e;cursor:pointer}
.booking-day span{font-size:11px}.booking-day strong{font-size:21px;font-weight:500}
.booking-day[aria-pressed=true]{background:#223f30;border-color:#223f30;color:white}
.booking-main h3{font-size:14px;margin:0 0 14px;font-weight:600}
.booking-times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:245px;overflow-y:auto;padding:3px;margin:-3px}
.booking-time{min-height:44px;font-size:13px;border:1px solid #a9c9bb;border-radius:8px;background:white;color:#255d4c;cursor:pointer;padding:10px 5px}
.booking-time[aria-pressed=true]{background:#dff3e9;border-color:#238d74;box-shadow:inset 0 0 0 1px #238d74}
.booking-main button:disabled{opacity:.45;cursor:not-allowed}
.booking-main :focus-visible{outline:3px solid #268c74;outline-offset:3px}
.booking-summary{padding:16px;border-left:3px solid #2b9c84;background:#f1f6ec;border-radius:0 8px 8px 0;color:#355343;font-size:14px;line-height:1.6;margin:26px 0}
.booking-form h2{margin-top:28px}
.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.booking-fields label{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:7px;color:#43583e}
.booking-fields input,.booking-fields textarea{width:100%;box-sizing:border-box;min-width:0;font-size:16px;border:1px solid #cad6c5;border-radius:8px;background:white;color:#233d31;padding:12px;min-height:46px}
.booking-fields textarea{resize:vertical;min-height:90px}.booking-wide{grid-column:1/-1}
.booking-consent{display:flex;gap:10px;font-size:12px;line-height:1.6;margin:20px 0;color:#52634f}.booking-consent input{width:18px;height:18px;flex:0 0 18px;accent-color:#268c74}
.booking-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#confirm-booking{width:100%;margin-top:18px;min-height:48px}
.booking-status{font-size:13px;color:#52634f;line-height:1.6;margin:18px 0 0;min-height:22px}
.booking-email{font-size:12px;text-align:center;margin:18px 0 0;color:#52634f}.booking-email a{color:#246d5c}
.booking-retry{background:transparent;border:0;text-decoration:underline;color:#52634f;padding:12px 0;font-size:12px;cursor:pointer}
.booking-success{padding:30px 0}.booking-success .success-check{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#e2f3e5;color:#238569;font-size:30px;margin-bottom:24px}
.booking-success p{line-height:1.7;font-size:15px}.booking-success small{display:block;overflow-wrap:anywhere;font-size:11px;color:#63755e}
#consultation-form{scroll-margin-top:100px}
.booking-main #request-fallback .consultation-card{padding:24px;border-radius:14px;margin-top:20px}
@media(max-width:860px){.team-booking-page{padding:30px 0 50px}.booking-layout{grid-template-columns:1fr}.booking-about{padding:26px}.booking-about .booking-mark{float:right;margin:0 0 15px 15px}.booking-about h2{font-size:25px}.booking-agenda{display:none}.booking-about>p:last-child{display:none}.booking-meta{margin:16px 0 0}.booking-main{padding:26px}.booking-intro{margin-bottom:26px}}
@media(max-width:420px){.booking-main{padding:22px 16px}.booking-about{padding:22px}.booking-fields{grid-template-columns:1fr}.booking-times{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-intro>p{font-size:15px}.booking-intro h1{font-size:34px}.booking-layout{border-radius:18px}}

.booking-intro .eyebrow::before{content:none;display:none}
#consultation-status:empty{display:none}
