/* Leistungsunterseiten: aus dem Startseiten-Projektboard weiterentwickelt */
.service-page-body{
  --service-electric:#2259d6;
  --service-night:#06132f;
  --service-navy:#0b1f4f;
  --service-card:#0a214d;
  --service-paper:#f3f0e8;
  --service-muted:#606b7e;
  --service-line:#37496d;
  --service-cut:clamp(20px,3vw,48px);
  background:var(--service-paper)
}
.service-page-body.service-page--build{
  --hero-surface:var(--service-paper);
  --hero-ink:var(--service-navy);
  --side-surface:var(--service-night);
  --side-ink:#fff;
  --process-intro:#fff;
  --process-intro-ink:var(--service-navy);
  --related-surface:var(--service-paper);
  --related-ink:var(--service-navy);
  --cta-title-surface:var(--service-electric);
  --cta-title-ink:#fff;
  --cta-action-surface:var(--service-night);
  --cta-action-ink:#fff
}
.service-page-body.service-page--design{
  --hero-surface:var(--service-navy);
  --hero-ink:#fff;
  --side-surface:var(--service-paper);
  --side-ink:var(--service-navy);
  --process-intro:var(--service-electric);
  --process-intro-ink:#fff;
  --related-surface:var(--service-navy);
  --related-ink:#fff;
  --cta-title-surface:var(--service-navy);
  --cta-title-ink:#fff;
  --cta-action-surface:var(--service-paper);
  --cta-action-ink:var(--service-navy)
}
.service-page-body .service-detail-main{min-width:0}
.service-page-body .service-detail{min-width:0}
.service-page-body .dropdown-panel a[aria-current=page]{
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:.28rem
}

