.booking-hero.compact{padding-top:5vw;padding-bottom:6vw}.chosen-treatment{background:white;border:2px solid var(--ink);padding:1.3rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.chosen-treatment>div{display:grid}.chosen-treatment strong{font:1.55rem 'Italiana'}.chosen-treatment span{color:#687972;font-size:.85rem}.chosen-treatment a{color:var(--ink);font-size:.8rem}.date-label input{min-height:56px}.slot-label{font-size:.75rem;font-weight:600;margin:1.5rem 0 .7rem}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.slot-button{min-height:52px;border:1px solid var(--line);background:white;color:var(--ink);font:600 .95rem 'DM Sans';cursor:pointer}.slot-button:hover,.slot-button.selected{background:var(--ink);color:white;border-color:var(--ink)}.slot-placeholder{grid-column:1/-1;padding:1.2rem;background:rgba(255,255,255,.55);color:#6b7a75;text-align:center}.mobile-review{display:flex;justify-content:space-between;gap:2rem;padding:1.5rem;background:white;margin-bottom:1rem}.mobile-review>div{display:grid}.mobile-review small{letter-spacing:.12em}.mobile-review span{color:#6b7a75;font-size:.85rem}.booking-submit{width:100%}.submit-note{text-align:center;color:#6b7a75;font-size:.8rem;margin-top:.8rem}@media(max-width:900px){.mobile-booking{display:block;max-width:700px;padding:8vw 5%}.mobile-booking aside{margin-top:2rem}.booking-hero.compact{padding:12vw 7%}.booking-hero.compact h1{font-size:3rem}.form-section{padding-bottom:2.2rem;margin-bottom:2.2rem}.form-section h2{font-size:2rem}.slot-grid{grid-template-columns:repeat(3,1fr)}input,select,textarea{font-size:16px;min-height:52px}.booking-submit{min-height:60px;font-size:.8rem}}@media(max-width:520px){.mobile-booking{padding:7vw 4%}.form-section{grid-template-columns:38px 1fr;gap:.5rem}.treatment-step{grid-template-columns:1fr}.treatment-step .step{display:none}.chosen-treatment{padding:1rem}.chosen-treatment strong{font-size:1.3rem}.slot-grid{grid-template-columns:repeat(3,1fr)}.slot-button{min-height:56px}.two-cols{grid-template-columns:1fr}.mobile-review{position:sticky;bottom:0;z-index:4;margin:0 -2% 1rem;box-shadow:0 -8px 24px rgba(23,63,56,.1);padding:1rem}.mobile-review>div:first-child span{max-width:170px}.booking-submit{position:relative;z-index:5}}
