.service-page {
  color: var(--ink, #22231f); background: #fff;
  font-family: 'Inter Variable', Inter, system-ui, sans-serif;
  --sv-muted: var(--muted); --sv-line: var(--border); --sv-gold: var(--accent); --sv-pale: var(--accent-soft); --sv-ink: var(--ink);
}
.service-page h1, .service-page h2, .service-page h3 { font-family: 'Inter Variable', Inter, system-ui, sans-serif; text-wrap: balance; }
.service-page h1 { font-size: clamp(2.5rem, calc(1.5rem + 3.5vw), 3.875rem); font-weight: 660; line-height: 1.1; letter-spacing: -.04em; max-width: 19ch; }
.service-page h1 span { color: inherit; text-decoration: underline; text-decoration-color: var(--sv-gold); text-decoration-thickness: .075em; text-underline-offset: .12em; text-decoration-skip-ink: none; }
.service-page h2 {
  font-size: clamp(1.9rem, calc(1.15rem + 2.25vw), 2.95rem);
  font-weight: var(--fw-titel);
  line-height: 1.12;
  letter-spacing: -.045em;
}
.service-page h3 {
  font-size: 1.18rem;
  font-weight: var(--fw-untertitel);
  line-height: 1.35;
  letter-spacing: -.025em;
}
.service-page p { text-wrap: pretty; }
.service-page :is(a, summary):focus-visible { outline: 3px solid var(--accent-deep, #665018); outline-offset: 5px; }
.service-page .btn { font-family: inherit; font-weight: 700; white-space: normal; }
.sv-hero { padding-top: 1.8rem; }
.sv-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: .6rem; color: var(--sv-muted); font-size: .875rem; margin-bottom: clamp(2.3rem, 5vw, 4.6rem); }
.sv-breadcrumb a { text-decoration: none; }
.sv-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 3px; }
.sv-breadcrumb [aria-current] { color: var(--sv-ink); }
.sv-hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 6rem); align-items: center; }
.sv-eyebrow { font-size: .875rem; line-height: 1.5; font-weight: 600; color: var(--sv-muted); margin-bottom: 1.1rem; }
.sv-lead { font-size: clamp(1rem, 1.5vw, 1.15rem); line-height: 1.65; color: var(--sv-muted); max-width: 48ch; margin-top: 1.55rem; }
.sv-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .85rem 1.6rem; margin-top: 1.85rem; }
.sv-actions .btn { font-size: .9375rem; }
.sv-link { display: inline-flex; align-items: center; gap: .8rem; min-height: 2.75rem; font-size: .85rem; line-height: 1.5; font-weight: 600; text-decoration: underline; text-underline-offset: .3em; text-decoration-thickness: 1px; }
.sv-link:hover { color: var(--accent-deep, #665018); }
.sv-link > span { flex-shrink: 0; font-size: 1.18em; }
.sv-link-large { font-size: .95rem; }
.sv-hero-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem 2rem; border-bottom: 1px solid var(--sv-line); padding-block: 1.2rem; margin-top: clamp(2.5rem, 5vw, 4rem); font-size: .875rem; color: var(--sv-muted); }
.sv-hero-foot .sv-link { font-size: .875rem; }
.sv-question-sheet, .sv-seo-path, .sv-scope-sheet, .sv-example-sheet {
  border: 1px solid var(--sv-line);
  border-radius: var(--r-lg);
}
.sv-question-sheet {
  background: var(--sv-pale);
  padding: 2rem;
  transform: none;
}
.sv-sheet-top { display: flex; gap: .65rem; align-items: center; font-size: .875rem; color: #665018; border-bottom: 1px solid #d9ca9f; padding-bottom: 1.15rem; margin-bottom: 1.6rem; }
.sv-sheet-dot { width: .5rem; height: .5rem; background: #665018; border-radius: 50%; }
.sv-question-sheet h2 { font-size: clamp(1.45rem, 2.1vw, 1.8rem); line-height: 1.2; letter-spacing: -.04em; }
.sv-question-sheet ol { list-style: none; margin-top: 1.1rem; }
.sv-question-sheet li { display: flex; gap: 1.2rem; align-items: start; padding-block: 1rem; border-bottom: 1px solid #ded2ae; }
.sv-question-sheet li > span { font-size: .65rem; padding-top: .15rem; color: #665018; }
.sv-question-sheet li p { font-size: .91rem; color: #68604a; line-height: 1.55; }
.sv-question-sheet strong { color: #22231f; font-weight: 600; }
.sv-sheet-note { margin-top: 1.2rem; font-size: .875rem; line-height: 1.7; color: #68604a; }
.sv-section { padding-block: clamp(3.7rem, 6.7vw, 6rem); }
.sv-split-heading { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 2.5rem 5rem; align-items: end; margin-bottom: 2.7rem; }
.sv-split-heading > p { max-width: 39ch; color: var(--sv-muted); font-size: 1rem; line-height: 1.65; justify-self: end; }
.sv-problems { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem; }
.sv-problems article { border-top: 1px solid var(--sv-line); padding-top: 1.3rem; }
.sv-problems h3 { font-size: 1.07rem; max-width: 25ch; }
.sv-problems p { margin-top: .8rem; color: var(--sv-muted); font-size: 1rem; line-height: 1.65; }
.sv-tinted { background: var(--surface); border-block: 1px solid var(--border); }
.sv-work-list { border-top: 1px solid var(--sv-line); }
.sv-work-row { display: grid; grid-template-columns: 2.5rem minmax(0, 1.4fr) minmax(0, 1fr); gap: 1.4rem 2.5rem; padding-block: 2rem; border-bottom: 1px solid var(--sv-line); }
.sv-number { font-size: .76rem; font-weight: 600; color: var(--accent-deep, #665018); padding-top: .2rem; }
.sv-work-row h3 { margin-bottom: .65rem; }
.sv-work-row p:not(.sv-mini-label) { color: var(--sv-muted); font-size: 1rem; line-height: 1.65; max-width: 57ch; }
.sv-work-benefit { border-left: 1px solid var(--sv-line); padding-left: 2rem; }
.sv-mini-label { display: block; font-size: .875rem; font-weight: 550; line-height: 1.5; letter-spacing: 0; text-transform: none; color: var(--sv-muted); }
.sv-work-benefit .sv-mini-label { margin-bottom: .75rem; color: var(--accent-deep, #665018); }
.sv-scope-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 7rem); }
.sv-body-lead { font-size: 1rem; line-height: 1.65; margin-top: 1.4rem; max-width: 49ch; }
.sv-muted { color: var(--sv-muted); font-size: 1rem; line-height: 1.65; margin-top: 1.1rem; max-width: 52ch; }
.sv-scope-sheet {
  padding: 2rem;
  background: var(--sv-pale);
}
.sv-check-list { list-style: none; margin-top: 1.1rem; }
.sv-check-list li { position: relative; padding: .7rem 0 .7rem 1.5rem; border-bottom: 1px solid #ded2ae; font-size: 1rem; line-height: 1.65; }
.sv-check-list li::before { content: '✓'; position: absolute; left: 0; top: .7rem; color: #665018; font-size: .85rem; }
.sv-check-list li:last-child { border-bottom: 0; }
.sv-scope-sheet > p:last-child { margin-top: 1.4rem; font-size: .875rem; color: #68604a; }
.sv-bordered { border-top: 1px solid var(--sv-line); }
.sv-process { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem; }
.sv-process > li { border-top: 1px solid var(--sv-line); padding-top: 1.25rem; }
.sv-process > li > span { display: inline-flex; justify-content: center; align-items: center; width: 2rem; height: 2rem; background: var(--sv-pale); color: #665018; font-size: .65rem; font-weight: 700; border-radius: 50%; margin-bottom: 1.2rem; }
.sv-process h3 { font-size: 1.08rem; margin-bottom: .8rem; }
.sv-process p { font-size: 1rem; line-height: 1.65; color: var(--sv-muted); }
.sv-faq-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr); gap: 4rem; }
.sv-faq { border-top: 1px solid var(--sv-line); }
.sv-faq details { border-bottom: 1px solid var(--sv-line); }
.sv-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 1.2rem; cursor: pointer; list-style: none; font-size: 1rem; font-weight: 600; padding-block: 1.3rem; }
.sv-faq summary::-webkit-details-marker { display: none; }
.sv-faq summary > span { font-size: 1.35rem; font-weight: 400; line-height: 1; color: #665018; flex-shrink: 0; }
.sv-faq details[open] summary > span { transform: rotate(45deg); }
.sv-faq details > p { padding: 0 1.5rem 1.4rem 0; color: var(--sv-muted); font-size: 1rem; line-height: 1.65; }
.sv-contact { background: var(--sv-pale); border-top: 1px solid #e4d8b5; padding-block: clamp(3rem, 5.8vw, 5rem); }
.sv-contact-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 3rem; align-items: center; }
.sv-contact .sv-eyebrow { color: #665018; }
.sv-contact p:not(.sv-eyebrow) { color: #68604a; font-size: 1rem; max-width: 48ch; margin-top: 1.1rem; line-height: 1.65; }
.sv-contact-actions { display: flex; flex-direction: column; align-items: start; gap: .65rem; justify-self: end; max-width: 100%; }
.sv-contact-actions .btn { max-width: 100%; font-size: .9375rem; }
.sv-contact-actions > .sv-link { font-size: .875rem; }
.sv-seo-path {
  padding: 2rem;
  background: #fff;
}
.sv-seo-path > .sv-mini-label { margin-bottom: 1.1rem; }
.sv-seo-path h2 { font-size: clamp(1.5rem, 2.2vw, 1.9rem); line-height: 1.2; }
.sv-seo-path ol { list-style: none; padding-top: 1.7rem; }
.sv-seo-path li { position: relative; display: flex; align-items: start; gap: 1rem; padding-bottom: 1.5rem; }
.sv-seo-path li:last-child { padding-bottom: 0; }
.sv-seo-path li:not(:last-child)::before { content: ''; position: absolute; left: .39rem; top: .6rem; bottom: -.4rem; width: 1px; background: #d5be86; }
.sv-path-dot { position: relative; flex-shrink: 0; width: .85rem; height: .85rem; background: var(--sv-gold); border: 2px solid #8b6b20; border-radius: 50%; margin-top: .3rem; }
.sv-seo-path li strong { font-size: .94rem; font-weight: 700; }
.sv-seo-path li p { color: var(--sv-muted); font-size: 1rem; margin-top: .25rem; line-height: 1.65; }
.sv-dark { background: var(--sv-ink); color: #fff; }
.sv-diagnosis-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 5rem; }
.sv-dark .sv-eyebrow { color: var(--sv-gold); }
.sv-diagnosis-grid > div:last-child > p { color: #d4d6cc; font-size: 1rem; line-height: 1.65; }
.sv-diagnosis-grid > div:last-child > p + p { margin-top: 1.2rem; }
.sv-diagnosis-output { border-top: 1px solid #55564f; padding-top: 1.2rem; margin-top: 1.6rem; }
.sv-diagnosis-output .sv-mini-label { color: var(--sv-gold); }
.sv-diagnosis-output > p { font-size: 1rem; line-height: 1.65; margin-top: .75rem; color: #f0f1eb; }
.sv-example-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 5rem; align-items: center; }
.sv-example-sheet { background: #fff; }
.sv-example-query {
  padding: 2rem;
  border-radius: calc(var(--r-lg) - 1px) calc(var(--r-lg) - 1px) 0 0;
  font-size: 1.05rem;
  line-height: 1.65;
  font-weight: 600;
  background: var(--sv-pale);
}
.sv-example-sheet > div { padding: 2rem; }
.sv-example-sheet .sv-check-list { margin-top: .5rem; }
.sv-example-sheet .sv-check-list li { border-color: var(--sv-line); }
.sv-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4rem; margin-top: 3rem; }
.sv-options article { border-top: 3px solid var(--sv-gold); padding-top: 1.5rem; }
.sv-option-label { font-size: .875rem; font-weight: 600; color: var(--accent-deep, #665018); }
.sv-options h3 { font-size: 1.6rem; line-height: 1.25; letter-spacing: -.04em; margin-top: 1rem; }
.sv-options p:not(.sv-option-label) { max-width: 49ch; font-size: 1rem; line-height: 1.65; color: var(--sv-muted); margin-top: 1rem; }
.sv-options ul { padding-left: 1rem; margin-top: 1.25rem; font-size: 1rem; line-height: 1.65; }
.sv-options li { padding-block: .3rem; padding-left: .15rem; }
.sv-scope-note { border-top: 1px solid var(--sv-line); margin-top: 2.2rem; padding-top: 1.4rem; font-size: 1rem; line-height: 1.65; color: var(--sv-muted); }
.sv-overview-hero { padding-bottom: clamp(3.5rem, 6vw, 5rem); }
.sv-overview-hero h1 { max-width: 16ch; }
.sv-overview-hero .sv-lead { max-width: 59ch; }
.sv-service-choice { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 5rem; padding-block: clamp(2.8rem, 5vw, 4.5rem); border-top: 1px solid var(--sv-line); }
.sv-service-choice:last-child { border-bottom: 1px solid var(--sv-line); }
.sv-choice-title > .sv-number { display: block; margin-bottom: 1.5rem; }
.sv-choice-title .sv-eyebrow { margin-bottom: .7rem; }
.sv-service-choice .sv-body-lead { margin-top: .1rem; }
.sv-service-choice > div:last-child > p:not(.sv-body-lead) { margin-top: 1rem; font-size: 1rem; color: var(--sv-muted); line-height: 1.65; }
.sv-choice-facts { display: flex; flex-wrap: wrap; gap: .5rem 1rem; border-top: 1px solid var(--sv-line); padding-top: 1rem; margin-block: 1.5rem 1rem; font-size: .875rem; color: var(--sv-muted); }
.sv-choice-facts > span + span { border-left: 1px solid var(--sv-line); padding-left: 1rem; }
.sv-decision-copy > p { font-size: 1rem; line-height: 1.65; color: var(--sv-muted); }
.sv-decision-copy > p + p { margin-top: 1.2rem; }
.sv-decision-copy > .sv-link { margin-top: 1.2rem; }
@media (max-width: 64rem) {
  .sv-hero-grid { gap: 2.5rem; }
  .sv-question-sheet, .sv-seo-path, .sv-scope-sheet,
  .sv-example-query, .sv-example-sheet > div {
    padding: 1.5rem;
  }
  .sv-split-heading { gap: 2.5rem; }
  .sv-work-row { grid-template-columns: 1.5rem minmax(0, 1.2fr) minmax(0, 1fr); gap: 1.3rem; }
  .sv-work-benefit { padding-left: 1.3rem; }
  .sv-diagnosis-grid, .sv-example-grid, .sv-service-choice { gap: 3rem; }
  .sv-contact-grid { gap: 2rem; }
}
@media (max-width: 48rem) {
  .service-page h1 { max-width: 20ch; }
  .sv-hero { padding-top: 1.2rem; }
  .sv-breadcrumb { gap: .4rem; margin-bottom: 2.3rem; }
  .sv-hero-grid, .sv-split-heading, .sv-scope-grid, .sv-faq-grid, .sv-contact-grid, .sv-diagnosis-grid, .sv-example-grid, .sv-service-choice { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .sv-hero-grid { gap: 2.5rem; }
  .sv-lead { font-size: 1rem; margin-top: 1.3rem; }
  .sv-actions { gap: .7rem 1.3rem; margin-top: 1.5rem; }
  .sv-actions .btn { padding-inline: 1.15rem; }
  .sv-actions > .sv-link { font-size: .875rem; }
  .sv-question-sheet h2, .sv-seo-path h2 { font-size: 1.7rem; }
  .sv-question-sheet ol { margin-top: .7rem; }
  .sv-question-sheet li { padding-block: .8rem; }
  .sv-question-sheet li p br { display: none; }
  .sv-hero-foot { margin-top: 2rem; padding-block: 1rem; }
  .sv-split-heading { margin-bottom: 2rem; gap: 1.3rem; }
  .sv-split-heading > p { justify-self: start; max-width: 49ch; }
  .sv-problems { grid-template-columns: 1fr; gap: 1.5rem; }
  .sv-problems article { padding-top: 1rem; }
  .sv-problems h3 { max-width: none; }
  .sv-problems p { margin-top: .6rem; max-width: 60ch; }
  .sv-work-row { grid-template-columns: 1.6rem minmax(0, 1fr); gap: 1rem; padding-block: 1.5rem; }
  .sv-work-benefit { grid-column: 2; padding-left: 0; padding-top: .8rem; border-left: 0; border-top: 1px solid var(--sv-line); }
  .sv-work-benefit .sv-mini-label { margin-bottom: .45rem; }
  .sv-work-row h3 { font-size: 1.1rem; }
  .sv-process { grid-template-columns: 1fr; gap: 1.5rem; }
  .sv-process > li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: .5rem 1rem; }
  .sv-process > li > span { grid-row: 1 / 3; margin: 0; }
  .sv-process h3 { margin: 0; }
  .sv-process p { grid-column: 2; }
  .sv-contact-actions { justify-self: start; }
  .sv-seo-path ol { padding-top: 1.5rem; }
  .sv-options { grid-template-columns: 1fr; gap: 2rem; margin-top: 2rem; }
  .sv-options h3 { font-size: 1.45rem; }
  .sv-example-query { font-size: .99rem; }
  .sv-overview-hero { padding-bottom: 3rem; }
  .sv-service-choice { gap: 1.3rem; }
  .sv-choice-title > .sv-number { margin-bottom: .9rem; }
  .sv-choice-facts { display: grid; gap: .5rem; }
  .sv-choice-facts > span + span { border-left: 0; padding-left: 0; }
}
@media (max-width: 24rem) {
  .sv-actions { align-items: start; flex-direction: column; }
  .sv-contact-actions .btn { padding-inline: 1rem; }
  .sv-contact h2 br, .sv-split-heading h2 br, .sv-scope-grid h2 br { display: none; }
  .sv-choice-facts { display: grid; }
  .sv-choice-facts > span + span { border-left: 0; padding-left: 0; }
}
@media (prefers-reduced-motion: reduce) { .service-page .btn { transition: none; } }