/* Hero: die ausgewählte Startseitenkarte wird zur Detailfläche */
.service-page-body .detail-hero{
  min-height:calc(100svh - 92px);
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);
  overflow:hidden;
  background:var(--side-surface)
}
.service-page-body .detail-primary{
  min-width:0;
  min-height:100%;
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem) clamp(4rem,7vw,7rem) max(1.2rem,calc((100vw - 88rem)/2 + 5rem));
  overflow:hidden;
  background:var(--hero-surface);
  color:var(--hero-ink)
}
.service-page-body .detail-primary::before{
  content:"";
  position:absolute;
  inset:clamp(.9rem,1.6vw,1.5rem);
  z-index:0;
  border:1px solid currentColor;
  opacity:.1;
  pointer-events:none
}
.service-page-body .detail-primary::after{
  content:"";
  width:clamp(100px,10vw,170px);
  aspect-ratio:1;
  position:absolute;
  right:0;
  bottom:0;
  z-index:0;
  clip-path:polygon(100% 0,100% 100%,0 100%);
  background:var(--service-electric);
  pointer-events:none
}
.service-page-body .detail-primary>*{position:relative;z-index:1}
.service-page-body .detail-breadcrumb ol{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin:0 0 clamp(2.5rem,5vh,4.5rem);
  padding:0;
  list-style:none;
  font-size:.68rem;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase
}
.service-page-body .detail-breadcrumb li+li::before{content:"/";margin-right:.45rem;opacity:.45}
.service-page-body .detail-breadcrumb a{text-underline-offset:.25rem}
.service-page-body .detail-breadcrumb li[aria-current=page]{opacity:.68}
.service-page-body .detail-service-number{
  margin:0 0 1rem;
  color:var(--service-electric);
  font-size:clamp(.9rem,1.2vw,1.15rem);
  font-weight:600;
  letter-spacing:.08em
}
.service-page--design .detail-service-number{color:#8eb0ff}
.service-page-body .detail-kicker{
  margin:0 0 .9rem;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
  opacity:.72
}
.service-page-body .detail-primary h1{
  max-width:11ch;
  margin:0;
  color:inherit;
  font-size:clamp(3.8rem,6.6vw,7rem);
  font-weight:650;
  letter-spacing:-.072em;
  line-height:.88;
  overflow-wrap:anywhere
}
.service-page-body .detail-primary .detail-title-long{
  max-width:14ch;
  font-size:clamp(3rem,5.2vw,5.7rem);
  overflow-wrap:normal
}
.service-page-body .detail-lead{
  max-width:42rem;
  margin:1.6rem 0 0;
  color:inherit;
  font-size:clamp(1.05rem,1.35vw,1.3rem);
  opacity:.78
}
.service-page-body .detail-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  margin-top:2.25rem
}
.service-page-body .detail-actions a{
  min-height:58px;
  position:relative;
  isolation:isolate;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.9rem 1.45rem;
  text-decoration:none;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.04em;
  transition:transform .18s ease,color .18s ease,background-color .18s ease
}
.service-page-body .detail-action-primary{
  clip-path:none;
  background:transparent;
  color:#fff
}
.service-page-body .detail-action-primary::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
  background:var(--service-electric)
}
.service-page-body .detail-action-secondary{
  border:0;
  border-radius:0;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
  background:var(--hero-ink);
  color:var(--hero-surface)
}
.service-page-body .detail-actions a:hover{transform:translateY(-3px)}
.service-page-body .detail-action-primary:hover::before{background:var(--service-navy)}
.service-page--design .detail-action-primary:hover::before{background:#fff}
.service-page--design .detail-action-primary:hover{color:var(--service-navy)}
.service-page-body .detail-action-primary:focus-visible{clip-path:none}
.service-page-body .detail-action-secondary:focus-visible{clip-path:none}

/* Faktenpanel als drei geschnittene Projektfelder */
.service-page-body .detail-side{
  min-width:0;
  min-height:100%;
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(2.5rem,4.5vw,4.5rem);
  overflow:hidden;
  background:var(--side-surface);
  color:var(--side-ink)
}
.service-page-body .detail-side::after{
  content:"";
  position:absolute;
  inset:clamp(.9rem,1.6vw,1.5rem);
  border:1px solid currentColor;
  opacity:.12;
  pointer-events:none
}
.service-page-body .detail-facts{
  width:100%;
  margin:0;
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(.65rem,1.2vw,1rem)
}
.service-page-body .detail-facts>div{
  min-height:clamp(108px,15vh,145px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:1.35rem clamp(1.35rem,2vw,2rem);
  border:0;
  background:var(--service-card);
  color:#fff
}
.service-page-body .detail-facts>div:nth-child(2){
  margin-inline:clamp(.5rem,1.2vw,1rem);
  padding-inline:calc(clamp(1.35rem,2vw,2rem) + 16px);
  clip-path:polygon(16px 0,100% 0,calc(100% - 16px) 100%,0 100%);
  background:var(--service-electric)
}
.service-page-body .detail-facts>div:nth-child(3){
  margin-inline:clamp(1rem,2vw,1.8rem);
  padding-inline:calc(clamp(1.35rem,2vw,2rem) + 30px);
  clip-path:polygon(30px 0,100% 0,calc(100% - 30px) 100%,0 100%);
  background:var(--service-paper);
  color:var(--service-navy)
}
.service-page--design .detail-facts>div:nth-child(1){background:var(--service-navy);color:#fff}
.service-page--design .detail-facts>div:nth-child(2){background:transparent;color:var(--service-navy);border:1px solid rgba(11,31,79,.45)}
.service-page--design .detail-facts>div:nth-child(3){background:var(--service-electric);color:#fff}
.service-page-body .detail-facts dt{
  color:inherit;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.17em;
  text-transform:uppercase;
  opacity:.86
}
.service-page-body .detail-facts dd{
  margin:.35rem 0 0;
  color:inherit;
  font-size:clamp(1.05rem,1.55vw,1.4rem);
  font-weight:650;
  letter-spacing:-.025em;
  line-height:1.2
}

/* Inhalt: eine große Aussage und eine ruhige Begründung */
.service-page-body .detail-overview{
  width:var(--shell);
  margin-inline:auto;
  padding-block:clamp(5.5rem,9vw,9rem);
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:clamp(3rem,9vw,10rem);
  background:transparent
}
.service-page-body .detail-overview header{align-self:start}
.service-page-body .detail-overview .eyebrow{color:var(--service-electric)}
.service-page-body .detail-overview h2{
  max-width:10ch;
  margin:1.1rem 0 0;
  color:var(--service-navy);
  font-size:clamp(2.9rem,4.8vw,5.2rem);
  font-weight:650;
  letter-spacing:-.06em;
  line-height:.94;
  overflow-wrap:anywhere
}
.service-page-body .detail-copy{
  max-width:none;
  padding:0;
  border-top:2px solid var(--service-navy)
}
.service-page-body .detail-copy p{
  margin:0;
  padding:1.45rem 0;
  border-bottom:1px solid rgba(11,31,79,.18);
  color:var(--service-muted);
  font-size:clamp(1.02rem,1.35vw,1.22rem);
  line-height:1.7
}
.service-page-body .detail-copy p:first-child{
  color:var(--service-navy);
  font-size:clamp(1.25rem,1.8vw,1.65rem);
  line-height:1.5
}
.service-page-body .detail-copy p+p{margin:0}

/* Ablauf: kompakter Ableger der Startseitenbühne */
.service-page-body .detail-process{
  padding:0;
  background:var(--service-night);
  color:#fff
}
.service-page-body .detail-process-layout{
  width:100%;
  margin:0;
  display:grid;
  grid-template-columns:minmax(320px,32.5%) minmax(0,1fr);
  gap:0
}
.service-page-body .detail-process-layout>header{
  min-width:0;
  min-height:650px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(3rem,5.25vw,5.25rem);
  background:var(--process-intro);
  color:var(--process-intro-ink)
}
.service-page-body .detail-process .eyebrow{color:inherit;opacity:.86}
.service-page-body .detail-process h2{
  max-width:8ch;
  margin:1.2rem 0 0;
  color:inherit;
  font-size:clamp(3rem,4.5vw,4.8rem);
  font-weight:650;
  letter-spacing:-.06em;
  line-height:.98;
  overflow-wrap:anywhere
}
.service-page-body .detail-process-list{
  min-width:0;
  margin:0;
  display:grid;
  align-content:center;
  gap:1rem;
  padding:clamp(2.5rem,4.4vw,4.4rem);
  border:0;
  list-style:none;
  counter-reset:service-step
}
.service-page-body .detail-process-list li{
  width:100%;
  min-width:0;
  min-height:150px;
  position:relative;
  display:grid;
  grid-template-columns:64px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:1.1rem;
  row-gap:.45rem;
  align-content:center;
  padding:1.6rem 2rem;
  border:1px solid var(--service-line);
  background:var(--service-card);
  color:#fff;
  counter-increment:service-step;
  transition:transform .2s ease,filter .2s ease
}
.service-page-body .detail-process-list li::before{
  content:"0" counter(service-step);
  grid-row:1/3;
  align-self:start;
  color:#8eb0ff;
  font-size:.84rem;
  font-weight:600;
  letter-spacing:.05em
}
.service-page-body .detail-process-list li:nth-child(2){
  width:calc(100% - 2rem);
  margin-inline:auto;
  padding-inline:calc(2rem + 18px);
  border:0;
  clip-path:polygon(18px 0,100% 0,calc(100% - 18px) 100%,0 100%);
  background:var(--service-electric)
}
.service-page-body .detail-process-list li:nth-child(3){
  width:calc(100% - 3rem);
  margin-inline:auto;
  padding-inline:calc(2rem + 32px);
  border:0;
  clip-path:polygon(32px 0,100% 0,calc(100% - 32px) 100%,0 100%);
  background:var(--service-paper);
  color:var(--service-navy)
}
.service-page-body .detail-process-list li:nth-child(2)::before{color:#dfe8ff}
.service-page-body .detail-process-list li:nth-child(3)::before{color:var(--service-electric)}
.service-page-body .detail-process-list h3{
  margin:0;
  color:inherit;
  font-size:clamp(1.25rem,1.8vw,1.6rem);
  font-weight:650;
  letter-spacing:-.025em;
  line-height:1.2;
  text-transform:none
}
.service-page-body .detail-process-list p{
  margin:0;
  color:inherit;
  font-size:.98rem;
  line-height:1.55;
  opacity:.86
}

/* Verwandte Leistungen als kleines, schräges Kartenboard */
.service-page-body .detail-related{
  padding-block:clamp(5rem,8vw,8rem);
  background:var(--related-surface);
  color:var(--related-ink)
}
.service-page-body .detail-related-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:2rem;
  margin-bottom:clamp(2rem,4vw,3rem)
}
.service-page-body .detail-related h2{
  max-width:13ch;
  margin:0;
  color:inherit;
  font-size:clamp(2.8rem,4.4vw,4.8rem);
  font-weight:650;
  letter-spacing:-.055em;
  line-height:.94;
  overflow-wrap:anywhere
}
.service-page-body .detail-related-head>a{
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.8rem 1.25rem;
  border:1px solid currentColor;
  border-radius:999px;
  color:inherit;
  text-decoration:none;
  font-size:.75rem;
  font-weight:800;
  transition:background-color .18s ease,color .18s ease
}
.service-page-body .detail-related-head>a:hover{background:var(--service-navy);color:#fff}
.service-page--design .detail-related-head>a:hover{background:#fff;color:var(--service-navy)}
.service-page-body .detail-related-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(.6rem,1vw,.9rem);
  border:0
}
.service-page-body .detail-related-grid a{
  --related-shape:polygon(0 0,100% 0,calc(100% - var(--service-cut)) 100%,0 100%);
  --related-card:var(--service-navy);
  min-width:0;
  min-height:200px;
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:1.6rem calc(1.6rem + var(--service-cut)) 1.6rem 1.6rem;
  border:0;
  background:transparent;
  color:#fff;
  text-decoration:none;
  transition:filter .18s ease
}
.service-page-body .detail-related-grid a:nth-child(2),
.service-page-body .detail-related-grid a:nth-child(3){
  --related-shape:polygon(var(--service-cut) 0,100% 0,calc(100% - var(--service-cut)) 100%,0 100%);
  padding-left:calc(1.6rem + var(--service-cut))
}
.service-page-body .detail-related-grid a::before,
.service-page-body .detail-related-grid a::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  clip-path:var(--related-shape);
  background:var(--related-card);
  pointer-events:none;
  transition:background-color .18s ease
}
.service-page-body .detail-related-grid a::after{content:none;z-index:1}
.service-page-body .detail-related-grid a>*{position:relative;z-index:2}
.service-page--build .detail-related-grid a:nth-child(2){color:var(--service-navy)}
.service-page--build .detail-related-grid a:nth-child(2)::after{
  content:"";
  inset:1px;
  background:var(--service-paper)
}
.service-page--build .detail-related-grid a:nth-child(3){--related-card:var(--service-electric)}
.service-page--design .detail-related-grid a:nth-child(1){--related-card:var(--service-paper);color:var(--service-navy)}
.service-page--design .detail-related-grid a:nth-child(2){--related-card:var(--service-electric)}
.service-page--design .detail-related-grid a:nth-child(3){--related-card:#153578}
.service-page-body .detail-related-grid small{
  color:inherit;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.86
}
.service-page-body .detail-related-grid strong{
  color:inherit;
  font-size:clamp(1.5rem,2.2vw,2.25rem);
  font-weight:650;
  letter-spacing:-.04em;
  line-height:1.08;
  overflow-wrap:anywhere;
  transition:transform .18s ease
}
.service-page-body .detail-related-grid a:hover,
.service-page-body .detail-related-grid a:focus-visible{
  background:transparent;
  filter:brightness(1.06)
}
.service-page-body .detail-related-grid a:focus-visible{
  outline-color:currentColor;
  outline-offset:-6px
}

/* Abschluss: klare Zweiteilung wie im Flyer-Hero */
.service-page-body .detail-cta{
  padding:0;
  background:var(--cta-title-surface);
  color:var(--cta-title-ink)
}
.service-page-body .detail-cta-layout{
  width:100%;
  margin:0;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);
  gap:0
}
.service-page-body .detail-cta h2{
  max-width:11ch;
  min-height:340px;
  display:flex;
  align-items:center;
  margin:0;
  padding:clamp(3.5rem,6vw,6rem);
  background:var(--cta-title-surface);
  color:var(--cta-title-ink);
  font-size:clamp(3rem,5vw,5.4rem);
  font-weight:650;
  letter-spacing:-.06em;
  line-height:.94;
  overflow-wrap:anywhere
}
.service-page-body .detail-cta-actions{
  min-height:340px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:.85rem;
  padding:clamp(3.5rem,6vw,6rem);
  background:var(--cta-action-surface);
  color:var(--cta-action-ink)
}
.service-page-body .detail-cta-actions a{
  width:100%;
  min-height:60px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.95rem 1.4rem;
  text-decoration:none;
  font-size:.8rem;
  font-weight:800;
  transition:transform .18s ease,background-color .18s ease,color .18s ease
}
.service-page-body .detail-cta-actions a:hover{transform:translateY(-3px)}
.service-page-body .detail-cta-call{
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
  background:#fff;
  color:var(--service-navy)
}
.service-page--design .detail-cta-call{background:var(--service-navy);color:#fff}
.service-page-body .detail-cta-form{
  border:0;
  border-radius:0;
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
  background:var(--cta-action-ink);
  color:var(--cta-action-surface)
}
.service-page-body .detail-cta-call:focus-visible{clip-path:none}
.service-page-body .detail-cta-form:focus-visible{clip-path:none}

@media(max-width:1100px){
  .service-page-body .detail-hero{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr)}
  .service-page-body .detail-primary h1{font-size:clamp(3.6rem,6.3vw,6rem)}
  .service-page-body .detail-facts>div{min-height:118px}
}
@media(max-width:980px){
  .service-page-body .detail-hero{min-height:auto;grid-template-columns:1fr}
  .service-page-body .detail-primary{
    min-height:auto;
    padding:5rem clamp(1.2rem,7vw,4rem)
  }
  .service-page-body .detail-side{
    min-height:auto;
    padding:clamp(3rem,7vw,4rem)
  }
  .service-page-body .detail-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .service-page-body .detail-facts>div,
  .service-page-body .detail-facts>div:nth-child(2),
  .service-page-body .detail-facts>div:nth-child(3){
    min-height:150px;
    margin:0;
    padding:1.4rem;
    clip-path:none
  }
  .service-page-body .detail-overview{grid-template-columns:1fr;gap:2.5rem}
  .service-page-body .detail-overview h2{max-width:13ch}
  .service-page-body .detail-process-layout{grid-template-columns:1fr}
  .service-page-body .detail-process-layout>header{
    min-height:330px;
    padding:4rem clamp(1.2rem,7vw,4rem)
  }
  .service-page-body .detail-process-list{padding:clamp(2.5rem,7vw,4rem)}
  .service-page-body .detail-related-grid{grid-template-columns:1fr 1fr}
  .service-page-body .detail-related-grid a:nth-child(3){grid-column:1/-1}
  .service-page-body .detail-cta-layout{grid-template-columns:1fr}
  .service-page-body .detail-cta h2,
  .service-page-body .detail-cta-actions{min-height:auto}
}
@media(max-width:680px){
  .service-page-body{--service-cut:22px}
  .service-page-body .detail-primary{padding:3.75rem 1.2rem 4.5rem}
  .service-page-body .detail-primary::before,
  .service-page-body .detail-side::after{inset:.65rem}
  .service-page-body .detail-breadcrumb ol{margin-bottom:2.75rem}
  .service-page-body .detail-primary h1{font-size:clamp(3.25rem,15vw,4.8rem)}
  .service-page-body .detail-primary .detail-title-long{
    font-size:clamp(2.1rem,10.8vw,3.8rem);
    overflow-wrap:normal
  }
  .service-page-body .detail-actions{display:grid}
  .service-page-body .detail-actions a{width:100%}
  .service-page-body .detail-side{padding:2.5rem 1.2rem}
  .service-page-body .detail-facts{grid-template-columns:1fr;gap:.65rem}
  .service-page-body .detail-facts>div,
  .service-page-body .detail-facts>div:nth-child(2),
  .service-page-body .detail-facts>div:nth-child(3){
    min-height:112px;
    padding:1.25rem 1.4rem
  }
  .service-page-body .detail-overview{padding-block:4.5rem}
  .service-page-body .detail-overview h2{font-size:clamp(2.8rem,13vw,4.3rem)}
  .service-page-body .detail-process-layout>header{min-height:320px;padding:3.5rem 1.2rem}
  .service-page-body .detail-process h2{font-size:clamp(3rem,13vw,4.2rem)}
  .service-page-body .detail-process-list{gap:.75rem;padding:1.5rem 1.2rem 2.5rem}
  .service-page-body .detail-process-list li,
  .service-page-body .detail-process-list li:nth-child(2),
  .service-page-body .detail-process-list li:nth-child(3){
    width:100%;
    min-height:150px;
    margin:0;
    grid-template-columns:44px minmax(0,1fr);
    padding:1.4rem
  }
  .service-page-body .detail-process-list li:nth-child(2){
    padding-inline:calc(1.4rem + 14px);
    clip-path:polygon(14px 0,100% 0,calc(100% - 14px) 100%,0 100%)
  }
  .service-page-body .detail-process-list li:nth-child(3){
    padding-inline:calc(1.4rem + 22px);
    clip-path:polygon(22px 0,100% 0,calc(100% - 22px) 100%,0 100%)
  }
  .service-page-body .detail-related{padding-block:4.5rem}
  .service-page-body .detail-related-head{align-items:flex-start;flex-direction:column}
  .service-page-body .detail-related-grid{grid-template-columns:1fr}
  .service-page-body .detail-related-grid a,
  .service-page-body .detail-related-grid a:nth-child(2),
  .service-page-body .detail-related-grid a:nth-child(3){
    grid-column:auto;
    min-height:150px;
    padding:1.4rem calc(1.4rem + var(--service-cut)) 1.4rem 1.4rem
  }
  .service-page-body .detail-related-grid a:nth-child(2),
  .service-page-body .detail-related-grid a:nth-child(3){padding-left:calc(1.4rem + var(--service-cut))}
  .service-page-body .detail-cta h2,
  .service-page-body .detail-cta-actions{padding:3.5rem 1.2rem}
  .service-page-body .detail-cta-actions a{width:100%}
}
@media(hover:hover) and (pointer:fine){
  .service-page-body .detail-process-list li:hover{
    transform:translateY(-4px);
    filter:brightness(1.05) drop-shadow(0 14px 18px rgba(0,0,0,.18))
  }
  .service-page-body .detail-related-grid a:hover strong{transform:translateX(6px)}
}
@media(prefers-reduced-motion:reduce){
  .service-page-body .detail-actions a:hover,
  .service-page-body .detail-cta-actions a:hover,
  .service-page-body .detail-process-list li:hover{transform:none}
  .service-page-body .detail-related-grid a:hover strong{transform:none}
}
