@font-face{font-family:'BK Roboto Condensed';src:url('assets/roboto-condensed-v27-latin-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'BK Roboto Condensed';src:url('assets/roboto-condensed-v27-latin-700.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--paper:#fff;--paper2:#f3f3f1;--card:#fff;--ink:#252525;--muted:#747474;--olive:#98947c;--olive-dark:#77735f;--line:#dededb;--dark:#202020;--soft:#eeede8;--heading:'BK Roboto Condensed','Arial Narrow',Arial,sans-serif;--body:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 var(--body)}a{color:inherit;text-decoration:none}.preview-note{height:27px;display:flex;align-items:center;justify-content:center;gap:8px;background:#ecebe6;color:#666;font-size:10px;letter-spacing:.025em}.preview-dot,.live-dot{width:7px;height:7px;border-radius:50%;background:#85816b;display:inline-block}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(calc((100vw - 1170px)/2),5vw);background:#fff;border-bottom:1px solid #e5e5e2;position:sticky;top:0;z-index:10}.brand{width:200px;flex:none;display:flex;flex-direction:column;gap:3px}.brand img{display:block;width:190px;height:26px;object-fit:contain;object-position:left center}.brand span{font:700 10px/1.1 var(--heading);letter-spacing:.09em;text-transform:uppercase;color:#696969}.main-nav{height:100%;display:flex;align-items:center;gap:0}.main-nav>a:not(.nav-cta){height:100%;display:flex;align-items:center;padding:0 13px;border-bottom:3px solid transparent;font:400 15px var(--heading);color:#444;transition:background .2s,color .2s}.main-nav>a:not(.nav-cta):hover{color:var(--olive-dark);border-bottom-color:var(--olive)}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:11px 17px;font:700 15px var(--heading);transition:background .2s,color .2s,transform .2s}.nav-cta{margin-left:12px;background:var(--olive);color:white}.nav-cta:hover,.button-dark:hover{background:var(--olive-dark);transform:translateY(-1px)}.nav-cta span,.button span{font-size:18px}.menu-toggle{display:none}
.hero{max-width:1170px;margin:0 auto;min-height:422px;display:grid;grid-template-columns:1.1fr .72fr;align-items:center;gap:65px;padding:53px 25px 63px;position:relative}.hero-copy{max-width:650px}.eyebrow,.section-label{display:flex;align-items:center;gap:9px;font:700 12px var(--heading);letter-spacing:.045em;text-transform:uppercase;color:#777}.eyebrow{margin:0 0 16px}.eyebrow span{width:23px;height:3px;background:var(--olive);display:block}.hero h1,.section-wrap h2{font-family:var(--heading);font-weight:700;letter-spacing:-.025em;line-height:1.08;margin:0;color:#222}.hero h1{font-size:clamp(38px,4.4vw,56px)}.hero h1 em,.section-wrap h2 em{font-style:normal;color:var(--olive-dark)}.hero-lede{max-width:620px;color:#666;font-size:15px;line-height:1.65;margin:20px 0 23px}.hero-actions{display:flex;align-items:center;gap:22px}.button-light{background:var(--olive);color:#fff}.button-light:hover{background:var(--olive-dark);transform:translateY(-1px)}.text-link{font:700 14px var(--heading);color:#666}.text-link:hover{color:var(--olive-dark)}.text-link span,.arrow-link span{padding-left:6px}.hero-proof{display:flex;align-items:center;gap:10px;margin-top:26px;color:#777;font-size:12px;line-height:1.4}.hero-proof strong{font:700 14px var(--heading);color:#333}.proof-mark{display:grid;place-items:center;background:#f0efe9;border:1px solid #ddd9cb;color:var(--olive-dark);width:27px;height:27px;border-radius:50%;font-size:14px}.next-course{background:var(--olive);color:white;min-height:286px;max-width:360px;width:100%;justify-self:end;padding:23px 25px 19px;box-shadow:0 5px 18px #00000012;position:relative}.next-course-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff4d;padding-bottom:11px}.next-label{font:700 11px var(--heading);letter-spacing:.09em}.next-mark{font-size:9px;color:#dcd9ca}.next-date{display:flex;align-items:center;gap:10px;margin:17px 0 11px}.next-date strong{font:700 45px/.9 var(--heading)}.next-date span{font:700 12px/1.05 var(--heading);letter-spacing:.05em}.next-course-copy h2{font:700 21px/1.15 var(--heading);margin:0 0 6px}.next-course-copy p{font-size:11px;margin:0;color:#f1efe9}.next-link{display:flex;justify-content:space-between;align-items:center;padding-top:11px;margin-top:15px;border-top:1px solid #ffffff4d;font:700 14px var(--heading)}.next-link span{font-size:19px}.hero-bottom{position:absolute;bottom:0;left:25px;right:25px;height:34px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e1e1de;color:#777;font:700 10px var(--heading);letter-spacing:.04em;text-transform:uppercase}.scroll-cue b{padding-left:9px;color:var(--olive-dark)}
.section-wrap{max-width:1170px;margin:0 auto;padding-left:25px;padding-right:25px}.section-label{color:#777;font-size:11px}.section-label>span:first-child{color:var(--olive-dark)}.label-rule{height:2px;width:29px;background:var(--olive)}.intro{padding-top:58px;padding-bottom:64px;border-top:1px solid #e8e8e5}.intro-grid{display:grid;grid-template-columns:.95fr 1fr;gap:55px;margin-top:20px}.section-wrap h2{font-size:38px}.intro-copy{max-width:560px}.intro-copy p,.location-copy>p{font-size:14px;line-height:1.7;color:#686868;margin:0 0 12px}.arrow-link{display:inline-flex;align-items:center;margin-top:10px;color:var(--olive-dark);font:700 14px var(--heading)}.arrow-link span{font-size:17px}.promise-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:37px;background:var(--paper2);border:1px solid #e5e5e2}.promise-row>div{position:relative;min-height:72px;padding:14px 13px 12px 44px;border-right:1px solid #ddd}.promise-row>div:last-child{border:0}.promise-num{position:absolute;left:15px;top:13px;color:var(--olive-dark);font:700 12px var(--heading)}.promise-row strong{font:700 16px var(--heading);display:block}.promise-row small{font-size:11px;color:#777}
.courses-section{background:#f4f4f2;padding:52px 0 57px;border-top:1px solid #e7e7e4;border-bottom:1px solid #e7e7e4}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-top:16px}.section-heading h2{font-size:38px}.section-heading p{margin:9px 0 0;font-size:13px;color:#747474}.button-dark{background:var(--olive);color:white;margin-bottom:4px}.course-tools{display:flex;justify-content:space-between;align-items:center;margin:27px 0 15px;padding:10px 12px;background:#e9e8e2;border:1px solid #dddbd2}.filters{display:flex;gap:5px}.filter{border:0;background:transparent;padding:8px 12px;color:#555;font:700 13px var(--heading);cursor:pointer;transition:all .2s}.filter.active,.filter:hover{background:var(--olive);color:#fff}.live-hint{display:flex;align-items:center;gap:7px;margin:0;color:#666;font:400 12px var(--heading)}.live-dot{background:#77735f;width:7px;height:7px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.course-card{min-height:260px;position:relative;padding:18px 19px 14px;background:#fff;border:1px solid #dededb;display:flex;flex-direction:column;transition:box-shadow .2s,border-color .2s}.course-card:hover{border-color:#aaa691;box-shadow:0 4px 13px #0000000d}.course-card.featured{border-top:4px solid var(--olive);padding-top:15px}.course-card-top{display:flex;justify-content:space-between;align-items:center}.course-kicker{font:700 11px var(--heading);letter-spacing:.06em;color:var(--olive-dark)}.course-number{font:400 12px var(--heading);color:#999}.course-icon{width:47px;height:47px;margin:16px 0 11px;position:relative;display:grid;place-items:center;color:#fff;background:var(--olive);border:3px solid #d8d5c6;border-radius:50%}.icon-target::before,.icon-target::after{content:'';position:absolute;border:1px solid #fff;border-radius:50%;inset:7px}.icon-target::after{inset:13px;background:#fff}.icon-shield span{font:700 20px var(--heading)}.icon-burst span{font:700 13px var(--heading)}.icon-burst::before,.icon-burst::after{content:'';position:absolute;background:#fff}.icon-burst::before{width:1px;height:6px;top:5px}.icon-burst::after{width:6px;height:1px;right:4px}.icon-lines::before,.icon-lines::after,.icon-lines span{content:'';position:absolute;width:14px;height:1px;background:#fff;transform:rotate(-43deg)}.icon-lines::before{transform:rotate(43deg)}.course-card h3{font:700 21px/1.16 var(--heading);margin:0 0 7px;color:#292929}.course-card>p{font-size:12px;line-height:1.5;color:#737373;margin:0 0 12px;max-width:310px}.course-meta{margin-top:auto;padding-top:9px;border-top:1px solid #ececea;display:flex;align-items:center;justify-content:space-between;color:#666;font:400 12px var(--heading)}.meta-arrow{font-size:18px;color:var(--olive-dark)}.card-link{position:absolute;inset:0}.course-card-cta{background:#ebeae4;border-color:#deddd5}.course-card-cta .cta-symbol{position:absolute;right:20px;top:43px;font-size:23px;color:var(--olive-dark)}.course-card-cta h3{margin-top:34px}.course-card-cta .arrow-link{margin-top:auto;position:relative;z-index:1}.dynamic-note{display:flex;gap:11px;align-items:center;padding:12px 14px;margin-top:14px;background:#fff;border:1px solid #dededb;color:#666}.dynamic-note p{font-size:11px;line-height:1.55;margin:0}.dynamic-note strong{color:#333}.note-icon{font-size:17px;color:var(--olive-dark)}
.learning{padding-top:60px;padding-bottom:65px}.learning-head{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:end;margin-top:18px}.learning-head h2{font-size:38px}.learning-head p{max-width:360px;margin:0 0 3px;font-size:13px;line-height:1.65;color:#747474}.learning-list{margin-top:28px;border-top:1px solid #dededb}.learning-list>a{min-height:64px;display:grid;grid-template-columns:54px 1fr 1fr 30px;align-items:center;border-bottom:1px solid #dededb;background:#fff;transition:background .2s}.learning-list>a:hover{background:#f5f4ef}.list-index{font:700 13px var(--heading);color:var(--olive-dark);padding-left:14px}.list-title{font:700 18px var(--heading)}.list-sub{font-size:12px;color:#777}.list-arrow{text-align:right;color:var(--olive-dark);font-size:18px;padding-right:12px}.locations{background:#efefed;padding:50px 0;border-top:1px solid #e3e3e1}.location-grid{display:grid;grid-template-columns:1fr 1fr 145px;gap:30px;align-items:center}.location-grid h2{font-size:34px;margin-top:14px}.location-copy>p{max-width:420px}.location-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.location-pills span{border:1px solid #d4d4d0;padding:6px 9px;background:#fff;font:400 12px var(--heading);color:#555}.location-stamp{width:125px;height:125px;border:2px solid var(--olive);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--olive-dark)}.location-stamp span{font:700 10px var(--heading);letter-spacing:.12em}.location-stamp strong{text-align:center;font:700 21px/1.02 var(--heading);margin:4px 0}.location-stamp i{font:400 10px var(--heading);line-height:1.2}.contact{padding-top:58px;padding-bottom:58px}.contact-card{display:grid;grid-template-columns:1fr .8fr;background:var(--dark);color:#fff;padding:32px 36px;gap:40px;border-top:4px solid var(--olive)}.contact-card .section-label{color:#ccc}.contact-card .section-label>span:first-child{color:#c4c0aa}.contact-card .label-rule{background:var(--olive)}.contact-card h2{font-size:34px;margin-top:18px;color:#fff}.contact-card h2 em{color:#c4c0aa}.contact-left>p{max-width:400px;color:#d0d0d0;font-size:12px;line-height:1.65;margin-top:12px}.contact-right{align-self:center}.contact-right>a{display:flex;flex-direction:column;padding:11px 0;border-bottom:1px solid #ffffff2e}.contact-right>a:last-child{border:0}.contact-right small{font:700 10px var(--heading);letter-spacing:.09em;color:#bbb}.contact-right strong{font:700 19px var(--heading);margin:3px 0;color:#fff}.contact-right span{font:400 12px var(--heading);color:#d6d6d6}.site-footer{background:#242424;color:#eee;padding:30px max(calc((100vw - 1170px)/2),5vw) 12px}.footer-brand img{filter:brightness(0) invert(1);opacity:.9}.footer-brand span{color:#ccc}.footer-top{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:24px;padding-bottom:20px}.footer-top>div strong{font:700 14px var(--heading);color:#fff}.footer-top>div p{font-size:11px;color:#c3c3c3;line-height:1.6;margin:6px 0 0}.footer-links{display:flex;flex-direction:column;gap:8px;align-items:flex-end;font:400 12px var(--heading);color:#ddd}.footer-links a:hover,.footer-bottom a:hover{color:#c8c3a8}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #555;padding-top:10px;color:#bbb;font-size:10px}.footer-bottom>span:last-child{display:flex;gap:15px}.hidden{display:none!important}
@media(max-width:980px){.site-header{padding:0 22px}.main-nav>a:not(.nav-cta){padding:0 8px}.main-nav>a:not(.nav-cta){font-size:14px}.hero{padding-left:35px;padding-right:35px;gap:35px}.section-wrap{padding-left:30px;padding-right:30px}.course-grid{grid-template-columns:repeat(2,1fr)}.location-grid{grid-template-columns:1fr 1fr}.location-stamp{grid-column:2;grid-row:1/3;justify-self:center}.site-footer{padding-left:30px;padding-right:30px}}
@media(max-width:680px){.preview-note{font-size:8px;padding:0 8px;text-align:center}.site-header{height:70px;padding:0 17px}.brand{width:160px}.brand img{width:156px;height:22px}.brand span{font-size:9px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:none;padding:9px}.menu-toggle span{width:22px;height:2px;background:#333}.main-nav{display:none;position:absolute;top:69px;left:0;right:0;height:auto;background:#242424;padding:8px 16px 17px;align-items:stretch;flex-direction:column;gap:0}.main-nav.open{display:flex}.main-nav>a:not(.nav-cta){height:auto;padding:11px 7px;color:#fff;border-bottom:1px solid #ffffff20}.main-nav>a:not(.nav-cta):hover{border-color:var(--olive)}.nav-cta{margin:12px 0 0}.hero{grid-template-columns:1fr;padding:42px 21px 53px;gap:26px;min-height:auto}.hero h1{font-size:39px}.hero-lede{font-size:13px}.hero-actions{gap:15px;flex-wrap:wrap}.hero-proof{margin-top:18px}.next-course{justify-self:stretch;max-width:none;min-height:250px}.hero-bottom{left:21px;right:21px;font-size:9px}.hero-bottom .scroll-cue{display:none}.section-wrap{padding-left:21px;padding-right:21px}.intro{padding-top:42px;padding-bottom:43px}.intro-grid,.learning-head{grid-template-columns:1fr;gap:16px}.intro-grid{margin-top:17px}.section-wrap h2{font-size:31px}.promise-row{grid-template-columns:1fr;margin-top:24px}.promise-row>div{border-right:0;border-bottom:1px solid #ddd;min-height:60px;padding-top:10px;padding-bottom:8px}.promise-row>div:last-child{border-bottom:0}.promise-num{top:10px}.courses-section{padding:40px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:17px}.section-heading h2,.learning-head h2{font-size:31px}.course-tools{align-items:flex-start;flex-direction:column;gap:10px;margin-top:20px}.filters{overflow:auto;max-width:100%;width:100%}.filter{white-space:nowrap;padding:8px 10px}.course-grid{grid-template-columns:1fr}.course-card{min-height:245px}.course-card-cta{min-height:215px}.dynamic-note{align-items:flex-start}.learning{padding-top:43px;padding-bottom:44px}.learning-head{margin-top:17px}.learning-list{margin-top:20px}.learning-list>a{grid-template-columns:37px 1fr 23px;min-height:63px;padding:8px 0}.list-title{font-size:16px}.list-sub{grid-column:2;grid-row:2;margin-top:-10px;font-size:10px}.list-arrow{grid-column:3;grid-row:1/3}.locations{padding:40px 0}.location-grid{grid-template-columns:1fr;gap:16px}.location-grid h2{font-size:30px}.location-stamp{grid-column:auto;grid-row:auto;justify-self:start;width:104px;height:104px;margin:5px 0 0 10px}.location-stamp strong{font-size:17px}.contact{padding:42px 21px}.contact-card{grid-template-columns:1fr;padding:24px 19px;gap:17px}.contact-card h2{font-size:29px}.contact-right strong{font-size:16px}.footer-top{grid-template-columns:1fr 1fr;gap:18px}.footer-brand{grid-column:1/-1}.footer-links{align-items:flex-start}.footer-bottom{align-items:flex-start;flex-direction:column;gap:9px}.footer-bottom>span:last-child{gap:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Feste, zentrierte Seitenbreite wie in der Kursverwaltung */
:root{--layout-width:1160px}
.site-header{background:#ecebe6;border-bottom:1px solid #d8d7d0}
.main-nav>a:not(.nav-cta){color:#3c3c39}
.main-nav>a:not(.nav-cta):hover{color:#252522;border-bottom-color:var(--olive-dark);background:#e3e2dc}
.nav-cta{background:var(--olive);color:#fff}
.nav-cta:hover{background:var(--olive-dark)}
.hero{max-width:var(--layout-width);padding-left:25px;padding-right:25px}
.section-wrap{max-width:var(--layout-width)}
.hero-bottom{left:25px;right:25px}
.site-footer{padding-left:max(calc((100vw - var(--layout-width))/2),24px);padding-right:max(calc((100vw - var(--layout-width))/2),24px)}
@media(max-width:680px){
  .site-header{background:#ecebe6}
  .main-nav{background:#ecebe6;border:1px solid #d8d7d0}
  .main-nav>a:not(.nav-cta){color:#333;border-bottom-color:#d8d7d0}
  .main-nav>a:not(.nav-cta):hover{background:#e3e2dc}
  .hero{padding-left:21px;padding-right:21px}
}

/* Die komplette Website sitzt in einem zentrierten Seitenrahmen. */
body{background:#e8e7e0}
.site-frame{width:min(100%,1160px);min-height:100vh;margin:0 auto;background:#fff;box-shadow:0 0 24px rgba(30,30,24,.08);overflow:hidden}
.site-header{padding:0 25px}
.site-footer{padding:30px 25px 12px}
.hero{max-width:none}
.section-wrap{max-width:none}
@media(max-width:680px){
  .site-frame{width:100%;box-shadow:none}
  .site-header{padding:0 17px}
  .site-footer{padding:30px 21px 12px}
}

/* Kopfzeile bleibt beim Scrollen am oberen Fensterrand angeheftet. */
.site-frame{overflow:visible}
.site-header{position:sticky;top:0;z-index:100}

/* Navigation geringfügig dunkler als der Hinweis-/Seitenhintergrund. */
.site-header{background:#e7e6df}
@media(max-width:680px){.site-header,.main-nav{background:#e7e6df}}
.site-header{background:#e2e1d9}
@media(max-width:680px){.site-header,.main-nav{background:#e2e1d9}}
.site-header{background:#d8d7cc;border-bottom:1px solid #c6c4b8;box-shadow:0 2px 6px rgba(38,37,29,.08)}
@media(max-width:680px){.site-header,.main-nav{background:#d8d7cc}.main-nav{border-color:#c6c4b8}}

/* Navigation über die volle Bildschirmbreite, Inhalte bleiben im festen Seitenrahmen. */
.site-header{width:100vw;margin-left:calc((100% - 100vw)/2);padding-left:max(calc((100vw - 1160px)/2 + 25px),25px);padding-right:max(calc((100vw - 1160px)/2 + 25px),25px)}
@media(max-width:680px){.site-header{width:100%;margin-left:0;padding-left:17px;padding-right:17px}}


/* Schmale Lesefortschrittsleiste direkt unter der angehefteten Navigation. */
:root{--nav-height:84px}
.reading-progress{position:fixed;top:var(--nav-height);left:0;width:100vw;height:3px;z-index:101;background:#d8d7cc;pointer-events:none}
.reading-progress-fill{display:block;width:0;height:100%;background:#98947c;transition:width .08s linear}
@media(max-width:680px){:root{--nav-height:70px}}
@media(prefers-reduced-motion:reduce){.reading-progress-fill{transition:none}}

/* Lesefortschritt: dauerhaft unter der Navigation, Gelboliv RAL 6014. */
.reading-progress{top:0;height:5px;background:#c9c8bf;box-shadow:0 1px 2px rgba(20,20,16,.12)}
.reading-progress-fill{background:var(--olive);transition:width .08s linear}

/* Startseitenmotiv: ruhiges Klassenzimmer mit freier Fläche für die Überschrift */
.hero{background:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.86) 39%,rgba(255,255,255,.35) 100%),url('assets/hero-classroom.png') right center/cover no-repeat}
@media(max-width:680px){.hero{background-position:58% center;background-image:linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.83)),url('assets/hero-classroom.png')}}

.hero-bottom .scroll-cue,.hero-bottom .scroll-cue b{color:#fff}

/* Anmeldung als responsiver Dialog im Frontpage-Farbset */
.registration-dialog{width:min(900px,calc(100% - 28px));max-width:900px;max-height:min(92vh,900px);padding:0;border:1px solid #dededb;background:#fff;color:var(--ink);box-shadow:0 22px 70px #0004}
.registration-dialog::backdrop{background:rgba(28,29,25,.62);backdrop-filter:blur(2px)}
.registration-panel{position:relative;padding:32px 36px 26px;max-height:min(92vh,900px);overflow:auto}
.registration-close{position:absolute;right:20px;top:16px;width:40px;height:40px;border:1px solid var(--line);background:#fff;color:#555;font-size:28px;line-height:1;cursor:pointer}
.registration-close:hover{background:var(--soft);color:var(--ink)}
.registration-eyebrow{margin:0 48px 8px 0;color:var(--olive-dark);font:700 11px var(--heading);letter-spacing:.12em}
.registration-panel h2{margin:0;color:#222;font:700 34px/1.1 var(--heading)}
.registration-intro{max-width:660px;margin:10px 0 22px;color:#686868;font-size:13px;line-height:1.6}
.registration-panel form>label:not(.registration-honeypot){display:block;margin:0 0 15px;color:#41413d;font:700 12px var(--heading)}
.registration-panel input:not([type=checkbox]),.registration-panel select{display:block;width:100%;height:43px;margin-top:6px;padding:9px 11px;border:1px solid #cfcec7;border-radius:0;background:#fff;color:#292929;font:400 14px var(--body)}
.registration-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.registration-fields label{display:block;color:#41413d;font:700 12px var(--heading)}
.registration-questions{margin:18px 0;padding:16px;border:1px solid #dededb;background:#f3f3f1}
.registration-questions legend{padding:0 8px;color:#353630;font:700 16px var(--heading)}
.registration-privacy{margin:17px 0 9px;color:#686868;font-size:11px;line-height:1.55}
.registration-consent{display:flex;align-items:flex-start;gap:9px;margin:12px 0 17px;color:#454541;font-size:12px;line-height:1.5}
.registration-consent input{width:16px;height:16px;flex:none;margin:1px 0 0;accent-color:var(--olive-dark)}
.registration-submit{border:0;cursor:pointer}.registration-submit:disabled{opacity:.65;cursor:wait}
.registration-footnote{margin:10px 0 0;color:#777;font-size:11px}
.registration-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.registration-feedback{margin:16px 0;padding:14px 16px;border:1px solid #c8d3bd;background:#f0f4ec;color:#35482d;font-size:14px;line-height:1.55}
.registration-feedback.is-error{border-color:#dfc2bb;background:#fbf0ed;color:#803b2c}
@media(max-width:680px){.registration-panel{padding:26px 19px 22px}.registration-panel h2{font-size:28px}.registration-fields{grid-template-columns:1fr;gap:10px}.registration-dialog{max-height:95vh}.registration-panel{max-height:95vh}.registration-close{right:13px;top:11px}}

/* Anmeldung: Überschriften, Icons und Boxen greifen die Frontpage-Gestaltung auf. */
.registration-panel{padding:0}
.registration-dialog-header{display:grid;grid-template-columns:54px 1fr;align-items:start;gap:17px;padding:25px 68px 21px 30px;background:var(--olive);color:#fff;border-bottom:4px solid var(--olive-dark)}
.registration-dialog-header h2{color:#fff;font:700 30px/1.08 var(--heading)}
.registration-dialog-header .registration-eyebrow{margin:0 0 5px;color:#f5f4ef;font:700 10px var(--heading);letter-spacing:.14em}
.registration-dialog-header .registration-intro{margin:8px 0 0;color:#f8f7f3;font-size:12px;line-height:1.5}
.registration-title-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid #ffffff75;background:#ffffff19;color:#fff}
.registration-title-icon svg{width:27px;height:27px}
.registration-panel form{padding:20px 30px 26px}
.registration-form-section{margin:0 0 16px;padding:14px 16px 16px;background:#f3f3f1;border:1px solid #dededb}
.registration-section-heading{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid #d8d7d1}
.registration-section-icon{display:grid;place-items:center;flex:none;width:31px;height:31px;background:#e7e6df;border:1px solid #d4d2c7;color:var(--olive-dark)}
.registration-section-icon svg{width:17px;height:17px}
.registration-section-heading h3{margin:0;color:#333;font:700 16px/1.1 var(--heading)}
.registration-questions{margin:0 0 16px;background:#f3f3f1;border-color:#dededb}
.registration-questions legend{display:flex;align-items:center;padding:0 8px;color:#353630;font:700 16px var(--heading)}
.registration-questions legend::before{content:'✓';display:inline-grid;place-items:center;width:22px;height:22px;margin-right:7px;background:#e7e6df;border:1px solid #d4d2c7;color:var(--olive-dark);font:700 13px var(--heading)}
.registration-privacy a{color:var(--olive-dark);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.registration-consent input{accent-color:var(--olive-dark)}
.registration-submit{min-height:44px;box-shadow:0 2px 5px #00000012}
@media(max-width:680px){.registration-dialog-header{grid-template-columns:41px 1fr;gap:12px;padding:22px 56px 17px 17px}.registration-title-icon{width:40px;height:40px}.registration-title-icon svg{width:23px;height:23px}.registration-dialog-header h2{font-size:25px}.registration-panel form{padding:16px 15px 20px}.registration-form-section{padding:12px 12px 13px}}

/* Eigenständige Anmeldeseite im gleichen Frontpage-Rahmen */
.registration-page{padding-top:28px;padding-bottom:56px;min-height:62vh}
.registration-panel{max-width:900px;max-height:none;margin:0 auto;overflow:visible;border:1px solid #dededb;background:#fff;box-shadow:0 5px 20px #0000000b}
.registration-back{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;color:var(--olive-dark);font:700 13px var(--heading)}
.registration-back span{font-size:19px;line-height:1}
.registration-back:hover{color:#4f4c3e}
.registration-dialog-header{grid-template-columns:54px 1fr}
@media(max-width:680px){.registration-page{padding-top:20px;padding-bottom:38px}.registration-dialog-header{grid-template-columns:41px 1fr}}


/* Anmeldeseite: Inhaltsbreite wie die Startseite, ohne zusätzliche Karten-Seite */
.registration-page{width:100%;max-width:none;padding:30px 25px 62px;min-height:0}
.registration-page .registration-panel{width:100%;max-width:none;max-height:none;margin:0;padding:0;overflow:visible;border:0;background:transparent;box-shadow:none}
.registration-page .registration-back{margin:0 0 14px}
.registration-page .registration-dialog-header{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:18px;min-height:270px;padding:38px 48px;background:linear-gradient(90deg,rgba(248,247,242,.97) 0%,rgba(248,247,242,.9) 35%,rgba(248,247,242,.16) 76%),url('assets/registration-banner.png') center 54%/cover no-repeat;border:0;border-bottom:5px solid var(--olive-dark);color:var(--ink)}
.registration-page .registration-title-icon{border-color:#b9b6a7;background:#ffffff8c;color:var(--olive-dark)}
.registration-page .registration-dialog-header .registration-eyebrow{color:var(--olive-dark)}
.registration-page .registration-dialog-header h2{max-width:570px;color:#292925;font-size:clamp(32px,4vw,44px);line-height:1.05}
.registration-page .registration-dialog-header .registration-intro{max-width:560px;color:#4e4d47;font-size:14px}
.registration-page .registration-panel form{padding:24px 0 0}
.registration-page .registration-form-section{margin-bottom:18px}
.registration-page .registration-feedback{margin:18px 0 0}
@media(max-width:680px){.registration-page{padding:20px 17px 40px}.registration-page .registration-dialog-header{grid-template-columns:39px minmax(0,1fr);gap:12px;min-height:230px;padding:25px 18px;background-position:58% center;background-image:linear-gradient(90deg,rgba(248,247,242,.96) 0%,rgba(248,247,242,.88) 55%,rgba(248,247,242,.45) 100%),url('assets/registration-banner.png')}.registration-page .registration-title-icon{width:39px;height:39px}.registration-page .registration-title-icon svg{width:21px;height:21px}.registration-page .registration-dialog-header h2{font-size:30px}.registration-page .registration-dialog-header .registration-intro{font-size:12px}.registration-page .registration-panel form{padding-top:18px}}
