/* =========================================================
   Mulack Consulting – site.css
   Breakpoints (mobile-first Denkweise, zentral festgelegt):
     xs  <  480px   kleine Smartphones
     sm  480–767    Smartphones
     md  768–1023   Tablets hochkant
     lg  1024–1279  Tablets quer, kleine Laptops
     xl  ≥ 1280     Desktop (Inhaltsbreite max. 1280px)
   ========================================================= */
@font-face{font-family:'Fraunces';src:url(fonts/fraunces-var.woff2) format('woff2');font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:'Fraunces';src:url(fonts/fraunces-var-italic.woff2) format('woff2');font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:'Figtree';src:url(fonts/figtree-var.woff2) format('woff2');font-weight:300 800;font-style:normal;font-display:swap}

:root{
  color-scheme: light;
  --ground:#F4F3F0; --paper:#FBFAF8; --stone:#E9E8E4; --stone-2:#CFCDC7;
  --ink:#26262A; --ink-2:#3D3C41; --muted:#55545A; --line:#E4E2DD;
  --sand:#E6D9C0; --sand-deep:#D9C7A3; --sand-soft:#EDE5D4;
  --petrol:#70B5C5; --petrol-ink:#2F6F7E; --petrol-soft:#DCEEF2;
  --grey:#A09FA5; --sp-green:#2D5F3F; --sp-soft:#E6EEE8; --sp-ink:#0F1419; --night:#34474C; --night-2:#435A60; --cta:#2F6F7E; --cta-hover:#245967; --on-night:#F4F3F0; --on-night-2:#D6D4CE;
  --serif:'Fraunces', Georgia, 'Times New Roman', serif;
  --sans:'Figtree', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --r-soft: 28px 28px 28px 4px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{background:var(--ground);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;margin:0}
.wrap{max-width:1280px;margin:0 auto;padding-inline:clamp(16px,5vw,80px)}
a{color:var(--petrol-ink)}
a:hover{color:#1F5260}
:focus-visible{outline:3px solid var(--petrol-ink);outline-offset:3px;border-radius:6px}
.contact :focus-visible,.site-footer :focus-visible,.result-side :focus-visible,.mega-card:focus-visible{outline-color:var(--petrol)}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-0.015em;text-wrap:balance;margin:0}
p{margin:0}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:14px 26px;border-radius:999px;font:600 16px/1.2 var(--sans);text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform .15s ease, background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-dark{background:var(--cta);color:#fff}
.btn-dark:hover{color:#fff;background:var(--cta-hover)}
.btn-line{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-line:hover{color:var(--ink);background:var(--paper)}
.btn-petrol{background:var(--petrol);color:#1D1D21}
.btn-petrol:hover{color:#1D1D21;background:#86C3D1}
.btn[disabled]{background:var(--stone-2);color:var(--muted);cursor:default;transform:none}

/* Header */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(244,243,240,.92);backdrop-filter:blur(8px);box-shadow:0 10px 50px -2px rgba(0,0,0,.14)}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:18px}
.brand img{height:46px;width:auto;display:block}
.nav{display:flex;align-items:center;gap:30px;font-weight:500;font-size:16px}
.nav a{color:var(--ink);text-decoration:none}
.nav a:hover{color:var(--petrol-ink)}
.nav .pill-link{padding:8px 14px;border:1px solid #D6D4CE;border-radius:999px;color:var(--muted);font-size:14px}
.nav .btn{min-height:44px;padding:10px 20px;font-size:15px;color:#fff}
.nav .btn:hover,.nav .btn:focus-visible{color:#fff}
.menu-btn{display:none;min-height:44px;min-width:44px;border:1.5px solid var(--ink);background:transparent;border-radius:999px;font:600 15px var(--sans);color:var(--ink);padding:0 16px;cursor:pointer}
@media (max-width: 1023.98px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:flex-start;gap:18px;padding:20px clamp(16px,5vw,80px) 28px;background:var(--ground);border-bottom:1px solid var(--line)}
  .nav.open{display:flex}
  .menu-btn{display:inline-flex;align-items:center}
  .brand img{height:38px}
}

/* Hero */
.hero{padding-block:clamp(32px,6vw,72px) clamp(56px,8vw,110px)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,80px);align-items:center}
.hero h1{font-size:clamp(42px,6vw,76px);line-height:1.03}
.hero h1 em{color:var(--petrol-ink)}
.hero .lead{font-size:clamp(18px,1.6vw,21px);color:#4A494F;max-width:36em;margin-top:24px}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:32px}
.hero-actions .text-link{color:var(--ink);font-weight:500}
.hero-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.hero-facts span{padding:8px 14px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:14px;color:var(--ink-2)}
.portrait{position:relative;justify-self:center}
.arch{position:relative;aspect-ratio:4/5;max-width:100%;border-radius:220px 220px 28px 28px;background:linear-gradient(180deg,var(--sand-soft) 0%,var(--stone) 100%);overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.arch img{width:auto;height:94%;max-width:100%;object-fit:contain;object-position:center bottom;display:block}
.arch .ph{display:flex;flex-direction:column;align-items:center;gap:10px;padding-bottom:38%;color:var(--muted);font-size:15px}
.arch .ph b{font-family:var(--serif);font-weight:400;font-size:72px;color:var(--grey);line-height:1}

.cutout{--s:min(420px,78vw);--x:-0.02;--disc:#D6D4CE;position:relative;width:var(--s);height:var(--s);margin:calc(var(--s)*.24) auto 0}
.cutout .disc{position:absolute;inset:0;border-radius:50%;background:var(--disc);overflow:hidden}
.cutout img{position:absolute;display:block;width:calc(var(--s)*1.2);max-width:none;height:auto;left:calc(var(--s)*var(--x));top:calc(var(--s)*-.31)}
.cutout .pop{position:absolute;left:calc(var(--s)*-.4);width:calc(var(--s)*1.8);top:calc(var(--s)*-.4);height:calc(var(--s)*.6);overflow:hidden;pointer-events:none}
.cutout .pop img{left:calc(var(--s)*(var(--x) + .4));top:calc(var(--s)*.09)}
.cutout.face-left{--x:-0.18;--disc:#E4E2DD}

.solo{width:min(100%,440px);margin:0 auto}
.solo img{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(to bottom,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,#000 78%,transparent 100%)}
.portrait .solo{width:min(100%,460px)}
.name-tag{position:absolute;left:-12px;bottom:4%;background:var(--paper);border-radius:18px;padding:14px 18px;box-shadow:0 12px 30px rgba(38,38,42,.10);display:flex;flex-direction:column;gap:2px}
.name-tag strong{font-size:17px}
.name-tag span{font-size:14px;color:var(--muted)}
@media (max-width: 1023.98px){
  .hero-grid{grid-template-columns:1fr}
  .hero .portrait{order:0}
  .portrait .solo{width:min(100%,300px)}
  .name-tag{left:0}
}

/* Finder */
.finder-sec{padding-block:clamp(56px,7vw,100px)}
.finder{background:var(--paper);border-radius:40px;padding:clamp(24px,4.5vw,64px);position:relative}
.finder-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}
.progress{display:flex;align-items:center;gap:14px;font-size:15px;color:var(--muted)}
.bars{display:flex;gap:8px}
.bars i{display:block;width:clamp(44px,6vw,80px);height:8px;border-radius:999px;background:var(--line);transition:background .3s ease}
.bars i.on:nth-child(1){background:var(--sand-deep)}
.bars i.on:nth-child(2){background:var(--petrol)}
.bars i.on:nth-child(3){background:var(--grey)}
.finder h2{font-size:clamp(34px,4.4vw,58px);line-height:1.06}
.finder h2 em{color:var(--petrol-ink)}
.finder .sub{color:#4A494F;font-size:18px;margin-top:12px;max-width:40em}
.step{display:flex;flex-direction:column;gap:32px}
.groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.group{display:flex;flex-direction:column;gap:12px}
.group-title{display:flex;align-items:center;gap:10px}
.group-title i{width:10px;height:10px;border-radius:50%;display:inline-block}
.choice{display:flex;align-items:center;gap:14px;text-align:left;padding:16px 18px;min-height:64px;border-radius:18px;font:500 16px/1.35 var(--sans);cursor:pointer;color:var(--ink);background:var(--ground);border:2px solid var(--line);transition:border-color .15s ease, background .15s ease, box-shadow .15s ease}
.choice:hover{border-color:var(--grey)}
.choice .box{flex-shrink:0;width:24px;height:24px;border-radius:8px;border:2px solid #85848A;display:flex;align-items:center;justify-content:center;color:#fff}
.choice[aria-pressed="true"]{background:#fff;border-color:var(--petrol-ink);box-shadow:0 6px 20px rgba(38,38,42,.08)}
.choice[aria-pressed="true"] .box{background:var(--petrol-ink);border-color:var(--petrol-ink)}
.choice .box svg{opacity:0}
.choice[aria-pressed="true"] .box svg{opacity:1}
.step-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:14px 22px}
.step-actions #back1{margin-right:auto}
.hint{color:var(--muted);font-size:15px}
.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.mode{display:flex;flex-direction:column;gap:12px;text-align:left;padding:28px;min-height:190px;border-radius:var(--r-soft);cursor:pointer;color:var(--ink);background:var(--ground);border:2px solid var(--line);font:inherit}
.mode strong{font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.15}
.mode span{color:#4A494F;font-size:16px}
.mode[aria-checked="true"]{background:#fff;border-color:var(--petrol-ink);box-shadow:0 8px 24px rgba(38,38,42,.08)}
.result{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;align-items:start}
.result-main{grid-column:span 7;display:flex;flex-direction:column;gap:26px}
.result-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rcard{display:flex;flex-direction:column;gap:8px;padding:22px 24px;background:var(--ground);border-radius:22px 22px 22px 4px;border-top:4px solid var(--petrol);text-decoration:none;color:var(--ink);transition:transform .15s ease}
.rcard:hover{transform:translateY(-2px);color:var(--ink)}
.rcard .t{font-family:var(--serif);font-size:24px;line-height:1.15}
.rcard .d{font-size:15px;color:#4A494F}
.rcard .go{font-size:15px;font-weight:600;color:var(--petrol-ink)}
.diy{padding:24px 26px;background:var(--sand-soft);border-radius:22px;display:flex;flex-direction:column;gap:14px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{padding:9px 15px;background:#F7F2E8;border:1px solid var(--sand-deep);border-radius:999px;color:var(--ink);text-decoration:none;font-size:15px}
.chip:hover{color:var(--ink);background:#fff}
.restart{align-self:flex-start;background:none;border:0;padding:0;min-height:44px;font:500 15px var(--sans);color:var(--muted);text-decoration:underline;cursor:pointer}
.result-side{grid-column:span 5;background:var(--night);color:var(--on-night);border-radius:32px;padding:32px;display:flex;flex-direction:column;gap:16px}
.result-side h3{font-size:30px;line-height:1.15}
.result-side p{color:var(--on-night-2);font-size:16px}
.tag-list{display:flex;flex-wrap:wrap;gap:8px}
.tag-list span{padding:6px 12px;background:var(--night-2);border-radius:999px;font-size:14px}
.tag-list span.mode-tag{background:#3E5C63}
@media (max-width: 1023.98px){.groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 1023.98px){
  .modes{grid-template-columns:1fr}
  .result-main,.result-side{grid-column:1 / -1}
  .result-cards{grid-template-columns:1fr}
}
@media (max-width: 767.98px){.groups{grid-template-columns:1fr}}

/* Pillars */
.pillars-sec{padding-block:clamp(40px,6vw,80px) clamp(60px,8vw,110px);position:relative}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:clamp(32px,4vw,56px)}
.sec-head h2{font-size:clamp(34px,4vw,52px);line-height:1.1;max-width:14em}
.sec-head p{color:var(--muted);font-size:18px;max-width:26em}
.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:44px;row-gap:56px;position:relative}
.pillar{display:flex;flex-direction:column;gap:12px;padding:30px 30px 28px;background:var(--paper);border-radius:var(--r-soft);border-top:4px solid var(--c,var(--grey));text-decoration:none;color:var(--ink);transition:transform .2s ease, box-shadow .2s ease}
.pillar:hover{color:var(--ink);transform:translateY(-3px);box-shadow:0 14px 34px rgba(38,38,42,.08)}
.pillar .q{font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.25}
.pillar .k{font-weight:600;color:var(--petrol-ink)}
.pillar .d{font-size:16px;color:#4A494F}
.pillar .go{margin-top:auto;font-size:15px;font-weight:600}
@media (min-width: 1024px){
  .pillar:nth-child(3n+2){margin-top:56px}
  .pillar:nth-child(3n+3){margin-top:112px}
  .wave{position:absolute;left:0;top:40px;width:100%;height:calc(100% - 40px);pointer-events:none}
}
@media (max-width: 1023.98px){.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}.wave{display:none}}
@media (max-width: 767.98px){.pillars{grid-template-columns:1fr}}

/* SEOpionier band */
.band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;padding:28px clamp(24px,4vw,48px);background:var(--sand-soft);border-radius:40px}
.band p{font-size:19px;line-height:1.45}
.band em{font-family:var(--serif)}
.band .btn{flex-shrink:0}

/* Process */
.process-sec{padding-block:clamp(70px,9vw,130px) clamp(50px,7vw,100px);position:relative}
.process-sec h2{font-size:clamp(34px,4vw,52px);line-height:1.1;margin-bottom:clamp(36px,5vw,64px)}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;position:relative}
.steps li{list-style:none;display:flex;flex-direction:column;gap:12px}
.steps ol{margin:0;padding:0}
.num{width:44px;height:44px;border-radius:50%;background:var(--cta);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600}
.steps li:last-child .num{background:var(--petrol-ink);color:#fff}
.steps strong{font-size:21px}
.steps p{color:#4A494F;font-size:16px}
@media (min-width: 1024px){
  .steps li:nth-child(1){padding-top:78px}.steps li:nth-child(2){padding-top:56px}.steps li:nth-child(3){padding-top:28px}
  .path{position:absolute;left:0;top:-10px;width:100%;height:110px;pointer-events:none}
}
@media (max-width: 1023.98px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.path{display:none}}
@media (max-width: 767.98px){.steps{grid-template-columns:1fr}}

/* About */
.about{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,6vw,80px);align-items:center;padding:clamp(28px,5vw,80px);background:var(--stone);border-radius:40px}
.about h2{font-size:clamp(34px,4vw,48px)}
.about .copy{display:flex;flex-direction:column;gap:20px}
.about .copy p{font-size:18px;color:var(--ink-2);max-width:34em}
.about ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.about li{display:flex;gap:12px;align-items:baseline;font-size:17px}
.about li::before{content:"";flex-shrink:0;width:18px;height:3px;border-radius:2px;background:var(--petrol);transform:translateY(-4px)}
.about-visual{position:relative;max-width:420px;justify-self:center;width:100%}
.about-visual .arch{aspect-ratio:1/1;border-radius:24px 200px 24px 24px}
@media (max-width: 1023.98px){.about{grid-template-columns:1fr}}

/* Region */
.region{padding-block:clamp(60px,8vw,110px) 20px;display:flex;flex-direction:column;gap:16px}
.region .places{font-family:var(--serif);font-size:clamp(28px,3.4vw,44px);line-height:1.3}
.region .places span{color:var(--grey)}
.region .places em{color:var(--petrol-ink)}

/* Contact */
.contact{margin-top:clamp(50px,7vw,90px);background:var(--night);color:var(--on-night);border-radius:40px 40px 0 0;padding:clamp(32px,5vw,72px) clamp(24px,5vw,80px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:40px}
.contact .intro{grid-column:span 5;display:flex;flex-direction:column;gap:18px}
.contact h2{font-size:clamp(36px,4.4vw,56px);line-height:1.05}
.contact .intro p{color:var(--on-night-2);font-size:18px}
.mail-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.mail-row code{font-family:var(--sans);font-size:17px;user-select:all}
.copy-btn{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #6B8187;background:transparent;color:var(--on-night);font:500 14px var(--sans);cursor:pointer}
.contact form{grid-column:span 7;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--on-night-2)}
.field.full{grid-column:1 / -1}
.field input,.field textarea,.field select{padding:14px;border-radius:12px;border:1px solid #4A494F;background:var(--ground);color:var(--ink);font:16px var(--sans)}
.field textarea{resize:vertical;min-height:110px}
.sel-tags{grid-column:1 / -1}
.form-foot{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.form-note{font-size:14px;color:var(--on-night-2)}
.sent{grid-column:span 7;display:flex;flex-direction:column;gap:12px;padding:32px;border-radius:24px;background:var(--night-2)}
.sent h3{font-size:30px}
@media (max-width: 1023.98px){.contact .intro,.contact form,.sent{grid-column:1 / -1}.contact form{grid-template-columns:1fr}}
.site-footer{background:var(--night);color:#D3DDDF;border-top:1px solid var(--night-2);font-size:15px}
.foot-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:26px 40px}
.foot-row a{color:#D3DDDF}
.foot-row nav{display:flex;flex-wrap:wrap;gap:24px}
.contact-wrap{padding-inline:clamp(16px,5vw,80px);max-width:1440px;margin:0 auto}
.footer-inner{max-width:1280px;margin:0 auto}

/* Solution view */
.sol-hero{padding-block:clamp(28px,5vw,56px) clamp(56px,7vw,90px)}
.crumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:15px;color:var(--muted);margin-bottom:22px}
.crumbs a{color:var(--muted)}
.crumbs b{color:var(--ink);font-weight:600}
.sol-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;align-items:end}
.sol-hero h1{font-size:clamp(40px,5.6vw,72px);line-height:1.03}
.sol-hero h1 em{color:var(--petrol-ink)}
.sol-hero .lead{font-size:clamp(18px,1.6vw,20px);color:#4A494F;margin-top:22px;max-width:36em}
.sol-hero .btn{margin-top:28px}
.sol-mark{justify-self:end;width:min(100%,300px);aspect-ratio:1/1;border-radius:24px 200px 24px 24px;background:var(--c-soft,var(--petrol-soft));display:flex;align-items:flex-end;padding:26px;font-family:var(--serif);font-size:26px;line-height:1.2;color:var(--ink)}
@media (max-width: 1023.98px){.sol-hero-grid{grid-template-columns:1fr}.sol-mark{display:none}}
.intents{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;padding:clamp(28px,5vw,64px);background:var(--paper);border-radius:40px}
.intents .head{grid-column:span 4;display:flex;flex-direction:column;gap:12px}
.intents .head h2{font-size:clamp(30px,3.2vw,42px);line-height:1.1}
.intents ul{grid-column:span 8;list-style:none;margin:0;padding:0}
.intents li{padding:20px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-style:italic;font-size:clamp(20px,2vw,25px);line-height:1.3}
.intents li:last-child{border-bottom:0}
@media (max-width: 1023.98px){.intents .head,.intents ul{grid-column:1 / -1}}
.blocks{padding-block:clamp(60px,8vw,110px) clamp(40px,6vw,90px)}
.blocks-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.blocks-grid div{display:flex;flex-direction:column;gap:10px;padding-top:20px;border-top:4px solid var(--c)}
.blocks-grid strong{font-size:20px}
.blocks-grid p{font-size:16px;color:#4A494F}
@media (max-width: 1023.98px){.blocks-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 767.98px){.blocks-grid{grid-template-columns:1fr}}
.twin{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.twin > div{padding:clamp(26px,4vw,44px);border-radius:32px;display:flex;flex-direction:column;gap:16px}
.twin .diy-box{background:var(--sand-soft)}
.twin .rel-box{background:var(--stone)}
.twin h3{font-size:clamp(26px,2.6vw,34px);line-height:1.15}
.list-links{display:flex;flex-direction:column;gap:10px}
.list-links a{display:flex;justify-content:space-between;gap:16px;padding:15px 18px;border-radius:16px;text-decoration:none;color:var(--ink);font-size:16px;background:var(--ground)}
.diy-box .list-links a{background:#F7F2E8}
.list-links a:hover{color:var(--ink);background:#fff}
@media (max-width: 1023.98px){.twin{grid-template-columns:1fr}}

/* SEOpionier-Links */
a.to-sp{color:var(--sp-green)}
a.to-sp:hover{color:var(--sp-green);filter:brightness(.85)}
.nav a.pill-link.to-sp{border-color:var(--sp-green);color:var(--sp-green)}
.btn-line.to-sp{border-color:var(--sp-green);color:var(--sp-green)}
.btn-line.to-sp:hover{background:var(--sp-soft)}
.chip.to-sp{background:var(--sp-soft);border-color:var(--sp-green);color:var(--sp-green)}
.list-links a.to-sp,.diy-box .list-links a.to-sp{background:var(--sp-soft);color:var(--sp-green)}
.foot-row a.to-sp{color:#8FC7A2}

.sp-lockup{display:inline-flex;align-items:center;gap:12px;flex-shrink:0}
.sp-lockup img{height:30px;width:auto;display:block}
.sp-word{font-family:var(--serif);font-size:26px;line-height:1;letter-spacing:-0.01em;color:var(--sp-ink)}
.sp-word b{font-weight:400}
.sp-word i{color:var(--sp-green);font-style:italic}
.sp-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.sp-head span.t{font-size:17px}
.diy{background:var(--sp-soft)}
.chip.to-sp{background:#F6F9F7}
.band{background:var(--sp-soft)}
.band .band-left{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.twin .diy-box{background:var(--sp-soft)}
.diy-box .list-links a.to-sp{background:#F6F9F7}

.sp-stack{display:flex;flex-direction:column;gap:5px}
.sp-stack .rule{height:1.5px;background:var(--sp-ink)}
.sp-stack .tag{font:500 10px/1 ui-monospace,'SFMono-Regular',Consolas,monospace;letter-spacing:.32em;color:#5E6570;text-transform:uppercase;white-space:nowrap}
.band .sp-lockup img{height:44px}
.band .sp-word{font-size:34px}

/* Referenzen */
.ref-hero{padding-block:clamp(28px,5vw,56px) clamp(40px,5vw,64px)}
.ref-hero h1{font-size:clamp(40px,5.6vw,72px);line-height:1.03;max-width:13em}
.ref-hero h1 em{color:var(--petrol-ink)}
.ref-hero .lead{font-size:clamp(18px,1.6vw,20px);color:#4A494F;margin-top:22px;max-width:38em}
.ref-filter{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.ref-filter button{min-height:44px;padding:10px 18px;border-radius:999px;border:1.5px solid var(--line);background:var(--paper);font:500 15px var(--sans);color:var(--ink);cursor:pointer}
.ref-filter button[aria-pressed="true"]{background:var(--cta);border-color:var(--cta);color:#fff}
.cases{display:flex;flex-direction:column;gap:28px;padding-bottom:clamp(40px,6vw,80px)}
.case{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px;padding:clamp(24px,4vw,48px);background:var(--paper);border-radius:var(--r-soft);border-top:4px solid var(--c)}
.case .who{grid-column:span 4;display:flex;flex-direction:column;gap:12px}
.case .who h2{font-size:clamp(28px,2.8vw,36px);line-height:1.1}
.case .place{color:var(--muted);font-size:15px}
.status{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:600;background:var(--stone);color:var(--ink-2)}
.status i{width:8px;height:8px;border-radius:50%;background:var(--grey)}
.status.live i{background:#3F8F5B}
.status.run i{background:var(--petrol)}
.status.start i{background:var(--sand-deep)}
.case .domain{font-size:15px;font-weight:600;align-self:flex-start}
.case .what{grid-column:span 5;display:flex;flex-direction:column;gap:14px}
.case .what p{color:#3D3C41}
.case .what ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.case .what li{display:flex;gap:12px;align-items:baseline;font-size:16px;color:#3D3C41}
.case .what li::before{content:"";flex-shrink:0;width:14px;height:2px;background:var(--c);transform:translateY(-4px)}
.case .res{grid-column:span 3;display:flex;flex-direction:column;gap:12px;padding-left:24px;border-left:1px solid var(--line)}
.case .big{font-family:var(--serif);font-size:clamp(44px,5vw,64px);line-height:1;color:var(--petrol-ink)}
.case .res p{font-size:15px;color:#4A494F}
.case .tags{display:flex;flex-wrap:wrap;gap:6px}
.case .tags span{padding:4px 10px;border-radius:999px;background:var(--ground);border:1px solid var(--line);font-size:13px;color:var(--ink-2)}
@media (max-width: 1023.98px){.case .who,.case .what,.case .res{grid-column:1 / -1}.case .res{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:18px}}
.ref-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:clamp(24px,4vw,44px);background:var(--stone);border-radius:40px;margin-bottom:10px}
.ref-cta h2{font-size:clamp(28px,3vw,40px)}

/* Mega-Menü */
.mega-wrap{position:static}
.mega-btn{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0;border:0;background:none;font:500 16px var(--sans);color:var(--ink);cursor:pointer}
.mega-btn svg{transition:transform .2s ease}
.mega-btn[aria-expanded="true"]{color:var(--petrol-ink)}
.mega-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.mega{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 24px 50px rgba(38,38,42,.10);animation:megaIn .2s ease}
@keyframes megaIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.mega-inner{max-width:1280px;margin:0 auto;padding:32px clamp(16px,5vw,80px) 36px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:28px}
.mega-items{grid-column:span 9;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.nav .mega-item,.mega-item{display:flex;flex-direction:column;gap:6px;padding:16px 18px 18px;border-radius:20px 20px 20px 4px;text-decoration:none;color:var(--ink);transition:background .15s ease}
.mega-item:hover,.mega-item:focus-visible{background:var(--ground);color:var(--ink)}
.mega-item .ico{width:80px;height:64px;margin-bottom:4px;overflow:visible}
.mega-item strong{font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.2}
.mega-item span{font-size:14px;line-height:1.45;color:var(--muted)}
.mega-aside{grid-column:span 3;display:flex;flex-direction:column;gap:12px}
.nav .mega-card,.mega-card{display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:24px;background:var(--night);color:var(--on-night);text-decoration:none}
.nav .mega-card:hover,.mega-card:hover{color:var(--on-night);background:#2A3A3F}
.mega-card b{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.2}
.mega-card span{font-size:14px;color:var(--on-night-2)}
.mega-card .go{color:var(--petrol);font-weight:600}
.nav .mega-link,.mega-link{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;background:var(--ground);text-decoration:none;color:var(--ink);font-size:15px}
.mega-link:hover{color:var(--ink);background:var(--stone)}
.mega-link.to-sp{background:var(--sp-soft)}
.mega-link .sp-lockup img{height:22px}
.mega-link .sp-word{font-size:19px}
/* Icon-Grundstile */
.ico .s{fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.ico .f-ink{fill:var(--ink)} .ico .f-grey{fill:#D6D4CE} .ico .f-pet{fill:var(--petrol)} .ico .f-sand{fill:var(--sand-deep)}
.ico .s-pet{fill:none;stroke:var(--petrol);stroke-width:2.4;stroke-linecap:round}
.ico *{transform-box:fill-box}
.a-rise{transform-origin:50% 100%}.a-ring,.a-ring2,.a-spark{transform-origin:50% 50%}.a-needle{transform-origin:50% 100%}.a-flag{transform-origin:0% 50%}
.a-ring,.a-ring2{opacity:0}
@keyframes rise{0%,15%{transform:scaleY(.35)}55%,100%{transform:scaleY(1)}}
@keyframes lens{0%,15%{transform:translate(-14px,14px)}55%,100%{transform:translate(0,0)}}
@keyframes pin{0%,100%{transform:translateY(0)}40%{transform:translateY(-8px)}}
@keyframes ring{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.4);opacity:0}}
@keyframes build{0%,5%{opacity:0;transform:translateY(6px)}25%,85%{opacity:1;transform:none}100%{opacity:0}}
@keyframes needle{0%{transform:rotate(-70deg)}45%,80%{transform:rotate(58deg)}100%{transform:rotate(-70deg)}}
@keyframes dot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
@keyframes spark{0%,40%{transform:scale(0) rotate(0);opacity:0}60%{transform:scale(1.15) rotate(45deg);opacity:1}100%{transform:scale(1) rotate(90deg);opacity:1}}
@keyframes draw{0%{stroke-dashoffset:90}55%,100%{stroke-dashoffset:0}}
@keyframes flag{0%,45%{transform:scaleX(0)}60%{transform:scaleX(1.1)}70%,100%{transform:scaleX(1)}}
.play .a-rise{animation:rise 2.4s ease-in-out infinite}
.play .a-lens{animation:lens 2.4s ease-in-out infinite}
.play .a-pin{animation:pin 1.6s cubic-bezier(.3,0,.3,1) infinite}
.play .a-ring{animation:ring 1.6s ease-out infinite}
.play .a-ring2{animation:ring 1.6s ease-out .5s infinite}
.play .a-b1,.play .a-b2,.play .a-b3,.play .a-b4{animation:build 3s ease infinite}
.play .a-b2{animation-delay:.25s}.play .a-b3{animation-delay:.5s}.play .a-b4{animation-delay:.75s}
.play .a-needle{animation:needle 2.2s cubic-bezier(.5,0,.2,1) infinite}
.play .a-dot1,.play .a-dot2,.play .a-dot3{animation:dot 1.2s ease-in-out infinite}
.play .a-dot2{animation-delay:.15s}.play .a-dot3{animation-delay:.3s}
.play .a-spark{animation:spark 2.4s ease-in-out infinite}
.play .a-path{stroke-dasharray:90;animation:draw 2.8s ease infinite}
.play .a-flag{animation:flag 2.8s ease infinite}
@media (prefers-reduced-motion: reduce){.ico *{animation:none!important;opacity:1!important;stroke-dashoffset:0!important}}
@media (max-width: 1023.98px){
  .mega{position:static;box-shadow:none;border:0;background:transparent;animation:none}
  .mega-inner{padding:8px 0 0;grid-template-columns:1fr;gap:12px}
  .mega-items,.mega-aside{grid-column:1 / -1}
  .mega-items{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mega-item{padding:12px}
  .mega-item .ico{width:56px;height:45px}
  .mega-item span{display:none}
  .nav .mega-wrap{width:100%}
}
@media (max-width: 479.98px){.mega-items{grid-template-columns:1fr}}

/* Zertifikate-Laufband */
.certs{padding-block:8px clamp(24px,4vw,40px)}
.certs-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;margin-bottom:18px}
.certs-head p{color:var(--muted);font-size:15px}
.marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.marquee-track{display:flex;gap:18px;width:max-content;padding-block:10px 16px;animation:marq 70s linear infinite}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}
@keyframes marq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.cert{position:relative;flex:0 0 auto;width:236px;height:156px;padding:18px 18px 16px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 1px 0 var(--line),0 10px 24px rgba(38,38,42,.06);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:transform .2s ease}
.cert:hover{transform:translateY(-4px) rotate(-.4deg)}
.cert::before{content:"";position:absolute;inset:6px;border:1px solid #EFEDE8;border-radius:3px;pointer-events:none}
.cert .kind{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cert .name{font-family:var(--serif);font-size:20px;line-height:1.15;color:var(--ink);max-width:170px}
.cert .by{font-size:13px;color:var(--ink-2)}
.cert .seal{position:absolute;right:14px;bottom:14px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--c,var(--stone))}
.cert .seal svg{width:22px;height:22px}
.cert.star{background:linear-gradient(160deg,#fff 60%,var(--petrol-soft))}
.cert.star .name{color:var(--petrol-ink)}
@media (prefers-reduced-motion: reduce){.marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.marquee-track{animation:none}.marquee-track .dup{display:none}}

.marquee-track li{flex:0 0 auto}
.badge{display:block;width:150px;border-radius:12px;transition:transform .25s ease, filter .25s ease;filter:drop-shadow(0 6px 12px rgba(38,38,42,.08))}
.badge img{display:block;width:100%;height:auto}
.badge:hover,.badge:focus-visible{transform:translateY(-6px) scale(1.04);filter:drop-shadow(0 12px 22px rgba(38,38,42,.16))}
.marquee-track{gap:22px;padding-block:14px 20px}
@media (max-width: 767.98px){.badge{width:118px}}

.badge{position:relative}
.badge-tip{position:absolute;left:50%;bottom:6px;transform:translate(-50%,6px);width:max-content;max-width:190px;padding:8px 12px;border-radius:12px;background:var(--night);color:var(--on-night);font-size:12.5px;line-height:1.35;text-align:center;opacity:0;pointer-events:none;transition:opacity .18s ease, transform .18s ease;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.badge-tip b{display:block;font-weight:600;font-size:13px}
.badge:hover .badge-tip,.badge:focus-visible .badge-tip{opacity:1;transform:translate(-50%,0)}

/* ===== Ergänzungen Mehrseiten-Version ===== */
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-60px;z-index:50;padding:12px 18px;background:var(--ink);color:var(--ground);border-radius:12px;text-decoration:none}
.skip:focus{top:12px;color:var(--ground)}
.crumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:15px;color:var(--muted);padding-block:20px 0}
.nav a[aria-current="page"]{color:var(--petrol-ink)}
.brand img{height:46px;width:auto}
picture{display:contents}
.solo picture img,.solo img{display:block;width:100%;height:auto}
.hero-facts{list-style:none;padding:0}
.hero-facts li{padding:8px 14px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-size:14px;color:var(--ink-2)}
.h3,.twin h2.h3{font-family:var(--serif);font-weight:400;font-size:clamp(26px,2.6vw,34px);line-height:1.15;margin:0}
.blocks-grid h3{font-family:var(--sans);font-weight:600;font-size:20px;margin:0}
.certs-head h2.eyebrow{margin:0;font-family:var(--sans)}
.marquee-track{list-style:none;margin:0;padding-inline:0}
.sol-mark{flex-direction:column;align-items:flex-start;justify-content:space-between;gap:12px}
.sol-mark .ico{width:120px;height:96px}
.sol-mark span{font-family:var(--serif);font-size:24px;line-height:1.2}
.side-actions{display:flex;flex-wrap:wrap;gap:10px}
.btn-line-light{background:transparent;color:var(--on-night);border-color:var(--on-night)}
.btn-line-light:hover{color:var(--on-night);background:var(--night-2)}
/* Kontakt */
.contact .intro .tag-list{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.contact .intro .lbl{font-size:14px;color:var(--on-night-2);margin-right:4px}
#formTags{display:contents}
#formTags span{padding:6px 12px;background:var(--night-2);border-radius:999px;font-size:14px}
.contact-ways{grid-column:span 7;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:start}
.way{display:flex;flex-direction:column;gap:6px;padding:22px 24px;border-radius:22px;background:var(--night-2);color:var(--on-night);text-decoration:none;transition:background .15s ease}
.way:hover{background:#4D666D;color:var(--on-night)}
.way b{font-size:18px}
.way span{font-size:15px;color:var(--on-night-2)}
.way.way-main{grid-column:1 / -1;background:var(--petrol);color:#1D1D21}
.way.way-main span{color:#1D1D21}
.way.way-main:hover{background:#86C3D1;color:#1D1D21}
.copy-btn{justify-self:start;min-height:44px}
@media (max-width: 1023.98px){.contact-ways{grid-column:1 / -1}}
@media (max-width: 479.98px){.contact-ways{grid-template-columns:1fr}}
/* Footer */
.footer-inner{padding-inline:clamp(24px,5vw,80px)}
.foot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-block:40px 28px}
.foot-col{display:flex;flex-direction:column;gap:8px}
.foot-col b{color:var(--on-night);font-weight:600;margin-bottom:4px}
.foot-col a{color:#D3DDDF;text-decoration:none}
.foot-col a:hover{color:var(--on-night);text-decoration:underline}
.foot-col address{font-style:normal;line-height:1.6}
.foot-row{border-top:1px solid var(--night-2)}
.live-stats{font-size:13px;color:#C3CFD2;font-variant-numeric:tabular-nums}
@media (max-width: 767.98px){.foot-grid{grid-template-columns:1fr}}
/* FAQ */
.faq{padding-bottom:clamp(40px,6vw,90px)}
.faq-list{display:flex;flex-direction:column;gap:12px;max-width:900px}
.faq details{background:var(--paper);border-radius:20px 20px 20px 4px;padding:4px 24px}
.faq summary{cursor:pointer;list-style:none;padding:18px 32px 18px 0;font-family:var(--serif);font-size:21px;line-height:1.3;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:14px;font-family:var(--sans);font-size:26px;color:var(--petrol-ink)}
.faq details[open] summary::after{content:"–"}
.faq details p{padding-bottom:20px;color:#3D3C41;max-width:65ch}
/* Grounding Page */
.gp-hero{padding-block:clamp(24px,4vw,48px) clamp(40px,6vw,72px)}
.gp-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(28px,5vw,72px);align-items:center}
.gp-hero h1{font-size:clamp(40px,5.4vw,68px);line-height:1.04}
.gp-hero h1 em{color:var(--petrol-ink)}
.gp-def{margin-top:22px;font-size:clamp(18px,1.6vw,21px);line-height:1.6;color:#3D3C41;max-width:38em}
.gp-def strong{color:var(--ink)}
.gp-updated{margin-top:16px;font-size:14px;color:var(--muted)}
@media (max-width: 1023.98px){.gp-grid{grid-template-columns:1fr}.gp-grid .portrait{order:-1}}
.facts{background:var(--paper);border-radius:32px;padding:clamp(22px,4vw,48px)}
.facts h2{font-size:clamp(28px,3vw,40px);margin-bottom:22px}
.facts dl{display:grid;grid-template-columns:minmax(160px,.35fr) 1fr;margin:0}
.facts dt,.facts dd{padding:14px 0;border-top:1px solid var(--line);margin:0}
.facts dt{font-weight:600;color:var(--ink-2);padding-right:20px}
.facts dd{color:#3D3C41}
@media (max-width: 767.98px){.facts dl{grid-template-columns:1fr}.facts dd{border-top:0;padding-top:0}}
.gp-sec{padding-block:clamp(50px,7vw,96px) 0}
.gp-sec > h2{font-size:clamp(30px,3.4vw,44px);margin-bottom:28px}
.timeline{list-style:none;margin:0;padding:0;position:relative;display:grid;gap:4px}
.timeline::before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:2px;background:var(--line)}
.timeline li{position:relative;padding:14px 0 14px 36px;display:grid;grid-template-columns:minmax(150px,.25fr) 1fr;gap:6px 24px}
.timeline li::before{content:"";position:absolute;left:0;top:20px;width:16px;height:16px;border-radius:50%;background:var(--ground);border:3px solid var(--petrol)}
.timeline li:first-child::before{background:var(--petrol)}
.timeline .when{font-size:15px;color:var(--muted);font-variant-numeric:tabular-nums}
.timeline b{display:block;font-size:18px}
.timeline p{color:#4A494F;font-size:16px}
@media (max-width: 767.98px){.timeline li{grid-template-columns:1fr}}
.cred-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;list-style:none;margin:0;padding:0}
.cred-list a{display:flex;gap:14px;align-items:center;padding:12px 14px;border-radius:18px;background:var(--paper);text-decoration:none;color:var(--ink);height:100%}
.cred-list a:hover{background:#fff;color:var(--ink)}
.cred-list img{width:52px;height:auto;flex-shrink:0}
.cred-list b{display:block;font-size:15px;font-weight:600;line-height:1.3}
.cred-list span{font-size:13px;color:var(--muted)}
.profiles{display:flex;flex-wrap:wrap;gap:12px}
.profiles a{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;background:var(--paper);border:1px solid var(--line);text-decoration:none;color:var(--ink)}
.profiles a:hover{border-color:var(--ink);color:var(--ink)}
/* Unter der Haube */
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.metric{background:var(--paper);border-radius:24px 24px 24px 4px;padding:22px 24px;display:flex;flex-direction:column;gap:6px;border-top:4px solid var(--c,var(--petrol))}
.metric .v{font-family:var(--serif);font-size:clamp(34px,3.6vw,48px);line-height:1;font-variant-numeric:tabular-nums}
.metric .l{font-size:15px;color:#4A494F}
@media (max-width: 1023.98px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.check-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.check-list li{background:var(--paper);border-radius:20px;padding:20px 22px;display:flex;flex-direction:column;gap:6px}
.check-list b{font-size:17px}
.check-list p{font-size:15px;color:#4A494F}
@media (max-width: 767.98px){.check-list{grid-template-columns:1fr}}
.code-wrap{background:var(--night);color:#E7E6E3;border-radius:24px;padding:20px;overflow:auto;max-height:520px}
.code-wrap pre{margin:0;font:13px/1.55 ui-monospace,'SFMono-Regular',Consolas,monospace;white-space:pre}
.note{font-size:14px;color:var(--muted);margin-top:10px}
/* Termin / Rechtliches / VCF */
.legal{max-width:760px;padding-block:clamp(24px,4vw,48px) clamp(50px,7vw,90px)}
.legal h1{font-size:clamp(36px,4.6vw,56px);margin-bottom:24px}
.legal h2{font-size:clamp(22px,2.2vw,28px);margin:32px 0 10px}
.legal p,.legal li{color:#3D3C41;margin-bottom:10px}
.legal address{font-style:normal;line-height:1.7}
.draft{background:var(--sand-soft);border-radius:18px;padding:16px 20px;margin-bottom:24px;font-size:15px}
.booking-box{background:var(--paper);border-radius:32px;padding:clamp(22px,4vw,44px);display:flex;flex-direction:column;gap:18px}
.booking-frame{width:100%;height:min(1200px,90vh);border:0;border-radius:20px;background:#fff}
.vcard{max-width:520px;margin:0 auto;padding-block:clamp(24px,5vw,60px) clamp(40px,6vw,80px);display:flex;flex-direction:column;gap:18px;align-items:stretch;text-align:center}
.vcard .solo{width:min(100%,260px);margin:0 auto}
.vcard h1{font-size:clamp(34px,6vw,48px)}
.vcard .role{color:var(--muted)}
.vcard .btn{width:100%}
.vcard .rows{display:flex;flex-direction:column;gap:10px;text-align:left}
.vcard .rows a{display:flex;justify-content:space-between;gap:12px;padding:16px 18px;border-radius:16px;background:var(--paper);text-decoration:none;color:var(--ink)}
/* Mega-Menü und Badge-Band auf Seitenbreite begrenzt (Marc, 26.09.) */
@media (min-width: 1024px){
  .mega{left:max(16px, calc(50% - 640px));right:max(16px, calc(50% - 640px));border:1px solid var(--line);border-top:1px solid var(--stone-2);border-radius:0 0 28px 28px}
  .mega-inner{padding:28px 32px 32px}
}
.certs .marquee{max-width:1280px;margin-inline:auto}
@media (max-width: 1327.98px){.certs .marquee{margin-inline:clamp(16px,5vw,80px)}}
/* Badge-Laufband im Goldenen Schnitt: Badge-Breite : Abstand = 1,618 : 1
   Abstand als margin statt gap, damit die Endlosschleife (translateX -50 %) nahtlos bleibt */
.marquee{--badge-w:150px;--badge-gap:calc(var(--badge-w) / 1.618)}
.marquee-track{gap:0;animation-duration:160s}
.marquee-track li{margin-right:var(--badge-gap)}
.marquee .badge{width:var(--badge-w)}
@media (max-width: 767.98px){.marquee{--badge-w:118px}}
/* 12-Spalten-Raster unter Desktop einspaltig (verhindert horizontales Scrollen) */
@media (max-width: 1023.98px){
  .contact,.result,.intents,.case,.about-grid{grid-template-columns:1fr}
  .contact>*,.result>*,.intents>*,.case>*{grid-column:1 / -1!important}
}
.way .sel{overflow-wrap:anywhere}
.sp-stack .tag{white-space:normal}
@media (max-width: 479.98px){.band .sp-lockup img{height:34px}.band .sp-word{font-size:28px}.band .sp-lockup{flex-shrink:1;min-width:0}}
.band-left{min-width:0}
.portrait{width:min(100%,460px)}
@media (max-width: 1023.98px){.portrait{width:min(100%,320px)}}
.about-visual .solo{width:min(100%,420px)}

.heart{display:inline-block;vertical-align:-2px;margin:0 2px}

/* Laufband mit JS: scrollbar, ziehbar, wischbar, Schieberegler */
.marquee.js{-webkit-user-select:none;user-select:none;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.marquee.js::-webkit-scrollbar{display:none}
.marquee.js .marquee-track{animation:none}
@media (pointer:fine){.marquee.js{cursor:grab}.marquee.js.dragging{cursor:grabbing}.marquee.js.dragging .badge{pointer-events:none}}
.marquee-ctrl{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:6px}
.mc-step{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 auto;border-radius:50%;border:1.5px solid var(--stone-2);background:var(--paper);color:var(--ink);font-size:18px;cursor:pointer;transition:border-color .15s ease, background .15s ease}
.mc-step:hover{border-color:var(--cta);background:#fff}
.marquee-ctrl input[type=range]{-webkit-appearance:none;appearance:none;flex:0 1 720px;min-width:0;width:100%;height:32px;background:transparent;cursor:pointer;margin:0}
.marquee-ctrl input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:var(--stone-2)}
.marquee-ctrl input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:var(--stone-2)}
.marquee-ctrl input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-10px;border-radius:50%;background:var(--cta);border:3px solid var(--paper);box-shadow:0 2px 8px rgba(38,38,42,.25)}
.marquee-ctrl input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--cta);border:3px solid var(--paper);box-shadow:0 2px 8px rgba(38,38,42,.25)}
.marquee-ctrl input[type=range]:focus-visible{outline:3px solid var(--petrol-ink);outline-offset:4px;border-radius:8px}
@media (prefers-reduced-motion: reduce){.marquee.js .marquee-track .dup{display:none}}

/* Pfeile in Buttons und Links: wandern beim Überfahren in ihre Richtung */
.ar{display:inline-block;transition:transform .22s cubic-bezier(.3,.7,.4,1.4)}
.btn .ar{margin-left:4px}
a:hover .ar,a:focus-visible .ar,button:hover .ar,button:focus-visible .ar{transform:translateX(5px)}
a:hover .ar.ne,a:focus-visible .ar.ne{transform:translate(3px,-3px)}
button:hover .ar.back,button:focus-visible .ar.back,a:hover .ar.back{transform:translateX(-5px)}
a:hover .ar.down,a:focus-visible .ar.down{transform:translateY(3px)}
button[disabled] .ar{transform:none!important}

.marquee.js img{-webkit-user-drag:none}

/* SEOpionier-Tagline bleibt auf dem Handy einzeilig */
@media (max-width: 479.98px){.band .sp-stack .tag{white-space:nowrap;font-size:9px;letter-spacing:.2em}}

/* ---------- Erstgespräch-Seite ---------- */
.eg-hero{padding-bottom:clamp(28px,4vw,48px)}
.eg-pick{margin-top:26px;padding:20px 22px;background:var(--petrol-soft);border-radius:22px;display:flex;flex-direction:column;gap:12px;max-width:860px}
.eg-pick-lbl{font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--petrol-ink)}
.eg-tags{display:flex;flex-wrap:wrap;gap:8px}
.eg-tags span{padding:6px 12px;background:#fff;border-radius:999px;font-size:14px;color:var(--ink)}
.eg-tags .mode-tag{background:var(--cta);color:#fff}
.eg-pick-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.eg-pick-actions .btn{min-height:40px;padding:8px 18px;font-size:15px}
.eg-ways{list-style:none;margin:0 0 clamp(28px,4vw,44px);padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.eg-way{position:relative;height:100%;display:flex;flex-direction:column;gap:8px;padding:24px 22px 22px;border-radius:22px;background:var(--paper);border:1px solid var(--line);color:var(--ink);text-decoration:none;transition:transform .2s ease, box-shadow .2s ease}
.eg-way:hover{color:var(--ink);transform:translateY(-3px);box-shadow:0 14px 34px rgba(38,38,42,.08)}
.eg-way b{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.1}
.eg-way>span:not(.eyebrow):not(.go):not(.eg-badge){font-size:15px;color:var(--ink-2)}
.eg-way .eyebrow{font-size:11.5px}
.eg-way .go{margin-top:auto;padding-top:8px;font-weight:600;font-size:15px;color:var(--petrol-ink);overflow-wrap:anywhere}
.eg-way-main{background:var(--night);border-color:var(--night);color:var(--on-night)}
.eg-way-main:hover{color:var(--on-night)}
.eg-way-main .eyebrow,.eg-way-main>span:not(.eyebrow):not(.go):not(.eg-badge){color:var(--on-night-2)}
.eg-way-main .go{color:#fff}
.eg-badge{position:absolute;top:16px;right:16px;padding:4px 10px;border-radius:999px;background:var(--sand);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.eg-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-bottom:clamp(40px,6vw,80px);align-items:start}
.eg-form-box{grid-column:span 7;background:var(--paper);border-radius:32px;padding:clamp(22px,4vw,44px);display:flex;flex-direction:column;gap:14px}
.eg-form-box h2 em,.eg-side h2 em{color:var(--petrol-ink)}
.eg-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;margin-top:6px}
.eg-form .f{display:flex;flex-direction:column;gap:6px;min-width:0}
.eg-form .f.full{grid-column:1 / -1}
.eg-form label{font-size:14px;font-weight:600;color:var(--ink-2)}
.eg-form input,.eg-form select,.eg-form textarea{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--stone-2);background:#fff;color:var(--ink);font:16px/1.4 var(--sans)}
.eg-form textarea{resize:vertical;min-height:150px}
.eg-form input:focus-visible,.eg-form select:focus-visible,.eg-form textarea:focus-visible{outline:3px solid var(--petrol-ink);outline-offset:1px;border-color:var(--petrol-ink)}
.eg-form [aria-invalid="true"],.eg-form.tried :invalid{border-color:#B3261E}
.eg-privacy{font-size:14px;color:var(--muted)}
.eg-submit{flex-direction:row!important;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 20px}
.eg-status{font-size:15px;color:var(--ink-2);margin-right:auto}
.eg-status.err{color:#B3261E}
.eg-done{padding:28px;border-radius:22px;background:var(--petrol-soft);display:flex;flex-direction:column;gap:10px}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.eg-side{grid-column:span 5;display:flex;flex-direction:column;gap:24px}
.eg-termin{background:var(--night);color:var(--on-night);border-radius:32px;padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:14px}
.eg-termin .eyebrow{color:var(--on-night-2)}
.eg-termin h2 em{color:#9FD0DB!important}
.eg-termin p{color:var(--on-night-2)}
.eg-termin-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.eg-reach{background:var(--paper);border-radius:32px;padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:14px}
.eg-reach dl{margin:0;display:flex;flex-direction:column;gap:14px}
.eg-reach dt{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.eg-reach dd{margin:2px 0 0;font-size:17px}
.eg-booking-wide:empty{display:none}
.eg-booking-wide{padding-bottom:clamp(40px,6vw,80px)}
@media (max-width: 1279.98px){.eg-ways{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 1023.98px){.eg-form-box,.eg-side{grid-column:1 / -1}}
@media (max-width: 767.98px){.eg-form{grid-template-columns:1fr}}
@media (max-width: 479.98px){.eg-ways{grid-template-columns:1fr}}
.nav .btn[aria-current="page"]{color:#fff}
.eg-badge{position:static;align-self:flex-start;margin-bottom:4px}
.eg-form .f.eg-privacy{display:block}

/* ---------- Leistungsseite v2 ---------- */
.v2-hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(32px,5vw,72px);align-items:center}
.v2-kicker{color:var(--petrol-ink)}
.sol-hero.v2 .hero-actions{margin-top:28px}
.sol-hero.v2 .btn{margin-top:0}
.v2-facts{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:26px 26px 22px;box-shadow:0 18px 40px rgba(38,38,42,.06)}
.v2-facts dl{margin:14px 0 0;display:flex;flex-direction:column}
.v2-facts dl div{padding:12px 0;border-top:1px solid var(--line)}
.v2-facts dt{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.v2-facts dd{margin:3px 0 0;font-size:16px;line-height:1.45}
.v2-what{padding-block:clamp(60px,8vw,110px) clamp(30px,4vw,60px)}
.v2-what-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.v2-what-grid article{position:relative;display:flex;flex-direction:column;gap:10px;padding:26px 24px 24px;background:var(--paper);border-radius:24px;border-top:4px solid var(--c)}
.v2-no{font-family:var(--serif);font-size:15px;color:var(--muted)}
.v2-what-grid h3{font-family:var(--serif);font-weight:400;font-size:24px;line-height:1.15}
.v2-what-grid p{font-size:16px;color:#4A494F}
.v2-out{margin-top:auto!important;padding-top:14px;border-top:1px dashed var(--stone-2);color:var(--ink)!important}
.v2-out span{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--petrol-ink);margin-bottom:4px}
.v2-steps-sec{padding-block:clamp(50px,7vw,90px)}
.v2-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;counter-reset:s}
.v2-steps li{position:relative;display:flex;flex-direction:column;gap:10px;padding-top:24px}
.v2-steps li::before{content:"";position:absolute;top:22px;left:52px;right:-22px;height:2px;background:var(--petrol);opacity:.5}
.v2-steps li:last-child::before{display:none}
.v2-steps .num{position:relative;z-index:1}
.v2-steps strong{font-size:19px;margin-top:6px}
.v2-steps p{color:#4A494F;font-size:16px}
.v2-offers{padding-block:clamp(30px,4vw,60px) clamp(60px,8vw,100px)}
.v2-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.v2-offer{display:flex;flex-direction:column;gap:12px;padding:clamp(26px,3.5vw,40px);border-radius:32px;background:var(--paper);border:1px solid var(--line)}
.v2-offer.first{background:var(--petrol-soft);border-color:transparent}
.v2-offer h3{font-family:var(--serif);font-weight:400;font-size:clamp(28px,3vw,38px);line-height:1.1}
.v2-offer ul{list-style:none;margin:6px 0 10px;padding:0;display:flex;flex-direction:column;gap:10px}
.v2-offer li{position:relative;padding-left:28px}
.v2-offer li::before{content:"";position:absolute;left:0;top:.45em;width:16px;height:9px;border-left:2.5px solid var(--petrol-ink);border-bottom:2.5px solid var(--petrol-ink);transform:rotate(-45deg)}
.v2-offer .btn{margin-top:auto;align-self:flex-end}
.v2-compare{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px;padding:clamp(28px,5vw,64px);background:var(--night);color:var(--on-night);border-radius:40px}
.v2-compare .head{grid-column:span 5;display:flex;flex-direction:column;gap:12px}
.v2-compare .head .eyebrow,.v2-compare .head p{color:var(--on-night-2)}
.v2-compare h2{font-size:clamp(32px,3.6vw,46px);line-height:1.1}
.v2-compare dl{grid-column:span 7;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.v2-compare dl div{padding:20px 22px;border-radius:20px;background:var(--night-2)}
.v2-compare dt{font-weight:700;font-size:17px}
.v2-compare dd{margin:6px 0 0;color:var(--on-night-2);font-size:15.5px}
.v2-proof{padding-block:clamp(60px,8vw,100px) clamp(30px,5vw,70px)}
.v2-proof-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.v2-case{grid-column:span 5;display:flex;flex-direction:column;gap:8px;padding:clamp(26px,3.5vw,40px);border-radius:32px;background:var(--sand-soft);color:var(--ink);text-decoration:none}
.v2-case:hover{color:var(--ink)}
.v2-case-place{color:var(--muted);font-size:15px}
.v2-big{font-family:var(--serif);font-size:clamp(56px,7vw,88px);line-height:1;color:var(--petrol-ink);margin-top:10px!important}
.v2-case .go{margin-top:auto;padding-top:14px;font-weight:600;color:var(--petrol-ink)}
.v2-certs{grid-column:span 7;display:flex;flex-direction:column;gap:14px;padding:clamp(26px,3.5vw,40px);border-radius:32px;background:var(--paper)}
.v2-certs ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.v2-certs li a{display:flex;align-items:center;gap:16px;padding:10px 16px 10px 10px;border-radius:18px;background:var(--ground);text-decoration:none;color:var(--ink)}
.v2-certs li a:hover{background:#fff;color:var(--ink)}
.v2-certs img{width:56px;height:auto;flex:0 0 auto}
.v2-certs li span:not(.ar):not(.vh){display:flex;flex-direction:column;font-size:14px;color:var(--muted);flex:1}
.v2-certs li b{font-size:16px;color:var(--ink)}
@media (max-width: 1023.98px){
  .v2-hero-grid{grid-template-columns:1fr}
  .v2-what-grid,.v2-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v2-steps li::before{display:none}
  .v2-compare .head,.v2-compare dl,.v2-case,.v2-certs{grid-column:1 / -1}
}
@media (max-width: 767.98px){.v2-what-grid,.v2-steps,.v2-offer-grid,.v2-compare dl{grid-template-columns:1fr}}
@media (max-width: 1023.98px){.v2-compare,.v2-proof-grid{grid-template-columns:1fr}}
/* Prüfungs-Badges im Laufband hervorheben */
.badge.exam{filter:drop-shadow(0 8px 16px rgba(47,111,126,.22))}
.exam-tag{position:absolute;left:50%;top:-6px;transform:translateX(-50%);padding:3px 10px;border-radius:999px;background:var(--cta);color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.marquee-track{padding-top:22px}
/* Schieberegler wie ein Browser-Scrollbalken (horizontal) */
.marquee-ctrl{max-width:1280px}
.marquee-ctrl input[type=range]{flex:1 1 auto;max-width:none;height:14px}
.marquee-ctrl input[type=range]::-webkit-slider-runnable-track{height:10px;border-radius:10px;background:#E4E2DD}
.marquee-ctrl input[type=range]::-moz-range-track{height:10px;border-radius:10px;background:#E4E2DD}
.marquee-ctrl input[type=range]::-webkit-slider-thumb{width:var(--thumb-w,160px);height:10px;margin-top:0;border-radius:10px;background:#B5B3AE;border:0;box-shadow:none;cursor:grab}
.marquee-ctrl input[type=range]::-moz-range-thumb{width:var(--thumb-w,160px);height:10px;border-radius:10px;background:#B5B3AE;border:0;box-shadow:none;cursor:grab}
.marquee-ctrl input[type=range]:hover::-webkit-slider-thumb{background:#8F8D88}
.marquee-ctrl input[type=range]:hover::-moz-range-thumb{background:#8F8D88}
.marquee-ctrl input[type=range]:active::-webkit-slider-thumb{background:#77756F;cursor:grabbing}
.marquee-ctrl input[type=range]:active::-moz-range-thumb{background:#77756F;cursor:grabbing}
/* Feinschliff nach Chrome-Vorbild: schmaler, dunkelgrauer Balken auf heller Spur */
.marquee-ctrl input[type=range]::-webkit-slider-runnable-track{height:10px;background:#FBFAF8;border:1px solid #E4E2DD}
.marquee-ctrl input[type=range]::-moz-range-track{height:10px;background:#FBFAF8;border:1px solid #E4E2DD}
.marquee-ctrl input[type=range]::-webkit-slider-thumb{height:8px;background:#8E8C88}
.marquee-ctrl input[type=range]::-moz-range-thumb{height:8px;background:#8E8C88}
.marquee-ctrl input[type=range]:hover::-webkit-slider-thumb{background:#6F6D69}
.marquee-ctrl input[type=range]:hover::-moz-range-thumb{background:#6F6D69}
.marquee-ctrl input[type=range]:active::-webkit-slider-thumb{background:#55534F}
.marquee-ctrl input[type=range]:active::-moz-range-thumb{background:#55534F}
.band{margin-top:clamp(24px,4vw,48px)}
/* Kontaktblock als eigene Karte mit Abstand zum Footer */
.contact{border-radius:40px;margin-bottom:clamp(40px,6vw,80px)}

/* ---------- Ablauf: Icons ---------- */
.sic{width:30px;height:30px;overflow:visible}
.sic .s{fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.sic .s-pet{fill:none;stroke:var(--petrol-ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@keyframes sBub{0%,100%{transform:translateY(0)}40%{transform:translateY(-3px)}}
@keyframes sLens{0%,100%{transform:translate(0,0)}35%{transform:translate(-6px,-5px)}70%{transform:translate(-2px,-9px)}}
@keyframes sChk{0%{stroke-dashoffset:14}60%,100%{stroke-dashoffset:0}}
@keyframes sTrend{0%{stroke-dashoffset:60}70%,100%{stroke-dashoffset:0}}
.sic .a-b1,.sic .a-b2,.sic .a-lens2{transform-box:fill-box}
.sic .a-chk1,.sic .a-chk2{stroke-dasharray:14}
.sic .a-trend{stroke-dasharray:60}
.pc-card:hover .a-b1{animation:sBub .9s ease}.pc-card:hover .a-b2{animation:sBub .9s ease .15s}
.pc-card:hover .a-lens2{animation:sLens 1.2s ease}
.pc-card:hover .a-chk1{animation:sChk .6s ease}.pc-card:hover .a-chk2{animation:sChk .6s ease .25s both}
.pc-card:hover .a-trend{animation:sTrend .9s ease}

/* ---------- Ablauf Variante C: Karten mit Ergebnis, Farbbogen links ---------- */
.pc-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.pc-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:26px 22px 22px 24px;background:var(--paper);border-radius:24px;border-left:5px solid var(--c);transition:transform .2s ease, box-shadow .2s ease}
.pc-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(38,38,42,.08)}
.pc-card:not(:last-child)::after{content:"→";position:absolute;right:-19px;top:46px;width:16px;text-align:center;color:var(--petrol-ink);font-weight:700}
.pc-top{display:flex;align-items:center;justify-content:space-between}
.pc-ic{width:54px;height:54px;border-radius:16px;background:var(--petrol-soft);display:flex;align-items:center;justify-content:center}
.pc-no{font-family:var(--serif);font-size:34px;line-height:1;color:var(--stone-2)}
.pc-card strong{font-size:20px}
.pc-card p{font-size:15.5px;color:#4A494F}
.pc-res{margin-top:auto!important;padding-top:12px;border-top:1px dashed var(--stone-2);font-size:14.5px!important;color:var(--ink)!important}
.pc-res b{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--petrol-ink)}
@media (max-width: 1023.98px){.pc-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-card::after{display:none}}
@media (max-width: 767.98px){.pc-cards{grid-template-columns:1fr}}

/* ---------- Leistungen als redaktionelle Liste (Entscheidung 27.09.2026) ---------- */
.pillars{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:48px;row-gap:0;border-top:1px solid var(--stone-2)}
.pillars .pillar{margin-top:0!important;display:grid;grid-template-columns:84px minmax(0,1fr) 42px;align-items:center;gap:6px 22px;padding:26px 14px;border-radius:0;background:transparent;border-top:0;border-bottom:1px solid var(--stone-2);transition:background .2s ease}
.pillars .pillar:hover{background:var(--paper);box-shadow:none;transform:none}
.pillars .icw{grid-row:1 / span 3;width:84px;height:84px;border-radius:50%;background:var(--paper);display:flex;align-items:center;justify-content:center;border:1px solid var(--line);transition:background .2s ease}
.pillars .pillar:hover .icw{background:var(--soft)}
.pillars .icw .ico{width:52px;height:42px}
.pillars .q,.pillars .k,.pillars .d{grid-column:2}
.pillars .q{font-size:24px}
.pillars .d{font-size:15.5px}
.pillars .go{grid-column:3;grid-row:1 / span 3;margin:0;width:42px;height:42px;border-radius:50%;border:1.5px solid var(--ink);display:flex;align-items:center;justify-content:center;transition:background .2s ease, border-color .2s ease, color .2s ease}
.pillars .go .ar{font-size:18px}
.pillars .pillar:hover .go,.pillars .pillar:focus-visible .go{background:var(--cta);border-color:var(--cta);color:#fff}
@media (max-width: 1023.98px){.pillars{grid-template-columns:1fr}}
@media (max-width: 479.98px){
  .pillars .pillar{grid-template-columns:56px minmax(0,1fr);padding:22px 4px;gap:4px 16px}
  .pillars .icw{grid-row:1 / span 2;width:56px;height:56px}
  .pillars .icw .ico{width:38px;height:30px}
  .pillars .d{grid-column:1 / -1;margin-top:6px}
  .pillars .go{grid-column:2;grid-row:auto;justify-self:start;width:38px;height:38px;margin-top:6px}
  .pillars .q{font-size:21px}
}
@media (max-width: 479.98px){
  .pillars .pillar{grid-template-columns:56px minmax(0,1fr) 38px}
  .pillars .go{grid-column:3;grid-row:1 / span 2;justify-self:end;margin-top:0}
}

/* ---------- Digitale Visitenkarte /vcf/ (Neugestaltung 27.09.2026) ---------- */
.p-vcf{min-height:100vh;background:var(--ground)}
.vc-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:clamp(16px,4vw,48px) 16px 20px}
.vc-card{width:min(100%,440px);background:var(--paper);border-radius:32px;overflow:hidden;box-shadow:0 1px 0 var(--line),0 24px 60px rgba(38,38,42,.10)}
.vc-head{position:relative;padding:22px 24px 0;background:linear-gradient(180deg,var(--stone) 0%,var(--paper) 100%);display:flex;flex-direction:column;align-items:center}
.vc-logo{height:40px;width:auto;align-self:flex-start}
.vc-photo{width:210px;margin-top:6px}
.vc-photo img{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent 100%);mask-image:linear-gradient(to bottom,#000 80%,transparent 100%)}
.vc-body{padding:6px 24px 26px;display:flex;flex-direction:column;gap:14px;text-align:center}
.vc-body h1{font-size:clamp(34px,8vw,42px);line-height:1.05}
.vc-role{color:var(--ink-2);margin-top:-6px!important}
.vc-badge{align-self:center;padding:5px 12px;border-radius:999px;background:var(--petrol-soft);color:var(--petrol-ink);font-size:13px;font-weight:600}
.vc-save{width:100%;margin-top:6px}
.vc-quick{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vc-quick a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px 12px;border-radius:18px;background:var(--ground);color:var(--ink);text-decoration:none;font-size:14px;font-weight:600;transition:background .15s ease, transform .15s ease}
.vc-quick a:hover{background:#fff;color:var(--ink);transform:translateY(-2px)}
.vc-quick svg{width:24px;height:24px;fill:none;stroke:var(--petrol-ink);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.vc-rows{margin:4px 0 0;text-align:left;display:flex;flex-direction:column}
.vc-rows div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;padding:11px 2px;border-top:1px solid var(--line)}
.vc-rows dt{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:2px}
.vc-rows dd{margin:0;font-size:15.5px;overflow-wrap:anywhere}
.vc-rows a{color:var(--ink);text-decoration:none}
.vc-rows a:hover{color:var(--petrol-ink);text-decoration:underline}
.vc-more{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;background:var(--ground);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px;text-align:left}
.vc-more:hover{background:#fff;color:var(--ink)}
.vc-qr{display:none}
@media (min-width: 1024px) and (hover: hover){
  .vc-qr{position:fixed;right:28px;bottom:28px;display:flex;align-items:center;gap:14px;padding:12px 16px 12px 12px;border-radius:20px;background:var(--paper);box-shadow:0 12px 32px rgba(38,38,42,.12);border:1px solid var(--line)}
  .vc-qr .qr{width:92px;height:92px;border-radius:8px}
  .vc-qr p{display:flex;flex-direction:column;font-size:13px;color:var(--muted);line-height:1.35}
  .vc-qr b{font-size:15px;color:var(--ink)}
}
.vc-foot{margin-top:auto;padding-top:22px;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;font-size:13px;color:var(--muted)}
.vc-foot nav{display:flex;gap:14px}
.vc-foot a{color:var(--muted)}
@media print{.vc-qr{display:none}}
/* Visitenkarte im Aufbau der bisherigen /vcf/-Seite, im Design der neuen Website */
.vc-classic{justify-content:center}
.vc-classic .vc-card{width:min(100%,416px);margin-top:auto;padding:30px 24px 26px;text-align:center;border:1px solid var(--line);border-radius:28px}
.vc-classic .vc-logo{display:block;width:min(240px,70%);height:auto;margin:0 auto 12px}
.vc-swoosh{display:block;width:130px;height:17px;margin:0 auto 16px}
.vc-swoosh path{fill:none;stroke-width:3.5;stroke-linecap:round}
.vc-classic h1{font-size:clamp(30px,7vw,36px);line-height:1.1}
.vc-classic .vc-role{margin:6px 0 18px;color:var(--petrol-ink);font-weight:600}
.vc-lines{list-style:none;margin:0 0 20px;padding:0;font-size:16px;display:flex;flex-direction:column;gap:6px}
.vc-lines a{color:var(--ink);text-decoration:none}
.vc-lines a:hover{color:var(--petrol-ink);text-decoration:underline}
.vc-lines .muted{color:var(--muted)}
.vc-classic .vc-save{width:100%}
.vc-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.vc-ghost{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:999px;background:var(--petrol-soft);border:1px solid #B5D8E0;color:var(--petrol-ink);font-weight:600;text-decoration:none;transition:background .15s ease}
.vc-ghost:hover{background:#CFE6EC;color:var(--petrol-ink)}
.vc-classic .vc-foot{margin-top:auto}

/* Porträt: sauber abgeschnitten auf einer grauen Linie mit Schatten darunter (statt Auslaufen nach unten) */
.solo{position:relative}
.solo img,.solo picture img{-webkit-mask-image:none!important;mask-image:none!important}
.solo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--stone-2);border-radius:2px}
.solo::before{content:"";position:absolute;left:4%;right:4%;bottom:-22px;height:22px;background:radial-gradient(ellipse 50% 100% at 50% 0%,rgba(38,38,42,.20),rgba(38,38,42,0) 70%);pointer-events:none}
.portrait-cap{margin-top:30px;text-align:center;font-size:15px;color:var(--muted)}
.portrait-cap strong{color:var(--ink);font-weight:600}

.portrait-cap .cap-li{display:flex;width:fit-content;align-items:center;gap:7px;margin:8px auto 0;color:var(--ink-2,#3A3A3E);font-size:14px;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.portrait-cap .cap-li svg{color:#0A66C2;flex:none}
.portrait-cap .cap-li:hover{color:var(--cta);border-color:currentColor}
.portrait-cap .cap-li:hover .ar{transform:translate(2px,-2px)}
/* Hero-Bubbles: Desktop in einer Reihe unter Text und Porträt, mobil zwischen Text und Porträt */
.hero-grid{row-gap:32px}
.hero-grid>.hero-facts{grid-column:1/-1;margin-top:0}
@media (min-width:1024px){.hero-grid>.hero-facts{flex-wrap:nowrap}.hero-grid>.hero-facts li{white-space:nowrap}}
@media (max-width:1023.98px){.hero-grid>.hero-facts{order:1}.hero-grid>.portrait{order:2}}
/* Ein-Spalten-Varianten, solange SEOpionier / Referenzen ausgeblendet sind */
.twin.one{grid-template-columns:1fr}
.v2-proof-grid.one{grid-template-columns:1fr}
.region .places em{white-space:nowrap}

/* Headerleiste: Desktop 100 px (Logo 80), mobil 80 px (Logo 60); beim Scrollen 72 / 64 px */
.head-row{padding-block:10px}
.brand img{height:80px;width:auto;transition:height .25s ease}
.site-header.scrolled .brand img{height:52px}
@media (max-width:1023.98px){.brand img{height:60px}.site-header.scrolled .brand img{height:44px}}
@media (prefers-reduced-motion:reduce){.brand img{transition:none}}
html{scroll-padding-top:88px}

/* Pflicht-Checkbox Datenschutz im Kontaktformular */
.eg-form .f.eg-consent{flex-direction:row;align-items:flex-start;gap:12px}
.eg-form .eg-consent input{width:22px;height:22px;flex:none;margin:1px 0 0;padding:0;accent-color:var(--cta);cursor:pointer}
.eg-form .eg-consent label{font-weight:400;font-size:14px;line-height:1.5;color:var(--muted);cursor:pointer}
.eg-form .eg-consent label a{color:var(--ink)}
.eg-form.tried .eg-consent input:invalid{outline:2px solid #B3261E;outline-offset:2px}
/* Bookings-Kalender: feste Höhe statt innerem Scrollbalken (fremde Seite, Höhe nicht auslesbar) */
.booking-frame{height:1820px;max-height:none}
@media (max-width:699.98px){.booking-frame{height:2150px;border-radius:14px}}
.eg-termin p a{color:#fff;text-underline-offset:3px}
.booking-fallback{margin:0 0 14px;font-size:14px;color:var(--muted);text-align:right}.booking-fallback a{color:var(--ink)}

/* GEO hervorheben (29.09.2026) */
.pillars .pillar .tag,.pillars .pillar .more{display:none}
/* Variante A: dezent – getönte Fläche, Schildchen */
.pillars.feat-a .feat{background:var(--petrol-soft)}
.pillars.feat-a .feat .icw{background:#fff}
.pillars.feat-a .feat .tag{display:inline-block;grid-column:2;justify-self:start;padding:3px 10px;border-radius:999px;background:var(--cta);color:#fff;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
/* Variante B: eigene Zeile über die volle Breite, dunkle Fläche */
.pillars.feat-b .feat{grid-column:1 / -1;grid-template-columns:120px minmax(0,1fr) 56px;gap:8px 32px;padding:clamp(28px,4vw,44px);margin:28px 0 18px!important;border:0;border-radius:32px;background:var(--night);color:var(--on-night)}
.pillars.feat-b .feat:hover{background:var(--night-2)}
.pillars.feat-b .feat .icw{grid-row:1 / span 5;width:120px;height:120px;background:var(--petrol-soft);border:0}
.pillars.feat-b .feat .icw .ico{width:74px;height:60px}
.pillars.feat-b .feat .tag{display:inline-block;grid-column:2;justify-self:start;padding:4px 12px;border-radius:999px;background:var(--petrol);color:#1D1D21;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.pillars.feat-b .feat .q{font-size:clamp(26px,2.6vw,34px);color:#fff}
.pillars.feat-b .feat .k{color:var(--petrol)}
.pillars.feat-b .feat .d{color:var(--on-night-2);font-size:17px}
.pillars.feat-b .feat .more{display:block;grid-column:2;color:var(--on-night-2);font-size:15.5px;max-width:62ch}
.pillars.feat-b .feat .go{grid-row:1 / span 5;width:56px;height:56px;border-color:var(--on-night);color:var(--on-night)}
.pillars.feat-b .feat:hover .go,.pillars.feat-b .feat:focus-visible .go{background:var(--petrol);border-color:var(--petrol);color:#1D1D21}
@media (max-width:767.98px){
  .pillars.feat-b .feat{grid-template-columns:64px minmax(0,1fr);gap:6px 16px;padding:24px 20px;border-radius:24px}
  .pillars.feat-b .feat .icw{grid-row:1 / span 2;width:64px;height:64px}
  .pillars.feat-b .feat .icw .ico{width:42px;height:34px}
  .pillars.feat-b .feat .tag{grid-column:2;grid-row:1}
  .pillars.feat-b .feat .q{grid-column:2;grid-row:2;font-size:23px}
  .pillars.feat-b .feat .k,.pillars.feat-b .feat .d,.pillars.feat-b .feat .more{grid-column:1 / -1}
  .pillars.feat-b .feat .go{grid-column:1 / -1;grid-row:auto;justify-self:start;width:44px;height:44px;margin-top:8px}
}
.pillars.feat-b{border-top:0}
.pillars.feat-b .feat{margin-top:0!important}
/* Variante A gewählt (29.09.2026): ein Ticken weniger farbig */
.pillars.feat-a .feat{background:#EAF1F2}
.pillars.feat-a .feat:hover{background:#E2ECEE}
.pillars.feat-a .feat .tag{background:transparent;color:var(--cta);border:1px solid #9CC3CC;padding:2px 10px}

/* Variante B, hell (29.09.2026): volle Breite, Hintergrund wie Variante A */
.pillars.feat-b .feat{background:#EAF1F2;color:var(--ink);grid-template-columns:120px minmax(0,1fr) 56px;gap:10px 32px}
.pillars.feat-b .feat:hover{background:#E2ECEE}
.pillars.feat-b .feat .icw{grid-row:1 / span 7;align-self:start;background:#fff;border:1px solid #D3E3E6}
.pillars.feat-b .feat .tag{background:transparent;color:var(--cta);border:1px solid #9CC3CC;padding:2px 10px;font-weight:600}
.pillars.feat-b .feat .q{color:var(--ink);font-size:clamp(26px,2.7vw,36px);line-height:1.2}
.pillars.feat-b .feat .k{color:var(--petrol-ink)}
.pillars.feat-b .feat .d{color:#4A494F;font-size:17px;max-width:66ch}
.pillars.feat-b .feat .more{color:#4A494F;font-size:15.5px;max-width:66ch}
.pillars.feat-b .feat .go{grid-row:1 / span 7;align-self:center;border-color:var(--ink);color:var(--ink)}
.pillars.feat-b .feat:hover .go,.pillars.feat-b .feat:focus-visible .go{background:var(--cta);border-color:var(--cta);color:#fff}
.pillars .ais,.pillars .steps4{display:none}
.pillars.feat-b .feat .ais{display:flex;flex-wrap:wrap;align-items:center;gap:8px;grid-column:2;margin-top:6px}
.pillars.feat-b .feat .ais-l{font-size:13px;font-weight:600;color:var(--muted);margin-right:2px}
.pillars.feat-b .feat .ai{padding:4px 12px;border-radius:999px;background:#fff;border:1px solid #D3E3E6;font-size:13.5px;color:var(--ink-2)}
.pillars.feat-b .feat .steps4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 18px;grid-column:2;margin-top:10px;padding-top:16px;border-top:1px solid #D3E3E6}
.pillars.feat-b .feat .st{display:flex;align-items:flex-start;gap:8px;font-size:14.5px;font-weight:600;color:var(--ink-2);line-height:1.35}
.pillars.feat-b .feat .st svg{flex:none;margin-top:1px}
@media (max-width:1023.98px){.pillars.feat-b .feat .steps4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767.98px){
  .pillars.feat-b .feat .q{font-size:22px}
  .pillars.feat-b .feat .q br{display:none}
  .pillars.feat-b .feat .ais,.pillars.feat-b .feat .steps4{grid-column:1 / -1}
  .pillars.feat-b .feat .steps4{grid-template-columns:1fr}
  .pillars.feat-b .feat .icw{background:#fff}
}
@media (max-width:767.98px){
  .pillars.feat-b .feat{grid-template-columns:56px minmax(0,1fr);gap:8px 16px;padding:24px 20px;border-radius:24px}
  .pillars.feat-b .feat .icw{grid-column:1;grid-row:1 / span 2;width:56px;height:56px}
  .pillars.feat-b .feat .icw .ico{width:38px;height:30px}
  .pillars.feat-b .feat .tag{grid-column:2;grid-row:1;align-self:end}
  .pillars.feat-b .feat .q{grid-column:2;grid-row:2}
  .pillars.feat-b .feat .k,.pillars.feat-b .feat .d,.pillars.feat-b .feat .more,.pillars.feat-b .feat .ais,.pillars.feat-b .feat .steps4{grid-column:1 / -1}
  .pillars.feat-b .feat .go{grid-column:1 / -1;grid-row:auto;justify-self:start;width:44px;height:44px;margin-top:6px}
}
.eg-termin .eg-code-note{font-size:14px;opacity:.85;margin-top:-4px}

/* Erstgespräch nach dem Absenden */
.eg-next{margin-top:28px}
.eg-next h3{margin:4px 0 12px}
.eg-next .list-links a span b{display:block;font-weight:600}
.eg-next .list-links a span small{display:block;font-size:14px;color:var(--muted);margin-top:2px;line-height:1.45}
.eg-next-sp{display:flex;align-items:center;gap:14px;margin-top:18px;padding:16px 18px;border-radius:18px;background:var(--sp-soft);color:var(--ink);text-decoration:none}
.eg-next-sp span:nth-of-type(2){flex:1}
.eg-ways[hidden]{display:none}
