/* Zusätzliche Styles für Leistungs-Unterseiten der Gudelius Beta */

.service-page .topbar{position:relative}
.service-page header{top:0}
.service-page .brand span{display:block}

.service-hero{
  position:relative;
  min-height:560px;
  display:flex;
  align-items:end;
  overflow:hidden;
  color:#fff;
  background:#172026;
}
.service-hero-media{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 50%;
  transform-origin:50% 50%;
}
.service-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(9,20,27,.88) 0%,rgba(9,20,27,.66) 48%,rgba(9,20,27,.18) 100%);
}
.service-hero .container{position:relative;z-index:2;padding-top:110px;padding-bottom:80px}
.service-hero-copy{max-width:800px}
.service-hero .breadcrumb{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin-bottom:28px;
  font-size:.78rem;
  color:#d1dbe0;
}
.service-hero .breadcrumb a{font-weight:800}
.service-hero .eyebrow{color:#f1d65a}
.service-hero h1{
  max-width:980px;
  font-size:clamp(2.7rem,5.5vw,5.6rem);
  line-height:.94;
  letter-spacing:-.05em;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
}
.service-hero .section-lead{color:#d7e0e4;max-width:760px;font-size:1.16rem}

.service-summary{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:64px;
  align-items:start;
}
.service-summary .lead-copy{font-size:1.12rem;color:var(--ink2)}
.service-summary .lead-copy p{margin-bottom:20px}
.service-side-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:28px;
  box-shadow:var(--shadow);
  position:sticky;
  top:110px;
}
.service-side-card h3{margin-bottom:16px}
.service-side-list{
  display:grid;
  gap:12px;
  list-style:none;
  padding:0;
  margin:0;
}
.service-side-list li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  color:var(--ink2);
}
.service-side-list li::before{
  content:"✓";
  width:22px;
  height:22px;
  flex:0 0 22px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:color-mix(in srgb,var(--accent) 18%,white);
  color:#685400;
  font-weight:900;
  font-size:.72rem;
}

.detail-band{
  background:#172026;
  color:#fff;
  padding:82px 0;
}
.detail-band .section-lead{color:#cbd5da}
.detail-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:34px;
}
.detail-card{
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  padding:24px;
  background:rgba(255,255,255,.045);
}
.detail-card .num{
  color:var(--accent);
  margin-bottom:30px;
}
.detail-card h3{margin-bottom:10px}
.detail-card p{color:#cbd5da;margin:0;font-size:.92rem}

.output-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:34px;
}
.output-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:24px;
}
.output-card strong{display:block;font-size:1.05rem;margin-bottom:6px}
.output-card span{color:var(--muted);font-size:.92rem}

.process{
  background:#fff;
}
.process-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  margin-top:36px;
}
.process-step{
  position:relative;
  padding:24px 20px;
  border-top:3px solid var(--accent);
  background:#f7f8f7;
}
.process-step b{
  display:block;
  font-size:.72rem;
  letter-spacing:.14em;
  color:#765900;
  margin-bottom:14px;
}
.process-step h3{font-size:1.08rem;margin-bottom:8px}
.process-step p{font-size:.88rem;color:var(--muted);margin:0}

.service-image-strip{
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:16px;
  margin-top:38px;
}
.service-image-frame{
  height:360px;
  overflow:hidden;
  border-radius:20px;
  background:#e9ece9;
}
.service-image-strip img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:20px;
}
.service-image-strip .service-image-frame:last-child{height:360px}

.related{
  background:#f2f4f3;
}
.related-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:32px;
}
.related-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  padding:22px;
  transition:.2s;
}
.related-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.related-card small{
  display:block;
  font-weight:900;
  color:#765900;
  letter-spacing:.12em;
  margin-bottom:12px;
}
.related-card h3{margin-bottom:8px}
.related-card p{color:var(--muted);font-size:.88rem;margin-bottom:16px}
.related-card span{font-weight:850;font-size:.86rem}

.service-contact{
  padding:82px 0;
  background:#172026;
  color:#fff;
}
.service-contact-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:60px;
  align-items:start;
}
.service-contact .eyebrow{color:#f1d65a}
.service-contact .section-lead{color:#cbd5da}
.service-contact .contact-form{
  padding:32px;
  border-radius:22px;
}
.back-home{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-weight:850;
  font-size:.86rem;
  margin-top:20px;
}

@media(max-width:900px){
  .service-summary,.service-contact-grid{grid-template-columns:1fr}
  .service-side-card{position:static}
  .detail-grid{grid-template-columns:1fr 1fr}
  .process-row{grid-template-columns:1fr 1fr}
  .related-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .service-hero{min-height:500px}
  .service-hero .container{padding-top:80px;padding-bottom:58px}
  .service-hero-copy{min-width:0;width:100%;max-width:100%}
  .service-hero h1{
    max-width:100%;
    font-size:clamp(2.15rem,10vw,3rem);
    line-height:.98;
    letter-spacing:-.045em;
    overflow-wrap:anywhere;
    hyphens:auto;
  }
  .detail-grid,.output-grid,.process-row,.service-image-strip{grid-template-columns:1fr}
  .service-image-frame,.service-image-strip .service-image-frame:last-child{height:260px}
}


/* Vollständiger Leistungsumfang nach aktueller Gudelius-Website */
.scope-section{
  padding:84px 0;
  background:#f4f2ec;
  border-top:1px solid #e5e1d7;
  border-bottom:1px solid #e5e1d7;
}
.scope-head{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:48px;
  align-items:end;
  margin-bottom:34px;
}
.scope-head p{
  margin:0;
  color:var(--muted);
  max-width:720px;
}
.scope-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.scope-item{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:14px;
  align-items:start;
  padding:17px 18px;
  background:#fff;
  border:1px solid #dedfd9;
  border-radius:14px;
}
.scope-item .scope-no{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#172026;
  color:var(--accent);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.05em;
}
.scope-item strong{
  display:block;
  padding-top:5px;
  font-size:.92rem;
  line-height:1.4;
  color:var(--ink);
}
.scope-note{
  margin-top:18px;
  color:#59666c;
  font-size:.75rem;
}
@media(max-width:900px){
  .scope-head{grid-template-columns:1fr;gap:10px}
}
@media(max-width:650px){
  .scope-grid{grid-template-columns:1fr}
  .scope-item{grid-template-columns:36px 1fr;padding:15px}
}

.service-faq{background:#fff}
.faq-list{display:grid;gap:10px;max-width:920px;margin-top:30px}
.faq-item{border:1px solid var(--line);border-radius:15px;background:#f8f9f7;overflow:hidden}
.faq-item summary{cursor:pointer;list-style:none;padding:18px 54px 18px 20px;font-weight:850;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:1.35rem;color:#806b10}
.faq-item[open] summary::after{content:"–"}
.faq-item p{margin:0;padding:0 20px 20px;color:var(--muted);line-height:1.7}

.detail-band>.container>.eyebrow{color:#e5c533}
