#v-book{padding-block:28px 80px}.book-layout{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:28px;display:grid}.book-side{background:var(--navy);color:var(--white);border-radius:3px;position:sticky;top:16px;overflow:hidden}.bs-band{gap:12px;padding:26px 22px 22px;display:grid}.bs-band .label{color:var(--white)}.bs-band h1{font-family:var(--f-display);text-transform:uppercase;letter-spacing:-.02em;margin:0;font-size:56px;font-weight:800;font-stretch:125%;line-height:.86}.bs-sum{border-top:1px solid;margin:4px 0 0}.bs-sum div{border-bottom:1px solid;justify-content:space-between;gap:12px;padding:9px 0;font-size:14px;display:flex}.bs-sum dd{text-align:right;margin:0;font-weight:600}.bs-note{margin:0;font-size:12px;line-height:1.45}.book-main{min-width:0}.wiz-top{align-items:center;gap:16px;margin-bottom:22px;display:flex}.wiz-progress{flex:1;grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.wiz-progress span{background:var(--line);height:4px}.wiz-progress span.on{background:var(--navy)}.wstep-title{font-family:var(--f-display);text-transform:uppercase;margin:0 0 20px;font-size:clamp(26px,3vw,34px);font-weight:700;font-stretch:115%;line-height:1}.wstep-sub{color:var(--slate);margin:-8px 0 18px;font-size:15px}.cal-wrap{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;display:grid}.cal-box{min-width:0}.cal-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.cal-top h4{font-family:var(--f-display);text-transform:uppercase;margin:0;font-size:22px;font-weight:700;font-stretch:115%}.cal-nav{gap:6px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--white);cursor:pointer;border-radius:3px;place-items:center;width:40px;height:40px;display:grid}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.dow,.days{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.dow span{font-family:var(--f-mono);color:var(--slate);text-align:center;padding-bottom:6px;font-size:11px}.day{aspect-ratio:1;border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;border-radius:3px;font-size:15px}.day:hover:not(:disabled){border-color:var(--navy)}.day:disabled{color:var(--slate);cursor:not-allowed;border-color:#0000}.day.booked{opacity:.65;text-decoration:line-through}.day.today{border-style:dashed;border-color:var(--slate)}.day.sel{background:var(--navy);border-color:var(--navy);color:var(--white)}.cal-note{color:var(--slate);margin:12px 0 0;font-size:13px}.selected-box{background:var(--paper);align-content:start;gap:8px;padding:20px;display:grid}.flex-btn,.chips span{border:1px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;text-align:center;border-radius:3px;padding:9px 13px;font-size:14px;display:block}.flex-btn[aria-pressed=true],.chips input:checked+span{background:var(--navy);color:var(--white);border-color:var(--navy)}.time-label{margin-top:18px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips label{flex:auto;position:relative}.chips input,.opt input{opacity:0;position:absolute}.chips input:focus-visible+span,.opt input:focus-visible+.session-tile{outline:2px solid var(--navy);outline-offset:3px}.pick{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.opt{cursor:pointer;position:relative}.session-tile{background:var(--paper);border-radius:3px;flex-direction:column;justify-content:space-between;gap:28px;height:100%;min-height:190px;padding:18px;display:flex}.o-n,.pn,.l{font-family:var(--f-mono);color:var(--slate);font-size:11px}.o-b{gap:6px;display:grid}.opt .t{font-family:var(--f-display);text-transform:uppercase;font-size:20px;font-weight:700;font-stretch:112%;line-height:1}.pr{font-family:var(--f-display);font-size:32px;font-weight:700;line-height:1}.opt input:checked+.session-tile{background:var(--navy);color:var(--white)}.opt input:checked+.session-tile .o-n,.opt input:checked+.session-tile .pn,.opt input:checked+.session-tile .l{color:var(--white)}.extra{margin-top:14px}.addons{border-top:1px solid var(--line);color:var(--slate);margin-top:20px;padding-block:16px;font-size:13px}.addons p{margin:8px 0}.addon-note{font-size:12px}.fgrid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.full{grid-column:1/-1}.lbl{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.lbl em{color:var(--slate);font-style:normal;font-weight:400}#v-book input:not([type=radio]):not([type=checkbox]),#v-book textarea{background:var(--white);border:1.5px solid var(--line);width:100%;font:inherit;color:var(--ink);border-radius:3px;padding:12px 14px}#v-book textarea{resize:vertical;min-height:110px}.review{border-top:1px solid var(--line);margin-bottom:18px}.review div{border-bottom:1px solid var(--line);overflow-wrap:anywhere;justify-content:space-between;gap:16px;padding:11px 0;font-size:15px;display:flex}.review span:first-child{color:var(--slate)}.review span:last-child{text-align:right;font-weight:500}.terms{border:1px solid var(--line);border-radius:3px;margin-bottom:16px}.terms summary{cursor:pointer;align-items:center;gap:6px;padding:14px 16px;font-weight:600;list-style:none;display:flex}.terms summary span{color:var(--slate);margin-right:auto;font-weight:400}.terms summary:after{content:"Read +";font-family:var(--f-mono);color:var(--navy);font-size:12px;font-weight:400}.terms[open] summary:after{content:"Close −"}.terms ol{counter-reset:t;max-height:46vh;margin:0;padding:0 16px 8px;list-style:none;overflow:auto}.terms li{counter-increment:t;border-top:1px solid var(--line);color:var(--slate);grid-template-columns:30px minmax(0,1fr);padding:12px 0;font-size:14px;display:grid}.terms li:before{content:counter(t,decimal-leading-zero);font-family:var(--f-mono);color:var(--gold);padding-top:2px;font-size:12px}.terms b{color:var(--ink);display:block}.check{align-items:flex-start;gap:10px;font-size:14px;display:flex}.check input{accent-color:var(--navy);flex:none;width:18px;height:18px;margin-top:5px}.booking-error{min-height:24px;color:var(--danger);margin:14px 0 0;font-size:14px}.wiz-nav{border-top:1px solid var(--line);justify-content:space-between;gap:10px;margin-top:14px;padding-block:14px;display:flex}.book-btn{border:1px solid var(--navy);background:var(--navy);color:var(--white);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;padding:14px 22px;font-size:15px;font-weight:600;display:inline-flex}.book-btn.line{background:var(--white);color:var(--ink);border-color:var(--line)}.book-btn:disabled{opacity:.5;cursor:not-allowed}.booking-send{background:var(--paper);width:200px;height:56px;color:var(--ink);cursor:pointer;border:0;border-radius:3px;font-weight:600;position:relative}.booking-send svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.booking-send path{fill:none;stroke-width:2px}.bf4-btn-track{stroke:var(--line)}.bf4-btn-ring{stroke:var(--navy);stroke-dasharray:100 100;stroke-dashoffset:calc(100 - var(--bf4-step)*33.334);opacity:min(1,var(--bf4-step));transition:stroke-dashoffset .6s}.booking-send.is-ready{background:var(--navy);color:var(--white)}.booking-send span{position:relative}.booking-confirm h2{font-family:var(--f-display);text-transform:uppercase;margin:18px 0;font-size:38px;font-weight:800;font-stretch:125%;line-height:1.1}.booking-confirm p{color:var(--slate);margin-bottom:24px}@media (width<=1060px){.cal-wrap{grid-template-columns:1fr}.pick{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.book-layout{grid-template-columns:1fr;gap:18px}.book-side{position:static}.bs-band{gap:8px;padding:14px 16px}.bs-band h1{font-size:34px}.bs-note{display:none}.bs-sum div{padding:6px 0;font-size:13px}}@media (width<=759.98px){#v-book{padding-top:0}.site-layout:has(#v-book){padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.book-layout{grid-template-columns:minmax(0,1fr);gap:22px}.book-side{top:env(safe-area-inset-top,0px);z-index:5;border-radius:0;margin-inline:-20px;position:sticky}.bs-band{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:12px 20px;display:grid}.bs-band>.label,.bs-note{display:none}.bs-band h1{font-size:26px}.bs-sum{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;margin:0;display:grid}.bs-sum div{border:0;min-width:0;padding:0;display:block}.bs-sum dt{font-family:var(--f-mono);letter-spacing:.06em;text-transform:uppercase;opacity:.75;margin-bottom:4px;font-size:9px}.bs-sum dd{text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.wstep-title{font-size:26px}.book-main{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}.wiz-nav{background:var(--white);padding:14px max(20px,env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));z-index:6;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid;position:fixed;bottom:0;left:0;right:0}.wiz-nav .book-btn,.wiz-nav .booking-send{width:100%;min-width:0;height:56px;padding-inline:10px}.session-tile{gap:16px;min-height:140px;padding:14px}.pr{font-size:26px}}@media (width<=560px){.fgrid{grid-template-columns:1fr;gap:14px}}
