.treatments-directory,.treatment-detail-hero{width:min(100%,1180px);margin:0 auto;padding:92px 24px 76px}.treatments-directory{width:100%;max-width:none;padding:0 0 76px}.treatments-directory-hero{min-height:min(470px, calc(100vh - var(--header-height)));align-items:end;padding:78px max(24px,50vw - 566px) 62px;display:grid;position:relative;overflow:hidden}.treatments-directory-hero img{z-index:0;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.treatments-directory-hero:before,.treatments-directory-hero:after{z-index:1;content:"";pointer-events:none;position:absolute;inset:0}.treatments-directory-hero:before{background:linear-gradient(90deg,#fffffff2 0%,#ffffffd1 34%,#ffffff14 72%),#2025541a}.treatments-directory-hero:after{background:linear-gradient(#0000 0%,#ffffff57 38%,#ffffffe0 76%,#fff 100%);height:34%;top:auto}.treatments-directory .section-heading{z-index:2;max-width:760px;margin-bottom:0;position:relative}.treatments-directory .section-heading h1,.treatment-detail-copy h1{color:var(--navy);font-family:var(--font-title-active);margin:0;font-weight:400;line-height:1.08}.treatments-directory .section-heading h1{font-size:clamp(2rem,4.8vw,3.55rem)}.treatment-detail-copy h1{font-size:clamp(2.35rem,5.8vw,4.2rem)}.treatments-directory .section-heading p,.treatment-detail-copy p{max-width:760px;color:var(--muted);font-size:1.04rem}.treatments-directory-grid{z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;width:min(100% - 48px,1180px);margin:1rem auto 0;display:grid;position:relative}.treatments-directory-tools{z-index:3;border:1px solid var(--line);border-radius:var(--radius);background:#fffffff5;gap:.7rem;width:min(100% - 48px,1180px);margin:-32px auto 0;padding:.72rem;display:grid;position:relative}.treatments-search-row{display:block}.treatments-search{gap:.34rem;min-width:0;display:grid}.treatments-search span{color:var(--primary);text-transform:uppercase;font-size:.72rem;font-weight:900}.treatments-search-control{grid-template-columns:minmax(0,1fr) 46px;align-items:stretch;gap:.62rem;display:grid}.treatments-search input{border:1px solid var(--line);border-radius:var(--radius);width:100%;height:46px;min-height:0;color:var(--navy);background:#fff;outline:0;padding:.72rem .82rem;font-weight:700}.treatments-search input:focus{border-color:#ff5a189e}.treatments-filter-toggle{border-radius:var(--radius);width:46px;height:46px;min-height:0;color:var(--primary);cursor:pointer;background:#fff7f2;border:1px solid #ff5a1847;place-items:center;padding:0;display:grid}.treatments-filter-toggle svg{width:20px;height:20px}.treatments-category-filter{scrollbar-width:thin;opacity:0;flex-wrap:wrap;gap:.48rem;max-height:0;scroll-padding-inline:.2rem;transition:max-height .18s,padding-top .18s,opacity .18s;display:flex;overflow:hidden}.treatments-directory-tools[data-filter-open=true] .treatments-category-filter{opacity:1;max-height:130px;padding-top:.14rem}.treatments-category-filter{justify-content:flex-start;gap:.48rem}.treatments-category-filter button{min-height:36px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #20255424;border-radius:999px;flex:none;padding:.48rem .68rem;font-size:.78rem;font-weight:850}.treatments-category-filter button.is-active{color:var(--primary);background:#fff7f2;border-color:#ff5a1870}.treatment-directory-card,.treatment-detail-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff}.treatment-directory-card{grid-template-rows:auto minmax(150px,1fr) auto;min-height:430px;padding:1rem;transition:border-color .18s,transform .18s;display:grid}.treatment-directory-card:hover{border-color:#ff5a186b;transform:translateY(-2px)}.treatment-card-image{aspect-ratio:16/9;border-radius:var(--radius);text-align:left;background:#f8fafc;border:1px solid #20255424;place-items:center;width:100%;min-width:0;max-width:100%;margin-bottom:1rem;padding:0;display:grid;position:relative;overflow:hidden}button.treatment-card-image{cursor:pointer}.treatment-card-placeholder{color:#2025545c;border-style:dashed;gap:.34rem}.treatment-card-placeholder strong{color:#20255480;letter-spacing:0;text-transform:uppercase;font-size:.82rem;font-weight:900}.treatment-before-after-frame{background:#f8fafc;min-width:0;max-width:100%;position:absolute;inset:0;overflow:hidden}.treatment-preview-panel{align-content:space-between;min-width:0;padding:.85rem;display:grid;position:absolute;inset:0;overflow:hidden}.treatment-preview-panel img{object-fit:cover;width:100%;min-width:0;max-width:none;height:100%;display:block;position:absolute;inset:0}.treatment-preview-before{clip-path:inset(0 50% 0 0);background:#f4f6f8;border-right:1px dashed #20255424}.treatment-preview-after{clip-path:inset(0 0 0 50%);background:#eff9f4;border-left:1px dashed #14733a24}.treatment-preview-label{z-index:1;width:fit-content;color:var(--navy);text-transform:uppercase;background:#ffffffdb;border:1px solid #2025541f;border-radius:999px;padding:.28rem .48rem;font-size:.68rem;font-weight:950;line-height:1;position:relative}.treatment-preview-after .treatment-preview-label{color:#14733a;justify-self:end}.treatment-preview-code{z-index:1;color:#20255438;font-family:var(--font-title-active);font-size:clamp(1.9rem,4vw,3rem);font-weight:400;line-height:1;position:relative}.treatment-preview-after .treatment-preview-code{color:#14733a38;justify-self:end}.treatment-before-after-frame.has-media .treatment-preview-code{display:none}.treatment-preview-divider{background:#ffffffeb;border-radius:999px;width:2px;position:absolute;top:.7rem;bottom:.7rem;left:50%;transform:translate(-50%)}.treatment-preview-divider:before{content:"";background:#fff;border:1px solid #2025541f;border-radius:999px;width:12px;height:38px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.treatment-directory-card:hover .treatment-preview-before,.treatment-directory-card:focus-within .treatment-preview-before,.treatment-card-image.is-previewing .treatment-preview-before{animation:7s cubic-bezier(.77,0,.18,1) infinite treatment-before-preview}.treatment-directory-card:hover .treatment-preview-after,.treatment-directory-card:focus-within .treatment-preview-after,.treatment-card-image.is-previewing .treatment-preview-after{animation:7s cubic-bezier(.77,0,.18,1) infinite treatment-after-preview}.treatment-directory-card:hover .treatment-preview-divider,.treatment-directory-card:focus-within .treatment-preview-divider,.treatment-card-image.is-previewing .treatment-preview-divider{animation:7s cubic-bezier(.77,0,.18,1) infinite treatment-divider-preview}.treatment-card-footer{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.treatment-card-body{grid-template-rows:auto 1fr;gap:.8rem;min-height:0;display:grid}.treatment-card-heading{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:.75rem;display:grid}.treatment-card-category{width:fit-content;max-width:10.5rem;color:var(--primary);text-align:center;text-transform:uppercase;background:#fff7f2;border:1px solid #ff5a1833;border-radius:999px;justify-content:center;justify-self:end;align-items:center;padding:.3rem .58rem;font-size:.68rem;font-weight:900;line-height:1.08;display:inline-flex}.treatment-card-footer{border-top:1px solid var(--line);align-self:end;margin-top:auto;padding-top:1rem}.treatment-card-footer small{color:var(--muted);font-size:.82rem;font-weight:750}.treatment-card-actions{flex:none;align-items:center;gap:.45rem;display:flex}.treatment-detail-panel dt{color:var(--primary);letter-spacing:0;text-transform:uppercase;font-size:.77rem;font-weight:900}.treatment-plan-link,.treatment-reservation-link{min-height:42px;padding:.65rem .9rem;font-size:.82rem}.treatment-plan-link{place-items:center;width:42px;min-width:42px;padding:0;display:grid}.treatment-plan-link.is-added{color:var(--primary);background:#fff7f2;border-color:#ff5a186b}.treatment-directory-card h2{min-width:0;color:var(--navy);font-family:var(--font-title-active);letter-spacing:0;flex:auto;margin:0;font-size:1.28rem;font-weight:400;line-height:1.12}.treatment-directory-card p{color:var(--muted);align-self:center;margin:0;font-size:.94rem}.treatments-empty-state{border:1px solid var(--line);border-radius:var(--radius);width:min(100% - 48px,1180px);color:var(--muted);text-align:center;margin:1rem auto 0;padding:1.2rem;font-weight:750}@media (width>=1360px){.treatments-directory-hero{padding-inline:max(24px,50vw - 726px)}.treatments-directory-tools,.treatments-directory-grid{width:min(100% - 48px,1500px)}.treatments-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.treatment-detail-hero{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:start;gap:1.5rem;display:grid}.treatment-detail-copy{min-width:0}.treatment-detail-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.treatment-detail-panel{padding:1.25rem}.treatment-detail-media{border-radius:var(--radius);background:#f8fafc;border:1px dashed #2025542e;place-items:center;min-height:360px;display:grid}.treatment-detail-media span{color:#20255452;max-width:220px;font-family:var(--font-title-active);text-align:center;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:400;line-height:1.08}.treatment-detail-panel dl,.treatment-detail-panel div{margin:0}.treatment-detail-panel div+div{border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem}.treatment-detail-panel dd{color:var(--navy);margin:.35rem 0 0;font-weight:850;line-height:1.45}.treatment-detail-notes{grid-column:1/-1;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:1.5rem;padding-top:.5rem;display:grid}.treatment-detail-notes>div{border-top:1px solid var(--line);padding-top:1.3rem}.treatment-detail-notes h2{color:var(--navy);font-family:var(--font-title-active);margin:.35rem 0 1rem;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:400;line-height:1.16}.treatment-detail-notes ol{color:var(--muted);gap:.7rem;margin:0;padding-left:1.25rem;font-weight:650;display:grid}.treatment-detail-pagination{gap:.75rem;display:grid}.treatment-detail-pagination a{border:1px solid var(--line);border-radius:var(--radius);background:#fff;gap:.2rem;padding:.9rem 1rem;display:grid}.treatment-detail-pagination a:hover{border-color:#ff5a186b}.treatment-detail-pagination span{color:var(--primary);text-transform:uppercase;font-size:.72rem;font-weight:900}.treatment-detail-pagination strong{color:var(--navy);font-size:1rem;line-height:1.35}@keyframes treatment-before-preview{0%,18%,to{clip-path:inset(0 50% 0 0)}32%,46%{clip-path:inset(0)}62%,78%{clip-path:inset(0 100% 0 0)}}@keyframes treatment-after-preview{0%,18%,to{clip-path:inset(0 0 0 50%)}32%,46%{clip-path:inset(0 0 0 100%)}62%,78%{clip-path:inset(0)}}@keyframes treatment-divider-preview{0%,18%,to{opacity:1;left:50%}32%,46%{opacity:.72;left:100%}62%,78%{opacity:.72;left:0%}}@media (prefers-reduced-motion:reduce){.treatment-directory-card:hover .treatment-preview-before,.treatment-directory-card:focus-within .treatment-preview-before,.treatment-card-image.is-previewing .treatment-preview-before,.treatment-directory-card:hover .treatment-preview-after,.treatment-directory-card:focus-within .treatment-preview-after,.treatment-card-image.is-previewing .treatment-preview-after,.treatment-directory-card:hover .treatment-preview-divider,.treatment-directory-card:focus-within .treatment-preview-divider,.treatment-card-image.is-previewing .treatment-preview-divider{animation:none}}@media (width<=1000px){.treatments-directory,.treatment-detail-hero{padding:72px 20px 58px}.treatments-directory{padding:0 0 58px}.treatments-directory-hero{min-height:390px;padding:66px 20px 54px}.treatments-directory-grid,.treatments-directory-tools{width:calc(100% - 40px)}.treatments-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.treatment-detail-hero,.treatment-detail-notes{grid-template-columns:1fr}}@media (width<=700px){.treatments-directory-grid{grid-template-columns:1fr}.treatment-directory-card{grid-template-rows:auto;min-height:0}.treatment-card-body{grid-template-rows:auto;gap:.62rem}.treatment-directory-card p{align-self:start}.treatments-directory-hero{min-height:360px}.treatments-directory-hero:before{background:linear-gradient(90deg,#fffffff5 0%,#ffffffbd 56%,#ffffff2e 100%),#20255414}.treatment-card-footer{flex-direction:column;align-items:stretch;margin-top:0;padding-top:.8rem}.treatment-card-actions{grid-template-columns:42px 1fr;width:100%;display:grid}.treatments-category-filter{white-space:nowrap;flex-wrap:nowrap;overflow-x:auto}.treatments-directory-tools[data-filter-open=true] .treatments-category-filter{max-height:54px}.treatment-card-heading{align-items:flex-start}.treatment-reservation-link{width:100%}.treatment-detail-media{min-height:220px}.treatment-detail-actions{display:grid}}
