/* =========================================================
   PVO Solution – Leistungsseiten (service.php)
   Gleiche Sprache wie die Startseite: Gold, Glas, Serif-Headlines.
   ========================================================= */
.hero--service{min-height:92vh;min-height:92svh}
.svc .section{padding:clamp(72px,9vw,140px) 0}
.svc ol,.svc ul{margin:0;padding:0;list-style:none}
.svc .svc-others{padding-top:0}
.hero__crumbs ol{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.hero__crumbs li{display:flex;align-items:center}
.hero__crumbs li + li::before{content:"/";padding:0 12px;color:rgba(217,175,72,.5)}
.hero__crumbs a{transition:color .3s}
.hero__crumbs a:hover{color:var(--gold-light)}
.hero__crumbs [aria-current]{color:var(--gold-light)}
.svc-hero__icon{position:relative;width:76px;height:76px;margin:34px 0 26px;padding:16px;border-radius:22px;color:var(--gold-light);background:linear-gradient(150deg,rgba(217,175,72,.18),rgba(217,175,72,.03));border:1px solid rgba(217,175,72,.38);box-shadow:0 0 60px -10px rgba(217,175,72,.55),inset 0 1px 0 rgba(255,255,255,.12)}
.svc-hero__icon::after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(115deg,transparent 30%,rgba(255,240,200,.55) 50%,transparent 70%);background-size:250% 100%;mix-blend-mode:overlay;animation:svcShine 4.5s var(--ease) infinite;pointer-events:none}
.svc-hero__icon svg{width:100%;height:100%;filter:drop-shadow(0 0 10px rgba(217,175,72,.55))}
@keyframes svcShine{0%,40%{background-position:120% 0}100%{background-position:-120% 0}}
.svc-hero__title{font-size:clamp(46px,6vw,104px);max-width:14ch}
.svc-hero__title .hero__line--gold{font-size:.62em;margin-top:.18em;line-height:1.05;max-width:22ch}
.hero__lead{margin-top:30px;max-width:620px;font-size:clamp(16px,1.3vw,19px);color:var(--muted);line-height:1.6}
.svc-hero__title,.hero__lead{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}

/* Worum es geht */
.svc-intro__grid,.svc-who__grid,.svc-faq__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,110px);align-items:start}
.svc-intro__text p{font-size:clamp(17px,1.35vw,20px);line-height:1.7;color:rgba(255,255,255,.84)}
.svc-intro__text p + p{margin-top:1.2em;color:var(--muted)}
.svc-intro .section__title,.svc-who .section__title,.svc-faq .section__title{font-size:clamp(36px,4.4vw,66px)}

/* Glas-Karten */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.svc-card{position:relative;height:100%;min-height:210px;padding:30px;border-radius:var(--radius);background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.012) 60%),rgba(16,15,13,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;isolation:isolate;display:flex;flex-direction:column;transition:transform .6s var(--ease);transform-style:preserve-3d}
.svc-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(140deg,rgba(243,213,138,.55),rgba(217,175,72,.12) 30%,rgba(255,255,255,.04) 55%,rgba(154,116,36,.4));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.svc-card::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(360px circle at var(--mx,50%) var(--my,0%),rgba(217,175,72,.18),transparent 60%);opacity:0;transition:opacity .5s}
.svc-card:hover::after{opacity:1}
.svc-card__num{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold)}
.svc-card__check{position:absolute;top:26px;right:26px;width:34px;height:34px;padding:7px;border-radius:50%;border:1px solid rgba(217,175,72,.35);color:var(--gold-light)}
.svc-card__text{margin-top:auto;padding-top:34px;font-size:17px;line-height:1.5;color:rgba(255,255,255,.9)}

/* Ablauf */
.svc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:step}
.svc-step{position:relative;padding:34px 28px 30px;border-top:1px solid rgba(217,175,72,.35)}
.svc-step::before{content:"";position:absolute;left:0;top:-4px;width:7px;height:7px;transform:rotate(45deg);background:var(--gold);box-shadow:0 0 16px rgba(217,175,72,.8)}
.svc-step__num{display:block;font-family:var(--serif);font-style:italic;font-size:clamp(54px,5vw,80px);line-height:1;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.svc-step__title{margin-top:20px;font-family:var(--serif);font-weight:500;font-size:clamp(24px,2vw,30px);line-height:1.1}
.svc-step__text{margin-top:14px;color:var(--muted);font-size:15.5px;line-height:1.6}

/* Für wen */
.svc-who__list li{position:relative;padding:22px 0 22px 34px;border-bottom:1px solid var(--line);font-size:clamp(17px,1.4vw,20px);color:rgba(255,255,255,.88)}
.svc-who__list li:first-child{border-top:1px solid var(--line)}
.svc-who__list li::before{content:"";position:absolute;left:4px;top:50%;width:8px;height:8px;transform:translateY(-50%) rotate(45deg);background:var(--gold-grad)}

/* Referenzen */
.svc-refs__list{display:grid;gap:28px}
.svc-ref{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,4vw,60px);align-items:center;padding:clamp(20px,2.6vw,36px);border-radius:28px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06)}
.svc-ref__screen img{width:100%;height:100%;object-fit:cover;object-position:top;transform:none}
.svc-ref__title{font-family:var(--serif);font-size:clamp(32px,3.4vw,52px);line-height:1;letter-spacing:-.02em}
.svc-ref__text{margin-top:16px;color:var(--muted);font-size:16px;line-height:1.65}
.svc-ref__body .link-underline{margin-top:26px}
.svc-ref--music .svc-ref__media{position:relative;display:flex;flex-direction:column;justify-content:center;gap:26px;min-height:240px;padding:30px;border-radius:20px;background:radial-gradient(circle at 30% 40%,rgba(217,175,72,.16),transparent 65%)}
.svc-ref__stat{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}

