/* Calm category list, readable pricing, and a personal gift-card composer. */
.service-controls{display:grid;gap:8px;margin:24px 0 18px}.service-controls label,.gift-form label{font-size:14px;font-weight:600}.service-controls input,.service-controls select,.gift-form input:not([type=radio]),.gift-form textarea{width:100%;min-width:0;font:16px/1.5 'DM Sans',sans-serif;color:var(--ink);padding:12px 14px;border:1px solid #b7c1b4;border-radius:10px;background:#fffefb}.service-controls label:not(:first-child){margin-top:8px}.service-controls :is(input,select):focus-visible,.gift-form :is(input,textarea):focus-visible{outline:2px solid var(--ink);outline-offset:3px}.service-count{font-size:14px;color:var(--muted);margin-bottom:18px}.treatment-category{border:1px solid #d5ddd1;border-radius:14px;background:#fffefa;margin-bottom:12px;overflow:hidden}.treatment-category summary{display:flex;align-items:center;gap:13px;padding:20px 16px;cursor:pointer;list-style:none}.treatment-category summary::-webkit-details-marker{display:none}.treatment-category summary:focus-visible{outline:2px solid var(--ink);outline-offset:-4px;border-radius:14px}.category-number{font-size:12px;color:#6c7c6b;align-self:start;padding-top:3px}.category-copy{flex:1;min-width:0}.category-copy strong{display:block;font-size:17px;line-height:1.4;font-weight:500}.category-copy small{display:block;font-size:13px;color:var(--muted);margin-top:5px}.category-chevron{font-size:24px;font-weight:400;flex-shrink:0}.treatment-category[open] .category-chevron{transform:rotate(45deg)}.treatment-category[open] summary{background:#eaf0e5;border-bottom:1px solid #d5ddd1}.treatment-list{padding:0 17px}.treatment-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 14px;padding:20px 0;border-bottom:1px solid #e0e5da}.treatment-row:last-child{border:0}.treatment-row:hover .treatment-name{text-decoration:underline;text-underline-offset:4px}.treatment-name{font-size:16px;line-height:1.5}.treatment-price{font-size:14px;text-align:right;max-width:110px;align-self:start;line-height:1.6;font-weight:600;font-variant-numeric:tabular-nums}.treatment-info{grid-column:1/-1;font-size:14px;color:#586e55}.treatment-info span{margin-left:6px}.pricing-footer{padding:20px 0 0;font-size:14px;color:var(--muted)}.pricing-footer .btn{width:100%;margin-bottom:17px}.pricing-footer .text-link{display:inline-block;font-size:14px}.back-link{display:inline-block;margin:0 0 27px;font-size:14px;text-decoration:underline;text-underline-offset:4px}.app-screen .service-detail .eyebrow{font-size:12px}.app-screen .service-detail h1{font-size:34px;overflow-wrap:anywhere}.detail-price{font-size:21px;margin:18px 0 20px;font-weight:500}.detail-description{font-size:16px;line-height:1.7;color:var(--muted)}.service-detail>.text-link{line-height:1.7}.care-section{padding-top:25px;margin-top:25px;border-top:1px solid var(--line)}.app-screen .care-section h2{font-size:27px;margin-bottom:13px}.care-section ul{padding-left:20px;font-size:16px;line-height:1.7;margin-bottom:0}.care-section li+li{margin-top:12px}.care-note{margin-top:27px;padding:20px;border-radius:12px;background:#e9eee3;font-size:14px;line-height:1.65}.care-note p{margin:8px 0 14px}.detail-book{width:100%;margin-top:24px}.gift-card-preview{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:225px;border-radius:17px;padding:27px;background:#174735;color:#fbf8ed;box-shadow:inset 0 0 0 9px #174735,inset 0 0 0 10px #91a183;margin-bottom:28px}.gift-card-preview img{width:125px;filter:brightness(0) invert(1)}.gift-card-preview>span{font-size:12px;letter-spacing:2px;margin:21px 0 8px}.gift-card-preview>strong{font:48px/1.3 Georgia,serif}.gift-card-preview>p{font-size:14px;margin:12px 0 0;overflow-wrap:anywhere;max-width:100%;text-align:center}.gift-form{display:grid;gap:9px}.gift-form fieldset{border:0;margin:0 0 18px;padding:0;min-width:0}.gift-form legend{font-size:16px;font-weight:600;padding:0;margin:0 0 15px}.gift-amounts,.gift-delivery-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gift-delivery-options{grid-template-columns:repeat(3,minmax(0,1fr))}.gift-amounts label,.gift-delivery-options label{position:relative;cursor:pointer;font-weight:400;margin:0}.gift-amounts input,.gift-delivery-options input{position:absolute;opacity:0;width:1px;height:1px}.gift-amounts span,.gift-delivery-options span{display:flex;justify-content:center;align-items:center;min-height:48px;padding:10px 5px;border:1px solid #bac6b4;border-radius:9px;text-align:center;font-size:14px;background:#fffefb}.gift-form input:checked+span{color:white;border-color:#174735;background:#174735}.gift-form input:focus-visible+span{outline:3px solid #a88239;outline-offset:3px}.gift-form>label{margin-top:9px}.gift-form [id$='-field'] label{display:block;margin:9px 0}.gift-form textarea{resize:vertical;min-height:100px}.gift-form .field-help{margin:7px 0 0;font-size:13px}.gift-form .gift-submit{margin-top:13px}.optional{font-weight:400;color:var(--muted)}.gift-preview-note{font-size:13px;color:var(--muted);margin:9px 0 0;line-height:1.7}.gift-cancel{justify-self:center;margin:8px 0}.gift-share-card{border:1px solid #cad7c4;padding:19px;border-radius:14px;margin:23px 0;background:#fffefa;overflow-wrap:anywhere}.gift-share-card h3{margin:12px 0;font-size:25px}.gift-share-card>p{font-size:14px}.gift-share-card blockquote{margin:20px 0;padding-left:13px;border-left:2px solid #aabd99;white-space:pre-wrap;font-size:16px}.gift-share-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}.gift-share-actions .btn{width:100%;font-size:14px}.gift-share-card textarea{width:100%;min-height:180px;margin-top:12px}.gift-bag-message{font-size:14px;white-space:pre-wrap;margin:8px 0}.bag-row>div{min-width:0;overflow-wrap:anywhere}.bag-row>strong{white-space:nowrap}.bag-row small{font-size:13px;margin-top:6px}.bag-row .remove{font-size:14px;min-height:36px}.app-mode dialog{overflow-y:auto}.service-detail .detail-book{white-space:normal}.gift-form [hidden]{display:none}
@media(max-width:360px){.treatment-row{grid-template-columns:1fr}.treatment-price{text-align:left;max-width:none}.gift-amounts{grid-template-columns:repeat(2,1fr)}.category-copy strong{font-size:16px}}
.treatment-subtitle{display:block;font-size:13px;font-weight:400;color:var(--muted);line-height:1.6;margin-top:5px}.detail-subtitle{font-size:16px;line-height:1.6;color:var(--muted);margin-top:12px}.service-options{padding:20px;border:1px solid #cdd7c6;border-radius:14px;background:#fffefa;margin:22px 0}.app-screen .service-options h2{font-size:25px;margin:0 0 15px}.service-options dl{margin:0}.service-options dl>div{display:grid;gap:6px;border-top:1px solid var(--line);padding:16px 0}.service-options dl>div:first-child{border-top:0;padding-top:0}.service-options dl>div:last-child{padding-bottom:0}.service-options dt{font-size:15px;line-height:1.6}.service-options dd{font-size:16px;font-weight:600;margin:0;line-height:1.6}.service-notes{padding:16px 18px 16px 34px;background:#eaf0e5;border-radius:12px;font-size:14px;line-height:1.7;margin:22px 0}.app-screen .plan .price small{font-size:14px}.treatment-price{max-width:120px}.gift-receipt-link{width:100%;margin-top:22px}
.booking-flow>.eyebrow{margin:0 30px 16px 0}.booking-flow>h2{margin:0 0 18px;line-height:1.2}.booking-flow .booking-intro{margin:0 0 26px;line-height:1.65}.booking-office{padding:22px 0;border-top:1px solid var(--line)}.booking-office h3{margin:0 0 10px;font-size:25px;line-height:1.3}.booking-office .booking-number{margin:0 0 18px;font-size:23px;line-height:1.4}.booking-flow .booking-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-flow .booking-actions .btn{margin:0;min-height:48px;text-align:center}.booking-flow>.note{margin:6px 0 0;font-size:14px;line-height:1.65}
.care-introduction{margin-top:24px;font-size:16px;line-height:1.7;color:var(--muted)}.care-product+.care-product{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.app-screen .care-product h3{font-size:23px;margin:18px 0 12px}.care-note p:last-child{margin-bottom:0}
.gift-amounts .gift-custom-choice{grid-column:1/-1}#gift-custom-field{margin-top:18px}#gift-custom-field label{display:block;margin-bottom:9px;font-size:14px}#gift-custom-amount{width:100%;min-width:0;font-size:16px;padding:13px;border:1px solid #bac6b4;border-radius:9px}.gift-card-preview>strong{max-width:100%;overflow-wrap:anywhere}
.install-azala{display:block;margin:24px auto 12px;font-size:14px;min-height:44px}.install-steps{padding-left:22px;line-height:1.8;font-size:16px}.install-steps li+li{margin-top:10px}@media(display-mode:standalone){.device-label{display:none}body.app-mode{padding:0}.device-shell{width:100%;height:100dvh;border:0;border-radius:0;box-shadow:none}}
