*{box-sizing:border-box}body{margin:0;font-family:Brand,'Trebuchet MS',Arial,sans-serif;color:#202020;background:#ffffff}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}header{max-width:1500px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:23px 5vw;border-bottom:1px solid #e4dfd3}.brand{text-decoration:none;display:flex;gap:13px;align-items:center}.brand svg{width:66px;height:69px}.brand b{font-size:23px;letter-spacing:-.9px}.brand small{display:block;font-size:11px;margin-top:5px;color:#555555}.registered{font-size:12px;vertical-align:super}.contact{font-size:13px;text-decoration:none;border:1px solid #e4dfd3;border-radius:50px;padding:13px 20px}.contact span{margin-left:18px;color:#886817}.intro{max-width:1360px;position:relative;margin:0 auto;padding:46px 42% 36px 0}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2px;display:flex;align-items:center;gap:8px}.eyebrow>span{width:7px;height:7px;border-radius:50%;background:#886817}h1{font-size:54px;line-height:1.08;letter-spacing:-2.5px;margin:18px 0}h1 em{font-style:normal;color:#886817}.intro>p{font-size:15px;line-height:1.7;max-width:510px;color:#555555;margin:0}.stats{position:absolute;right:0;top:100px;display:flex;gap:38px}.stats>div{display:flex;flex-direction:column;gap:9px}.stats b{font-size:43px;letter-spacing:-2px;font-weight:800}.stats span{font-size:11px;max-width:105px;line-height:1.5;color:#555555}.intro-shape{position:absolute;right:29%;top:32px;font-size:56px;color:#886817;transform:rotate(15deg)}main{padding:0 5vw}.explorer{display:grid;grid-template-columns:370px 1fr;max-width:1360px;margin:auto;border:1px solid #e4dfd3;border-radius:22px;overflow:hidden;height:740px;box-shadow:0 12px 40px #00000010;background:white}.sidebar{z-index:500;display:flex;flex-direction:column;min-height:0;border-right:1px solid #e4dfd3;background:#fff}.filters{padding:23px 22px 18px;border-bottom:1px solid #e4dfd3}.filters>label{display:block;font-size:15px;font-weight:800;margin-bottom:13px}.search-wrap{display:flex;align-items:center;border:1px solid #e4dfd3;border-radius:10px;background:#ffffff;padding:0 12px;gap:8px}.search-wrap>span{font-size:24px;line-height:40px;color:#555555}input{width:100%;min-width:0;border:0;background:transparent;padding:12px 0;color:#202020;font-size:12px;outline:0}.search-wrap:focus-within{outline:2px solid #886817}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #886817;outline-offset:3px}.types{display:flex;gap:5px;flex-wrap:wrap;margin:14px 0}.chip{border:1px solid #e4dfd3;background:white;color:#202020;border-radius:20px;padding:7px 9px;font-size:10px;display:flex;align-items:center;gap:5px}.chip>span{font-size:9px;opacity:.6}.chip.active{background:#202020;color:white;border-color:#202020}.blue{background:#886817}.orange{background:#886817}.pink{background:#686868}i.blue,i.orange,i.pink{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.select-row{display:flex;gap:8px}.select-row select{width:100%;border:1px solid #e4dfd3;border-radius:8px;padding:9px 8px;background:white;color:#202020;font-size:11px}.select-row button{border:1px solid #e4dfd3;border-radius:8px;background:white;padding:4px 10px;font-size:19px;color:#555555}.list-title{padding:15px 22px 10px;display:flex;justify-content:space-between;font-size:10px;color:#555555}.list-title>span:first-child{font-weight:800;color:#202020}.locations{overflow:auto;min-height:0;scroll-behavior:smooth;padding:0 10px 15px}.place{width:100%;display:flex;text-align:left;gap:12px;background:white;border:1px solid transparent;border-bottom:1px solid #e4dfd3;padding:17px 11px;border-radius:9px;color:#202020}.place:hover,.place.selected{background:#f7f1df;border-color:#b89a45}.place .num{width:30px;height:30px;border-radius:50%;color:white;display:grid;place-items:center;flex-shrink:0;font-size:11px;font-weight:bold}.place h3{font-size:12px;margin:0 0 6px;line-height:1.45;letter-spacing:-.15px}.place p{font-size:10px;line-height:1.6;margin:0;color:#555555}.place .tag{display:inline-block;margin-top:6px;font-size:9px;color:#886817;background:#f7f1df;padding:3px 6px;border-radius:4px}.place .kind{display:block;margin-bottom:5px;font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:1px;color:#555555}.place .arrow{margin-left:auto;color:#555555;align-self:center}.map-wrap{position:relative;min-width:0;isolation:isolate;background:#ffffff}#map{width:100%;height:100%;background:radial-gradient(ellipse at 60% 35%,#ffffff,#ffffff)}.leaflet-container{font-family:Brand,'Trebuchet MS',sans-serif}.leaflet-control-zoom{border:1px solid #e4dfd3!important;border-radius:10px!important;box-shadow:0 3px 10px #00000015!important;overflow:hidden}.leaflet-control-zoom a{color:#202020!important}.map-label{position:absolute;z-index:500;top:23px;left:24px;background:#ffffffef;box-shadow:0 2px 12px #0000000a;border:1px solid #fff;border-radius:20px;padding:9px 13px;font-size:10px;display:flex;gap:7px;align-items:center}.live-dot{width:6px;height:6px;background:#886817;border-radius:50%}.map-actions{position:absolute;z-index:500;right:20px;top:22px;display:flex;gap:6px}.map-actions button{background:white;border:1px solid #e4dfd3;border-radius:8px;padding:9px 11px;color:#202020;font-size:10px;box-shadow:0 2px 6px #00000009}.map-actions button[aria-pressed=true]{background:#202020;color:white}.legend{position:absolute;left:20px;bottom:41px;z-index:500;display:flex;gap:13px;align-items:center;background:#ffffffee;padding:11px 15px;border-radius:11px;box-shadow:0 3px 10px #0000000b}.legend>span{display:flex;gap:5px;align-items:center;font-size:8px}.hint{position:absolute;bottom:21px;left:23px;font-size:8px;color:#555555;z-index:500;pointer-events:none}.district-label{white-space:nowrap;text-align:center;font-weight:700;font-size:9px;color:#555555;text-shadow:0 1px white;pointer-events:none!important;line-height:1.3}.district-label.active{color:#202020}.district-tooltip{font-size:11px;border:0;background:white;padding:8px 12px;box-shadow:0 3px 12px #00000020;border-radius:8px}.pin{border-radius:50% 50% 50% 8%;transform:rotate(-45deg);border:2px solid white;box-shadow:0 2px 7px #00000040;width:30px;height:30px;display:grid;place-items:center}.pin>span{transform:rotate(45deg);color:white;font-size:10px;font-weight:bold}.pin.selected{outline:5px solid #fff9;box-shadow:0 0 0 6px #00000030}.cluster-icon{background:white;border:3px solid #886817;border-radius:50%;display:grid;place-items:center;color:#202020;box-shadow:0 3px 14px #00000030;font-size:14px;font-weight:bold}.leaflet-popup-content-wrapper{border-radius:14px;box-shadow:0 6px 28px #00000022}.leaflet-popup-content{margin:20px!important;min-width:215px!important;max-width:280px}.popup-kind{font-size:9px;letter-spacing:1.4px;color:#555555;text-transform:uppercase}.popup h3{font-size:17px;line-height:1.3;margin:10px 0}.popup p{font-size:11px;line-height:1.7;margin:6px 0;color:#555555}.popup .badge{display:inline-block;background:#f7f1df;padding:4px 7px;border-radius:5px;font-size:10px;color:#886817}.popup .route{display:block;background:#202020;color:white;text-decoration:none;text-align:center;padding:9px;border-radius:7px;margin-top:12px;font-size:11px}.popup .source{display:block;margin-top:10px;font-size:9px;color:#555555}.empty{text-align:center;font-size:12px;color:#555555;padding:42px 15px}.bottom{max-width:1360px;margin:45px auto 25px;padding:35px 40px;background:#f7f1df;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:30px}.bottom .eyebrow{color:#886817;font-size:9px}h2{font-size:26px;line-height:1.23;letter-spacing:-.8px;margin:13px 0}.bottom p{color:#555555;font-size:12px;line-height:1.7;margin:0}.cta{background:#202020;border-radius:30px;color:white;text-decoration:none;padding:16px 23px;font-size:12px;white-space:nowrap}.cta span{margin-left:24px}.sources{max-width:1360px;margin:25px auto 35px;color:#555555;font-size:10px;line-height:1.7}.sources summary{cursor:pointer;color:#202020}.sources p{max-width:950px}footer{border-top:1px solid #e4dfd3;padding:23px 5vw;display:flex;gap:23px;font-size:10px;align-items:center;color:#555555}footer b{color:#202020}footer a{margin-left:auto;text-decoration:none;color:#202020}footer>span:last-child{font-size:9px}#print{display:inline-block}.leaflet-container a{color:#886817}.leaflet-control-attribution{font-size:7px!important}.print-caption{display:none}@media(min-width:1600px){.intro{padding-top:55px}.explorer{height:780px}}@media(max-width:1100px){h1{font-size:43px}.intro{padding-right:45%}.stats{gap:20px}.stats b{font-size:34px}.explorer{grid-template-columns:320px 1fr;height:710px}.legend{flex-direction:column;align-items:flex-start;gap:7px;padding:10px}.map-label{display:none}.map-actions{left:20px;right:auto}.intro-shape{right:40%;font-size:37px}.filters{padding:20px 16px}.types{gap:4px}.chip{padding:7px 7px;font-size:9px}}@media(max-width:760px){header{padding:15px 5vw}.brand svg{width:46px;height:48px}.brand b{font-size:19px}.brand small{font-size:9px}.contact{padding:10px;font-size:10px}.contact span{display:none}.intro{padding:29px 0 25px}.intro .eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:43px;margin:15px 0}.intro>p{font-size:12px;max-width:90%;line-height:1.65}.stats{position:static;margin-top:23px;gap:28px}.stats>div{flex-direction:row;align-items:center;gap:7px}.stats b{font-size:26px;letter-spacing:-1px}.stats span{font-size:9px;max-width:65px}.intro-shape{right:12px;top:45px}.explorer{display:flex;flex-direction:column;height:auto;border-radius:16px}.map-wrap{height:480px;order:0}.sidebar{order:1;border:0}.filters{padding:20px}.locations{max-height:390px}.list-title{padding:13px 22px}.legend{bottom:36px;left:12px;gap:5px;padding:8px}.map-actions{left:12px;top:12px;gap:5px}.map-actions button{font-size:9px;padding:9px 10px}.hint{left:13px;bottom:20px;font-size:7px}.bottom{margin-top:25px;padding:26px;flex-direction:column;align-items:flex-start;gap:23px}.bottom h2{font-size:24px}.bottom p{font-size:11px}.bottom p br{display:none}footer{flex-wrap:wrap;gap:12px}footer a{margin-left:0}footer>span:last-child{width:100%}.sources{margin-bottom:25px}}@media print{@page{size:A4 portrait;margin:12mm}body{font-size:10px;background:white}header{padding:0 0 12px}.contact,.intro-shape,.sources,.bottom,footer,.map-actions,.hint,.leaflet-control-zoom,.filters{display:none!important}main{padding:0}.intro{padding:15px 0}.intro h1{font-size:30px;display:inline}.intro h1 br{display:none}.intro h1 em{margin-left:8px}.intro>p{font-size:11px}.intro .eyebrow{display:none}.stats{position:static;margin:12px 0;gap:25px;display:flex}.stats div{flex-direction:row}.stats b{font-size:19px}.stats span{font-size:9px}.explorer{display:flex;flex-direction:column;height:auto;overflow:visible;border:0;box-shadow:none}.map-wrap{height:380px;order:0;border:1px solid #ddd;break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}.sidebar{order:1}.locations{overflow:visible;display:grid;grid-template-columns:1fr 1fr;padding:0}.place{break-inside:avoid;padding:8px;border-bottom:1px solid #ddd}.place h3{font-size:10px}.place p{font-size:8px}.place .num{width:22px;height:22px;font-size:8px;print-color-adjust:exact;-webkit-print-color-adjust:exact}.place .arrow{display:none}.list-title{padding:10px 0}.legend{bottom:20px}.leaflet-control-attribution{font-size:6px!important}header svg{width:45px;height:45px}.map-label{display:none}.brand small{font-size:8px}#map{height:100%}}
.leaflet-bottom.leaflet-right .leaflet-control-zoom{margin-bottom:47px;margin-right:20px}

.home-link{font:600 14px/1.4 Arial,sans-serif;color:#202020;text-decoration:none;margin-left:auto;margin-right:24px}.home-link:hover{text-decoration:underline}.legal-links{display:flex;gap:18px}.legal-links a{font-size:13px}@media(max-width:700px){header{flex-wrap:wrap;gap:12px}.home-link{order:3;flex-basis:100%;margin:0}.legal-links{flex-wrap:wrap}}

.training{margin-top:14px;padding-top:12px;border-top:1px solid #e4dfd3;text-align:left;font:400 12px/1.45 Arial,sans-serif;color:#202020}.training-title{display:block;margin-bottom:8px;color:#886817;font-size:12px}.training-day+.training-day{margin-top:12px}.training-day>strong{display:block;margin-bottom:4px;font-size:12px}.training-row{display:flex;justify-content:space-between;gap:12px;padding:4px 0}.training-row>span:first-child{max-width:48%}.training-row>span:last-child{white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}.popup .training{font-size:12px}.place>div{min-width:0;flex:1}@media(max-width:420px){.training-row{font-size:11px;gap:8px}}@media print{.training{font-size:8px;margin-top:6px;padding-top:5px}.training-title,.training-day>strong{font-size:8px}.training-day+.training-day{margin-top:5px}.training-row{padding:2px 0}}

/* Zwei eigenständige Angebote unter dem Dach von Chonkwon Berlin. */
.brand-pair{display:flex;align-items:center;gap:34px;flex-wrap:wrap}.brand-pair .brand{gap:12px}.brand-pair .brand b{font-size:21px}.brand-pair .brand small{max-width:280px;line-height:1.5}.academy-brand>img{width:80px;height:80px;object-fit:contain;border-radius:50%}.project-brand{padding-left:30px;border-left:1px solid #e4dfd3}.intro h1 em{color:#886817}.location-logo{display:block;object-fit:contain;width:58px;height:58px;margin:0 0 9px;background:white;border-radius:8px}.academy-logo{border-radius:50%}.popup>.location-logo{width:74px;height:74px}.place .kind{clear:both}.brand-pair+.home-link{margin-left:25px;margin-right:0;white-space:nowrap}@media(max-width:1100px){header{flex-wrap:wrap;gap:18px}.brand-pair{gap:20px}.brand-pair+.home-link{margin-left:0}}@media(max-width:700px){.brand-pair{display:grid;gap:18px;width:100%}.project-brand{border-left:0;border-top:1px solid #e4dfd3;padding-left:0;padding-top:16px}.brand-pair .brand b{font-size:20px}.academy-brand>img{width:66px;height:66px}.brand-pair .brand small{font-size:10px}}@media print{.brand-pair{gap:20px}.brand-pair .brand b{font-size:13px}.brand-pair .brand small{font-size:7px}.academy-brand>img,.brand-pair .brand svg{width:44px;height:44px}.location-logo{width:35px;height:35px;margin-bottom:4px}.project-brand{border-top:0;padding-top:0}.intro h1{font-size:26px}}

.project-brand>.project-header-logo{width:86px;height:86px;object-fit:contain;background:transparent}.project-logo{background:transparent;width:74px;height:74px}.popup>.project-logo{width:90px;height:90px}@media(max-width:700px){.project-brand>.project-header-logo{width:76px;height:76px}}@media print{.project-brand>.project-header-logo{width:50px;height:50px}.project-logo{width:40px;height:40px}}

.route-links{display:grid;gap:8px;margin:14px 0}.route-links>strong{font-size:12px;color:#202020}.popup .route-links .route{display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:11px 14px;touch-action:manipulation;text-decoration:none;border-radius:8px}.popup .route-links .route-apple{background:#202020;color:white}

/* Vereinsfarben: Gold, Weiß und Schwarz. */
:root{--gold:#886817;--gold-accent:#b89a45;--ink:#202020;--line:#e4dfd3;--paper:#ffffff}
body{background:var(--paper);color:var(--ink)}header{border-bottom:2px solid var(--gold-accent)}.brand b{color:var(--ink)}.academy-brand b{color:var(--gold)}.intro h1 em{color:var(--gold)}.blue{background:#886817}.orange{background:#292929}.pink{background:#686868}.chip.active{background:#202020;color:white;border-color:#202020}.chip:hover{border-color:var(--gold-accent)}.place.selected{border-color:var(--gold-accent);box-shadow:inset 3px 0 0 var(--gold-accent)}.map-wrap,#map{background:#faf9f5}.district-label{color:#5b5b5b}.district-label.active{color:#202020}.cluster-icon{border-color:var(--gold-accent);color:var(--ink)}.popup .route-links .route{background:#886817;color:#ffffff}.popup .route-links .route-apple{background:#202020;color:#ffffff}.popup .route-links .route:hover{background:#604a11}.popup .source,.leaflet-control-attribution a{color:#665019}.map-actions button{color:var(--ink)}.map-actions button:hover{border-color:var(--gold-accent)}.cta{background:#202020;color:white}.cta:hover{background:#886817}.training-title{color:var(--gold)}.sources,.hint,footer{color:#555555}.location-logo,.project-header-logo{filter:none}button:focus-visible,a:focus-visible,select:focus-visible{outline-color:#886817}