/* FAQ */
.svc-faq__list{border-top:1px solid var(--line)}
.faq{border-bottom:1px solid var(--line)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;cursor:pointer;list-style:none;font-family:var(--serif);font-size:clamp(21px,1.8vw,26px);line-height:1.2;transition:color .3s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--gold-light)}
.faq summary i{position:relative;flex:none;width:34px;height:34px;border-radius:50%;border:1px solid rgba(217,175,72,.4)}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1.4px;background:var(--gold-light);transform:translate(-50%,-50%);transition:transform .4s var(--ease)}
.faq summary i::after{transform:translate(-50%,-50%) rotate(90deg)}
.faq[open] summary i::after{transform:translate(-50%,-50%) rotate(0deg)}
.faq[open] summary{color:var(--gold-light)}
.faq p{padding:0 50px 26px 0;color:var(--muted);font-size:16px;line-height:1.7}

/* CTA */
.svc-cta{position:relative;overflow:hidden;isolation:isolate;padding:clamp(40px,6vw,90px);border-radius:32px;background:radial-gradient(600px circle at 85% 20%,rgba(217,175,72,.2),transparent 60%),linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border:1px solid rgba(217,175,72,.3)}
.svc-cta__hex{position:absolute;right:-60px;top:50%;width:min(42vw,440px);transform:translateY(-50%);z-index:-1;opacity:.55;filter:drop-shadow(0 0 30px rgba(217,175,72,.35))}
.svc-cta__title{margin-top:0;max-width:16ch}
.svc-cta__text{margin-top:24px;max-width:560px;color:var(--muted);font-size:clamp(16px,1.3vw,19px)}
.svc-cta__actions{margin-top:38px;display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.btn--lg{height:56px;padding:0 28px;font-size:15px}
.svc-cta__direct{margin-top:40px;display:flex;flex-wrap:wrap;gap:16px 50px}
.svc-cta__direct span{display:block;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim)}
.svc-cta__direct a{display:inline-block;margin-top:6px;font-family:var(--serif);font-size:clamp(22px,2vw,28px);color:var(--gold-light);transition:color .3s}
.svc-cta__direct a:hover{color:#fff}

/* Weitere Leistungen */
.svc-others{padding-top:0}
.svc-others__title{font-size:12px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-light);margin-bottom:26px}
.svc-others__list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.svc-other{display:flex;align-items:center;gap:16px;padding:18px 22px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.02);transition:border-color .3s,background .3s,transform .5s var(--ease)}
.svc-other:hover{border-color:rgba(217,175,72,.5);background:rgba(217,175,72,.06);transform:translateY(-3px)}
.svc-other__icon{flex:none;width:34px;height:34px;color:var(--gold)}
.svc-other__icon svg{width:100%;height:100%}
.svc-other__name{flex:1;font-size:16px;font-weight:600}
.svc-other__arrow{color:var(--gold-light);transition:transform .4s var(--ease)}
.svc-other:hover .svc-other__arrow{transform:translateX(5px)}

@media (max-width:1024px){
  .svc-grid{grid-template-columns:1fr 1fr}
  .svc-steps{grid-template-columns:1fr 1fr;row-gap:36px}
  .svc-ref{grid-template-columns:1fr}
  .svc-others__list{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .hero--service{min-height:100svh}
  .hero__crumbs ol{font-size:11px;letter-spacing:.1em}
  .svc-hero__icon{width:48px;height:48px;padding:10px;margin:18px 0 14px;border-radius:14px}
  .svc-hero__title{font-size:clamp(40px,11vw,62px)}
  .hero__lead{margin-top:20px;font-size:16px}
  .svc-intro__grid,.svc-who__grid,.svc-faq__grid{grid-template-columns:1fr;gap:30px}
  .svc-grid,.svc-steps,.svc-others__list{grid-template-columns:1fr}
  .svc-card{min-height:0;padding:24px}
  .svc-card__text{padding-top:22px}
  .svc-step{padding:28px 0 6px}
  .faq p{padding-right:0}
  .svc-cta{border-radius:24px}
  .svc-cta__hex{width:70vw;right:-30vw;opacity:.35}
  .svc-cta__actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .svc-hero__icon::after{animation:none}
}
.svc-ref--music .wave{position:static;justify-content:flex-start;height:46px;opacity:.75}
