.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{min-width:0;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}.service-context{display:grid;gap:8px;margin:22px 0}.service-context label{font-size:12px;font-weight:650;letter-spacing:.02em}.service-context select{width:100%;min-height:48px;padding:0 42px 0 14px;border:1px solid #c8c2b8;border-radius:12px;background:#fff;color:#222321;font:inherit;font-size:14px}.service-context select:focus-visible{outline:3px solid #a66f58;outline-offset:2px}.service-context p{font-size:11px;line-height:1.5;color:#65665f}.connection-state{display:flex;gap:13px;margin:18px 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,.cal-inline{width:100%;min-width:0;max-width:100%}.cal-embed-shell{min-height:620px;overflow:hidden;border:1px solid #d9d5cc;border-radius:18px;background:#fff}.cal-inline{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{width:calc(100vw - 16px);margin-left:calc((100% - 100vw)/2 + 8px);padding:14px;border-radius:20px}.booking-panel-head{padding:4px 4px 18px}.booking-panel-head h2{font-size:26px}.service-context,.connection-state{margin-inline:2px}.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:760px;border-radius:14px}.cal-inline{height:760px}.booking-panel .caption{padding-inline:4px}}
.booking-page{overflow-x:clip}.booking-route-panel{width:100%;min-width:0;padding:10px 28px 20px;border:1px solid #ffffff2b;border-radius:28px;background:#f7f5f0;color:#222321;box-shadow:0 40px 90px #0007}.booking-route-panel>.eyebrow{display:block;padding:20px 2px 14px;color:#777269}.booking-route-panel>a{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:16px;align-items:center;padding:22px 2px;border-top:1px solid #d9d5cc;color:inherit;text-decoration:none}.booking-route-panel>a>*{min-width:0}.booking-route-panel>a>span{font-size:11px;color:#a66f58;font-weight:700}.booking-route-panel strong{display:block;font-size:19px;letter-spacing:-.025em}.booking-route-panel small{display:block;margin-top:5px;color:#6a665f;line-height:1.45;overflow-wrap:anywhere}.booking-route-panel b{font-size:20px;font-weight:450;transition:transform .25s ease}.booking-route-panel>a:hover b{transform:translate(3px,-3px)}
.course-booking{background:#fafaf8}.course-booking-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:64px;align-items:end}.course-booking-head h2{font-size:clamp(52px,7vw,104px);line-height:.93;letter-spacing:-.075em}.course-price{padding:28px;border-left:1px solid #d6d2c8}.course-price span,.course-price small{display:block;color:#65665f}.course-price span{font-size:11px;text-transform:uppercase;letter-spacing:.12em}.course-price strong{display:block;margin:8px 0;font-size:clamp(42px,5vw,70px);line-height:1;letter-spacing:-.065em;color:#a66f58}.course-price small{line-height:1.45}.course-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.65fr);gap:80px;margin-top:72px;padding-top:30px;border-top:1px solid #d6d2c8}.course-summary>p{font-size:clamp(22px,2.5vw,36px);line-height:1.2;letter-spacing:-.035em}.course-summary dl{margin:0}.course-summary dl>div{display:grid;grid-template-columns:100px 1fr;padding:12px 0;border-bottom:1px solid #dedad1}.course-summary dt{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#777269}.course-summary dd{margin:0}.confirmed-dates{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:64px;background:#d6d2c8;border:1px solid #d6d2c8}.confirmed-dates article{display:flex;min-height:250px;flex-direction:column;padding:24px;background:#f2efe9}.confirmed-dates span{font-size:11px;color:#a66f58;font-weight:700}.confirmed-dates strong{margin-top:auto;font-size:30px;letter-spacing:-.045em}.confirmed-dates em{margin-top:8px;font-size:18px;font-style:normal}.confirmed-dates small{margin-top:4px;color:#6a665f}.course-release-note{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:42px;align-items:center;margin-top:24px;padding:24px 26px;border-radius:18px;background:#222321;color:#fafaf8}.course-release-note p{max-width:720px;margin-top:6px;color:#c9c4ba}.course-release-note .actions{justify-content:flex-end}.course-release-note .text-link{color:#fafaf8}
.workshop-enquiry{background:#eeeae2}.workshop-enquiry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:50px 0 32px;background:#cac4b9}.workshop-enquiry-grid article{min-height:290px;padding:28px;background:#f7f5f0}.workshop-enquiry-grid span{color:#a66f58;font-size:12px;font-weight:700}.workshop-enquiry-grid h3{margin-top:90px;font-size:clamp(25px,2.4vw,38px);line-height:1.04;letter-spacing:-.045em}.copper-site .fit-call-booking{background:#222321;color:#fafaf8}.copper-site .section-tight.fit-call-booking{background:radial-gradient(ellipse at 12% 100%,#493125 0%,#29221f 38%,#222321 76%);color:#fafaf8}.copper-site .fit-call-booking .eyebrow{color:#d3b5a3}.fit-call-grid{align-items:start}.booking-intro.light{padding-top:54px}.booking-intro.light h2{color:#fafaf8;font-size:clamp(54px,6vw,88px);line-height:.94;letter-spacing:-.065em}.booking-intro.light h2 span{color:#c28a70}.booking-intro.light .lead{color:#c9c4ba}.fit-call-booking .booking-facts strong{color:#ded8cf}
@media(max-width:900px){.course-booking-head,.course-summary{grid-template-columns:1fr;gap:42px}.course-price{border-left:0;border-top:1px solid #d6d2c8;padding-inline:0}.confirmed-dates{grid-template-columns:1fr 1fr}.course-release-note{grid-template-columns:1fr}.course-release-note .actions{justify-content:flex-start}.workshop-enquiry-grid{grid-template-columns:1fr}.workshop-enquiry-grid article{min-height:210px}.workshop-enquiry-grid h3{margin-top:54px}}
@media(max-width:560px){.booking-route-panel{padding:4px 18px 10px;border-radius:20px}.booking-route-panel>a{grid-template-columns:26px minmax(0,1fr) auto;padding:18px 0}.booking-facts{grid-template-columns:1fr}.booking-facts li:last-child{grid-column:auto}.confirmed-dates{grid-template-columns:1fr}.confirmed-dates article{min-height:190px}.course-release-note{padding:20px}.course-release-note .actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.booking-page *{animation:none!important;transition:none!important}}
.interest-status{padding:9px 13px;border:1px solid #ffffff2e;border-radius:999px;color:#dbc7bc;font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.course-interest-panel{display:grid;grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr);gap:clamp(40px,7vw,96px);margin-top:24px;padding:clamp(28px,5vw,64px);border:1px solid #d6d2c8;border-radius:28px;background:#f2efe9}.course-interest-intro h3{font-size:clamp(36px,4.5vw,64px);line-height:.98;letter-spacing:-.06em}.course-interest-intro>p:not(.eyebrow){max-width:500px;margin-top:22px;color:#65665f}.course-interest-intro a{color:inherit}.course-interest-intro ul{display:grid;gap:9px;margin:28px 0 0;padding:0;list-style:none;font-size:13px}.course-interest-intro li{padding-top:9px;border-top:1px solid #d6d2c8}.course-interest-form{display:grid;gap:18px;align-content:start}.course-interest-form label{display:grid;gap:8px;font-size:12px;font-weight:650;letter-spacing:.01em}.course-interest-form input:not([type=checkbox]),.course-interest-form select{width:100%;min-height:52px;padding:0 14px;border:1px solid #c8c2b8;border-radius:12px;background:#fafaf8;color:#222321;font:inherit;font-size:14px}.course-interest-form input:focus-visible,.course-interest-form select:focus-visible,.course-interest-form button:focus-visible{outline:3px solid #a66f58;outline-offset:2px}.course-interest-form [aria-invalid=true]{border-color:#9a382f!important}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.course-interest-form .boundary-check{display:grid;grid-template-columns:20px 1fr;gap:11px;align-items:start;padding:16px;border:1px solid #d6d2c8;border-radius:14px;background:#fafaf8;font-weight:450;line-height:1.5}.boundary-check input{width:18px;height:18px;margin:2px 0 0;accent-color:#a66f58}.form-error{min-height:1.5em;color:#8d2d25;font-size:13px;font-weight:650}.course-result:not(:empty){display:grid;gap:3px;padding:14px 16px;border-left:3px solid #52765b;background:#e6ece5;font-size:13px}.course-result span{color:#535850}.course-interest-form .actions{margin-top:2px}.course-interest-form .btn{border:0;cursor:pointer}.reset-button{border:0;background:none;cursor:pointer;font:inherit}.course-interest-form .caption{color:#777269}
@media(max-width:900px){.course-interest-panel{grid-template-columns:1fr;gap:42px}.interest-status{justify-self:start}}
@media(max-width:560px){.course-interest-panel{padding:24px 18px;border-radius:20px}.field-grid{grid-template-columns:1fr}.course-interest-form .actions{align-items:flex-start;flex-direction:column}}
