/* The established cream and burgundy palette, with larger photography and a
   calm, readable booking flow. Decorative motion respects reduced motion. */
.photo.treatment-photo{overflow:hidden;position:relative;background:#e6ded5}
.photo.treatment-photo img,.photo.treatment-photo svg{display:block;position:static;width:100%;height:100%;left:auto;top:auto;transform:none;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.treatment-card:hover .treatment-photo>img,.treatment-card:hover .treatment-photo>svg{transform:scale(1.035)}
.chapter-art>.treatment-photo{position:absolute;inset:0;width:100%;height:100%;border-radius:0;aspect-ratio:auto}
.chapter-art .treatment-photo img{height:100%;width:100%;object-fit:cover}
.chapter-art .media-lashes svg{filter:saturate(.85)}
.chapter-word{z-index:1;color:#fff9ee;text-shadow:0 2px 22px #31190d44}
.floating-treatment{z-index:2}.floating-treatment strong{font-size:29px}
.chapter-navigation{grid-template-columns:repeat(4,1fr)}
.treatment-tools .filter-bar{flex-wrap:wrap}
.treatment-card .treatment-meta{gap:16px;align-items:center}
.treatment-meta strong{font-size:19px}.photo-credit-note{font-size:12px;line-height:1.8;color:var(--muted);max-width:700px;margin:25px 0 55px}.photo-credit-note a{text-decoration:underline;text-underline-offset:3px}
.ritual-total{align-items:start;gap:20px}.ritual-total strong{text-align:right;max-width:60%;font-size:22px}.ritual-item{gap:16px}.ritual-dock{max-width:calc(100vw - 32px)}.ritual-dock>div{min-width:0}.ritual-dock span{font-size:13px}
.appointment-page .page-intro{margin-bottom:60px}.appointment-page .page-intro h1{font-size:clamp(62px,7.5vw,104px);line-height:.98}.appointment-page .page-intro>p:last-child{max-width:540px}
.appointment-page .booking-layout{max-width:none;grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr);gap:9%;align-items:start}
.appointment-main{min-width:0}.appointment-main .booking-progress{gap:20px;font-size:13px;margin-bottom:45px}.booking-progress li{display:flex;gap:12px;align-items:center;padding-bottom:16px;line-height:1.5}.booking-progress li>span{font-size:11px}.booking-progress .current{font-weight:600}
.appointment-main .booking-form h2,.request-result h2{font-size:clamp(35px,3.5vw,48px);line-height:1.1;color:var(--wine);margin-bottom:18px}.appointment-main .booking-form>p{font-size:16px;line-height:1.7;color:#655b56}.appointment-page .field{margin:26px 0}.appointment-page .field>span{font-size:14px}.appointment-page .field input,.appointment-page .field select,.appointment-page .field textarea{border-color:#b4a59c;background:#fffaf4;min-height:54px;border-radius:10px;color:#382c28}.appointment-page .field input::placeholder,.appointment-page .field textarea::placeholder{color:#756963;opacity:1}.appointment-page .field textarea{min-height:120px;line-height:1.7}.appointment-page .field-row{gap:20px}.appointment-page .field-row .field{margin-top:0}
.appointment-page .check-field{display:flex;gap:12px;align-items:flex-start;margin:25px 0;font-size:14px;line-height:1.6}.check-field input{width:19px;height:19px;flex:0 0 19px;accent-color:var(--wine);margin-top:3px}.check-field small{display:block;font-size:12px;color:#675b54;margin-top:7px;line-height:1.8}.check-field a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.appointment-page .appointment-hint{border-left:2px solid var(--wine);padding:0 0 0 18px;font-size:14px!important}.appointment-page .form-actions{gap:14px}.appointment-page .button{white-space:normal;min-height:50px}.appointment-page .back-button{font-size:13px;padding-left:0}.appointment-page button:disabled{opacity:.65;cursor:wait}
.appointment-summary.booking-summary{padding:0;background:#eae0d6;top:112px;border-radius:15px}.appointment-summary.booking-summary:before{display:none}.appointment-image{height:265px;overflow:hidden}.appointment-image .photo{width:100%;height:100%;aspect-ratio:auto}.appointment-summary-content{padding:30px}.therapist-line{display:flex;align-items:center;gap:14px;font-size:14px;line-height:1.6;color:var(--wine)}.therapist-line img{height:47px;width:47px;border-radius:50%;object-fit:cover}.therapist-line small{font-size:11px;color:#66554c}.appointment-summary h3{font-size:38px;margin:28px 0 25px}.appointment-item{display:flex;justify-content:space-between;gap:18px;margin:18px 0;font-size:15px;line-height:1.5}.appointment-item span{max-width:68%}.appointment-item strong{font-size:13px;font-weight:500;text-align:right}.appointment-item small{display:block;font-size:12px;margin-top:4px;color:#6a5e56}.appointment-summary .summary-row{font-size:13px;align-items:start}.appointment-summary .summary-row>strong,.appointment-summary .summary-row>span:last-child{text-align:right;max-width:64%;line-height:1.6}.appointment-summary .quiet-note{font-size:12px;line-height:1.8;color:#675b54}.appointment-summary .summary-row:first-of-type{margin-top:20px}
.appointment-main .review-message{background:#eae0d6;border-radius:12px;font-size:14px;line-height:1.8;overflow-wrap:anywhere;padding:28px}.appointment-main .quiet-note{font-size:12px;line-height:1.8;margin-top:20px;color:#675b54}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-feedback{background:#f1deda;border-left:3px solid var(--wine);padding:20px;margin-top:24px;font-size:14px;line-height:1.7;color:#59222d}.booking-feedback .text-link{font-size:13px;white-space:normal}.booking-feedback button{background:transparent;text-align:left}.request-result{padding:35px 0;line-height:1.8}.request-result>p{margin:18px 0;font-size:16px;overflow-wrap:anywhere}.request-mark{height:66px;width:66px;border:1px solid var(--wine);border-radius:50%;display:grid;place-items:center;color:var(--wine);font-size:28px;margin-bottom:28px}.request-reference{font-size:12px!important;letter-spacing:.5px;color:var(--wine)}.request-result .text-link{display:inline-block;margin-top:25px}.send-indicator{height:40px;width:40px;border:2px solid #d2bfb9;border-top-color:var(--wine);border-radius:50%;margin-bottom:30px;animation:request-spin 1s linear infinite}@keyframes request-spin{to{transform:rotate(360deg)}}
.appointment-promises{margin-top:90px;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding-top:35px;border-top:1px solid var(--line)}.appointment-promises h3{font-size:29px;color:var(--wine);margin-bottom:12px}.appointment-promises p{font-size:14px;line-height:1.7;max-width:250px}
body[data-page="book"] .ask-launcher{display:none}body[data-page="book"] .ritual-dock{display:none}body[data-page="book"].has-ritual{padding-bottom:0}
@media(max-width:1000px){.appointment-page .booking-layout{gap:5%;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.appointment-summary-content{padding:24px}.appointment-main .booking-progress{gap:12px;font-size:12px}.booking-progress li{gap:8px}.appointment-image{height:220px}}
@media(max-width:760px){.appointment-page .booking-layout{display:flex;flex-direction:column;gap:40px}.appointment-main,.appointment-summary{width:100%}.appointment-page .page-intro{margin-bottom:35px}.appointment-page .page-intro h1{font-size:66px}.appointment-main .booking-progress{font-size:12px;gap:14px;margin-bottom:32px}.booking-progress li{display:block}.booking-progress li>span{display:block;margin-bottom:6px}.appointment-main .booking-form h2{font-size:38px}.appointment-page .field-row{grid-template-columns:1fr;gap:0}.appointment-page .field-row .field{margin:10px 0}.appointment-image{height:230px}.appointment-page .booking-summary{position:static}.appointment-summary h3{font-size:35px}.appointment-promises{grid-template-columns:1fr;margin-top:45px;gap:28px}.appointment-promises p{max-width:none}.appointment-promises h3{font-size:28px}.appointment-main .review-message{padding:20px;font-size:13px}.appointment-page .form-actions{align-items:stretch}.appointment-page .form-actions .button{width:100%;justify-content:center}.consent-field{font-size:13px!important}.chapter-navigation{grid-template-columns:repeat(2,1fr)}.chapter-navigation button+button{padding-left:0}.chapter-navigation button:nth-child(even){padding-left:15px}.chapter-art .media-lashes svg{object-position:center}.ritual-dock span{font-size:11px}.ritual-dock a{font-size:11px}.photo-credit-note{margin-bottom:35px}}
@media(prefers-reduced-motion:reduce){.photo.treatment-photo img,.photo.treatment-photo svg{transition:none}.treatment-card:hover .treatment-photo>*{transform:none}.send-indicator{animation:none}.chapter-art>.treatment-photo{transform:none!important}}
