*{box-sizing:border-box}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-body)}main{min-height:100vh;display:grid;grid-template-columns:minmax(330px,.8fr) minmax(560px,1.2fr)}header{padding:clamp(35px,7vw,100px);background:var(--color-primary);color:#fff;display:flex;flex-direction:column;justify-content:center}.back{position:absolute;top:30px;color:inherit;text-decoration:none;opacity:.75}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;opacity:.65}header h1{font:500 clamp(55px,7vw,100px)/.9 var(--font-display);letter-spacing:-.055em;margin:24px 0}header>p:last-child{max-width:440px;line-height:1.7;opacity:.72}.booking-card{padding:clamp(35px,7vw,100px);background:#fff;display:flex;flex-direction:column;justify-content:center}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:55px}.steps span{border-top:2px solid #dde2de;padding-top:10px;font-size:11px;color:#98a19b}.steps span.active{border-color:var(--color-primary);color:var(--color-primary)}.steps b{display:block;margin-top:5px}.step h2{font:500 clamp(32px,4vw,48px)/1 var(--font-display);margin:0 0 30px}.choices{display:grid;gap:10px}.service{border:1px solid #dfe4df;border-radius:12px;padding:19px;text-align:left;background:#fff;display:grid;grid-template-columns:1fr auto;gap:8px}.service:hover{border-color:var(--color-primary);transform:translateY(-1px)}.service strong{font:500 22px var(--font-display)}.service p{grid-column:1/-1;color:#6d766f;margin:0}.service small{color:#6d766f}label{display:grid;gap:8px;font-size:12px;font-weight:750;margin-bottom:18px}input,select{width:100%;border:1px solid #dfe4df;border-radius:9px;background:#fff;padding:13px;font:inherit}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.slot{border:1px solid #dfe4df;background:#fff;border-radius:8px;padding:11px}.slot:hover,.slot.selected{background:var(--color-primary);color:#fff}.text-button{border:0;background:transparent;padding:0;margin-bottom:25px;color:#68726c}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.fields label:last-child{grid-column:1/-1}.primary{border:0;border-radius:9px;background:var(--color-primary);color:#fff;padding:15px 20px;font-weight:750;width:100%}.summary{background:#f2f4f1;border-radius:11px;padding:18px;margin-bottom:25px;line-height:1.6}.error{background:#fff0ee;color:#9b302b;padding:12px;border-radius:9px;margin-bottom:20px}.empty{color:#6d766f}.success{text-align:center}.success>span{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;margin:0 auto 25px;background:var(--color-secondary);font-size:30px}.success a{display:inline-block;margin-top:20px;color:var(--color-primary);font-weight:750}@media(max-width:850px){main{grid-template-columns:1fr}header{min-height:430px}.booking-card{min-height:600px}.back{position:static;margin-bottom:50px}.slots{grid-template-columns:repeat(3,1fr)}}@media(max-width:520px){header,.booking-card{padding:30px 20px}.steps b{display:none}.fields{grid-template-columns:1fr}.fields label:last-child{grid-column:auto}}
.service-category{margin-bottom:22px}.service-category h3{font:700 12px/1 Inter,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#6d766f;margin:0 0 10px}.service-group{display:grid;gap:10px}
#account-bar{margin-bottom:25px;padding:14px 16px;background:#f2f4f1;border-radius:11px;font-size:13px}.account-confirm{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#account-login-form{display:grid;gap:0 14px;grid-template-columns:1fr 1fr;margin-top:14px}#account-login-form label{margin-bottom:10px}#account-login-form .error{grid-column:1/-1;margin-bottom:10px}#account-login-form button.primary{grid-column:1/-1;width:auto;justify-self:start}#account-login-form a{grid-column:1/-1;font-size:12px;color:#6d766f}#logged-in-as{background:#f2f4f1;border-radius:9px;padding:12px 14px;margin-bottom:18px;font-size:13px}
