.vigor-stage .line-float{display:grid;place-items:center;width:60px;height:60px;min-width:60px;min-height:60px;padding:4px;border-radius:50%;gap:0;background:#06c755}.vigor-stage .line-float svg{width:48px;height:48px}.vigor-stage .header-main .nav{gap:clamp(10px,1.1vw,20px);font-size:.875rem;flex-wrap:wrap;justify-content:flex-end;min-width:0}.vigor-stage .header-main .nav a{white-space:nowrap}.vigor-stage .header-main .nav .btn{font-size:.875rem;padding:12px 16px}.vigor-stage .booking{font-size:1rem}.vigor-stage .booking-grid{gap:clamp(36px,6vw,80px);align-items:start}.vigor-stage .booking .booking-copy h2,body.vigor-stage.vigor-home .home-tail .booking h2{font-size:clamp(1.625rem,2.2vw,2rem);line-height:1.4;letter-spacing:-.035em}.vigor-stage .booking .booking-form h2,body.vigor-stage.vigor-home .home-tail .booking .booking-form h2{font-size:1.5rem;line-height:1.4;letter-spacing:-.025em}.vigor-stage .booking-process{list-style:none;margin:32px 0 0;padding:0}.vigor-stage .booking-process li{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:20px;position:relative;padding:0 0 30px;min-height:110px}.vigor-stage .booking-process li:last-child{padding-bottom:0}.vigor-stage .booking-process li:not(:last-child)::after{content:"";position:absolute;left:34px;top:72px;bottom:3px;border-left:1px solid #ffffff50}.vigor-stage .process-symbol{position:relative;display:grid;place-items:center;width:70px;height:70px;border:1px solid #ffffff70;border-radius:50%}.vigor-stage .process-symbol svg{width:40px;height:40px}.vigor-stage .process-symbol>span{position:absolute;right:-5px;bottom:-3px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--pop);color:var(--deep);font-size:.75rem;font-weight:900}.vigor-stage .booking .booking-process h3{font-size:1.0625rem;line-height:1.5;letter-spacing:0;margin:0 0 6px}.vigor-stage .booking .booking-process p{font-size:.9375rem;line-height:1.7;color:#d6ded5;margin:0}.vigor-stage .booking-form{padding:32px;min-width:0}.vigor-stage .booking .booking-form-intro{font-size:.9375rem;line-height:1.6;color:var(--muted);margin:8px 0 28px}.vigor-stage .booking-form .booking-group{margin:0 0 26px;min-width:0}.vigor-stage .booking-form .booking-group legend{font-size:1rem;line-height:1.7;font-weight:800;letter-spacing:0;margin-bottom:12px;padding:0;max-width:100%}.vigor-stage .booking-group legend small{font-size:.875rem;font-weight:500;white-space:normal}.vigor-stage .booking-group:first-of-type>legend>span:first-child,.vigor-stage .service-choice>legend>span:first-child,.vigor-stage .booking-group-heading>span{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:8px;border-radius:50%;background:var(--forest);color:var(--paper);font-size:.8125rem;font-weight:850;vertical-align:middle}.vigor-stage .booking-group-heading{display:flex;align-items:center;gap:0;margin:30px 0 22px;border-top:1px solid var(--line);padding-top:24px}.vigor-stage .booking-group-heading h3{font-size:1rem;line-height:1.7;letter-spacing:0}.vigor-stage .booking .field,.vigor-stage .booking .radio-service,.vigor-stage .booking-choice{font-size:.9375rem;line-height:1.6;font-weight:650}.vigor-stage .booking .field input,.vigor-stage .booking .field select,.vigor-stage .booking .field textarea{font-size:1rem;line-height:1.5;padding:10px 12px;min-height:44px}.vigor-stage .booking .field{margin-bottom:18px}.vigor-stage .booking .form-row .field{margin-bottom:0}.vigor-stage .booking .radio-service{padding:10px 12px;min-height:44px}.vigor-stage .booking .radio-service input,.vigor-stage .booking-choice input{width:18px;height:18px;flex:0 0 18px;margin:0;accent-color:var(--forest)}.vigor-stage .booking-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.vigor-stage .booking-choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-height:44px;min-width:0;cursor:pointer}.vigor-stage .booking-choice:has(:checked){background:#e4e7d9;border-color:var(--forest)}.vigor-stage .booking-choice:focus-within,.vigor-stage .radio-service:focus-within{outline:2px solid var(--forest);outline-offset:2px}.vigor-stage .booking .choice-hint{font-size:.875rem;line-height:1.6;color:var(--muted);margin:0 0 12px}.vigor-stage .booking .training-note{font-size:.875rem;line-height:1.7;color:var(--muted);margin:14px 0 0;padding-left:12px;border-left:3px solid var(--pop)}.vigor-stage .booking .form-note,.vigor-stage .booking .form-result{font-size:.875rem;line-height:1.7}.vigor-stage .booking .booking-form>.btn{font-size:1rem;min-height:48px;padding:12px 22px;white-space:normal}.vigor-stage .entrance-directions .venue-info{margin:0 0 30px;padding:0 0 28px;border-top:0;border-bottom:1px solid var(--line)}.vigor-stage .entrance-directions .venue-info p,.vigor-stage .entrance-directions .venue-info address{font-size:1rem;line-height:1.8;margin:12px 0}.vigor-stage .entrance-directions .venue-info>a{font-size:1rem;font-weight:750;display:inline-block;min-height:44px;padding-top:8px}
@media(min-width:901px){.vigor-stage .header-main{gap:20px}.vigor-stage .header-main .brand{flex:0 0 auto}.vigor-stage .header-main .nav{flex:1}.vigor-stage .booking-copy{position:sticky;top:calc(var(--site-header-height,92px) + 24px)}}
@media (max-width:900px), (max-width:1100px) and (max-height:600px) and (pointer:coarse) and (orientation:landscape){.vigor-stage .header-main .nav{justify-content:flex-start;gap:0;flex-wrap:nowrap}.vigor-stage .header-main .nav a{font-size:1.0625rem;white-space:normal}.vigor-stage .header-main .nav .btn{font-size:1rem;padding:12px 16px}.vigor-stage .header-main .brand{flex:1;min-width:6.5rem}.vigor-stage .booking-grid{gap:36px}.vigor-stage .booking-copy{position:static}.vigor-stage .booking-form{padding:24px 20px}.vigor-stage .booking .booking-copy h2,body.vigor-stage.vigor-home .home-tail .booking h2{font-size:1.75rem}.vigor-stage .booking .booking-form h2,body.vigor-stage.vigor-home .home-tail .booking .booking-form h2{font-size:1.5rem}.vigor-stage .booking-process{margin-top:26px}.vigor-stage .booking-process li{gap:18px;min-height:102px;padding-bottom:26px}.vigor-stage .booking .form-row{grid-template-columns:minmax(0,1fr);gap:16px}.vigor-stage .booking .field,.vigor-stage .booking .radio-service,.vigor-stage .booking-choice{font-size:.9375rem}.vigor-stage .booking .field input,.vigor-stage .booking .field select,.vigor-stage .booking .field textarea{font-size:1rem}.vigor-stage .line-float{width:56px;height:56px;min-width:56px;min-height:56px}.vigor-stage .line-float svg{width:44px;height:44px}
}
@media(max-width:540px){.vigor-stage .booking-choices{grid-template-columns:minmax(0,1fr)}}.vigor-stage .booking-fees{margin-top:32px;padding:24px 0;border-top:1px solid #ffffff40}.vigor-stage .booking-fees h3{font-size:1.25rem;line-height:1.5;letter-spacing:0;color:var(--pop);margin-bottom:16px}.vigor-stage .booking-fees>p{font-size:1rem;line-height:1.8}.vigor-stage .booking-fees dl{margin:20px 0 0}.vigor-stage .booking-fees dl>div{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;padding:12px 0;border-bottom:1px solid #ffffff30}.vigor-stage .booking-fees dt,.vigor-stage .booking-fees dd{font-size:1rem;line-height:1.7;margin:0}.vigor-stage .booking-fees dd{font-weight:750}.vigor-stage .booking-fees .first-assessment-price{color:var(--pop)}.vigor-stage .booking-fees strong{font-size:1.5rem}.vigor-stage .booking-form-intro{font-weight:650}
@media(max-width:900px){.vigor-stage .booking-fees{padding:20px 0}.vigor-stage .booking-fees h3{font-size:1.125rem}.vigor-stage .booking-fees>p,.vigor-stage .booking-fees dt,.vigor-stage .booking-fees dd{font-size:.9375rem}.vigor-stage .booking-fees dl>div{display:block}.vigor-stage .booking-fees dd{margin-top:4px}.vigor-stage .booking-fees strong{font-size:1.375rem}}
