/* Bihl Online-Marketing – generiert aus dem Prototyp (build_theme.py). Nicht von Hand bearbeiten,
   eigene Ergänzungen gehören in den Abschnitt „Ergänzungen“ am Ende bzw. in assets/css/wp.css. */
:root{--dark-surface:#292B2E;--footer-bg:var(--dark-surface);--footer-text:#DADBDD;--footer-muted:#AEB1B5;--footer-line:#3D4044;--primary:#1D93D0;--primary-hover:#147DB3;--link:#126F9F;--primary-soft:#EDF6FB;--btn:#147DB3;--btn-hover:#126F9F;--ink:#3E3E42;--anthrazit:#3E3E42;--muted:#6E6E73;--subtle:#A1A1A6;--line:#E7E7EA;--surface:#F5F7F9;--white:#FFFFFF;--dark-1:#222427;--dark-2:#3A3D41;--dark-line:#45484D;--dark-muted:#AEB1B5;--font:'Proxima Nova',system-ui,-apple-system,'Segoe UI',sans-serif;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-pill:999px;--container:1200px;--gutter:24px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:var(--font);font-weight:300;color:var(--ink);background:var(--white);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
img,svg{display:block}
a{color:inherit;text-decoration:none}
strong{font-weight:500;color:var(--ink)}
.container{max-width:calc(var(--container) + 2*var(--gutter));margin:0 auto;padding:0 var(--gutter)}
.display{font-size:clamp(36px,5.6vw,72px);line-height:1.06;letter-spacing:-.025em;font-weight:500}
.h1{font-size:clamp(30px,4.6vw,60px);line-height:1.1;letter-spacing:-.02em;font-weight:500}
.h2{font-size:clamp(26px,3.2vw,40px);line-height:1.15;letter-spacing:-.018em;font-weight:500}
.h3{font-size:24px;line-height:1.3;letter-spacing:-.01em;font-weight:500}
.h4{font-size:20px;line-height:1.35;letter-spacing:-.01em;font-weight:500}
.lead{font-size:20px;line-height:1.6}
.small{font-size:16px;line-height:1.55}
.eyebrow{font-size:17px;color:var(--muted);margin-bottom:12px}
.eyebrow--brand{color:var(--link)}
.tone{color:var(--muted)}
.on-dark{color:#fff}
.on-dark .tone{color:var(--dark-muted)}
.on-dark .tone-light{color:var(--primary-soft)}
.on-dark .eyebrow{color:var(--dark-muted)}
.prose p+p{margin-top:16px}
.btn,.wp-block-button>.wp-block-button__link{display:inline-flex;align-items:center;gap:10px;font:500 17px/1 var(--font);padding:16px 22px;border-radius:var(--r-xs);border:1px solid transparent;cursor:pointer;transition:background .2s var(--ease),border-color .2s,color .2s;white-space:nowrap}
.btn svg{transition:transform .2s var(--ease)}
.btn:hover svg{transform:translateX(3px)}
.btn--primary,.wp-block-button:not([class*="is-style-"])>.wp-block-button__link{background:var(--btn);color:#fff}
.btn--primary:hover,.wp-block-button:not([class*="is-style-"])>.wp-block-button__link:hover{background:var(--btn-hover)}
.btn--secondary,.wp-block-button.is-style-line>.wp-block-button__link{background:var(--white);color:var(--ink);border-color:var(--line)}
.btn--secondary:hover,.wp-block-button.is-style-line>.wp-block-button__link:hover{border-color:var(--ink)}
.btn--ghost-dark,.wp-block-button.is-style-ghost-dark>.wp-block-button__link{background:transparent;color:#fff;border-color:var(--dark-line)}
.btn--ghost-dark:hover,.wp-block-button.is-style-ghost-dark>.wp-block-button__link:hover{border-color:#fff}
.btn--sm{font-size:16px;padding:12px 16px}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
:focus-visible{outline:3px solid var(--link);outline-offset:3px}
.nav{z-index:50}
.nav__bar{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.logo{display:inline-flex;line-height:0;flex:none}
.logo img{height:44px;width:auto}
.logo--white img{filter:brightness(0) invert(1)}
.nav__links{display:flex;gap:28px;list-style:none;font-size:17px}
.nav__links a{transition:color .2s}
.nav__links a:hover,.nav__links a[aria-current]{color:var(--link)}
.nav__right{display:flex;align-items:center;gap:20px}
.nav__phone{display:inline-flex;align-items:center;gap:8px;font-size:17px;white-space:nowrap}
.nav__phone svg{width:16px;height:16px;color:var(--primary)}
.nav__phone:hover{color:var(--link)}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--r-xs);background:#fff;cursor:pointer;place-items:center}
.burger span,.burger span::before,.burger span::after{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;position:relative;transition:transform .25s var(--ease),background .2s}
.burger span::before,.burger span::after{content:"";position:absolute;left:0}
.burger span::before{top:-6px}
.burger span::after{top:6px}
.nav.is-open .burger span{background:transparent}
.nav.is-open .burger span::before{transform:translateY(6px) rotate(45deg)}
.nav.is-open .burger span::after{transform:translateY(-6px) rotate(-45deg)}
.mobile-menu{display:none}
.sec{padding:112px 0}
.sec--surface{background:var(--surface)}
.sec--dark{background:var(--dark-surface);color:#fff;position:relative;overflow:hidden}
.sec--dark::before{content:"";position:absolute;left:-10%;right:-10%;top:0;height:70%;background:radial-gradient(40% 40% at 88% 40%,rgba(29,147,208,.30),transparent 70%);filter:blur(30px);pointer-events:none}
.sec--dark>.container{position:relative}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px 64px;margin-bottom:56px}
.sec-head>div:first-child{flex:1 1 auto;min-width:0}
.sec-head__note{max-width:380px;flex:0 1 380px}
.center{text-align:center;max-width:820px;margin:0 auto 64px}
.center .lead{max-width:620px;margin:20px auto 0}
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.hero{padding:72px 0 0;text-align:center}
.hero .lead{max-width:680px;margin:24px auto 36px}
.hero .btn-row{justify-content:center}
.hero--color{position:relative;overflow:hidden;background:var(--primary-hover);color:#fff;isolation:isolate}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.hero--color .display{color:#fff;text-shadow:0 1px 24px rgba(17,60,90,.25)}
.hero--color .display .tone{color:var(--primary-soft)}
.hero--color .lead{color:#fff}
.btn--on-color,.wp-block-button.is-style-on-color>.wp-block-button__link{background:#fff;color:var(--ink)}
.btn--on-color svg{color:var(--primary)}
.btn--on-color:hover,.wp-block-button.is-style-on-color>.wp-block-button__link:hover{background:var(--primary-soft)}
.btn--on-color-ghost,.wp-block-button.is-style-on-color-ghost>.wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn--on-color-ghost:hover,.wp-block-button.is-style-on-color-ghost>.wp-block-button__link:hover{border-color:#fff;background:rgba(255,255,255,.08)}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:88px;text-align:left}
.fact{padding:32px 24px 32px 0}
.fact+.fact{padding-left:32px;border-left:1px solid var(--line)}
.fact .fact__value{display:block;font-size:clamp(28px,3.2vw,40px);font-weight:500;letter-spacing:-.018em;line-height:1.15;margin-bottom:6px}
.fact .fact__value span{color:var(--primary)}
.fact p{color:var(--muted)}
.facts-caption{text-align:center;color:var(--muted);font-size:16px;margin-top:16px}
.checks{list-style:none;display:grid;gap:12px}
.checks li{display:flex;gap:12px;align-items:flex-start}
.checks li::before{content:"";width:20px;height:20px;margin-top:3px;border-radius:50%;flex:none;background:var(--primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.checks--light li::before{background:none url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 10.5l4 4L16 6' fill='none' stroke='%23E8F4FB' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.dcard{position:relative;overflow:hidden;border-radius:var(--r-md);background:var(--dark-surface);color:#fff;padding:40px}
.dcard>*{position:relative}
.dcard .h4{margin-bottom:24px}
.dcard .checks{margin-bottom:32px;font-size:18px}
.subhead{margin-bottom:24px}
.steps4{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:72px;counter-reset:s}
.steps4>.steps4__item{position:relative;padding-top:36px}
.steps4>.steps4__item::before{content:"";position:absolute;top:6px;left:0;right:-28px;height:3px;background:var(--primary)}
.steps4>.steps4__item:last-child::before{right:0;background:linear-gradient(90deg,var(--primary),var(--line))}
.steps4>.steps4__item::after{content:"";position:absolute;top:0;left:0;width:15px;height:15px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 6px #fff}
.step__num{font-size:17px;color:var(--muted);margin-bottom:8px}
.steps4 .h4{margin-bottom:10px}
.after-steps{display:flex;justify-content:flex-start;align-items:center;gap:24px;margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
.after-steps .h4{font-weight:500}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{display:flex;flex-direction:column;background:#fff;border-radius:var(--r-md);padding:32px 28px}
.sec:not(.sec--surface) .card{background:var(--surface)}
.card__icon{width:44px;height:44px;color:var(--primary);margin-bottom:24px}
.card .h4{margin-bottom:12px}
.card p{font-size:17px}
.php{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:start}
.php .prose p{color:#E7E7EA}
.php .h3{margin:0 0 20px;color:#fff}
.checkcard{background:#fff;color:var(--ink);border-radius:var(--r-md);padding:36px 36px 32px}
.checkcard .h4{margin-bottom:20px}
.checkcard .checks{margin-bottom:24px}
.checkcard__after{padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:17px}
.checkcard__btn{margin-top:8px}
.take-intro{max-width:760px}
.take-intro .lead{color:var(--ink)}
.mk-lead{max-width:760px;margin-bottom:64px;color:var(--ink)}
.mk-note{max-width:760px;margin-top:48px;font-size:20px;color:var(--ink)}
.mk-note strong{font-weight:500}
.rows{border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:5fr 7fr;gap:24px 64px;padding:32px 0;border-bottom:1px solid var(--line)}
.row .h3{transition:color .2s}
.row:hover .h3{color:var(--link)}
.faq-wrap{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.faq-side{position:sticky;top:110px}
.faq-side .h1{margin-bottom:32px}
.faq{display:grid;gap:12px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--r-xs);transition:background .2s,border-color .2s}
.faq summary{list-style:none;cursor:pointer;padding:22px 28px;font-size:20px;line-height:1.4;display:flex;justify-content:space-between;align-items:center;gap:24px;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .25s var(--ease)}
.faq details[open]{background:var(--primary-soft);border-color:var(--primary)}
.faq details[open] summary{color:var(--link)}
.faq details[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.faq details p{padding:0 28px 24px}
.cta.cta--center{display:block;text-align:center;max-width:820px}
.cta.cta--center .lead{margin-left:auto;margin-right:auto}
.cta__call{margin-top:24px;font-size:18px;color:var(--muted)}
.cta__call a{color:var(--link);font-weight:500;white-space:nowrap}
.cta__call a:hover{text-decoration:underline;text-underline-offset:4px}
.cta{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.cta .lead{margin:24px 0 12px;max-width:620px}
.cta__free{font-size:17px;font-weight:300;color:var(--muted);margin:-8px 0 28px}
.footer{background:var(--footer-bg);color:var(--footer-text);padding-top:88px;overflow:hidden}
.footer__top{display:grid;grid-template-columns:45% auto auto auto;justify-content:space-between;gap:40px 32px}
.footer__brand p{margin-top:24px;max-width:340px;color:var(--footer-text);font-size:17px}
.footer h2{font:300 17px var(--font);margin-bottom:18px}
.footer ul{list-style:none;display:grid;gap:10px;font-size:17px}
.footer a{transition:color .2s}
.footer a:hover{color:#fff}
.footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--footer-line);padding:28px 0 36px;font-size:16px;color:var(--footer-muted)}
.footer__bottom nav{display:flex;gap:20px}
.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.js .reveal.is-in{opacity:1;transform:none}
@media (max-width:1100px){
  .nav__links{gap:20px;font-size:16px}
  .nav__phone span{display:none}
  .grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:960px){
  .nav__links,.nav__phone{display:none}
  .burger{display:grid}
  .mobile-menu{display:block;max-height:0;overflow:hidden}
  .mobile-menu ul{list-style:none;padding:8px 0 24px;display:grid}
  .mobile-menu li a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:18px}
  .mobile-menu .btn{margin:0 0 24px;width:100%;justify-content:center}
  .split,.php,.cta,.faq-wrap{grid-template-columns:1fr;gap:40px}
  .sec-head{flex-direction:column;align-items:flex-start}
  .sec-head>div:first-child,.sec-head__note{flex:none;max-width:600px}
  .steps4{grid-template-columns:1fr 1fr;row-gap:48px}
  .steps4>.steps4__item:nth-child(2)::before{right:0}
  .faq-side{position:static}
  .row{grid-template-columns:1fr;gap:10px}
  .footer__top{grid-template-columns:1fr 1fr}
  .footer__brand{grid-column:1/-1}
}
@media (max-width:640px){
  :root{--gutter:20px}
  .nav__right .btn{display:none}
  .logo img{height:38px}
  .sec{padding:72px 0}
  .hero{padding-top:40px}
  .display br{display:none}
  .btn-row,.btn-row .btn,.btn-row .wp-block-button>.wp-block-button__link{width:100%;justify-content:center}
  .btn,.wp-block-button>.wp-block-button__link{white-space:normal;text-align:center}
  .facts{grid-template-columns:1fr;margin-top:56px}
  .fact,.fact+.fact{padding:22px 0;border-left:0}
  .fact+.fact{border-top:1px solid var(--line)}
  .grid-4,.steps4{grid-template-columns:1fr;row-gap:0}
  .grid-3{grid-template-columns:1fr}
  .steps4>.steps4__item{padding:0 0 36px 40px}
  .steps4>.steps4__item::before{top:8px;bottom:0;left:6px;right:auto;width:3px;height:auto}
  .steps4>.steps4__item:last-child::before{display:none}
  .steps4>.steps4__item::after{top:4px}
  .after-steps{flex-direction:column;align-items:flex-start}
  .dcard,.checkcard{padding:28px 24px}
  .faq summary{padding:18px 20px;font-size:18px}
  .faq details p{padding:0 20px 20px}
  .footer__top{grid-template-columns:1fr}
  .center{margin-bottom:48px}
}
@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .js .reveal{opacity:1;transform:none}
}
:root{--frame:12px;--frame-r:16px}
.nav{position:fixed;top:var(--frame);left:var(--frame);right:var(--frame);background:transparent;border-bottom:1px solid transparent;border-radius:var(--frame-r) var(--frame-r) 0 0;backdrop-filter:none}
.nav--solid,.nav.is-open{top:0;left:0;right:0;border-radius:0;background:#fff;backdrop-filter:none;border-bottom-color:var(--line)}
.nav:not(.nav--solid):not(.is-open) .logo img{filter:brightness(0) invert(1)}
.nav:not(.nav--solid):not(.is-open) .nav__links a,.nav:not(.nav--solid):not(.is-open) .nav__phone{color:#fff}
.nav:not(.nav--solid):not(.is-open) .nav__links a:hover{color:var(--primary-soft)}
.nav:not(.nav--solid):not(.is-open) .nav__links a[aria-current]{color:#fff;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:8px}
.nav:not(.nav--solid):not(.is-open) .nav__phone svg{color:var(--primary-soft)}
.nav:not(.nav--solid):not(.is-open) .nav__right .btn--primary{background:#fff;color:var(--ink)}
.nav:not(.nav--solid):not(.is-open) .nav__right .btn--primary svg{color:var(--primary)}
.nav:not(.nav--solid):not(.is-open) .nav__right .btn--primary:hover{background:var(--primary-soft)}
.nav:not(.nav--solid):not(.is-open) .burger{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.45)}
.nav:not(.nav--solid):not(.is-open) .burger span,.nav:not(.nav--solid):not(.is-open) .burger span::before,.nav:not(.nav--solid):not(.is-open) .burger span::after{background:#fff}
.nav .logo img{transition:filter .3s var(--ease)}
:root{--nav-h:77px;--hero-pad-t:112px;--hero-pad-b:104px}
@media (max-width:960px){
  :root{--hero-pad-t:96px;--hero-pad-b:88px}
}
.hero--color{margin:var(--frame);border-radius:var(--frame-r);display:flex;align-items:center;padding:calc(var(--nav-h) + var(--hero-pad-t)) 0 var(--hero-pad-b)}
.hero--color>.container{width:100%}
@media (max-width:640px){
  :root{--frame:8px;--frame-r:12px}
  :root{--hero-pad-t:56px;--hero-pad-b:56px}
}
@media (prefers-reduced-motion:reduce){
  .nav,.nav .logo img{transition:none}
}
.nav{transition:background-color .18s ease,border-color .18s ease,top .18s ease,left .18s ease,right .18s ease,border-radius .18s ease,box-shadow .18s ease}
.nav .logo img,.nav .nav__links a,.nav .nav__phone,.nav .nav__phone svg,.nav .nav__right .btn,.nav .nav__right .btn svg,.nav .burger{transition:filter .18s ease,color .18s ease,background-color .18s ease,border-color .18s ease}
.nav .burger span,.nav .burger span::before,.nav .burger span::after{transition:transform .25s var(--ease),background-color .18s ease}
@media (prefers-reduced-motion:reduce){
  .nav,.nav *{transition:none!important}
}
h1,h2,h3,h4,.display,.h1,.h2,.h3,.h4{hyphens:manual;-webkit-hyphens:manual;overflow-wrap:normal;text-wrap:balance}
@media (max-width:360px){
  .display{font-size:30px}
}
@media (max-width:760px){
  .hero--color>.container{position:relative}
  .hero--color>.container::before{content:"";position:absolute;inset:-48px -12px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 75% 60% at 50% 50%,rgba(23,76,107,.55),rgba(23,76,107,.25) 60%,transparent 85%)}
}
.hero__claim{font-weight:700;letter-spacing:-.022em}
.hero__claim--even{font-size:clamp(32px,5vw,64px)}
@media (max-width:360px){
  .hero__claim--even{font-size:28px}
}
.hero__claim .hero__claim-sub{display:inline-block;margin-top:.08em;font-size:.82em;font-weight:500;letter-spacing:-.015em}
.steps4>.steps4__item:nth-child(1){--i:0}
.steps4>.steps4__item:nth-child(2){--i:1}
.steps4>.steps4__item:nth-child(3){--i:2}
.steps4>.steps4__item:nth-child(4){--i:3}
.js .steps4>.steps4__item::before{transform:scaleX(0);transform-origin:left center;transition:transform .55s var(--ease) calc(var(--i)*.45s + .2s)}
.js .steps4>.steps4__item::after{background:var(--line);transition:background .3s var(--ease) calc(var(--i)*.45s),box-shadow .3s var(--ease) calc(var(--i)*.45s)}
.js .steps4>.steps4__item .h4,.js .steps4>.steps4__item>p:not(.step__num){color:var(--muted);transition:color .45s var(--ease) calc(var(--i)*.45s)}
.js .steps4.is-in>.steps4__item::before{transform:none}
.js .steps4.is-in>.steps4__item::after{background:var(--primary);box-shadow:0 0 0 6px #fff,0 0 0 11px rgba(29,147,208,.15)}
.js .steps4.is-in>.steps4__item .h4{color:var(--ink)}
.js .steps4.is-in>.steps4__item>p:not(.step__num){color:var(--ink)}
@media (max-width:640px){
  .js .steps4>.steps4__item::before{transform:scaleY(0);transform-origin:center top}
}
@media (prefers-reduced-motion:reduce){
  .js .steps4>.steps4__item::before,.js .steps4>.steps4__item::after,.js .steps4>.steps4__item .h4,.js .steps4>.steps4__item>p{transition:none}
}
.nav__dd{position:relative;display:flex;align-items:center;gap:2px}
.nav__dd-toggle{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:none;color:inherit;cursor:pointer}
.nav__dd-toggle svg{width:12px;height:12px;transform:rotate(90deg);transition:transform .2s var(--ease)}
.nav__dd-toggle:focus-visible{outline:2px solid var(--link);outline-offset:2px}
.nav__dd.is-open .nav__dd-toggle svg{transform:rotate(-90deg)}
.dd{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:max-content;padding-top:18px;visibility:hidden;opacity:0;transition:opacity .18s ease,visibility 0s linear .18s;z-index:60}
.nav__dd.is-open .dd{visibility:visible;opacity:1;transition:opacity .18s ease}
@media (hover:hover) and (pointer:fine){
  .nav__dd:hover .dd{visibility:visible;opacity:1;transition:opacity .18s ease}
  .nav__dd:hover .nav__dd-toggle svg{transform:rotate(-90deg)}
}
.dd__panel{display:grid;grid-template-columns:repeat(2,minmax(220px,auto));gap:8px 40px;padding:26px 30px 24px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 24px 48px -24px rgba(41,43,46,.28)}
.dd__label{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.dd__group ul{list-style:none;display:grid;gap:2px}
.nav .dd__item{display:block;padding:7px 0;font-size:17px;color:var(--ink);white-space:nowrap}
.nav .dd__item:hover,.nav .dd__item[aria-current]{color:var(--link)}
.nav .dd__item.is-soon{color:var(--muted);cursor:default}
.nav:not(.nav--solid):not(.is-open) .nav__dd[data-active]>a{text-decoration-thickness:1.5px;text-underline-offset:8px}
.nav:not(.nav--solid):not(.is-open) .dd .dd__item{color:var(--ink);text-decoration:none}
.nav:not(.nav--solid):not(.is-open) .nav__dd-toggle{color:#fff}
.nav:not(.nav--solid):not(.is-open) .dd .dd__item:hover,.nav:not(.nav--solid):not(.is-open) .dd .dd__item[aria-current]{color:var(--link)}
.nav:not(.nav--solid):not(.is-open) .dd .dd__item.is-soon{color:var(--muted)}
.mm__main,.mm__groups ul{list-style:none}
.mm__main{display:grid}
.mobile-menu .mm__main{padding:8px 0 0}
.mobile-menu .mm__main:last-of-type{padding:0}
.mobile-menu .mm__groups ul{padding:0;display:block}
.mm__groups{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;padding:12px 0 8px;border-bottom:1px solid var(--line)}
.mm__label{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px 0 4px}
.mobile-menu .mm__item{display:block;padding:8px 0;font-size:17px;border-bottom:0}
.mobile-menu .mm__item[aria-current]{color:var(--link)}
.mobile-menu .mm__item.is-soon{color:var(--muted)}
.mobile-menu .mm__main:last-of-type{margin-bottom:24px}
@media (max-width:960px){
  .nav.is-open .mobile-menu{max-height:calc(100svh - 80px);overflow-y:auto}
}
@media (max-width:420px){
  .mm__groups{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .dd,.nav__dd-toggle svg{transition:none}
}
.footer__contact{margin-top:24px;font-style:normal;font-size:17px;line-height:1.75;color:var(--footer-text)}
.footer__contact a{color:#fff}
.footer h2{font-weight:500;color:#fff}
.footer__bottom{margin-top:42px}
.footer a[aria-current]{color:#fff}
@media (min-width:961px){
  .split>.reveal:first-child>.prose:first-child>p:first-child,.php>:first-child>:first-child,.faq-side>.eyebrow:first-child{margin-top:-10px}
}
.hero--color :focus-visible,.on-dark :focus-visible,.nav:not(.nav--solid):not(.is-open) :focus-visible{outline-color:#fff}
.skip-link{position:fixed;left:16px;top:-80px;z-index:200;background:#fff;color:var(--ink);font-weight:500;padding:12px 18px;border-radius:var(--r-xs);box-shadow:0 8px 24px -8px rgba(41,43,46,.35);transition:top .15s ease}
.skip-link:focus,.skip-link:focus-visible{top:16px;outline:3px solid var(--link);outline-offset:2px}
main:focus{outline:none}
@media (max-width:960px){
  .mobile-menu{visibility:hidden;transition:max-height .3s var(--ease),visibility 0s linear .3s}
  .nav.is-open .mobile-menu{visibility:visible;transition:max-height .3s var(--ease)}
}
@media (prefers-reduced-motion:reduce){
  .skip-link{transition:none}
}
.btn svg{width:14px;height:14px}
.nav__links>li>a[aria-current]{padding:7px 14px;margin:-7px -14px;border-radius:999px;background:var(--primary-soft);color:var(--link);text-decoration:none}
.nav__dd[data-active]{padding:4px 6px 4px 14px;margin:-4px -6px -4px -14px;border-radius:999px;background:var(--primary-soft)}
.nav__dd[data-active]>a{color:var(--link);text-decoration:none}
.nav:not(.nav--solid):not(.is-open) .nav__links>li>a[aria-current]{background:rgba(8,40,70,.25);color:#fff;text-decoration:none}
.nav:not(.nav--solid):not(.is-open) .nav__dd[data-active]{background:rgba(8,40,70,.25)}
.nav:not(.nav--solid):not(.is-open) .nav__dd[data-active]>a{color:#fff;text-decoration:none}
.fact p,.facts-caption{color:var(--ink)}
.facts-caption a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.facts-caption a:hover{color:var(--link)}
.wp-intro{align-items:start}
.wp-intro .prose p{color:var(--ink)}
.wp-intro .h1{font-size:clamp(28px,3.8vw,50px);margin-top:-.14em}

/* ===== Komponenten der einzelnen Seiten ===== */
.geo-split{align-items:center}
.geo-split .h1{margin-bottom:28px}
.highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 32px;margin-top:72px;padding-top:40px;border-top:1px solid var(--line)}
.highlights b,.highlights strong{display:block;font-weight:500;color:var(--ink);margin-bottom:2px}
.highlights span{font-size:17px;color:var(--muted)}
@media (max-width:960px){
  .highlights{grid-template-columns:1fr}
}
.neuro-head{align-items:center}
@media (min-width:961px){
  .neuro-head__cert{margin-top:40px}
}
#seo-geo .prose a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
#marketing .h1{font-size:clamp(30px,3.6vw,50px)}
#marketing .geo-split{align-items:start}
.faq details a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.checks--dots li::before{width:6px;height:6px;margin:13.5px 7px 0;background:var(--primary)}
@media (max-width:640px){
  :where(.p-seo) .highlights{margin-top:48px}
}
.cert{display:flex;align-items:center;gap:16px}
:where(.p-webdesign) .cert figcaption{max-width:220px;font-size:15px;line-height:1.4;color:var(--muted)}
:where(.p-seo) .cert img{display:block;width:120px;height:auto;flex:none}
:where(.p-seo) .cert figcaption{font-size:15px;line-height:1.4;color:var(--muted)}
.cert figcaption b,.cert figcaption strong{display:block;font-weight:500;font-size:17px;color:var(--ink)}
:where(.p-webdesign) .cert img{display:block;width:140px;height:auto;flex:none}
@media (max-width:640px){
  .cert img{width:120px}
}
.cert--card{margin:4px 0 20px;padding-top:20px;border-top:1px solid var(--line)}
@media (max-width:640px){
  :where(.p-google-ads) .highlights{margin-top:48px}
}
.award-sec{padding-top:0;margin-top:-37px}
@media (max-width:640px){
  .award-sec{margin-top:-24px}
}
.award{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px 72px;align-items:center;background:var(--surface);border-radius:var(--r-md);padding:56px 64px}
:where(.p-webdesign) .award__seal{display:block;width:100%;max-width:340px;height:auto;justify-self:center}
:where(.p-webdesign) .award__title{font-size:clamp(28px,3.4vw,44px);margin-bottom:22px}
.award__text{font-size:19px;color:var(--ink);margin-bottom:22px}
.award__link{font-size:16px;color:var(--muted);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.award__link:hover{color:var(--link)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.card__link{margin-top:auto;padding-top:16px}
.facts--plain{border:0;column-gap:44px;row-gap:28px;margin-top:72px}
.facts--plain .fact,.facts--plain .fact+.fact{padding:0;border:0}
.faq .faq__more{font-size:16px}
.facts--plain+.facts-caption{margin-top:36px;font-size:15px}
.facts--plain .fact__title{font-size:clamp(22px,2vw,26px);font-weight:500;letter-spacing:-.01em;line-height:1.25;margin-bottom:10px}
:where(.p-google-ads) .award__seal{display:block;width:100%;height:auto;justify-self:center}
.partner__badge{max-width:240px}
:where(.p-google-ads) .award__title{font-size:clamp(28px,3.4vw,44px);margin-bottom:18px}
.partner{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:40px 56px;padding:46px 64px}
.partner__badge-link{display:block;justify-self:center;width:100%;max-width:200px}
.partner__badge-link:focus-visible{outline:3px solid var(--link);outline-offset:6px;border-radius:8px}
.partner__lead{font-size:18px;color:var(--ink);margin-bottom:0}
.certs{grid-column:1/-1;border-top:1px solid var(--line);padding-top:32px}
.certs__title{font-size:18px;font-weight:500;line-height:1.4;color:var(--ink);text-align:center;margin-bottom:24px}
.certs__list{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 20px}
.certs__link{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;color:var(--muted);text-decoration:none;border-radius:8px}
.certs__link img{display:block;width:104px;height:104px}
.certs__name{font-size:14px;line-height:1.35;text-wrap:balance}
.certs__link:hover{color:var(--link)}
.certs__link:hover .certs__name{text-decoration:underline;text-underline-offset:3px}
.certs__link:focus-visible{outline:3px solid var(--link);outline-offset:4px}
@media (max-width:960px){
  .certs__list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .certs__title{text-align:left}
}
@media (max-width:480px){
  .certs__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .certs__link img{width:88px;height:88px}
}
.members__label{font-size:15px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:-8px 0 24px}
.members{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 32px}
.member img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 0;border-radius:var(--r-md)}
.member figcaption{margin-top:20px}
.member__name{display:block;font-size:24px;font-weight:500;color:var(--ink);line-height:1.3}
.member__role{display:block;margin-top:4px;font-size:17px;color:var(--muted)}
.principles{display:grid;gap:18px}
.principles b,.principles strong{display:block;font-weight:500;color:var(--ink);margin-bottom:2px}
@media (max-width:960px){
  .members{gap:32px 20px}
}
.job-banner{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;margin-top:48px;padding:24px 32px;border:1.5px dashed var(--primary);border-radius:var(--r-md);background:#fff;color:var(--ink);transition:border-color .2s,background-color .2s}
.job-banner:hover{border-style:solid;background:var(--primary-soft)}
.job-banner:focus-visible{outline:3px solid var(--link);outline-offset:4px}
.job-banner__body{display:flex;flex-direction:column;gap:6px}
.job-banner__kicker{font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--link)}
.job-banner__title{font-size:22px;font-weight:500;line-height:1.3}
.job-banner__text{font-size:16px;line-height:1.5;color:var(--muted)}
.job-banner__link{flex:none;display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.job-banner__link svg{width:14px;height:14px}
@media (max-width:640px){
  .members{grid-template-columns:1fr;max-width:420px}
  .job-banner{flex-direction:column;align-items:flex-start;max-width:420px;margin-top:40px;padding:24px 22px}
}
.member--stefan img{object-position:50% 34%}
.person-hero{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:center;text-align:left}
.person-hero__img img{display:block;width:100%;max-width:440px;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--r-md);box-shadow:0 24px 60px rgba(8,40,70,.28)}
.person-hero__kicker{font-size:17px;font-weight:500;color:#fff;margin-bottom:14px}
.person-hero .hero__claim{margin:0}
.person-hero .lead{margin:24px 0 36px;max-width:600px}
.person-hero .btn-row{justify-content:flex-start;width:auto}
.btn__icon{width:16px;height:16px}
.hero__eyebrow{font-size:15px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--primary-soft);margin-bottom:14px}
.job-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px 72px;align-items:center}
.job-intro__img img{display:block;width:100%;height:auto;border-radius:var(--r-md)}
.job-intro .h1{margin-bottom:24px}
.job-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.job-card{background:#fff;border-radius:var(--r-md);padding:32px 28px}
.job-card .h3{margin-bottom:20px}
.job-card .checks{font-size:17px;line-height:1.55;margin-bottom:0;gap:20px}
.job-card .checks b,.job-card .checks strong{font-weight:500;color:var(--ink)}
#bewerbung .lead a{color:var(--link);text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
@media (max-width:960px){
  .job-intro{grid-template-columns:1fr}
  .job-cards{grid-template-columns:1fr;max-width:640px}
}
.contact__person{display:flex;align-items:center;gap:20px;margin-bottom:32px}
.contact__person img{display:block;width:88px;height:110px;object-fit:cover;border-radius:var(--r-md)}
.contact__person p{font-size:17px;line-height:1.45;color:var(--muted);max-width:260px}
.contact__person b,.contact__person strong{display:block;font-size:20px;font-weight:500;color:var(--ink);margin-bottom:2px}
.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px 72px;align-items:start}
.contact__title{font-size:clamp(28px,3.6vw,46px);margin-bottom:28px}
.contact__list{list-style:none;display:grid;gap:22px;margin-bottom:32px}
.contact__list li{display:flex;gap:16px;align-items:flex-start}
.contact__list li>span:last-child{display:flex;flex-direction:column;font-size:18px;line-height:1.5}
.contact__list a{font-size:20px;font-weight:500;color:var(--ink)}
.contact__list a:hover{color:var(--link)}
.contact__list small{font-size:16px;color:var(--muted)}
.contact__list b,.contact__list strong{font-weight:500}
.contact__icon{display:grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:var(--primary-soft);color:var(--primary)}
.contact__icon svg{width:20px;height:20px}
.contact__visit{margin:0 0 32px;font-size:17px;line-height:1.6;color:var(--ink)}
.contact__h{font-size:18px;font-weight:500;line-height:1.35;margin-bottom:4px}
.contact__visit p+.contact__h{margin-top:18px}
.contact__note{background:var(--surface);border-radius:var(--r-md);padding:22px 24px;font-size:17px;color:var(--ink)}
.contact__note b,.contact__note strong{font-weight:500}
.formcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:36px 40px 32px;box-shadow:0 24px 48px -32px rgba(41,43,46,.25)}
.formcard .h3{margin-bottom:24px}
.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}
.field--full{grid-column:1/-1}
.field label{display:block;font-size:16px;font-weight:500;color:var(--ink);margin-bottom:6px}
.field label span{color:var(--link)}
.field input,.field textarea,.field select{width:100%;font:inherit;font-size:18px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--muted);border-radius:0;padding:8px 0 10px;transition:border-color .2s,box-shadow .2s}
.field textarea{resize:vertical;min-height:132px;border:1px solid var(--muted);border-radius:var(--r-xs);padding:12px 14px}
.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--primary);box-shadow:0 2px 0 0 var(--primary)}
.field textarea:focus{box-shadow:0 0 0 1px var(--primary)}
.field [aria-invalid="true"]{border-color:#C0392B}
.field .err{display:block;margin-top:6px;font-size:15px;color:#B42318}
.select{position:relative}
.select select{appearance:none;-webkit-appearance:none;padding-right:32px;cursor:pointer}
.select::after{content:"";position:absolute;right:6px;top:50%;width:8px;height:8px;border-right:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.form__hint{margin:18px 0 22px;font-size:15px;color:var(--muted)}
.form__privacy{margin-top:18px;font-size:15px;color:var(--muted)}
.form__privacy a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.form__status{margin-top:12px;font-size:16px;color:var(--ink)}
.form__status:empty{display:none}
.location{display:grid;grid-template-columns:1.1fr .9fr;gap:40px 72px;align-items:center}
.loc-map{display:block;width:100%;height:auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-md)}
.loc-map__river{font:italic 300 15px var(--font);fill:#4F8FB3;letter-spacing:.02em}
.loc-map__note{margin-top:10px;font-size:14px;color:var(--muted)}
.loc-map__city{font:500 17px var(--font);fill:#6E6E73}
.loc-map__road{font:500 12px var(--font);fill:#6E6E73}
.loc-map__name{font:500 18px var(--font);fill:#3E3E42}
.loc-map__place{font:300 16px var(--font);fill:#126F9F}
.location__title{font-size:clamp(28px,3.6vw,46px);margin-bottom:24px}
.location__addr{font-style:normal;font-size:19px;line-height:1.6;color:var(--ink);margin-bottom:20px}
.location__addr b,.location__addr strong{display:block;font-weight:500}
.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--link);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.text-link svg{width:12px;height:12px}
.text-link:hover{text-decoration-thickness:2px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:960px){
  .award{grid-template-columns:1fr;padding:36px 28px}
  .award__seal{max-width:300px;justify-self:start}
}
@media (max-width:640px){
  :where(.p-webdesign) .highlights{grid-template-columns:1fr;margin-top:48px}
}
@media (max-width:960px){
  .partner__badge-link{max-width:150px;justify-self:start}
  .contact,.location{grid-template-columns:1fr}
}
@media (max-width:640px){
  .form__grid{grid-template-columns:1fr}
  .formcard{padding:28px 22px}
}
.thanks{padding:calc(var(--nav-h) + 96px) 0 112px;text-align:center}
.thanks__icon{display:block;width:64px;height:64px;margin:0 auto 28px}
.thanks__title{font-size:clamp(32px,4.4vw,56px);margin-bottom:20px}
.thanks__lead{max-width:600px;margin:0 auto 40px;color:var(--ink)}
.thanks__person{display:inline-flex;align-items:center;gap:20px;text-align:left;padding:20px 28px 20px 20px;background:var(--surface);border-radius:var(--r-md)}
.thanks__person img{display:block;width:88px;height:110px;object-fit:cover;border-radius:var(--r-md)}
.thanks__person p{font-size:17px;line-height:1.45;color:var(--muted);max-width:240px}
.thanks__person b,.thanks__person strong{display:block;font-size:20px;font-weight:500;color:var(--ink);margin-bottom:2px}
.thanks__call{margin-top:32px;font-size:18px;color:var(--ink)}
.thanks__call a{color:var(--link);font-weight:500;white-space:nowrap}
.thanks__btns{justify-content:center;margin-top:36px}
.btn--line,.wp-block-button.is-style-line>.wp-block-button__link{background:#fff;color:var(--ink);border-color:var(--line)}
.btn--line:hover,.wp-block-button.is-style-line>.wp-block-button__link:hover{border-color:var(--ink)}
.btn--line .btn__icon,.wp-block-button.is-style-line>.wp-block-button__link .btn__icon{color:var(--link)}
.person-facts{padding-top:0}
.person-facts .facts{margin-top:72px;border-top:0;border-bottom:0}
.person-facts .fact{padding-top:6px;padding-bottom:6px}
.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.area{position:relative;display:block;background:#fff;border-radius:var(--r-md);padding:28px 64px 28px 28px;color:var(--ink);text-decoration:none;border:1px solid transparent;transition:border-color .2s var(--ease)}
.area:hover{border-color:var(--primary)}
.area__title{display:block;font-size:22px;font-weight:500;line-height:1.3}
.area__text{display:block;margin-top:4px;color:var(--muted)}
.area__go{position:absolute;right:28px;top:50%;width:18px;height:18px;margin-top:-9px;color:var(--link);transition:transform .2s var(--ease)}
.area:hover .area__go{transform:translateX(3px)}
.person-split{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.person-split .h1{font-size:clamp(28px,3vw,40px)}
.quals,.profiles{list-style:none;margin:32px 0 0;padding:0;border-top:1px solid var(--line)}
.quals li{padding:24px 0;border-bottom:1px solid var(--line)}
.quals__title{display:block;font-size:20px;font-weight:500;color:var(--ink)}
.quals__text{display:block;margin-top:2px;color:var(--muted)}
.quals__link{display:inline-block;margin-top:8px;color:var(--link);text-decoration:underline;text-underline-offset:4px}
.quals__neuro{display:grid;grid-template-columns:auto 1fr;column-gap:20px;align-items:center}
.quals__neuro picture{grid-row:span 2}
.quals__neuro img{display:block;width:120px;height:auto}
.profiles li{border-bottom:1px solid var(--line)}
.profiles a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px 0;font-size:20px;font-weight:500;color:var(--ink);text-decoration:none}
.profiles a:hover{color:var(--link)}
.profiles svg{flex:none;width:18px;height:18px;color:var(--link);transition:transform .2s var(--ease)}
.profiles a:hover svg{transform:translateX(3px)}
.person-cta{justify-content:center}
@media (max-width:960px){
  .person-hero{grid-template-columns:1fr;gap:40px}
  .person-hero__img img{max-width:320px}
  .areas{grid-template-columns:repeat(2,1fr)}
  .person-split{grid-template-columns:1fr;gap:56px}
}
@media (max-width:640px){
  .person-hero__img img{max-width:240px}
  .areas{grid-template-columns:1fr}
  .person-facts .facts{margin-top:40px}
  .person-facts .fact{padding:20px 0}
  .person-facts .fact:first-child{padding-top:0}
  .person-facts .fact:last-child{padding-bottom:0}
  .thanks{padding:calc(var(--nav-h) + 48px) 0 72px}
  .thanks__person{padding:16px}
}
.legal{padding-top:calc(var(--nav-h) + 80px)}
.legal__title{max-width:800px;margin:0 auto 48px;text-align:left;font-size:clamp(32px,4.2vw,52px)}
.legal__body{max-width:800px;margin:0 auto;font-size:18px;line-height:1.7;color:var(--ink)}
:where(.p-impressum) .legal__body h2{font-size:22px;font-weight:500;line-height:1.3;margin:40px 0 10px}
:where(.p-datenschutz) .legal__body h2{font-size:22px;font-weight:500;line-height:1.3;margin:40px 0 10px;scroll-margin-top:110px}
:where(.p-barrierefreiheit) .legal__body h2{font-size:22px;font-weight:500;line-height:1.3;margin:40px 0 10px}
.legal__body p{margin:0}
:where(.p-impressum) .legal__body a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
:where(.p-datenschutz) .legal__body a{color:var(--link);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
:where(.p-barrierefreiheit) .legal__body a{color:var(--link);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media (max-width:640px){
  .legal{padding-top:calc(var(--nav-h) + 40px)}
  .legal__title{margin-bottom:32px}
}
:where(.p-datenschutz) .legal__body h2:first-of-type{margin-top:8px}
.legal__body h3{font-size:19px;font-weight:500;line-height:1.35;margin:28px 0 8px}
.legal__body h4{font-size:17px;font-weight:500;line-height:1.4;margin:20px 0 6px}
.legal__body p+p{margin-top:12px}
:where(.p-datenschutz) .legal__body ul{margin:12px 0 12px 22px;display:grid;gap:8px}
.legal__toc{background:var(--surface);border-radius:var(--r-md);padding:22px 26px;margin-bottom:40px}
.legal__toc p{font-weight:500;margin-bottom:8px}
.legal__toc ol{margin-left:20px;display:grid;gap:4px}
.legal__toc a{text-decoration:none}
.legal__toc a:hover{text-decoration:underline}
:where(.p-barrierefreiheit) .legal__body h2:first-of-type{margin-top:36px}
:where(.p-barrierefreiheit) .legal__body ul{margin:12px 0 0 22px;display:grid;gap:10px}
.legal__body li b,.legal__body li strong{font-weight:500}

/* ===== Seitenbezogene Feinheiten (body.p-<slug>) ===== */


/* Abstände aus dem Entwurf (vorher style-Attribute) */
.u-1a9c58{color:var(--dark-muted)}
.u-0f873e{margin-top:48px}
.u-996d4a{margin-top:80px}
.u-fcf402{margin-top:40px}

/* =====================================================================
   Ergänzungen für WordPress (von Hand gepflegt, wird an main.css angehängt)
   ===================================================================== */

/* ----- Buttons (Button-Block): Pfeil bzw. Telefon-Icon per CSS ----- */
.wp-block-buttons.btn-row{display:flex}
:where(.wp-block-buttons)>.wp-block-button{margin:0}
/* Abstand über dem Button in der weißen Box: als Innenabstand, damit er nicht mit dem Listenabstand zusammenfällt */
.wp-block-buttons.checkcard__btn{margin-top:0;padding-top:8px}
.wp-block-button>.wp-block-button__link{text-decoration:none;box-shadow:none}
.wp-block-button>.wp-block-button__link::after{content:"";flex:none;width:14px;height:14px;background:currentColor;transition:transform .2s var(--ease);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.wp-block-button>.wp-block-button__link:hover::after{transform:translateX(3px)}
.wp-block-button.is-style-on-color>.wp-block-button__link::after{background:var(--primary)}
.wp-block-button>.wp-block-button__link[href^="tel:"]::after{display:none}
.wp-block-button>.wp-block-button__link[href^="tel:"]::before{content:"";flex:none;width:16px;height:16px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 005 5L15 13l5 2v4a2 2 0 01-2 2A16 16 0 013 6a2 2 0 012-2z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 4h4l2 5-2.5 1.5a11 11 0 005 5L15 13l5 2v4a2 2 0 01-2 2A16 16 0 013 6a2 2 0 012-2z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:640px){.btn-row>.wp-block-button{width:100%}}
@media (prefers-reduced-motion:reduce){.wp-block-button>.wp-block-button__link::after{transition:none}}

/* ----- Hauptmenü: Punkt ohne eigene Seite als Button (z. B. „Websites“, „Online-Marketing“) ----- */
.nav__dd-btn{display:inline-flex;align-items:center;gap:6px;font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;transition:color .2s}
/* Pfeil 1px tiefer: sitzt so mittig zur Schrift (Proxima Nova liegt in der Zeile etwas tief) */
.nav__dd-btn svg{width:12px;height:12px;margin-top:2px;transform:rotate(90deg);transition:transform .2s var(--ease)}
.nav__dd-btn:hover{color:var(--link)}
.nav__dd.is-open .nav__dd-btn svg{transform:rotate(-90deg)}
@media (hover:hover) and (pointer:fine){.nav__dd:hover .nav__dd-btn svg{transform:rotate(-90deg)}}
/* Aktive Pille: oben 1px weniger, unten 1px mehr Innenabstand, damit die Schrift optisch mittig sitzt */
.nav__dd--btn[data-active]{padding:3px 12px 5px 14px;margin:-3px -12px -5px -14px}
.nav__links>li>a[aria-current]{padding:5px 14px 9px;margin:-5px -14px -9px}
.nav__dd[data-active]>.nav__dd-btn{color:var(--link)}
.nav:not(.nav--solid):not(.is-open) .nav__dd-btn{color:#fff}
.nav:not(.nav--solid):not(.is-open) .nav__dd-btn:hover{color:var(--primary-soft)}
.nav:not(.nav--solid):not(.is-open) .nav__dd[data-active]>.nav__dd-btn{color:#fff}
.dd__panel--single{grid-template-columns:minmax(220px,auto)}
.nav:not(.nav--solid):not(.is-open) .nav__links .dd .dd__item[aria-current]{text-decoration:none}
@media (prefers-reduced-motion:reduce){.nav__dd-btn svg{transition:none}}

/* ----- Mobiles Menü: „Websites“ / „Online-Marketing“ als Aufklapper ----- */
.mobile-menu .mm__toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border:0;border-bottom:1px solid var(--line);background:none;font:inherit;font-size:18px;color:var(--ink);text-align:left;cursor:pointer}
.mobile-menu .mm__toggle svg{flex:none;width:14px;height:14px;color:var(--muted);transform:rotate(90deg);transition:transform .2s var(--ease)}
.mobile-menu .mm__toggle[aria-expanded="true"]{border-bottom-color:transparent}
.mobile-menu .mm__toggle[aria-expanded="true"] svg{transform:rotate(-90deg)}
.mobile-menu .mm__acc:has([aria-current]) > .mm__toggle{color:var(--link)}
.mobile-menu .mm__sub{display:grid;padding:0 0 12px 18px;border-bottom:1px solid var(--line)}
.mobile-menu .mm__sub[hidden]{display:none}
.mobile-menu .mm__sub .mm__item{display:block;padding:9px 0;border-bottom:0;font-size:17px}
.mobile-menu .mm__sub .mm__item[aria-current]{color:var(--link)}
.mobile-menu .mm__sub .mm__label{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:8px 0 2px}
@media (prefers-reduced-motion:reduce){.mobile-menu .mm__toggle svg{transition:none}}

/* ----- Hilfsklassen ----- */
.sr-only,.visually-hidden,.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.form__hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* ----- Admin-Leiste (nur angemeldet): Menü darunter ----- */
.admin-bar .nav{top:calc(var(--frame) + 32px)}
.admin-bar .nav--solid,.admin-bar .nav.is-open{top:32px}
@media (max-width:782px){.admin-bar .nav{top:calc(var(--frame) + 46px)}.admin-bar .nav--solid,.admin-bar .nav.is-open{top:46px}}
@media (max-width:600px){.admin-bar .nav--solid,.admin-bar .nav.is-open{top:0}}

/* ----- Footer: Cookie-Einstellungen (Borlabs) wie ein Link ----- */
.footer__cookies{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;transition:color .2s}
.footer__cookies:hover{color:#fff}
/* Rechtliche Links im Footer dürfen umbrechen (sonst läuft „Cookie-Einstellungen“ auf dem Smartphone aus dem Bild) */
.footer__bottom nav{flex-wrap:wrap;row-gap:8px}
.footer__cookies{white-space:nowrap}

/* ----- Blog: Übersicht (blauer Hero, einspaltige Liste) ----- */
.hero--compact{--hero-pad-t:44px;--hero-pad-b:56px}
@media (max-width:640px){.hero--compact{--hero-pad-t:32px;--hero-pad-b:40px}}
.post-index{padding-top:72px}
.post-list{max-width:900px;margin:0 auto;border-top:1px solid var(--line)}
.post-row{padding:36px 0 34px;border-bottom:1px solid var(--line)}
.post-row__meta{font-size:16px;color:var(--muted);margin-bottom:8px}
.post-row__title{font-size:clamp(24px,2.6vw,30px);line-height:1.25;letter-spacing:-.015em;margin-bottom:12px}
.post-row__title a{transition:color .2s}
.post-row__title a:hover{color:var(--link)}
.post-row__excerpt{max-width:760px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post-row__more{margin-top:14px}
.post-row__more .text-link,.post-back .text-link{display:inline-flex;align-items:center;gap:8px;color:var(--link);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.post-row__more svg{width:14px;height:14px;transition:transform .2s var(--ease)}
.post-row__more .text-link:hover svg{transform:translateX(3px)}

.pager{max-width:900px;margin:48px auto 0}
.pager .nav-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-pill);font-size:17px}
.pager .page-numbers:hover{border-color:var(--ink)}
.pager .page-numbers.current{background:var(--primary-soft);border-color:var(--primary-soft);color:var(--link);font-weight:500}
.pager .page-numbers.dots{border:0}

/* ----- Blog: Artikel (weißer Einstieg, eine Lesespalte) ----- */
.post-col{max-width:calc(760px + 2*var(--gutter));padding-top:calc(var(--nav-h) + 72px);padding-bottom:96px}
.post-kicker{font-size:16px;font-weight:500;margin-bottom:14px}
.post-kicker a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.post-title{font-size:clamp(32px,4.2vw,50px);text-align:left}
.post-meta{margin-top:18px;font-size:16px;color:var(--muted)}
.post-lead{margin:28px 0 0;max-width:none;color:var(--ink)}
.post-head{padding-bottom:36px;margin-bottom:40px;border-bottom:1px solid var(--line)}
.post-image{margin:0 0 40px}
.post-image img{display:block;width:100%;height:auto;border-radius:var(--r-md)}
.post-body{font-size:19px;line-height:1.7}
.post-body>*+*{margin-top:20px}
.post-body h2{font-size:clamp(26px,3vw,32px);line-height:1.25;letter-spacing:-.015em;font-weight:500;margin-top:56px}
.post-body h3{font-size:23px;line-height:1.3;font-weight:500;margin-top:40px}
.post-body h4{font-size:20px;font-weight:500;margin-top:32px}
.post-body h2+*,.post-body h3+*,.post-body h4+*{margin-top:12px}
.post-body a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.post-body a:hover{text-decoration-thickness:2px}
.post-body ul,.post-body ol{padding-left:24px}
.post-body li+li{margin-top:8px}
.post-body blockquote{border-left:3px solid var(--primary);padding:4px 0 4px 24px;font-size:21px;line-height:1.55}
.post-body figure{margin-top:36px;margin-bottom:12px}
.post-body img{max-width:100%;height:auto;border-radius:var(--r-md)}
.post-body figcaption{margin-top:10px;font-size:15px;color:var(--muted)}
.post-body code{font-size:.9em;background:var(--surface);padding:2px 6px;border-radius:var(--r-xs)}
.post-body pre{background:var(--surface);padding:20px;border-radius:var(--r-md);overflow-x:auto;font-size:16px}
.post-body table{width:100%;border-collapse:collapse;font-size:17px}
.post-body th,.post-body td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}
.post-body th{font-weight:500}

/* Kompakter Kontaktkasten am Ende des Artikels */
.post-cta{margin-top:56px;padding:28px 32px;background:var(--surface);border-radius:var(--r-md)}
.post-cta .h4{margin-bottom:6px}
.post-cta p{font-size:17px}
.post-cta__actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:18px}
.post-cta__call{color:var(--link);font-weight:500;white-space:nowrap}
.post-cta__call:hover{text-decoration:underline;text-underline-offset:4px}
.post-back{margin-top:40px}
.post-back svg{width:12px;height:12px;transform:rotate(180deg)}

@media (max-width:640px){
  .post-index{padding-top:48px}
  .post-row{padding:28px 0 26px}
  .post-col{padding-top:calc(var(--nav-h) + 40px);padding-bottom:72px}
  .post-body{font-size:18px}
  .post-cta{padding:24px 20px}
}

/* Footer: Agenturblock links (Text, Adresse, Telefon, E-Mail), rechts drei ähnlich hohe Linklisten */
.footer__contact{margin-top:22px;font-style:normal;font-size:17px;color:var(--footer-text)}
.footer__brand .footer__contact p{margin:0}
.footer__contact a{color:inherit}
.footer__contact a:hover{color:#fff}
@media (min-width:961px){.footer__top{grid-template-columns:minmax(0,360px) auto auto auto}}

/* Hero-Einleitung: Zeilen ausgleichen, damit kein einzelnes Wort in der letzten Zeile steht (Chrome, Edge, Firefox, Safari 17.5+) */
.hero .lead,.cta .lead,.cta .cta__free{text-wrap:balance}  /* auch die kurze Einleitung im Abschluss-CTA */

/* Abschluss-CTA am Smartphone: linksbündig wie der Rest der Seite, Button volle Breite wie im Hero (Desktop: zentriert, Button so breit wie der Inhalt) */
@media (max-width:640px){.cta.cta--center{text-align:left}.cta .lead,.cta .cta__free{text-wrap:pretty}.cta.cta--center .lead{margin-left:0;margin-right:0}.cta .wp-block-buttons,.cta .wp-block-button,.cta .wp-block-button>.wp-block-button__link,.cta .btn{width:100%;justify-content:center}}

/* ---------- Mobiles Menü ---------- */
@media (max-width:960px){
  /* Geschlossen: Telefon-Icon links neben dem Burger, gleiche Größe (44 × 44 px), 12 px Abstand */
  .nav__right{gap:12px}
  .nav .nav__phone{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--r-xs);background:#fff}
  .nav .nav__phone svg{width:18px;height:18px;color:var(--link)}
  .nav .nav__phone span{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}  /* Nummer bleibt für Screenreader lesbar */
  .nav:not(.nav--solid):not(.is-open) .nav__phone{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.45)}
  .nav:not(.nav--solid):not(.is-open) .nav__phone svg{color:#fff}
  /* Geöffnet: weiße Fläche über die volle sichtbare Höhe; nur das Menü scrollt */
  .nav.is-open{height:100vh;height:100dvh;display:flex;flex-direction:column}
  .nav.is-open>.container{flex:1;min-height:0;width:100%;display:flex;flex-direction:column}
  .nav.is-open .mobile-menu{flex:1;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  html.menu-open,html.menu-open body{overflow:hidden}
  /* Telefonnummer im Menü etwas kleiner als die Menüpunkte */
  .mobile-menu .mm__tel a{font-size:16px;color:var(--muted)}
  .mobile-menu .mm__tel a:hover{color:var(--link)}
}
@media (min-width:783px) and (max-width:960px){.admin-bar .nav.is-open{height:calc(100vh - 32px);height:calc(100dvh - 32px)}}
@media (max-width:782px){.admin-bar .nav.is-open{height:calc(100vh - 46px);height:calc(100dvh - 46px)}}
@media (max-width:600px){.admin-bar .nav.is-open{height:100vh;height:100dvh}}

/* ---------- Blogbeitrag: Autor und Checklisten ---------- */
.post-meta__author{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.post-meta__author:hover{color:var(--link)}
.post-author{margin-top:56px;padding-top:32px;border-top:1px solid var(--line);display:grid;grid-template-columns:136px 1fr;gap:28px;align-items:center}  /* Bild mittig zum Text */
.post-author__img img{display:block;width:136px;height:136px;object-fit:cover;object-position:50% 20%;border-radius:50%}
.post-author__label{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.post-author .h4{margin-bottom:8px}
.post-author p{font-size:17px}
.post-author__more{margin-top:10px}
.post-author__more .text-link{display:inline-flex;align-items:center;gap:8px;color:var(--link);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.post-author__more svg{width:14px;height:14px}
.post-author+.post-cta{margin-top:40px}
@media (max-width:640px){.post-author{grid-template-columns:1fr;gap:16px;align-items:start}.post-author__img img{width:104px;height:104px}}  /* Smartphone: Bild über dem Text */
/* Checkliste im Beitrag (Listenblock mit Klasse „is-checklist“): leere Kästchen statt Punkten */
.post-body ul.is-checklist{list-style:none;padding-left:0}
.post-body ul.is-checklist li{position:relative;padding-left:30px}
.post-body ul.is-checklist li::before{content:"";position:absolute;left:0;top:.5em;width:15px;height:15px;border:1.5px solid var(--primary);border-radius:3px}

/* Zitate im Beitrag: helle Fläche mit großem Anführungszeichen statt blauer Linie */
.post-body blockquote{position:relative;border-left:0;background:var(--primary-soft);border-radius:var(--r-md);padding:28px 32px 28px 76px;font-size:20px;line-height:1.6}
.post-body blockquote::before{content:"„";position:absolute;left:26px;top:-6px;font-size:64px;line-height:1;font-weight:500;color:var(--primary)}  /* deutsches Anführungszeichen unten, auf Höhe der ersten Textzeile */
.post-body blockquote p+p{margin-top:12px}
@media (max-width:640px){.post-body blockquote{padding:24px 22px 24px 60px;font-size:18px}.post-body blockquote::before{left:18px;top:-8px;font-size:56px}}

/* ---------- Farbiger Hero: dunkles Blau, Lichtschein von unten, feine Körnung ---------- */
/* Der Lichtschein richtet sich nach dem unteren Innenabstand: hell erst unterhalb von Text und Button */
.hero--color{--glow-r:calc(var(--hero-pad-b) + 120px);
  background:
    radial-gradient(90% var(--glow-r) at 50% 100%, rgba(29,147,208,1) 0%, rgba(29,147,208,.62) 40%, rgba(29,147,208,.2) 72%, rgba(29,147,208,0) 100%),  /* Lichtschein in CI-Blau #1D93D0 */
    linear-gradient(180deg,#0A3558 0%,#0B3B61 55%,#0D4470 100%)}
.hero--color .hero__bg{display:none}
.hero--color::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.15;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='240' height='240' filter='url(%23n)'/></svg>");background-size:240px 240px}
.hero__mark{opacity:.026}
/* Logo-Zeichen auch auf den Leistungsseiten und „Agentur“: gleiche Lage wie auf der Startseite (von oben gemessen), bei niedrigerem Hero stärker angeschnitten */
.p-webdesign .hero--color::before,.p-barrierefreies-webdesign .hero--color::before,.p-wordpress .hero--color::before,.p-webedition .hero--color::before,
.p-seo .hero--color::before,.p-google-ads .hero--color::before,.p-geo .hero--color::before,.p-agentur .hero--color::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;opacity:.026;top:calc(var(--nav-h) + 25px);right:-13%;width:min(62vw,900px);aspect-ratio:1;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 305 305'><defs><mask id='m'><rect width='305' height='305' fill='white'/><circle cx='152.5' cy='151.6' r='79' fill='black'/><rect x='74' y='-1' width='48' height='152.6' fill='black'/></mask></defs><circle cx='152.5' cy='152' r='150.5' fill='white' mask='url(%23m)'/></svg>") center/contain no-repeat}
/* Unterseiten: kompakterer Hero als auf der Startseite; Kontakt noch etwas knapper, damit die Kontaktwege früh sichtbar sind */
body:not(.home) .hero--color:not(.hero--compact){--hero-pad-t:72px;--hero-pad-b:80px}
body.p-kontakt .hero--color:not(.hero--compact){--hero-pad-t:56px;--hero-pad-b:72px}
@media (max-width:640px){
  body:not(.home) .hero--color:not(.hero--compact){--hero-pad-t:48px;--hero-pad-b:72px}
  .home .hero--color{--hero-pad-b:88px}  /* Platz für den Lichtschein unter dem Button */
  .hero--color::before{display:none}
}

/* ---------- Blogübersicht und Kategorien ---------- */
.hero__eyebrow{font-size:15px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--primary-soft);margin-bottom:14px}
.post-index.sec{padding-top:40px}
.post-index .post-list{border-top:0}
.post-index__all{max-width:900px;margin:0 auto 4px;font-size:16px}
.post-index__all a{display:inline-flex;align-items:center;gap:8px;color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.post-index__all a:hover{text-decoration-thickness:2px}
.post-index__all svg{width:12px;height:12px;transform:rotate(180deg)}
@media (max-width:640px){.post-index.sec{padding-top:24px}.hero__eyebrow{font-size:14px}}
/* Maus-Lichtschein auf der Startseite: in CI-Blau statt fast weiß, passend zum Lichtschein unten */
.hero__glow{background:radial-gradient(circle,rgba(29,147,208,.42) 0%,rgba(29,147,208,.16) 35%,transparent 70%)}

/* ---------- Blogbeitrag: Inhaltsverzeichnis und externe Links ---------- */
.post-toc{margin:0 0 8px}
.post-toc details{background:var(--surface);border-radius:var(--r-md);padding:18px 24px}
.post-toc summary{cursor:pointer;font-size:14px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.post-toc summary::-webkit-details-marker{display:none}
.post-toc summary::after{content:"";width:9px;height:9px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(45deg) translate(-2px,-2px);transition:transform .2s var(--ease)}
.post-toc details[open] summary::after{transform:rotate(-135deg) translate(-2px,-2px)}
.post-toc ul{list-style:none;padding:0;margin:12px 0 2px;display:grid;gap:4px;font-size:17px;line-height:1.45}
.post-body .post-toc li+li{margin-top:0}
.post-toc a{display:inline-block;padding:3px 0;color:var(--link);text-decoration:none}
.post-toc a:hover{text-decoration:underline;text-underline-offset:3px}
.post-body h2[id]{scroll-margin-top:96px}
/* Externe Links: kleiner Pfeil nach rechts oben */
.post-body a.is-external::after{content:"";display:inline-block;width:.62em;height:.62em;margin-left:.22em;vertical-align:.05em;background:currentColor;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M4.5 2.5h5v5M9.5 2.5 2.5 9.5' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M4.5 2.5h5v5M9.5 2.5 2.5 9.5' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
@media (max-width:640px){.post-toc details{padding:14px 18px}.post-toc ul{font-size:16px}}

/* ---------- Buttons: Schrift optisch mittig ----------
   Proxima Nova sitzt in der Zeile etwas tief. Oben weniger, unten mehr Innenabstand (Gesamthöhe bleibt gleich);
   der Pfeil bleibt über einen Ausgleich in der Mitte des Buttons. */
.btn,.wp-block-button>.wp-block-button__link{padding-top:14px;padding-bottom:18px}
.btn>svg,.wp-block-button>.wp-block-button__link::after{position:relative;top:2px}  /* verschiebt nur die Darstellung, die Buttonhöhe bleibt */
.btn--sm{padding-top:11px;padding-bottom:13px}
.btn--sm>svg{top:1px}

/* ---------- Fehlerseite 404 (404.php) – kommt nicht aus den Seitenvorlagen, daher hier ---------- */
.nf{padding:calc(var(--nav-h) + 96px) 0 96px;text-align:center}
.nf__code{font-size:15px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.nf__title{font-size:clamp(32px,4.6vw,60px);margin-bottom:20px}
.nf__lead{max-width:640px;margin:0 auto 32px;color:var(--ink);text-wrap:balance}
.nf__team{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:860px;margin:56px auto 0}
.nf__person img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 0;border-radius:var(--r-md)}
.nf__person:first-child img{object-position:50% 34%}
.nf__hint{margin-top:36px;font-size:18px;color:var(--ink)}
.nf__hint a{color:var(--link);font-weight:500;text-decoration:underline;text-underline-offset:4px}
.nf__br{display:none}
@media (max-width:640px){.nf{padding:calc(var(--nav-h) + 48px) 0 64px}.nf__team{gap:10px;margin-top:40px}.nf__br{display:inline}}  /* mobil: „Schreiben Sie uns.“ in eigener Zeile */
