.treatment-hero { padding:52px 0 60px; background:linear-gradient(120deg,#211b14,#3b3022); color:#f8f0df; }
.treatment-back { display:block; margin-bottom:28px; color:#e6d3a1; text-decoration:none; }
.treatment-eyebrow { display:block; font-size:.68rem; letter-spacing:.14em; font-weight:700; color:var(--spa-gold-dark); margin-bottom:12px; }
.treatment-hero .treatment-eyebrow { color:#e3c673; }
.treatment-hero h1 { font-size:clamp(2rem,4vw,3.3rem); color:#fff8ea; max-width:900px; overflow-wrap:anywhere; }
.treatment-hero p { margin:16px 0 0; color:#ded0bb; }
.treatment-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,360px); gap:32px; align-items:start; padding-top:40px; padding-bottom:56px; }
.treatment-main,.treatment-sidebar { min-width:0; }
.treatment-cover { display:block; width:100%; height:340px; object-fit:cover; border-radius:18px; margin-bottom:24px; }
.treatment-panel { background:#fff; padding:30px; border:1px solid #e9dfcb; border-radius:18px; margin-bottom:24px; box-shadow:0 8px 30px #2b211008; }
.treatment-panel h2,.treatment-related h2 { font-size:1.7rem; line-height:1.35; margin-bottom:20px; overflow-wrap:anywhere; }
.treatment-panel h3 { font-size:1.12rem; margin:24px 0 10px; }
.treatment-panel p { color:#6a5f52; line-height:1.85; margin-bottom:16px; }
.treatment-panel .treatment-intro { font-size:1.08rem; color:#493e31; }
.treatment-focus { background:#f8f3e8; padding:1px 20px 4px; border-left:3px solid #bc9632; border-radius:0 12px 12px 0; margin:24px 0; }
.treatment-menu-note { white-space:pre-line; }
.treatment-sidebar { position:sticky; top:100px; }
.treatment-booking h2 { font-size:1.5rem; margin-bottom:8px; }
.treatment-prices { list-style:none; padding:0; margin:16px 0 24px; }
.treatment-prices li { display:flex; align-items:baseline; gap:8px; padding:12px 0; border-bottom:1px solid #efe6d6; font-size:.95rem; color:#655541; }
.treatment-prices li > span:first-child { overflow-wrap:anywhere; }
.treatment-price-leader { flex:1; border-bottom:1px dotted #cbbc9e; min-width:8px; }
.treatment-prices strong { color:var(--spa-gold-dark); white-space:nowrap; font-weight:700; }
.treatment-prices .treatment-original-price { justify-content:space-between; font-size:.8rem; }
.treatment-book-button { display:block; width:100%; margin-top:12px; white-space:normal; }
.treatment-booking .treatment-book-note { font-size:.8rem; text-align:center; margin:18px 0 0; }
.treatment-preferences { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.treatment-preferences span { color:var(--spa-gold-dark); font-size:.85rem; }
.treatment-preferences h3 { margin-top:12px; }
.treatment-preferences p { font-size:.9rem; }
.treatment-related { padding:48px 0 64px; background:#eee4d2; }
.treatment-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.treatment-related-card { min-width:0; background:white; border-radius:16px; overflow:hidden; }
.treatment-related-card img { width:100%; height:180px; object-fit:cover; display:block; }
.treatment-related-body { padding:20px; }
.treatment-related-body h3 { font-size:1.2rem; line-height:1.4; min-height:3.4em; }
.treatment-related-body h3 a { color:var(--spa-dark); text-decoration:none; }
.treatment-related-body .treatment-prices li { font-size:.8rem; gap:4px; }
@media(max-width:1199px) { .treatment-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:991px) { .treatment-layout { grid-template-columns:minmax(0,1fr); } .treatment-sidebar { position:static; } }
@media(max-width:575px) { .treatment-hero { padding:32px 0 40px; } .treatment-layout { padding-top:24px; gap:0; } .treatment-panel { padding:22px 18px; } .treatment-cover { height:230px; } .treatment-preferences,.treatment-related-grid { grid-template-columns:minmax(0,1fr); } .treatment-related-body h3 { min-height:0; } }
