
@font-face{font-family:"Sofia Sans Condensed";src:url("/assets/fonts/sofia-latin.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Sofia Fallback";src:local("Bahnschrift");font-weight:751 900;font-stretch:89.8%;size-adjust:92.26%;ascent-override:97.55%;descent-override:32.52%;line-gap-override:0%;font-display:swap}
@font-face{font-family:"Sofia Fallback";src:local("Bahnschrift");font-weight:100 750;font-stretch:89.8%;size-adjust:89.38%;ascent-override:100.69%;descent-override:33.56%;line-gap-override:0%;font-display:swap}
@font-face{font-family:"Sofia Fallback Cn";src:local("Roboto Condensed Bold"),local("RobotoCondensed-Bold"),local("Roboto Bold Condensed"),local("Roboto-BoldCondensed");font-weight:751 900;size-adjust:89.62%;ascent-override:100.42%;descent-override:33.47%;line-gap-override:0%;font-display:swap}
@font-face{font-family:"Sofia Fallback Cn";src:local("Roboto Condensed Bold"),local("RobotoCondensed-Bold"),local("Roboto Bold Condensed"),local("Roboto-BoldCondensed");font-weight:100 750;size-adjust:86.82%;ascent-override:103.66%;descent-override:34.55%;line-gap-override:0%;font-display:swap}
@font-face{font-family:"Sofia Fallback";src:local("Bahnschrift");font-weight:751 900;font-stretch:89.8%;size-adjust:105.8%;ascent-override:85.07%;descent-override:28.36%;line-gap-override:0%;font-display:swap;unicode-range:U+0030-0039}
@font-face{font-family:"Sofia Fallback";src:local("Bahnschrift");font-weight:100 750;font-stretch:89.8%;size-adjust:102.27%;ascent-override:88%;descent-override:29.33%;line-gap-override:0%;font-display:swap;unicode-range:U+0030-0039}
@font-face{font-family:"Sofia Fallback";src:local("Bahnschrift");font-weight:751 900;font-stretch:89.8%;size-adjust:58.7%;ascent-override:153.32%;descent-override:51.11%;line-gap-override:0%;font-display:swap;unicode-range:U+0020}
@font-face{font-family:"Sofia Fallback";src:local("Bahnschrift");font-weight:100 750;font-stretch:89.8%;size-adjust:60.1%;ascent-override:149.75%;descent-override:49.92%;line-gap-override:0%;font-display:swap;unicode-range:U+0020}
@font-face{font-family:"Sofia Fallback Cn";src:local("Roboto Condensed Bold"),local("RobotoCondensed-Bold"),local("Roboto Bold Condensed"),local("Roboto-BoldCondensed");font-weight:751 900;size-adjust:61.2%;ascent-override:147.06%;descent-override:49.02%;line-gap-override:0%;font-display:swap;unicode-range:U+0020}
@font-face{font-family:"Sofia Fallback Cn";src:local("Roboto Condensed Bold"),local("RobotoCondensed-Bold"),local("Roboto Bold Condensed"),local("Roboto-BoldCondensed");font-weight:100 750;size-adjust:62.6%;ascent-override:143.77%;descent-override:47.92%;line-gap-override:0%;font-display:swap;unicode-range:U+0020}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url("/assets/fonts/atkinson-latin.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url("/assets/fonts/atkinson-latin-ext.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --navy:#0F2340;--deep:#081A31;--abyss:#050E1D;--pit:#030912;--ink:#0B1728;--yel:#FFC21A;--blue:#1A5FBF;--water:#86B4E3;--wa:#167A47;
  --m1:#A49B84;--paper:#F4F1E8;--soft:#DCE7F5;--line:rgba(134,180,227,.3);--rule:rgba(255,255,255,.3);
  --haar:rgba(11,23,40,.22);
  --head:72px;--pad:40px;--max:1520px;
  --t0:.06s;--t1:.18s;--t2:.45s;--t3:.9s;--ease:cubic-bezier(.22,1,.36,1);--ease-io:cubic-bezier(.77,0,.175,1);
  --disp:"Sofia Sans Condensed","Sofia Fallback","Sofia Fallback Cn","Bahnschrift Condensed","Arial Narrow","Roboto Condensed",sans-serif-condensed,Impact,sans-serif;
  --text:"Atkinson Hyperlegible Next",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --klinge:linear-gradient(90deg,#04090F 0 2px,var(--deep) 2px 4px,#FFE08A 4px 5px,var(--yel) 5px 11px,#C99400 11px 12px,var(--deep) 12px 16px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--head) + 20px)}
body{margin:0;background:var(--deep);color:var(--ink);font-family:var(--text);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;overflow-x:clip}
img,svg{display:block}
img{max-width:100%}
a{color:inherit}
p,h1,h2,h3,dl,dd{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
address{font-style:normal}
button{font:inherit;color:inherit}
main:focus{outline:none}
body{display:flex;flex-direction:column;min-height:100vh}
main{display:flex;flex-direction:column;flex:1 0 auto}
.blatt{flex:1 0 auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:fixed;left:12px;top:12px;z-index:99;padding:12px 16px;background:var(--yel);color:var(--ink);font-weight:700;transform:translateY(-200%)}
.skip:focus{transform:none}
:focus-visible{outline:3px solid var(--yel);outline-offset:3px}
.wrap{max-width:var(--max);margin-left:auto;margin-right:auto}

.btn{position:relative;display:inline-block;padding:0;border:0;background:none;font:inherit;color:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.btn::before{content:"";position:absolute;inset:0;background:var(--blue);transition:transform var(--t1) var(--ease)}
.btn__face{position:relative;display:flex;align-items:center;gap:14px;min-height:64px;padding:8px 24px 8px 8px;background:var(--ink);color:#fff;font:700 19px/1.15 var(--text);white-space:nowrap;transition:transform var(--t1) var(--ease)}
.btn__ic{flex:none;display:grid;place-items:center;width:48px;height:48px;background:var(--wa)}
.btn__ic svg{width:28px;height:28px;fill:#fff}
.btn--tel::before{background:var(--ink)}
.btn--tel .btn__face{padding:6px 22px 6px 18px;background:var(--yel);color:var(--ink);box-shadow:inset 0 0 0 3px var(--ink);font:800 31px/1 var(--disp);letter-spacing:.03em;gap:12px}
.btn--tel svg{width:22px;height:22px;fill:currentColor}
.btn--go .btn__face{padding:8px 22px 8px 24px}
.btn--go svg{width:24px;height:24px;flex:none;color:var(--yel)}
@media (hover:hover){
  .btn:hover .btn__face{transform:translate3d(-3px,-3px,0)}
  .btn--go .btn__face svg{transition:transform var(--t1) var(--ease)}
  .btn--go:hover .btn__face svg{transform:translate3d(4px,0,0)}
}
.btn:active .btn__face{transform:translate3d(0,0,0) scale(.97)}
.btn:active::before{transform:scale(.97)}
.btn--y .btn__face{background:var(--yel);color:var(--ink)}
.btn--y.btn--go svg{color:var(--ink)}
.btn--linie .btn__face{padding:8px 24px;justify-content:center;background:var(--bg,var(--deep));box-shadow:inset 0 0 0 2px rgba(220,231,245,.62);color:#fff}
.btn--linie svg{width:22px;height:22px;flex:none;fill:currentColor}
.btn--klein .btn__face{min-height:52px;padding:6px 18px;gap:10px;font-size:17px}
.btn--klein svg{width:20px;height:20px}

.top{position:fixed;left:0;right:0;top:0;z-index:60;height:var(--head);display:flex;align-items:center;gap:28px;padding:0 var(--pad);background:var(--deep);color:#fff}
.top__logo{display:inline-flex;align-items:center;min-height:44px;flex:none}
.top__logo img{height:46px;width:auto}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav>a{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;font-weight:600;font-size:16px;text-decoration:none;white-space:nowrap;transition:color var(--t1) var(--ease)}
.nav>a::after{content:"";position:absolute;left:14px;right:14px;bottom:7px;height:3px;background:var(--yel);transform:scaleX(0);transform-origin:0 50%;transition:transform var(--t1) var(--ease)}
.nav>a:hover::after,.nav>a:focus-visible::after{transform:scaleX(1)}
.nav__x,.nav__lst{display:none}
.top__tel{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin-left:10px;font:800 25px/1 var(--disp);letter-spacing:.03em;text-decoration:none;white-space:nowrap;flex:none}
.top__tel svg{width:19px;height:19px;fill:var(--yel)}
.top__cta{flex:none}
.top__cta .btn__face{gap:9px;min-height:44px;padding:0 18px;background:var(--yel);color:var(--ink);font-size:16px}
.top__cta svg{width:19px;height:19px;fill:currentColor}
.menu{display:none;align-items:center;gap:10px;min-height:44px;min-width:44px;padding:0 4px 0 10px;border:0;background:none;color:#fff;font:700 16px/1 var(--text);cursor:pointer;flex:none}
.menu__i{position:relative;width:26px;height:18px}
.menu__i::before,.menu__i::after{content:"";position:absolute;left:0;right:0;height:3px;background:var(--yel);transition:transform var(--t1) var(--ease)}
.menu__i::before{top:2px}.menu__i::after{bottom:2px}
.menu-open .menu__i::before{transform:translateY(5.5px) rotate(45deg)}
.menu-open .menu__i::after{transform:translateY(-5.5px) rotate(-45deg)}

.foot{position:relative;z-index:2;padding:clamp(40px,4.6vw,68px) var(--pad) 26px;background:var(--pit);color:var(--soft);font-size:16px;box-shadow:inset 0 1px 0 rgba(134,180,227,.14)}
.foot__in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.9fr);column-gap:40px;row-gap:28px;align-items:start}
.foot__logo{display:inline-block}
.foot__logo img{width:190px;height:auto}
.foot b{display:block;color:#fff;font-weight:700}
.foot a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-decoration-color:rgba(134,180,227,.6);text-underline-offset:4px}
.foot a:hover{color:#fff;text-decoration-color:var(--yel)}
.foot a[aria-current]{color:#fff;text-decoration-color:var(--yel)}
.foot a[href^="tel"]{font-family:var(--disp);font-weight:700;letter-spacing:.03em;font-size:1.12em}
.foot .btn{display:inline-block;min-height:0;text-decoration:none}
.foot__vcf{--bg:var(--pit);grid-column:1;grid-row:2;justify-self:start}
.foot address,.foot__in>ul,.foot__in>nav{grid-row:1/span 2}
.foot__copy{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:14.5px;color:#B8C9E0}
.zf,.zahl{font-family:var(--disp);font-size:1.08em;font-weight:500;letter-spacing:.01em;line-height:1}
.bar{display:none}

@media (max-width:1240px){
  .nav>a{padding:0 10px;font-size:15px}.nav>a::after{left:10px;right:10px}
  .top{gap:18px}.top__tel{font-size:23px;margin-left:4px}
}
@media (min-width:1601px){
  .top{padding-left:calc((100% - var(--max)) / 2);padding-right:calc((100% - var(--max)) / 2)}
}
@media (max-width:1099px){
  .menu{display:inline-flex;order:1}
  .top__tel{margin-left:auto}
  .nav{position:fixed;left:0;right:0;top:var(--head);bottom:0;z-index:-1;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;margin:0;padding:10px var(--pad) 110px;background:var(--deep);overflow-y:auto;visibility:hidden;opacity:0;transform:translate3d(0,-8px,0);transition:opacity var(--t1) var(--ease),transform var(--t1) var(--ease),visibility 0s linear var(--t1)}
  .nav>a{min-height:66px;padding:14px 0 10px;border-bottom:1px solid var(--line);font:800 clamp(38px,9.6vw,60px)/1 var(--disp);letter-spacing:0;text-transform:uppercase}
  .nav>a::after{display:none}
  .nav__x{display:grid;gap:12px;margin-top:26px}
  .nav__x .btn{display:block}
  .nav__x .btn--wa::before{background:var(--blue)}
  .nav__x .btn--wa .btn__face{background:var(--yel);color:var(--ink)}
  .nav__x .btn--tel::before{background:var(--blue)}
  .nav__x .btn--tel .btn__face{background:var(--deep);color:#fff;box-shadow:inset 0 0 0 2px rgba(220,231,245,.62)}
  .nav__x .btn--tel svg{fill:var(--yel)}
  .menu-open .nav{visibility:visible;opacity:1;transform:none;transition:none}
  html.menu-open{overflow:hidden}
  .nav__lst{display:block;margin-top:24px}
  .nav__lt{margin-bottom:12px;font:800 14.5px/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;color:var(--water)}
  .nav__gr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .nav__gr li{min-width:0}
  .nav__gr a{display:flex;align-items:center;gap:10px;height:100%;min-height:56px;padding:9px 12px 7px 12px;background:var(--navy);box-shadow:inset 0 0 0 1.5px var(--line);color:#fff;font:800 24px/1 var(--disp);letter-spacing:.01em;text-transform:uppercase;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color var(--t1) var(--ease),transform var(--t1) var(--ease)}
  .nav__gr a::before{content:"";flex:none;width:7px;height:16px;margin-bottom:2px;background:var(--yel);transform:skewX(-13deg)}
  .nav__gr a:active{transform:scale(.97);transition-duration:var(--t0)}
  .no-js .top{position:relative;height:auto;min-height:var(--head);flex-wrap:wrap;row-gap:0;padding-top:8px}
  .no-js .menu{display:none}
  .no-js .nav{position:static;order:9;width:100%;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;padding:0 0 6px;overflow:visible;visibility:visible;opacity:1;transform:none;background:none}
  .no-js .nav>a{min-height:44px;padding:0 14px 0 0;border:0;font:600 15px/1 var(--text);text-transform:none}
  .no-js .nav__x,.no-js .nav__lst{display:none}
  .no-js .kopf{margin-top:0}
  html.no-js{scroll-padding-top:16px}
  .foot__in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot__logo{grid-column:1;grid-row:1}
  .foot address{grid-column:2;grid-row:1/span 2}
  .foot__in>ul{grid-column:1;grid-row:3}
  .foot__in>nav{grid-column:2;grid-row:3}
}
@media (hover:hover) and (max-width:1099px){
  .nav__gr a:hover{background:var(--blue)}
}
@media (max-width:1099px) and (prefers-reduced-motion:no-preference){
  .menu-open .nav>a,.menu-open .nav__lst,.menu-open .nav__x,.menu-open .nav__recht{animation:navIn var(--t1) var(--ease) .1s both}
  .menu-open .nav>a:nth-child(1){animation-delay:0s}
  .menu-open .nav>a:nth-child(2){animation-delay:.02s}
  .menu-open .nav>a:nth-child(3){animation-delay:.04s}
  .menu-open .nav>a:nth-child(4){animation-delay:.06s}
  .menu-open .nav>a:nth-child(5){animation-delay:.08s}
}
@keyframes navIn{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:none}}
.nav__recht{display:none;margin:0;padding:0;list-style:none}
@media (max-width:1099px){
  .nav__recht{display:flex;flex-wrap:wrap;gap:0 26px;margin-top:20px;padding-top:10px;border-top:1px solid var(--line)}
  .nav__recht a{display:inline-flex;align-items:center;min-height:44px;font:600 15.5px/1.2 var(--text);color:var(--soft);text-decoration:underline;text-decoration-color:rgba(134,180,227,.6);text-underline-offset:4px}
  .nav__recht a[aria-current]{color:#fff;text-decoration-color:var(--yel)}
  .no-js .nav__recht{display:none}
}
@media (max-width:719px){.nav__recht{margin-top:12px;padding-top:4px}}
@media (hover:hover) and (max-width:1099px){.nav__recht a:hover{color:#fff;text-decoration-color:var(--yel)}}
.btn:active .btn__face,.btn:active::before{transition-duration:var(--t0)}
.menu{-webkit-tap-highlight-color:transparent}
@media (max-height:500px) and (orientation:landscape) and (max-width:1099px){
  .nav>a{min-height:48px;padding:9px 0 5px;font-size:30px}
  .nav__lst{margin-top:18px}
  .nav__gr a{min-height:48px}
  .nav__x{margin-top:18px}
}
@media (max-width:719px){
  :root{--head:60px;--pad:20px}
  body{font-size:16px}
  .top{gap:8px;padding:0 10px 0 16px}
  .top__logo img{height:38px}
  .top__tel,.top .top__cta,.nav__x{display:none}
  .menu{margin-left:auto;padding:0 8px 0 12px}
  .no-js .nav{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;column-gap:24px;margin-left:0}
  .no-js .nav>a{padding:0}
  .nav>a{min-height:54px;padding:12px 0 8px;font-size:clamp(28px,7.8vw,34px)}
  .nav__lst{margin-top:20px}
  .btn{display:block}
  .btn__face{min-height:58px;font-size:17.5px;padding-right:14px}
  .btn__ic{width:42px;height:42px}
  .btn--tel .btn__face{min-height:56px;justify-content:center;font-size:29px}
  .btn--go .btn__face{justify-content:space-between;padding-left:18px}
  .foot{padding:30px var(--pad) 18px;font-size:15px}
  .foot__in{display:flex;flex-wrap:wrap;align-items:center;column-gap:12px;row-gap:0}
  .foot__logo img{width:140px}
  .foot__vcf{margin-left:auto}
  .foot__vcf .btn__face{min-height:44px;padding:0 14px;gap:8px;font-size:15.5px}
  .foot__vcf svg{width:18px;height:18px}
  .foot address{flex:0 0 100%;margin-top:16px;line-height:1.42}
  .foot__in>ul,.foot__in>nav{margin-top:8px}
  .foot__in>nav{margin-left:auto}
  .foot__copy{margin-top:12px;padding-top:12px;font-size:14px}
}
@media (max-width:389px){
  .foot__vcf .btn__face{padding:0 12px}
  .foot__vcf svg{display:none}
}
@media (max-width:339px){
  .foot__vcf{margin:12px 0 0}
  .foot__in>nav{margin-left:0}
}
@media (max-width:719px){.foot__in>ul>li:has(>a[href*='wa.me/']){display:none}}
@media (max-width:719px){.foot__in>ul,.foot__in>nav{align-self:flex-start}}

.wa-qr{position:absolute;inset:auto;margin:0;width:312px;padding:18px 20px 16px;border:3px solid var(--ink);background:#fff;color:var(--ink);overflow:visible}
.wa-qr:focus{outline:none}
.wa-qr:popover-open{animation:qrAuf var(--t1,.18s) var(--ease,cubic-bezier(.22,1,.36,1)) both}
@keyframes qrAuf{from{opacity:0;transform:translate3d(var(--qx,-8px),var(--qy,0px),0) scale(.97)}to{opacity:1;transform:none}}
.wa-qr__h{padding-right:34px;font:800 19px/1.1 var(--disp);letter-spacing:.02em;text-transform:uppercase}
.wa-qr__c{width:198px;height:198px;margin:2px auto 0;shape-rendering:crispEdges}
.wa-qr__t{margin-top:0;font-size:15px;line-height:1.4}
.wa-qr__l{display:inline-flex;align-items:center;min-height:44px;margin-top:4px;font-size:15px;font-weight:700;text-underline-offset:.2em}
.wa-qr__x{position:absolute;right:4px;top:4px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:var(--ink);cursor:pointer}
.wa-qr__x svg{width:16px;height:16px;stroke:currentColor;stroke-width:2.4;stroke-linecap:square}
.wa-qr :focus-visible{outline-color:var(--ink)}
@media (prefers-reduced-motion:reduce){.wa-qr:popover-open{animation:none}}
.wa-qr__f{display:flex;align-items:center;min-height:44px;margin-top:4px;border-top:1px solid rgba(11,23,40,.2);font-size:15px;text-underline-offset:.2em}
.wa-qr__f:focus-visible{border-top-color:transparent}

.kopf{--kx:72%;position:relative;margin-top:var(--head);padding:clamp(26px,3.6vw,54px) var(--pad) clamp(30px,4.2vw,60px);background:var(--deep);color:#fff;overflow:hidden;overflow:clip}
.kopf::before{content:"";position:absolute;top:0;bottom:0;left:var(--kx);width:70%;background:var(--navy);transform:skewX(-13deg);transform-origin:0 100%}
.kopf::after{content:"";position:absolute;top:0;bottom:0;left:calc(var(--kx) - 8px);width:16px;background:var(--klinge);transform:skewX(-13deg);transform-origin:0 100%}
.kopf__in{position:relative;z-index:1}
.krumen{display:flex;align-items:center;gap:10px;margin-bottom:clamp(6px,1vw,14px);font:600 12.5px/1.3 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--water)}
.krumen a{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:underline;text-decoration-color:rgba(134,180,227,.6);text-underline-offset:4px}
.krumen a:hover{text-decoration-color:var(--yel)}
.kopf h1{max-width:min(12em,62%);font:800 clamp(46px,34px + 3.2vw,92px)/.9 var(--disp);letter-spacing:-.01em;text-transform:uppercase;hyphens:manual;-webkit-hyphens:manual;text-wrap:balance}
.kopf h1 .zl{display:inline-block}
.kopf__stand{margin-top:clamp(14px,1.5vw,22px);font:600 12.5px/1.3 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--water)}
.kopf__stand time{font:700 1.16em/1 var(--disp);letter-spacing:.09em}

.blatt{padding:clamp(32px,4.2vw,60px) var(--pad) clamp(64px,8vw,116px);background:var(--paper);color:var(--ink)}
.blatt :focus-visible{outline-color:var(--ink)}
.blatt__in{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:start}
.inh,.text{grid-column:1/-1;min-width:0}

.blatt--kurz{padding-top:clamp(34px,4.4vw,64px);padding-bottom:clamp(60px,7.4vw,108px)}
.lede{max-width:33em;font-size:clamp(18px,1.36vw,21px);line-height:1.5;text-wrap:pretty}
.lede a,.ziele a:not(.btn){text-decoration:underline;text-decoration-color:var(--blue);text-decoration-thickness:2px;text-underline-offset:.2em}
.lede a:hover,.ziele a:not(.btn):hover{text-decoration-color:var(--ink)}
.lede a[href^="tel"]{display:inline-block;padding:12px 0;margin:-12px 0;font:700 1.16em/1 var(--disp);letter-spacing:.03em;white-space:nowrap}
.cta{display:flex;flex-wrap:wrap;gap:16px;margin-top:clamp(24px,2.8vw,34px)}
.ziele{display:flex;flex-wrap:wrap;align-items:center;gap:6px 30px;margin-top:clamp(24px,2.8vw,34px)}
.ziele li:first-child{margin-right:6px}
.ziele a:not(.btn){display:inline-flex;align-items:center;gap:9px;min-height:44px;font-weight:700;font-size:17px}
.ziele a:not(.btn) svg{width:20px;height:20px;flex:none}
.blatt .btn--linie{--bg:var(--paper)}
.blatt .btn--linie::before{background:var(--ink)}
.blatt .btn--linie .btn__face{box-shadow:inset 0 0 0 2px var(--ink);color:var(--ink)}

.inh{margin-bottom:clamp(26px,4vw,36px)}
.inh summary{display:flex;align-items:center;justify-content:space-between;min-height:56px;border-top:3px solid var(--ink);border-bottom:1px solid var(--haar);font:800 19px/1 var(--disp);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
.inh summary::-webkit-details-marker{display:none}
.inh summary:focus-visible,.inh a:focus-visible{outline-offset:2px}
.inh__z{position:relative;flex:none;width:22px;height:22px}
.inh__z::before,.inh__z::after{content:"";position:absolute;left:0;top:10px;width:22px;height:2px;background:var(--ink);transition:transform var(--t1) var(--ease)}
.inh__z::after{transform:rotate(90deg)}
.inh details[open] .inh__z::after{transform:rotate(0)}
.inh li{border-bottom:1px solid var(--haar)}
.inh a{display:grid;grid-template-columns:minmax(0,1fr);align-items:baseline;min-height:48px;padding:12px 0 11px;font-weight:600;font-size:16.5px;line-height:1.3;text-decoration:none}
.inh--num a{grid-template-columns:2.2em minmax(0,1fr)}
.inh .nr,.text h2 .nr{color:var(--blue);font-family:var(--disp);font-weight:800}
.inh .nr{font-size:1.1em;line-height:1;letter-spacing:.02em}
@media (hover:hover){.inh a:hover{text-decoration:underline;text-underline-offset:.2em}}
.inh--breit{display:none}

.text{max-width:32em;font-size:17px;line-height:1.6;hyphens:auto;-webkit-hyphens:auto;hyphenate-limit-chars:10 4 4;overflow-wrap:break-word}
.text p,.text ul,.text dl,.text .hinweis{margin-top:.95em}
.text>:first-child,.bogen>:first-child,.anb__t>:first-child{margin-top:0}
.text p,.text li{text-wrap:pretty}
.text h2{position:relative;margin-top:clamp(40px,4.6vw,60px);padding-top:clamp(20px,2.2vw,28px);border-top:1px solid var(--haar);font:800 clamp(27px,22px + .8vw,34px)/1.05 var(--disp);letter-spacing:.004em;hyphens:manual;-webkit-hyphens:manual;text-wrap:balance}
.text h2+*{margin-top:.62em}
.text h2.num{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.32em}
.text h3{margin-top:1.7em;font:700 1.06em/1.3 var(--text)}
.text strong,.text b{font-weight:700}
.text a{text-decoration:underline;text-decoration-color:var(--blue);text-decoration-thickness:2px;text-underline-offset:.2em}
.text a:hover{text-decoration-color:var(--ink)}
.text p a:focus-visible,.text li a:focus-visible,.text dd a:focus-visible,.lede a:focus-visible{outline:2px solid transparent;outline-offset:0;background:var(--yel) content-box;text-decoration-color:var(--ink);text-decoration-thickness:3px}
.text a[href^="tel"],.nb{white-space:nowrap}
.text a[href^="tel"]{font-family:var(--disp);font-weight:700;font-size:1.12em;letter-spacing:.03em;line-height:1.34}
.text .zf{line-height:1}
.text a[target="_blank"]::after{content:"";display:inline-block;width:.6em;height:.6em;margin-left:.24em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 1.5h7.5V9M10 2 1.5 10.5' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 1.5h7.5V9M10 2 1.5 10.5' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3C/svg%3E") 50%/contain no-repeat}
@media (any-pointer:coarse){.text p a,.text li a{padding:.15em 0}}
.text ul>li{position:relative;padding-left:1.4em}
.text ul>li+li{margin-top:.4em}
.text ul>li::before{content:"";position:absolute;left:.22em;top:.5em;width:6px;height:.62em;background:var(--ink);transform:skewX(-13deg)}
[lang=tr]{hyphens:manual;-webkit-hyphens:manual}

.adr{line-height:1.5}
.adr--strich{padding:13px 0 14px;border-top:3px solid var(--ink);border-bottom:1px solid var(--haar)}
.adr--zeilen{padding-bottom:0}
.adr__z{display:block;margin-top:13px;border-top:1px solid var(--haar)}
.adr__z~.adr__z{margin-top:0}
.adr__z+br{display:none}
.text .adr__z a{display:inline-block;padding:10px 0 9px}
.hinweis{padding:15px 20px 18px;border-top:3px solid var(--ink);background:rgba(255,194,26,.2)}
.notiz{font-size:.94em}
.notiz::before{content:"";display:block;width:44px;height:3px;margin:1.5em 0 .7em;background:var(--ink)}

.bogen{--bp:clamp(20px,2.6vw,34px);margin-top:clamp(26px,3vw,38px);padding:clamp(22px,2.6vw,32px) var(--bp) clamp(24px,2.8vw,34px);border:2px solid var(--ink);background:#fff;box-shadow:8px 8px 0 var(--yel)}
.text .bogen+*,.text .bogen+[hidden]+*{margin-top:clamp(34px,3.6vw,46px)}
.bogen h2{margin-top:1.15em;padding-top:.8em}
.bogen>h2:first-child,.anb__t>h2:first-child{margin-top:0;padding-top:0;border-top:0}
.text .ende{display:flex;align-items:center;gap:14px;margin-top:2.3em;font:600 12.5px/1.3 var(--text);letter-spacing:.14em;text-transform:uppercase;hyphens:manual;-webkit-hyphens:manual}
.ende::before,.ende::after{content:"";flex:1;height:1px;background:var(--haar)}

.anb{display:grid;grid-template-columns:minmax(0,1fr);row-gap:26px}
.anb__t+.anb__t{padding-top:24px;border-top:1px solid var(--haar)}
.anb h2{font-size:clamp(26px,21px + .7vw,30px);text-wrap:wrap}
.kv{margin-top:.95em}
.kv>div{display:grid;grid-template-columns:minmax(0,1fr);row-gap:1px;padding:11px 0 10px;border-top:1px solid var(--haar)}
.kv dt{font-weight:600;font-size:.86em;line-height:1.3;color:rgba(11,23,40,.74)}
.kv dd{overflow-wrap:anywhere}
.kv a{display:inline-block;padding:9px 0;margin:-9px 0}
.kv a[href^="tel"]{font:800 1.6em/1.1 var(--disp);letter-spacing:.03em}

.nw{border-top:3px solid var(--ink)}
.nw>div{display:grid;grid-template-columns:minmax(0,1fr);row-gap:4px;padding:14px 0 13px;border-bottom:1px solid var(--haar)}
.nw dt{font-weight:600;font-size:.9em;line-height:1.4;color:rgba(11,23,40,.74)}
.text .nw ul{margin:0}
.text .nw ul>li{padding:0}
.text .nw ul>li+li{margin-top:.12em}
.text .nw ul>li::before{content:none}
.f-sofia{font-family:var(--disp);font-weight:800;font-size:1.08em;letter-spacing:.01em}

.muster .muster__vor{font-size:.94em}
.muster .muster__an{margin-top:1.3em;padding-top:1.1em;border-top:1px solid var(--haar);font-weight:600}
.muster .feld{margin-top:1.15em;font-size:.94em;line-height:1.45;hyphens:manual;-webkit-hyphens:manual}
.feld::after{content:"";display:block;height:2.2em;border-bottom:1.5px solid var(--ink)}
.feld--2::after{margin-top:2.2em;border-top:1.5px solid var(--ink)}
.muster .muster__fn{margin-top:1.3em;font-size:.88em}
.text .druck+p{margin-top:1.3em}
.druck svg{fill:none;stroke:currentColor;stroke-width:2}

.text .hoch{margin-top:clamp(40px,4.6vw,60px);border-top:1px solid var(--haar)}
.hoch a{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0;font-weight:600;font-size:16px}
.hoch svg{width:18px;height:18px;flex:none}

@media (min-width:720px){
  .text{font-size:18px}
  .anb{grid-template-columns:minmax(0,1.22fr) minmax(0,1fr);column-gap:clamp(20px,2.6vw,30px)}
  .anb__t+.anb__t{padding-top:0;padding-left:clamp(20px,2.6vw,30px);border-top:0;border-left:1px solid var(--haar)}
  .nw>div{grid-template-columns:minmax(0,13.5em) minmax(0,1fr);column-gap:26px;padding:16px 0 15px}
  .nw dt{padding-top:.14em}
}
@media (min-width:720px) and (max-width:1099px){
  .inh{max-width:576px}
  .bogen{margin-left:calc(-2px - var(--bp));margin-right:calc(-2px - var(--bp))}
}
@media (min-width:1100px){
  .inh{grid-column:1/4;position:sticky;top:calc(var(--head) + 30px);max-height:calc(100vh - var(--head) - 60px);margin:0;padding-right:4px;overflow-y:auto;scrollbar-width:thin}
  .inh--breit{display:block}
  .text{grid-column:5/13}
  .inh summary{min-height:0;padding:0 0 13px;border-top:0;border-bottom:3px solid var(--ink);font-size:15.5px}
  .inh summary[tabindex="-1"]{cursor:default}
  .inh summary[tabindex="-1"] .inh__z{display:none}
  .inh ol{margin-top:10px;border-left:1px solid var(--haar)}
  .inh li{border:0}
  .inh a{min-height:36px;margin-left:-1px;padding:7px 0 7px 14px;border-left:3px solid transparent;font-size:15.5px;color:rgba(11,23,40,.78)}
  .inh--num a{grid-template-columns:1.9em minmax(0,1fr)}
  .inh a:hover{color:var(--ink)}
  .inh a[aria-current]{border-left-color:var(--ink);color:var(--ink);font-weight:700}
  .inh a:focus-visible{outline-offset:-3px}
  .text h2.num{display:block}
  .text h2 .nr{position:absolute;right:100%;margin-right:.42em;white-space:nowrap}
  .bogen{margin-left:calc(-2px - var(--bp));margin-right:calc(-2px - var(--bp))}
}
@supports selector(::details-content){
  @media (min-width:1100px){
    .inh details::details-content{content-visibility:visible;display:block;height:auto}
    .inh summary{cursor:default;pointer-events:none}
    .inh__z{display:none}
  }
}
@media (min-width:1100px) and (any-pointer:coarse){.inh a{min-height:44px;padding-top:11px;padding-bottom:11px}}

@media (max-width:719px){
  .kopf{--kx:calc(100% - 58px)}
  .kopf h1{max-width:calc(100% - 44px);font-size:clamp(40px,12vw,50px)}
  .lede{font-size:17.5px}
  .cta{display:grid;gap:14px}
  .ziele{display:block}
  .ziele li:first-child{margin:0 0 12px}
  .ziele li+li+li{border-top:1px solid var(--haar)}
  .ziele a:not(.btn){display:flex;justify-content:space-between;min-height:54px}
  .bogen{margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1);padding:26px var(--pad) 28px;border-width:2px 0;box-shadow:none}
  .hinweis{padding:13px 16px 16px}

  body{padding-bottom:calc(58px + env(safe-area-inset-bottom))}
  html{scroll-padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .bar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:1fr 1fr;padding-bottom:env(safe-area-inset-bottom);background:var(--deep);box-shadow:0 -3px 0 var(--deep),0 -6px 16px rgba(8,26,49,.25)}
  .bar a{display:flex;align-items:center;justify-content:center;gap:9px;min-height:58px;font:700 17px/1 var(--text);text-decoration:none;transition:transform var(--t1) var(--ease),opacity var(--t1) var(--ease)}
  .bar svg{flex:none;width:22px;height:22px;fill:currentColor}
  .bar__wa{position:relative;padding:0 10px;overflow:hidden;background:var(--wa);color:#fff}
  .bar__t,.bar__l{display:block;min-width:0}
  .bar__t{overflow:hidden}
  .bar__l b,.bar__l small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .bar__l b{font:800 19px/1.02 var(--disp);letter-spacing:.01em}
  .bar__l small{margin-top:3px;font:600 12.5px/1.1 var(--text);letter-spacing:.01em;opacity:.92}
  .bar__tel{background:var(--yel);color:var(--ink)}
  .bar a:active{transform:scale(.97);opacity:.88;transition-duration:var(--t0)}
  .bar :focus-visible{outline-offset:-4px;outline-color:#fff}
  .bar__tel:focus-visible{outline-color:var(--ink)}
  .bar-solo .bar{grid-template-columns:1fr}
  .bar-solo .bar__wa{display:none}
  .menu-open.bar-solo .bar{grid-template-columns:1fr 1fr}
  .menu-open.bar-solo .bar__wa{display:flex}
  .no-js:has(main a.btn--wa) .bar{grid-template-columns:1fr}
  .no-js:has(main a.btn--wa) .bar__wa{display:none}
}
@media (max-width:374px){.bar__l b{font-size:17px}}

@media print{
  @page{size:A4;margin:18mm 17mm 20mm}
  html{scroll-behavior:auto}
  body{display:block;min-height:0;padding:0 !important;background:#fff;color:#000;font-size:10.5pt;line-height:1.45}
  main{display:block}
  .top,.foot,.bar,.skip,.inh,.krumen,.hoch,.druck,.kopf::before,.kopf::after{display:none !important}
  .kopf{margin:0;padding:0 0 6mm;background:none;color:#000;overflow:visible}
  .kopf h1{max-width:none;font-size:24pt;color:#000}
  .kopf__stand{position:absolute;right:0;bottom:.3em;margin:0;color:#000}
  .blatt{padding:0;background:none;color:#000}
  .blatt__in{display:block}
  .text{max-width:none;font-size:10.5pt}
  .text p,.text ul,.text dl,.text .hinweis{margin-top:.75em}
  .text h2{margin-top:6.5mm;padding-top:3.5mm;border-top:.5pt solid #000;font-size:15pt;break-after:avoid}
  .text h2.num{display:block}
  .text h2 .nr{position:static;margin-right:.3em;color:#000}
  .text p{orphans:3;widows:3}
  .text li,.kv>div,.nw>div,.hinweis,.feld,.adr,.bogen{break-inside:avoid}
  .text a{text-decoration-color:#000;text-decoration-thickness:1px}
  .text a[target="_blank"]::after,.text a[href^="http"]::after{content:" (" attr(href) ")";display:inline;width:auto;height:auto;margin:0;background:none;-webkit-mask:none;mask:none;font-size:.92em;overflow-wrap:anywhere}
  .text a[href^="/"]::after{content:" (www.delfin-hausmeisterservice.de" attr(href) ")";font-size:.92em;overflow-wrap:anywhere}
  .text a[data-adresse]::after{content:" (" attr(data-adresse) ")";font-size:.92em}
  .bogen{margin:5mm 0 0;padding:5mm 6mm 6mm;border:1pt solid #000;box-shadow:none}
  .text .bogen+*,.text .bogen+[hidden]+*{margin-top:6mm}
  .text .ende{margin-top:1.4em}
  .anb{grid-template-columns:1fr 1fr;column-gap:8mm}
  .anb__t+.anb__t{padding:0 0 0 8mm;border-top:0;border-left:.5pt solid #000}
  .kv>div,.nw>div,.muster .muster__an{border-color:#000;border-width:.5pt}
  .nw{border-top:1.5pt solid #000}
  .nw>div{grid-template-columns:13.5em 1fr;column-gap:6mm}
  .kv dt,.nw dt{color:#000}
  .hinweis{padding:3mm 4mm;border:.5pt solid #000;border-top:1.5pt solid #000;background:none}
  .adr--strich{border-color:#000}
  .adr__z{margin-top:2mm;border-top:.5pt solid #000}
  .adr__z~.adr__z{margin-top:0}
  .text .adr__z a{padding:1mm 0}
  .notiz::before{background:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .text ul>li::before,.ende::before,.ende::after{background:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .muster{break-before:page;break-inside:avoid}
  .feld::after{border-color:#000}
  .nur-muster .kopf,.nur-muster .text>:not(.muster){display:none !important}
  .nur-muster .muster{break-before:auto;margin-top:0}
  .btn::before,.btn__ic,.btn svg,.ziele svg{display:none}
  .btn__face,.blatt .btn--linie .btn__face{min-height:0;padding:0;background:none;box-shadow:none;color:#000;text-decoration:underline}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important;transition:none !important}
}
html.ruhig{scroll-behavior:auto}
.ruhig *,.ruhig *::before,.ruhig *::after{animation:none !important;transition:none !important}
