/* Fahrschule Werner Petersen · statische Website · keine externen Abhängigkeiten */
:root{--yellow:#eeba2c;--black:#000;--white:#fff;--ink:#151515;--muted:#666;--line:#dedede;--soft:#f5f5f3;--wrap:1280px;--radius:5px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:112px}
body{margin:0;background:var(--white);color:var(--black);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
svg{flex:none;vertical-align:middle}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:6px}
button:focus-visible,.button:focus-visible,.filter-bar button:focus-visible{outline-color:currentColor}
a:hover{text-decoration:none}
p{margin:0 0 1.3em}
h1,h2,h3,h4{line-height:1.04;letter-spacing:-.055em;margin:0;font-weight:800}
h1{font-size:clamp(58px,7.6vw,112px)}
h2{font-size:clamp(36px,4.2vw,60px)}
h3{font-size:25px}
ul{padding-left:22px}
::selection{background:var(--yellow);color:var(--black)}
[hidden]{display:none!important}
.wrap{width:min(var(--wrap),calc(100% - 96px));margin-inline:auto}
.section{padding:112px 0}
.section-topless{padding-top:18px}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em;line-height:1.5;text-transform:uppercase;margin-bottom:24px}
.lead{font-size:20px;line-height:1.6}
.small{font-size:13px;line-height:1.65}
.text-muted{color:var(--muted)}
.highlight{background:linear-gradient(transparent 72%,var(--yellow) 72%,var(--yellow) 94%,transparent 94%)}
.icon{width:22px;height:22px}
.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}
.skip-link{position:fixed;z-index:100;left:16px;top:-100px;background:var(--yellow);padding:12px 18px;border:2px solid var(--black)}
.skip-link:focus{top:10px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:56px;padding:15px 24px;background:var(--yellow);color:var(--black);border:1px solid transparent;border-radius:var(--radius);font-size:14px;font-weight:700;line-height:1.4;transition:transform .2s,background .2s,color .2s;white-space:normal}
.button .icon{width:19px;height:19px;transition:transform .2s}
.button:hover{transform:translateY(-3px);background:var(--white)}
.button:hover .icon{transform:translateX(3px)}
.button-dark{background:var(--black);color:var(--white)}
.button-dark:hover{background:var(--yellow);color:var(--black)}
.button-white{background:var(--white);color:var(--black)}
.button-white:hover{background:var(--yellow)}
.button-outline{border-color:#777;background:transparent;color:var(--white)}
.button-outline:hover{background:var(--white);color:var(--black)}
.button-outline-dark{border-color:var(--black);background:transparent;color:var(--black)}
.button-outline-dark:hover{background:var(--black);color:var(--white)}
.text-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;font-weight:700;padding:8px 0;border-bottom:1px solid currentColor}
.text-link .icon{width:18px;height:18px;transition:transform .2s}
.text-link:hover .icon{transform:translateX(5px)}
.site-header{background:var(--white);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(0,0,0,.08)}
.header-inner{height:100px;display:flex;align-items:center;gap:32px}
.brand{width:138px;flex:none;align-self:stretch;display:flex;align-items:center}
.brand img{width:138px;height:83px;object-fit:contain}
.main-nav{margin-left:auto;display:flex;align-items:center;gap:27px}
.main-nav>a{position:relative;font-size:13px;font-weight:700;white-space:nowrap;padding:12px 0}
.main-nav>a::after{content:"";position:absolute;bottom:5px;left:0;width:100%;height:3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .2s}
.main-nav>a:hover::after,.main-nav>a[aria-current=page]::after{transform:scaleX(1)}
.nav-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--yellow);margin-left:6px;vertical-align:top}
.header-call{min-height:46px;padding:11px 18px;font-size:12px;gap:10px;border:1px solid var(--yellow);flex:none}
.header-call:hover{background:var(--black);color:var(--white);border-color:var(--black)}
.menu-toggle{display:none;border:0;background:transparent;width:44px;height:44px;position:relative;padding:10px}
.menu-toggle span{height:2px;background:var(--black);position:absolute;left:10px;right:10px;top:16px;transition:transform .2s,top .2s}
.menu-toggle span+span{top:25px}
.menu-toggle[aria-expanded=true] span{top:21px;transform:rotate(45deg)}
.menu-toggle[aria-expanded=true] span+span{transform:rotate(-45deg)}
.hero{background:var(--black);color:var(--white);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:690px;align-items:center;position:relative;padding-block:64px 56px;gap:20px}
.hero-copy{position:relative;z-index:2}
.hero-copy .eyebrow{color:#d4d4d4;display:flex;align-items:center;gap:10px;font-size:10px}
.live-dot{height:7px;width:7px;background:var(--yellow);border-radius:50%;display:inline-block;flex:none}
.hero h1{font-size:clamp(68px,7.45vw,108px);line-height:.91;letter-spacing:-.065em;font-weight:900;margin-left:-5px}
.hero h1>span{color:var(--yellow)}
.hero-description{font-size:15px;line-height:1.65;color:#c4c4c4;margin-top:30px;max-width:440px}
.hero-buttons{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.hero-visual{height:510px;position:relative;min-width:0}


.hero-splash{position:absolute;width:122%;max-width:none;height:auto;right:-16%;top:-32px;transform:rotate(-7deg);pointer-events:none;user-select:none}
.hero-car{position:absolute;width:121%;max-width:none;left:-15%;top:150px;z-index:1;filter:drop-shadow(0 35px 20px rgba(0,0,0,.45));transform:rotate(-5deg);animation:car-in .8s ease-out both}
.hero-car img{width:100%;height:auto}





.hero-coordinate{position:absolute;bottom:-35px;right:5px;font-size:9px;letter-spacing:.18em;display:flex;align-items:center;gap:28px;color:#bcbcbc}
.hero-coordinate span{color:var(--yellow);font-size:24px}
.hero-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #292929;min-height:74px;font-size:12px;color:#b4b4b4}
.hero-bottom a{color:var(--white);display:flex;gap:20px;align-items:center}
.hero-bottom a .icon{transform:rotate(90deg);width:16px}
.brand-strip{background:var(--yellow);padding:20px 0}
.brand-strip>.wrap{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}
.brand-strip span{font-size:12px;font-weight:800;letter-spacing:.05em}
.brand-strip b{font-size:20px;line-height:1}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:48px}
.section-heading>p{font-size:15px;color:var(--muted);margin:0;max-width:330px}
.section-heading>.button{flex:none}
.theory-section{scroll-margin-top:15px}
.theory-note{display:flex;gap:14px;padding:20px 0 20px 24px;border-left:3px solid var(--yellow);flex:none}
.theory-note>.icon{margin-top:4px}
.theory-note p{font-size:13px;margin:0;line-height:1.8}
.filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.filter-bar button{display:none;padding:9px 17px;min-height:42px;border:1px solid var(--line);background:var(--white);border-radius:100px;font-size:12px;font-weight:700;transition:background .2s,border-color .2s}
.js .filter-bar button{display:block}
.filter-bar button:hover{border-color:var(--black)}
.filter-bar button[aria-pressed=true]{background:var(--black);color:var(--white);border-color:var(--black)}
.location-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.location-card{border:1px solid var(--line);padding:25px 23px 0;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s,transform .2s;min-width:0}
.location-card:hover{border-color:var(--black);transform:translateY(-5px);box-shadow:0 12px 28px #00000008}
.location-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.location-number{font-size:10px;letter-spacing:.1em;font-weight:700;color:var(--muted)}
.location-top .icon{width:20px;height:20px}
.location-card h3{font-size:26px;margin-bottom:12px}
.location-address{font-size:12px;color:var(--muted);line-height:1.7;min-height:41px;margin-bottom:23px}
.lesson-time{padding:20px 0;border-block:1px solid var(--line)}
.lesson-time>span{display:block;font-size:12px;font-weight:700;margin-bottom:10px}
.lesson-time strong{display:block;font-size:clamp(23px,2.25vw,31px);font-weight:800;line-height:1.1;letter-spacing:-.055em;white-space:nowrap}
.lesson-time strong span{color:var(--muted);padding-inline:2px}
.lesson-time small{font-size:10px;color:var(--muted);margin-top:7px;display:block}
.location-note{font-size:11px;line-height:1.7;margin:18px 0;min-height:57px}
.location-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:auto;gap:12px}
.location-actions a{display:flex;align-items:center;gap:16px;font-size:11px;font-weight:700;min-height:58px}
.location-actions a:hover{color:#765800}
.location-actions .icon{width:16px;height:16px}
.location-actions a:last-child{padding-left:10px}
.section-footnote{font-size:12px;color:var(--muted);margin:24px 0 0;line-height:1.8}
.section-footnote a{text-decoration:underline;text-underline-offset:3px}
.classes-section{background:var(--soft)}
.class-teasers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.class-teaser{background:var(--white);padding:28px 24px 23px;min-width:0;border:1px solid transparent;position:relative;transition:transform .25s,border-color .25s}
.class-teaser:hover{transform:translateY(-7px);border-color:var(--black)}
.class-featured{background:var(--yellow)}
.class-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:36px;font-size:9px;font-weight:800;letter-spacing:.09em}
.class-top .icon{width:18px;height:18px;transition:transform .2s}
.class-teaser:hover .class-top .icon{transform:translate(3px,-3px)}
.class-icon{width:46px;height:46px;margin-bottom:18px;stroke-width:1.2}
.class-teaser h3{font-size:38px;letter-spacing:-.06em}
.class-teaser p{font-size:12px;margin:14px 0 27px;max-width:180px;min-height:39px}
.class-link{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #0002;padding-top:18px;font-size:10px;font-weight:700}
.class-link .icon{width:15px;height:15px}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.about-image{position:relative;align-self:stretch;min-height:570px}
.about-image>img{width:100%;height:100%;object-fit:cover}
.experience-stamp{position:absolute;bottom:30px;right:-28px;background:var(--yellow);padding:26px 30px;display:flex;align-items:center;gap:18px;transform:rotate(-5deg)}
.experience-stamp strong{font-size:70px;letter-spacing:-.08em;font-weight:900;line-height:1}
.experience-stamp span{font-size:10px;font-weight:800;line-height:1.4;letter-spacing:.06em}
.about-copy h2{margin-bottom:28px}
.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#555}
.about-copy>p.lead{font-size:18px;color:var(--black)}
.check-list{list-style:none;padding:0;margin:26px 0 32px;display:grid;gap:12px}
.check-list li{display:flex;align-items:flex-start;gap:13px;font-size:13px}
.check-list .icon{width:18px;height:18px;stroke-width:2.5;flex:none;transform:translateY(2px)}
.team-section{padding-top:26px}
.team-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.team-card{min-width:0}
.team-photo{position:relative;overflow:hidden;margin-bottom:23px;background:#eee;aspect-ratio:287/323}
.team-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s,filter .45s;filter:saturate(.7)}
.team-card:hover .team-photo img{transform:scale(1.035);filter:saturate(1)}
.team-call{position:absolute;bottom:12px;right:12px;width:41px;height:41px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;transition:background .2s,color .2s}
.team-call:hover{background:var(--black);color:var(--white)}
.team-call .icon{width:17px;height:17px}
.team-role{font-size:10px;color:var(--muted);margin:0 0 7px}
.team-card h3{font-size:21px;letter-spacing:-.04em;margin-bottom:15px}
.team-number{font-size:12px;font-weight:700;display:block;margin-bottom:9px}
.team-mail{display:flex;gap:7px;align-items:center;font-size:10px;color:var(--muted)}
.team-mail .icon{width:12px;height:12px}
.team-number:hover,.team-mail:hover{text-decoration:underline;text-underline-offset:4px}
.journey-section{background:var(--black);color:var(--white);position:relative}
.journey-section .eyebrow{color:var(--yellow)}
.journey-section .section-heading>p{color:#aaa}
.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px}
.journey-grid article{border-top:1px solid #454545;padding-top:24px}
.journey-grid article>span{color:var(--yellow);font-size:12px;font-weight:700;display:block;margin-bottom:36px}
.journey-grid h3{font-size:30px;margin-bottom:16px}
.journey-grid p{font-size:14px;line-height:1.8;color:#bbb;max-width:315px;margin-bottom:0}
.social-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:110px}
.social-photos{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:40px}
.social-photos>div{height:360px;transform:rotate(-5deg);overflow:hidden}
.social-photos>div+div{transform:rotate(6deg) translateY(40px)}
.social-photos img{width:100%;height:100%;object-fit:cover}
.social-photos>div:first-child img{object-position:40%}
.social-badge{position:absolute;bottom:38px;left:12%;background:var(--yellow);padding:17px 22px;font-size:10px;font-weight:800;letter-spacing:.07em;display:flex;align-items:center;gap:11px;transform:rotate(-3deg)}
.social-copy h2{margin-bottom:26px}
.social-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:340px}
.instagram-handle{font-size:11px;display:block;margin-top:18px;color:var(--muted);overflow-wrap:anywhere}
.jobs-teaser{padding-block:65px;background:var(--yellow)}
.jobs-teaser-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
.jobs-teaser h2{font-size:48px}
.jobs-teaser .eyebrow{margin-bottom:18px}
.jobs-teaser p:last-child{margin:20px 0 0;font-size:14px}
.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}
.faq-grid>.faq-list{align-self:start}
.faq-grid .text-link{margin-top:32px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{list-style:none;cursor:pointer;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:15px;font-weight:700;line-height:1.6}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{color:#775900}
.faq-item summary .icon{width:18px;height:18px;transition:transform .2s}
.faq-item[open] summary .icon{transform:rotate(45deg)}
.faq-item>div{font-size:14px;color:#555;line-height:1.85;padding:0 35px 8px 0}
.contact-banner{background:var(--yellow);padding:86px 0}
.contact-banner-inner{display:flex;justify-content:space-between;align-items:center;gap:50px}
.contact-banner h2{font-size:clamp(48px,6.5vw,92px);letter-spacing:-.065em;line-height:.95}
.contact-banner h2 span{font-style:italic}
.contact-banner-inner>div:last-child{max-width:350px}
.contact-banner-inner>div:last-child>p{font-size:14px}
.contact-banner .button-dark:hover{background:var(--white)}
.contact-banner .text-link{display:flex;width:max-content;max-width:100%;margin-top:20px;font-size:12px}
.site-footer{background:var(--black);color:var(--white);padding:70px 0 24px}
.footer-top{display:flex;align-items:center;gap:40px;justify-content:space-between;padding-bottom:50px;border-bottom:1px solid #303030}
.footer-wordmark{font-size:24px;font-weight:900;letter-spacing:-.04em;line-height:1.15}
.footer-wordmark span{color:var(--yellow)}
.footer-top>p{font-size:13px;color:#aaa;margin:0 auto 0 70px}
.social-icon{display:grid;place-items:center;border:1px solid #555;width:48px;height:48px;border-radius:50%;transition:background .2s,color .2s;flex:none}
.social-icon:hover{background:var(--yellow);color:var(--black);border-color:var(--yellow)}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:65px;padding:50px 0 60px}
.footer-grid h2{font-size:16px;letter-spacing:-.025em;line-height:1.3;margin-bottom:22px}
.footer-grid p{font-size:12px;color:#aaa;line-height:1.9}
.footer-mail{font-size:11px;color:#ddd;overflow-wrap:anywhere}
.footer-phone{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;line-height:1.5;padding:7px 0;color:#aaa}
.footer-phone strong{font-size:12px;font-weight:500;color:var(--white);white-space:nowrap}
.footer-phone:hover strong{color:var(--yellow)}
.footer-links{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:12px;color:#aaa}
.footer-links a:hover,.footer-bottom a:hover,.footer-mail:hover{color:var(--yellow)}
.footer-bottom{display:flex;justify-content:space-between;gap:22px;padding-top:23px;border-top:1px solid #303030;color:#888;font-size:10px}
.footer-bottom>div{display:flex;flex-wrap:wrap;gap:25px}
.mobile-dock{display:none}
.page-intro{padding-block:46px 70px}
.back-link{font-size:11px;color:var(--muted);display:inline-block;margin-bottom:45px}
.back-link:hover{color:var(--black)}
.page-intro h1{font-size:clamp(50px,7vw,94px);line-height:1.01;max-width:1000px}
.page-intro .lead{max-width:700px;margin-top:28px;color:var(--muted);font-size:18px}
.page-intro .eyebrow{margin-bottom:20px}
.licence-list{border-top:1px solid var(--black)}
.licence-item{border-bottom:1px solid var(--line);scroll-margin-top:125px}
.licence-item summary{list-style:none;display:grid;grid-template-columns:64px 1fr 260px 26px;align-items:center;gap:22px;padding:30px 0;cursor:pointer;transition:background .2s}
.licence-item summary::-webkit-details-marker{display:none}
.licence-item summary:hover{background:var(--soft)}
.licence-symbol{height:58px;width:58px;background:var(--yellow);border-radius:50%;display:grid;place-items:center}
.licence-symbol .icon{height:27px;width:27px}
.licence-name{font-weight:800;font-size:29px;line-height:1.2;letter-spacing:-.04em}
.licence-name small{display:block;font-size:12px;font-weight:400;line-height:1.6;letter-spacing:0;margin-top:7px;color:var(--muted)}
.licence-age{font-size:12px;text-align:right}
.expand-icon{width:20px;transition:transform .2s}
.licence-item[open] .expand-icon{transform:rotate(45deg)}
.licence-content{display:grid;grid-template-columns:1fr 280px;gap:80px;padding:10px 45px 45px 86px}
.licence-content p,.licence-content li{font-size:14px;line-height:1.85;color:#505050}
.licence-content .eyebrow{font-size:10px;color:var(--black)}
.licence-content ul{padding-left:20px}
.licence-content li+li{margin-top:10px}
.licence-contact{padding:25px;background:var(--soft);align-self:start}
.licence-contact>strong{font-size:18px;letter-spacing:-.03em;line-height:1.2;display:block;margin-bottom:14px}
.licence-contact .button{min-height:44px;padding:12px 16px;font-size:12px;gap:15px}
.office-strip{display:flex;align-items:flex-start;gap:22px;background:var(--soft);padding:35px;margin-top:55px}
.office-strip>.icon{width:28px;height:28px}
.office-strip h2{font-size:22px;letter-spacing:-.03em;margin-bottom:12px;line-height:1.3}
.office-strip p{font-size:13px;color:var(--muted);margin:0}
.office-strip a{text-decoration:underline}
.job-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:100px;align-items:start}
.job-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.job-tags span{font-size:11px;border:1px solid var(--line);padding:6px 12px;border-radius:30px}
.job-description h2{margin-bottom:30px}
.job-description h3{font-size:27px;line-height:1.2;margin:45px 0 20px}
.job-description>p:not(.lead){font-size:15px;color:#555;line-height:1.85}
.job-aside{background:var(--yellow);padding:36px;position:sticky;top:130px;min-width:0}
.job-aside .eyebrow{font-size:10px}
.job-aside h2{font-size:32px;margin:18px 0 25px}
.job-aside>img{width:96px;height:96px;object-fit:cover;border-radius:50%;margin-bottom:20px}
.job-aside h3{font-size:22px;margin-bottom:15px}
.job-aside>p{font-size:13px}
.job-aside .button{display:flex;margin-top:12px;padding:14px 15px;font-size:12px;gap:15px}
.job-aside .small{margin-top:22px;font-size:11px}
.job-aside .small a{text-decoration:underline}
.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:90px}
.contact-large{background:var(--yellow);padding:48px;min-width:0}
.contact-large h2{font-size:58px;margin-bottom:32px}
.contact-number{display:flex;align-items:center;gap:20px;font-size:clamp(24px,3vw,40px);font-weight:800;letter-spacing:-.05em;white-space:nowrap}
.contact-large>.contact-number+p{font-size:12px;margin:6px 0 22px}
.contact-email{font-size:12px;display:flex;gap:12px;align-items:center;overflow-wrap:anywhere;word-break:break-word}
.contact-email .icon{width:17px;height:17px}
.contact-address{display:flex;align-items:flex-start;gap:15px;padding-top:35px;margin-top:35px;border-top:1px solid #0003}
.contact-address p{font-size:13px;margin:0}
.contact-options article{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:28px}
.contact-options h2{font-size:24px;line-height:1.2;letter-spacing:-.03em;margin-bottom:10px}
.contact-options p{font-size:13px;color:var(--muted);margin-bottom:10px}
.contact-options article>a{display:flex;align-items:center;gap:20px;font-size:19px;font-weight:700;margin:14px 0}
.contact-options article>a.small{font-size:12px;font-weight:400}
.contact-options article>p.small{font-size:12px}
.reading-wide{max-width:920px}
.reading-wide .faq-item summary{font-size:19px}
.legal-copy{max-width:820px;margin-left:max(48px,calc((100% - var(--wrap))/2))}
.legal-copy h2{font-size:25px;letter-spacing:-.035em;line-height:1.25;margin:38px 0 20px}
.legal-copy h2:first-child{margin-top:0}
.legal-copy p{font-size:15px;line-height:1.85;color:#444}
.legal-copy a{color:var(--black);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-copy .legal-date{font-size:12px;color:var(--muted);margin-bottom:38px}
@keyframes car-in{from{opacity:0;transform:translateX(35px) rotate(-5deg)}to{opacity:1;transform:translateX(0) rotate(-5deg)}}
@media(min-width:1500px){.hero-grid{min-height:750px}.hero-visual{height:550px}.hero-car{top:170px}}
@media(max-width:1190px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.main-nav{gap:18px}.main-nav>a{font-size:12px}.brand,.brand img{width:120px}.hero-grid{min-height:640px}.hero-visual{height:450px}.hero-car{top:145px}.location-card{padding:22px 17px 0}.class-teaser{padding:24px 18px}.class-link{font-size:9px}.about-grid{gap:60px}.about-image{min-height:520px}.team-grid{gap:16px}.team-card h3{font-size:19px}.social-grid{gap:70px}.footer-grid{gap:40px}.footer-top>p{margin-left:25px}.legal-copy{margin-left:32px}.job-layout{gap:60px}.licence-content{gap:45px}.contact-grid{gap:55px}.contact-large{padding:32px}}
@media(max-width:980px){.header-inner{height:86px}.brand,.brand img{width:112px}.brand img{height:73px}.main-nav{gap:15px}.main-nav>a{font-size:11px}.header-call{padding:11px 13px;gap:8px}.header-call span{font-size:11px}.header-inner{gap:15px}.hero-grid{min-height:600px}.hero h1{font-size:8.1vw}.hero-visual{height:400px}.hero-car{top:137px;width:140%;left:-14%}.hero-description{font-size:13px}.hero-buttons .button{font-size:12px;padding:14px 16px;gap:12px}.section{padding-block:85px}.section-topless{padding-top:0}.brand-strip span{font-size:10px}.brand-strip>.wrap{gap:13px}.section-heading{gap:30px}.location-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lesson-time strong{font-size:35px}.location-note{min-height:36px}.location-card{padding:25px 25px 0}.class-teasers{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.class-link{font-size:11px}.class-teaser p{min-height:0;max-width:none}.class-top{margin-bottom:20px}.about-grid{gap:48px}.about-image{min-height:540px}.about-copy h2{font-size:42px}.about-copy>p.lead{font-size:16px}.experience-stamp{right:-20px;padding:20px}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.team-section{padding-top:0}.team-card h3{font-size:23px}.team-number{font-size:13px}.team-mail{font-size:11px}.journey-grid{gap:30px}.journey-grid h3{font-size:26px}.social-grid{gap:45px}.social-photos>div{height:300px}.social-badge{left:5%;font-size:8px;padding:15px}.faq-grid{gap:48px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 65px}.footer-grid>div:last-child{grid-column:1/-1}.footer-links{grid-template-columns:1fr 1fr 1fr}.footer-top>p{margin-left:0}.footer-wordmark{font-size:21px}.footer-bottom{flex-direction:column}.job-layout{grid-template-columns:1fr 320px;gap:40px}.job-aside{padding:28px}.job-aside h2{font-size:29px}.licence-item summary{grid-template-columns:55px 1fr 190px 20px;gap:18px}.licence-content{grid-template-columns:1fr 230px;padding-left:73px;padding-right:0;gap:30px}.licence-name{font-size:26px}.licence-symbol{width:50px;height:50px}.contact-grid{gap:35px}.contact-large h2{font-size:48px}.contact-number{font-size:28px;gap:12px}.contact-email{font-size:11px;line-height:1.7}}
@media(max-width:800px){.js .main-nav{display:none;position:fixed;inset:86px 0 0;background:var(--white);padding:35px 32px;overflow:auto;flex-direction:column;gap:0;align-items:stretch;justify-content:flex-start;margin:0;border-top:1px solid var(--line);padding-bottom:100px}.js .main-nav.is-open{display:flex}.main-nav>a{font-size:25px;padding:18px 0;border-bottom:1px solid var(--line)}.main-nav>a::after{display:none}.menu-toggle{display:block;flex:none}.header-call{margin-left:auto;min-height:44px}.header-call span{font-size:12px}.brand,.brand img{width:123px}.nav-dot{width:8px;height:8px;margin-top:8px;margin-left:10px}.section-heading h2{font-size:42px}.theory-note{padding-left:17px}.theory-note p{font-size:12px}.hero h1{font-size:8.4vw}.hero-visual{height:380px}.hero-car{top:155px}.hero-grid{gap:5px;min-height:570px}.hero-copy .eyebrow{font-size:8px;letter-spacing:.1em}.hero-buttons .button{padding:13px;min-height:50px;gap:8px}.hero-buttons{gap:8px}.hero-description{font-size:12px}.hero-bottom{font-size:10px}.hero-coordinate{font-size:7px}.about-grid{grid-template-columns:1fr;gap:48px}.about-image{min-height:0;height:450px;width:calc(100% - 25px)}.about-copy{max-width:560px}.about-copy h2{font-size:52px}.about-copy>p.lead{font-size:19px}.experience-stamp{bottom:35px}.journey-grid{gap:24px}.journey-grid h3{font-size:24px}.journey-grid p{font-size:12px}.social-grid{gap:35px}.social-photos>div{height:265px}.social-copy h2{font-size:40px}.social-copy .eyebrow{font-size:9px}.social-copy>p:not(.eyebrow){font-size:13px}.social-badge{left:0;padding:12px 15px;font-size:7px}.social-badge .icon{height:18px;width:18px}.social-copy .button{font-size:12px;gap:12px;padding:14px 18px}.jobs-teaser h2{font-size:43px}.faq-grid{grid-template-columns:1fr;gap:30px}.faq-grid .text-link{margin-top:20px}.contact-banner h2{font-size:64px}.contact-banner-inner{gap:35px}.contact-banner-inner>div:last-child>p{font-size:12px}.contact-banner .eyebrow{font-size:9px}.job-layout{grid-template-columns:1fr}.job-aside{position:static;max-width:480px;width:100%;padding:35px}.job-aside .button{max-width:320px}.contact-grid{grid-template-columns:1fr;gap:45px}.contact-large{padding:42px}.contact-number{font-size:42px}.contact-large h2{font-size:60px}.contact-email{font-size:14px}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-options article{margin:0}.contact-options h2{font-size:20px}.contact-options article>a{font-size:16px}.contact-options>.text-link{align-self:start;justify-self:start}.licence-item summary{grid-template-columns:55px 1fr 150px 20px}.licence-age{font-size:10px}.licence-name{font-size:22px}.licence-content{grid-template-columns:1fr;padding-right:15px;gap:25px}.licence-contact{max-width:350px}.legal-copy{max-width:calc(100% - 64px)}
/* Ohne JavaScript bleiben alle Menüpunkte und alle Informationen erreichbar. */
html:not(.js) .header-inner{height:auto;flex-wrap:wrap;padding-block:12px}
html:not(.js) .main-nav{display:flex;flex-wrap:wrap;order:3;width:100%;gap:12px 22px}
html:not(.js) .main-nav>a{font-size:12px;border:0;padding:6px 0}
html:not(.js) .header-call{margin-left:auto}
@media(max-width:600px){html{scroll-padding-top:94px}.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.section-topless{padding-top:0}.header-inner{height:76px;gap:10px}.brand,.brand img{width:109px}.brand img{height:65px}.header-call{min-height:40px;padding:10px 12px;gap:8px}.header-call .icon{height:16px;width:16px}.header-call span{font-size:10px}.menu-toggle{width:36px;margin-right:-7px}.js .main-nav{inset:76px 0 0;padding:25px 24px 110px}.main-nav>a{font-size:28px}.eyebrow{font-size:9px;margin-bottom:18px;letter-spacing:.13em}.hero-grid{grid-template-columns:1fr;gap:0;padding-top:40px;padding-bottom:25px;min-height:0}.hero-copy .eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:26px}.hero h1{font-size:clamp(62px,16vw,91px);line-height:.9;letter-spacing:-.065em;margin-left:-3px}.hero-description{font-size:13px;margin-top:24px;line-height:1.65}.hero-buttons{gap:10px;margin-top:24px}.hero-buttons .button{min-height:48px;padding:13px 17px;font-size:11px;gap:15px}.hero-visual{height:310px;margin-top:30px;width:100%;max-width:460px;justify-self:center}.hero-car{width:114%;left:-9%;top:96px;max-width:none}.hero-coordinate{bottom:-20px;right:0;font-size:7px;gap:15px}.hero-bottom{min-height:65px;margin-top:18px;font-size:9px;gap:15px}.hero-bottom>span{max-width:175px}.hero-bottom a{gap:10px;white-space:nowrap}.brand-strip{padding:15px 0}.brand-strip>.wrap{gap:10px;justify-content:space-around}.brand-strip span{font-size:8px;letter-spacing:.03em}.brand-strip b{font-size:14px}.brand-strip span:last-child,.brand-strip b:nth-last-child(2){display:none}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:38px}.section-heading>p{margin-top:22px;font-size:13px}.section-heading>.button{margin-top:25px;font-size:12px;min-height:48px}.theory-note{margin-top:26px;padding:13px 0 13px 17px}.theory-note p{font-size:12px}.theory-note p>br{display:none}.theory-note p>strong:first-child{display:block}.theory-note>.icon{height:20px;width:20px}.filter-bar{gap:6px;margin-bottom:22px}.filter-bar button{font-size:10px;padding:9px 13px;min-height:38px}.location-grid{grid-template-columns:1fr;gap:14px}.location-card{padding:22px 23px 0}.location-top{margin-bottom:10px}.location-card h3{font-size:28px}.location-address{margin-bottom:16px;min-height:0}.lesson-time{padding-block:18px}.lesson-time strong{font-size:36px}.location-note{min-height:0;font-size:12px;margin:17px 0}.location-actions a{font-size:11px;min-height:53px}.section-footnote{font-size:11px;margin-top:20px}.class-teasers{gap:12px}.class-teaser{padding:20px 17px;display:flex;flex-direction:column}.class-top{font-size:8px;letter-spacing:.04em;margin-bottom:25px;gap:5px}.class-top .icon{height:16px;width:16px}.class-icon{height:34px;width:34px;margin-bottom:16px}.class-teaser h3{font-size:31px}.class-teaser p{font-size:11px;line-height:1.7;margin:12px 0 20px}.class-link{font-size:9px;line-height:1.5;gap:6px;margin-top:auto;padding-top:16px}.class-link .icon{height:14px;width:14px}.about-grid{gap:42px}.about-image{height:365px;width:calc(100% - 15px)}.experience-stamp{right:-15px;bottom:22px;padding:20px;gap:12px}.experience-stamp strong{font-size:54px}.experience-stamp span{font-size:8px}.about-copy h2{font-size:44px;margin-bottom:22px}.about-copy>p.lead{font-size:17px}.about-copy>p:not(.eyebrow){font-size:13px}.check-list li{font-size:12px}.about-copy .button{min-height:50px;font-size:12px}.team-section{padding-top:0}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.team-photo{margin-bottom:16px}.team-call{width:35px;height:35px;bottom:10px;right:10px}.team-call .icon{height:15px;width:15px}.team-role{font-size:9px;margin-bottom:7px}.team-card h3{font-size:21px;line-height:1.15;margin-bottom:12px}.team-number{font-size:11px}.team-mail{font-size:9px}.journey-grid{grid-template-columns:1fr;gap:25px}.journey-grid article{padding-top:20px;display:grid;grid-template-columns:40px 1fr;gap:0 15px}.journey-grid article>span{grid-row:1/3;margin:4px 0 0}.journey-grid h3{font-size:27px;margin-bottom:12px}.journey-grid p{font-size:13px;max-width:none;grid-column:2}.social-grid{grid-template-columns:1fr;gap:42px}.social-photos{padding-inline:12px;max-width:450px;width:100%;justify-self:center}.social-photos>div{height:280px}.social-badge{left:9%;bottom:30px;font-size:9px;padding:14px 16px}.social-copy h2{font-size:42px}.social-copy .eyebrow{font-size:9px}.social-copy>p:not(.eyebrow){font-size:14px}.social-copy .button{font-size:12px}.jobs-teaser{padding-block:46px}.jobs-teaser-inner{align-items:flex-start;flex-direction:column;gap:25px}.jobs-teaser h2{font-size:42px}.jobs-teaser p:last-child{font-size:12px;max-width:280px}.jobs-teaser .button{min-height:50px;font-size:12px}.faq-grid{gap:24px}.faq-grid h2{font-size:38px}.faq-grid .text-link{font-size:12px;margin-top:18px}.faq-item summary{font-size:13px;padding-block:22px;gap:20px}.faq-item>div{font-size:13px;padding-right:15px}.contact-banner{padding:58px 0}.contact-banner-inner{flex-direction:column;align-items:flex-start;gap:30px}.contact-banner h2{font-size:61px}.contact-banner .eyebrow{font-size:9px}.contact-banner-inner>div:last-child{max-width:none}.contact-banner-inner>div:last-child>p{font-size:13px}.contact-banner .button{font-size:12px;min-height:50px}.site-footer{padding-top:45px;padding-bottom:95px}.footer-top{align-items:flex-start;flex-wrap:wrap;gap:25px;padding-bottom:35px}.footer-wordmark{font-size:23px;max-width:calc(100% - 74px)}.footer-top>p{order:3;width:100%;font-size:12px}.social-icon{margin-left:auto;width:42px;height:42px}.social-icon .icon{width:20px;height:20px}.footer-grid{grid-template-columns:1fr;gap:33px;padding:35px 0}.footer-grid>div:last-child{grid-column:auto}.footer-grid h2{margin-bottom:17px;font-size:15px}.footer-grid p{font-size:12px;margin-bottom:12px}.footer-phone{max-width:340px;font-size:12px;padding-block:9px;border-bottom:1px solid #222}.footer-phone strong{font-size:13px}.footer-links{grid-template-columns:1fr 1fr;gap:12px 18px;font-size:11px}.footer-bottom{font-size:9px;gap:20px}.footer-bottom>div{gap:15px}.mobile-dock{position:fixed;inset:auto 0 0;display:grid;grid-template-columns:1fr 1fr;background:var(--white);z-index:40;border-top:1px solid var(--black);padding-bottom:env(safe-area-inset-bottom,0)}.mobile-dock>a{display:flex;justify-content:center;align-items:center;gap:10px;min-height:56px;font-size:11px;font-weight:700}.mobile-dock>a:last-child{background:var(--yellow)}.mobile-dock .icon{height:17px;width:17px}.page-intro{padding:27px 0 45px}.back-link{font-size:10px;margin-bottom:30px}.page-intro h1{font-size:clamp(43px,11vw,66px)}.page-intro .lead{font-size:15px;line-height:1.7;margin-top:22px}.page-intro .eyebrow{margin-bottom:18px}.licence-item{scroll-margin-top:100px}.licence-item summary{grid-template-columns:42px 1fr 18px;gap:13px;padding-block:23px}.licence-symbol{height:40px;width:40px;grid-row:1/3}.licence-symbol .icon{width:22px;height:22px}.licence-name{font-size:24px;grid-column:2}.licence-name small{font-size:10px;margin-top:5px;line-height:1.5}.licence-age{grid-column:2;grid-row:2;text-align:left;font-size:10px;margin-top:-7px}.expand-icon{grid-column:3;grid-row:1/3;width:18px}.licence-content{padding:4px 0 28px 0;gap:15px}.licence-content p,.licence-content li{font-size:13px}.licence-content .eyebrow{font-size:9px}.licence-contact{width:100%;max-width:none;padding:22px}.licence-contact>strong{font-size:18px}.office-strip{padding:24px 20px;margin-top:40px;gap:15px}.office-strip h2{font-size:20px}.office-strip p{font-size:11px}.office-strip>.icon{width:22px;height:22px}.job-layout{gap:35px}.job-description h2{font-size:44px;margin-bottom:25px}.job-description .lead{font-size:17px}.job-description>p:not(.lead){font-size:14px}.job-description h3{font-size:25px;margin-top:35px}.job-aside{padding:30px 24px}.job-aside h2{font-size:33px}.contact-large{padding:30px 23px}.contact-large h2{font-size:48px;margin-bottom:27px}.contact-number{font-size:clamp(24px,7.4vw,37px);gap:10px}.contact-number .icon{width:20px;height:20px}.contact-email{font-size:11px;gap:8px}.contact-email .icon{width:14px;height:14px}.contact-address{gap:12px}.contact-address p{font-size:12px}.contact-grid{gap:35px}.contact-options{grid-template-columns:1fr;gap:25px}.contact-options article>a{font-size:19px}.contact-options h2{font-size:24px}.reading-wide .faq-item summary{font-size:15px}.legal-copy{width:calc(100% - 40px);max-width:none;margin-inline:20px}.legal-copy h2{font-size:23px;margin-top:32px}.legal-copy p{font-size:14px;line-height:1.85}.legal-copy .legal-date{font-size:11px}}
@media(max-width:350px){.header-call span{display:none}.header-call{padding:10px;min-width:40px}.hero h1{font-size:15.5vw}.hero-buttons .button{font-size:10px;padding:12px 14px;gap:10px}.hero-visual{height:270px}.hero-car{top:92px}.brand-strip span{font-size:7px}.brand-strip>.wrap{gap:6px}.class-teasers{grid-template-columns:1fr}.class-teaser p{font-size:12px}.class-link{font-size:11px}.team-grid{gap:26px 12px}.team-card h3{font-size:18px}.team-number{font-size:10px}.filter-bar button{padding:8px 10px}.contact-banner h2{font-size:54px}.footer-wordmark{font-size:20px}.contact-large{padding:26px 18px}.contact-email{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.team-card[id],#social{scroll-margin-top:125px}

/* Angepasster Hero mit dem originalen Logo-Farbklecks. */
.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;line-height:1.6}
.breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}
.breadcrumb [aria-current=page]{color:var(--black)}
.location-card[id]{scroll-margin-top:125px}
@media(min-width:1500px){.hero-splash{top:-25px;width:129%;right:-20%}}
@media(max-width:1190px){.hero-splash{top:-5px;width:130%;right:-23%}}
@media(max-width:980px){.hero-splash{top:10px;width:135%;right:-28%}}
@media(max-width:800px){.hero-splash{top:32px;width:142%;right:-32%}}
@media(max-width:600px){.hero-splash{top:-4px;width:121%;right:-17%}.location-card[id]{scroll-margin-top:100px}}
@media(max-width:350px){.hero-splash{top:4px;width:121%;right:-17%}}
