.booking-intro{padding-block:142px 34px}.booking-intro .breadcrumb{margin-bottom:30px;font-size:12px}.booking-intro-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);align-items:end;gap:8%;display:grid}.booking-page .eyebrow{font-size:11px}.booking-intro h1{margin-top:17px;font-size:clamp(58px,5.7vw,82px);line-height:1.1}.booking-intro-copy>p{color:var(--muted);max-width:430px;padding-bottom:5px;font-size:17px;line-height:1.7}.booking-quick-phone{display:none}.booking-layout{grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);align-items:start;gap:8%;padding-bottom:65px;display:grid}.booking-request{border-top:1px solid var(--ink);min-width:0;padding-top:25px}.booking-form{gap:22px;display:grid}.booking-fields-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.booking-field{min-width:0}.booking-field-label{align-items:baseline;gap:12px;margin-bottom:8px;font-size:15px;font-weight:500;line-height:1.5;display:flex}.booking-optional{color:var(--muted);font-size:12px;font-weight:400}.booking-field :is(input,textarea,select){width:100%;min-height:50px;color:var(--ink);background:#fffaf047;border:1px solid #82919a;border-radius:3px;padding:12px 14px;font-size:16px;line-height:1.5;display:block}.booking-field textarea{resize:vertical;min-height:134px}.booking-field select{cursor:pointer;padding-right:30px}.booking-field input::placeholder,.booking-field textarea::placeholder{color:#68767c;opacity:1}.booking-field :is(input,textarea,select):hover{border-color:var(--ink)}.booking-field :is(input,textarea,select):focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-color:var(--ink)}.booking-field [aria-invalid=true]{border-color:#983c29}.booking-field-hint{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.5}.booking-service-note{border-left:2px solid var(--coral);color:var(--muted);margin-top:11px;padding-left:13px;font-size:13px;line-height:1.6}.booking-service-note p+p{margin-top:7px}.booking-context-clear{color:var(--ink);font:inherit;text-align:start;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;display:inline}.booking-mode-context .booking-context-clear{min-height:30px}.booking-field-error{color:#8d3525;margin-top:8px;font-size:13px;line-height:1.5}.booking-field :disabled,.booking-context-clear:disabled{opacity:.7;cursor:wait}.booking-actions{align-items:center;gap:21px;padding-top:2px;display:flex}.booking-submit{flex-shrink:0;gap:23px}.booking-submit:disabled{cursor:wait;opacity:.72;transform:none}.booking-submit-note{color:var(--muted);max-width:250px;font-size:13px;line-height:1.55}.booking-privacy{color:var(--muted);max-width:480px;margin-top:-7px;font-size:12px;line-height:1.6}.booking-privacy a,.booking-form noscript a{text-underline-offset:3px;text-decoration:underline}.booking-honeypot{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.booking-honeypot input{border:0;width:1px;padding:0}.booking-status{overflow-wrap:anywhere}.booking-form-error{color:#813320;background:#f4ded0;border-left:3px solid #983c29;padding:13px 16px;font-size:14px;line-height:1.6}.booking-form-error a{text-underline-offset:3px;min-height:40px;padding-top:8px;text-decoration:underline;display:inline-block}.booking-form-success{padding-block:8px 24px}.booking-success-mark{border:1px solid #6e827b;border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:23px;font-size:23px;display:grid}.booking-form-success h2{font-size:clamp(36px,3.5vw,49px);line-height:1.15}.booking-form-success h2:focus{outline-offset:6px}.booking-form-success p{color:var(--muted);max-width:480px;margin-top:20px;font-size:16px;line-height:1.7}.booking-form-success p+p{margin-top:13px}.booking-form-success strong{color:var(--ink);font-weight:500}.booking-form-success :is(.button,.text-link){margin-top:25px}.booking-form-unavailable .booking-field-hint{margin-top:10px;font-size:13px}.booking-form-success>.booking-context-clear{min-height:44px;margin-top:13px;font-size:14px;display:block}.booking-contact{background:var(--ink);color:var(--cream);padding:29px 30px 26px;container-type:inline-size}.booking-contact-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.booking-contact-heading h2{font-size:clamp(31px,9cqw,43px);line-height:1.15}.booking-contact-heading>svg{color:#e8bd9d;width:37px;height:37px}.booking-contact>p{color:#d8e0df;max-width:320px;margin-top:15px;font-size:15px;line-height:1.65}.booking-phone{width:fit-content;min-height:44px;font-family:var(--serif);white-space:nowrap;align-items:center;gap:14px;margin-top:15px;font-size:clamp(25px,8.4cqw,36px);line-height:1.3;display:flex}.booking-phone svg{width:17px}.booking-email{text-underline-offset:4px;overflow-wrap:anywhere;min-height:40px;padding-top:8px;font-size:14px;line-height:1.5;-webkit-text-decoration:underline #91a2ad;text-decoration:underline #91a2ad;display:inline-block}.booking-phone:hover,.booking-email:hover{color:#efb293}.booking-calendar{border-top:1px solid var(--line);margin-top:20px;padding:27px 0 26px}.booking-calendar h2{max-width:320px;margin-top:15px;font-size:33px;line-height:1.15}.booking-calendar>p:not(.eyebrow){color:#304e5d;margin-top:16px;font-size:15px;line-height:1.65}.booking-calendar .text-link{gap:20px;margin-top:10px;font-size:14px}.booking-calendar>small{color:#304e5d;margin-top:14px;font-size:12px;line-height:1.6;display:block}.booking-practical{border-top:1px solid var(--line);padding-block:37px 58px}.booking-practical-heading{justify-content:space-between;align-items:center;gap:28px;display:flex}.booking-practical-heading h2{font-size:clamp(33px,3.4vw,45px)}.booking-practical-heading>p{color:var(--muted);font-size:14px}.booking-practical-grid{grid-template-columns:1fr 1fr 1fr;gap:7%;margin-top:33px;display:grid}.booking-practical-grid .eyebrow{font-family:var(--sans);color:var(--muted);letter-spacing:.1em;line-height:1.5}.booking-practical-grid address{margin-top:16px;font-size:16px;font-style:normal;line-height:1.7}.booking-practical-grid p{color:var(--muted);margin-top:16px;font-size:14px;line-height:1.7}.booking-practical-grid .text-link{gap:16px;margin-top:9px;font-size:14px}.booking-hours dl{margin:12px 0 0}.booking-hours dl>div{justify-content:space-between;gap:14px;padding-block:4px;font-size:14px;line-height:1.7;display:flex}.booking-hours dd{white-space:nowrap;margin:0}.booking-wellness-note{color:var(--muted);margin-top:33px;font-size:12px;line-height:1.65}.booking-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.booking-page~.site-footer .world-footer-top{display:none}@media (max-width:1100px){.booking-intro-grid,.booking-layout{grid-template-columns:minmax(0,1.2fr) minmax(290px,1fr);gap:5%}.booking-intro h1{font-size:65px}.booking-contact{padding-inline:25px}.booking-actions{flex-direction:column;align-items:start;gap:12px}.booking-submit-note{max-width:350px}.booking-practical-grid{gap:5%}}@media (max-width:800px){.booking-intro{padding-block:126px 27px}.booking-intro .breadcrumb{margin-bottom:22px}.booking-intro-grid{grid-template-columns:1fr;gap:18px}.booking-intro h1{margin-top:12px;font-size:62px}.booking-intro-copy>p{max-width:560px;padding:0;font-size:16px}.booking-quick-phone{align-items:center;gap:13px;width:fit-content;min-height:44px;margin-top:8px;font-size:14px;line-height:1.6;display:flex}.booking-quick-phone strong{text-underline-offset:4px;white-space:nowrap;font-weight:500;text-decoration:underline}.booking-quick-phone svg{width:17px}.booking-layout{grid-template-columns:1fr;gap:34px;padding-bottom:36px}.booking-request{padding-top:21px}.booking-fields-row{gap:18px}.booking-form{gap:20px}.booking-actions{flex-direction:row;align-items:center;gap:20px}.booking-submit-note{max-width:250px}.booking-sidebar{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.booking-contact{padding:25px 23px}.booking-calendar{padding-block:25px}.booking-contact-heading h2{font-size:31px}.booking-contact-heading>svg{display:none}.booking-phone{font-size:clamp(25px,9cqw,32px)}.booking-calendar{margin-top:0}.booking-calendar h2{font-size:31px}.booking-practical-heading{flex-direction:column;align-items:start;gap:12px}.booking-practical-grid{grid-template-columns:1fr 1fr;gap:30px 8%;margin-top:26px}.booking-payment{grid-column:1/-1;max-width:520px}}@media (max-width:600px){.booking-intro{padding-top:113px;padding-bottom:21px}.booking-intro .breadcrumb{margin-bottom:20px;font-size:11px}.booking-intro h1{font-size:clamp(40px,11.8vw,62px)}.booking-intro .eyebrow{font-size:10px}.booking-intro-grid{gap:16px}.booking-intro-copy>p{font-size:16px;line-height:1.65}.booking-fields-row{grid-template-columns:1fr;gap:18px}.booking-field-label{font-size:15px}.booking-field textarea{min-height:122px}.booking-field-hint{font-size:12px;line-height:1.6}.booking-actions{flex-direction:column;align-items:stretch;gap:12px}.booking-submit{justify-content:center;width:100%;min-height:54px}.booking-submit-note{max-width:none;font-size:13px}.booking-privacy{margin-top:-5px;font-size:12px}.booking-sidebar{grid-template-columns:1fr;gap:18px}.booking-contact{display:none}.booking-calendar{padding-block:24px 0}.booking-calendar h2{max-width:none;font-size:32px}.booking-practical{padding-block:30px 40px}.booking-practical-heading h2{font-size:34px}.booking-practical-grid{grid-template-columns:1fr;gap:25px}.booking-practical-grid>section+section{border-top:1px solid var(--line);padding-top:23px}.booking-practical-grid address,.booking-practical-grid p{margin-top:12px}.booking-hours dl{max-width:380px;margin-top:10px}.booking-hours dl>div{padding-block:5px}.booking-wellness-note{margin-top:26px}}@media (max-width:360px){.booking-quick-phone{gap:8px;font-size:13px}.booking-field select{padding-inline:10px 20px;font-size:16px}.booking-calendar h2{font-size:29px}.booking-practical-heading h2{font-size:30px}.booking-form-success h2{font-size:32px}}
