/* Editorial treatment directory, scoped to the Leistungen page. */
.services-page { background:#f4f2ef; }
.services-page .site-header { position:absolute; top:0; left:0; right:0; background:var(--cream); }
.services-page .nav-pill { background:transparent; border:0; }
.services-page .main-nav a[aria-current="page"] { text-decoration:underline; text-underline-offset:6px; }
.services-hero { position:relative; min-height:800px; height: 100vh; background:#e9e7e3; }
.services-hero-image { position:absolute; width:100%; height:100%; object-fit:cover; object-position: center; }
.services-hero-inner { position:relative; height:100%; display:flex; align-items:center; min-height:800px; }
.services-hero-copy { width:35%; padding:80px 0 40px; }
.editorial-eyebrow { display:block; font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; margin-bottom:34px; }
.editorial-eyebrow::after { content:""; display:block; width:30px; height:1px; background:#97938d; margin-top:18px; }
.services-hero h1 { font-size:clamp(3.5rem,5.5vw,5.2rem); line-height:1.06; margin-bottom:36px; }
.services-hero-copy p { max-width:280px; font-size:.9rem; line-height:1.85; margin-bottom:36px; }
.editorial-link { display:inline-block; text-transform:uppercase; font-size:.65rem; font-weight:500; letter-spacing:.09em; line-height:1.7; border-bottom:1px solid #898681; padding-bottom:2px; }
.editorial-link:hover { border-color:#242321; }
.services-intro { text-align:center; padding-top:80px; padding-bottom:70px; }
.services-intro h2 { font-size:clamp(1.9rem,3vw,2.7rem); margin-bottom:32px; }
.treatments-label { font-family:Inter,sans-serif; font-size:.65rem; letter-spacing:.12em; text-transform:uppercase; margin-bottom:22px; }
.treatment-row { display:grid; grid-template-columns:44px 1fr 1fr; column-gap:28px; align-items:center; padding:12px 0; border-top:1px solid var(--line); }
.treatment-number { align-self:start; padding-top:35px; font-size:.65rem; color:#85827d; }
.treatment-copy { padding:24px 28px 24px 0; }
.treatment-copy h3 { font-size:clamp(1.65rem,2.5vw,2.3rem); margin-bottom:18px; }
.treatment-copy p { max-width:310px; font-size:.85rem; line-height:1.8; margin-bottom:24px; }
.treatment-row img { width:100%; height:260px; object-fit:cover; filter:grayscale(1); }
.treatment-row:hover .editorial-link { border-color:var(--ink); }
.treatment-row:hover h3 { color:#6a665e; }
.services-prices { border-top:1px solid var(--line); text-align:center; padding:42px 0; }
.services-approach { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:center; max-width:1440px; margin:50px auto 100px; padding-right:7%; }
.services-approach>img { width:100%; height:540px; object-fit:cover; filter:grayscale(1); }
.services-approach-copy { max-width:380px; padding-block:24px; }
.services-approach h2 { font-size:clamp(2.6rem,3.8vw,3.6rem); margin-bottom:28px; }
.services-approach h3 { font-family:Inter,sans-serif; font-size:.85rem; line-height:1.6; margin-bottom:12px; }
.services-approach p { font-size:.85rem; line-height:1.85; }
.services-approach .editorial-link { margin-top:20px; }
.services-page .site-footer { background:transparent; border-top:1px solid var(--line); }
@media(max-width:980px) {
 .services-page .main-nav { background:var(--cream); }
 .services-hero,.services-hero-inner { min-height:700px; height:100vh; }
 .services-hero-image { object-position:60% center; }
 .services-hero-copy { width:42%; }
 .services-hero h1 { font-size:3.6rem; }
 .treatment-row { grid-template-columns:28px 1fr 1fr; gap:16px; }
 .treatment-copy { padding-right:6px; }
 .treatment-row img { height:240px; }
 .services-approach { gap:6%; padding-right:24px; }
}
@media(max-width:600px) {
 .services-hero { height:100vh; }
 .services-hero-image { object-position:80% center; }
 .services-hero-copy { width:100%; padding:38px 0 40px; }
 .services-hero h1 { font-size:3.5rem; margin-bottom:24px; }
 .services-hero-copy p { max-width:310px; margin-bottom:22px; }
 .editorial-eyebrow { margin-bottom:24px; }
 .services-intro { padding-top:52px; padding-bottom:46px; }
 .services-intro h2 br { display:none; }
 .treatment-row { grid-template-columns:24px 1fr; gap:0 14px; padding:24px 0; }
 .treatment-number { padding-top:8px; }
 .treatment-copy { padding:0 0 22px; }
 .treatment-copy h3 { font-size:1.9rem; }
 .treatment-row img { grid-column:1/-1; height:200px; }
 .services-approach { grid-template-columns:1fr; padding:0; gap:30px; margin:24px auto 55px; }
 .services-approach>img { height:340px; }
 .services-approach-copy { padding:0 24px; max-width:440px; }
}
