.page-hero{padding-block:var(--space-xl) var(--space-lg)}.page-hero__lead{margin-top:var(--space-sm);font-size:var(--fs-lg);max-width:52ch;color:var(--color-ink-soft)}.booking-steps{gap:var(--space-md);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-line);flex-wrap:wrap;list-style:none;display:flex}.booking-steps li{font-size:var(--fs-sm);color:var(--color-ink-soft)}.booking-steps li.is-active{color:var(--color-gold-deep);font-weight:600}.booking-panel{max-width:40rem}.booking-step__title{font-family:var(--font-display);font-size:var(--fs-lg);margin-bottom:var(--space-md)}.booking-loading{color:var(--color-ink-soft)}.treatment-select{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));display:grid}.treatment-option{cursor:pointer;display:block}.treatment-option input{opacity:0;pointer-events:none;position:absolute}.treatment-option__card{gap:var(--space-2xs);height:100%;padding:var(--space-sm);padding-right:calc(var(--space-sm) + 1.75rem);border:2px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-paper);transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex;position:relative}.treatment-option:hover .treatment-option__card{border-color:var(--color-gold);transform:translateY(-3px);box-shadow:0 14px 28px -18px #1413114d}.treatment-option:active .treatment-option__card{transform:translateY(-1px)scale(.99)}.treatment-option__card h3{font-size:var(--fs-base);font-weight:600}.treatment-option__card p{font-size:var(--fs-sm);color:var(--color-ink-soft)}.treatment-option__check{top:var(--space-sm);right:var(--space-sm);border:2px solid var(--color-line);background:var(--color-paper);width:1.5rem;height:1.5rem;color:var(--color-paper);transition:border-color var(--transition-fast), background var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.treatment-option__check svg{opacity:0;width:.75rem;height:.75rem;transition:opacity var(--transition-fast), transform var(--transition-base);transform:scale(.4)}.treatment-option input:checked+.treatment-option__card,.treatment-option__card.is-selected{border-color:var(--color-gold);background:var(--color-paper-alt);box-shadow:0 14px 28px -18px #b98f2c8c}.treatment-option input:checked+.treatment-option__card .treatment-option__check,.treatment-option__card.is-selected .treatment-option__check{border-color:var(--color-gold);background:var(--color-gold)}.treatment-option input:checked+.treatment-option__card .treatment-option__check svg,.treatment-option__card.is-selected .treatment-option__check svg{opacity:1;transform:scale(1)}.treatment-option input:focus-visible+.treatment-option__card{outline:2px solid var(--color-gold-deep);outline-offset:2px}.booking-field{gap:var(--space-2xs);font-size:var(--fs-sm);max-width:16rem;margin-bottom:var(--space-md);flex-direction:column;font-weight:500;display:flex}.booking-field input{font:inherit;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-paper);padding:.6em .9em}.slot-grid{gap:var(--space-2xs);grid-template-columns:repeat(auto-fill,minmax(6rem,1fr));display:grid}.slot-button{font:inherit;font-size:var(--fs-sm);text-align:center;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius);transition:border-color var(--transition-fast), background var(--transition-fast);padding:.6em}.slot-button:hover{border-color:var(--color-gold-deep)}.slot-button.is-selected{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.booking-empty{color:var(--color-ink-soft);font-size:var(--fs-sm)}.booking-summary{padding:var(--space-sm);margin-bottom:var(--space-md);background:var(--color-paper-alt);border-radius:var(--radius-lg);font-size:var(--fs-sm)}.booking-summary strong{font-family:var(--font-display);font-size:var(--fs-lg);margin-bottom:var(--space-2xs);display:block}.booking-form{gap:var(--space-sm);flex-direction:column;display:flex}.booking-form__row{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.booking-form label{gap:var(--space-2xs);font-size:var(--fs-sm);flex-direction:column;font-weight:500;display:flex}.booking-form input,.booking-form textarea{font:inherit;background:var(--color-paper);border:1px solid var(--color-line);border-radius:var(--radius);color:var(--color-ink);padding:.75em 1em}.booking-form input:focus,.booking-form textarea:focus{border-color:var(--color-gold-deep);outline:none}@media (width<=560px){.booking-form__row{grid-template-columns:1fr}}.booking-confirmation{padding:var(--space-lg);background:var(--color-paper-alt);border-radius:var(--radius-lg);text-align:center}.booking-confirmation h2{margin-bottom:var(--space-sm)}.booking-confirmation p{color:var(--color-ink-soft);max-width:46ch;margin-inline:auto}.booking-status{min-height:1.4em;margin-top:var(--space-sm);font-size:var(--fs-sm)}.booking-status[data-state=error]{color:#a5402a}.booking-nav{margin-top:var(--space-md);justify-content:space-between;display:flex}
