:root{--color-bg:#eff1f0;--color-text:#232527;--color-accent:#a8162c;--font-sans:Corbel,"Lucida Sans Unicode","Segoe UI","DejaVu Sans",sans-serif;--font-display:"Big Caslon","Libre Baskerville",Baskerville,"Sitka Text",Cambria,Georgia,serif;--space-section:3.43rem;--sheet:#fbfbfa;--rule:#cfd4d6;--rule-soft:#e1e5e6;--rhine:#4b5961;--rhine-deep:#2e3a42;--rhine-mist:#dfe4e7;--sand:#e3d4b6;--sand-deep:#9c8558;--sand-mist:#f4eee2;--gold:#d9ae3a;--gold-ink:#7a5a08;--gold-mist:#f6edcd;--red-deep:#8c1122;--red-mist:#f7e2e5;--moss:#3f6b52;--moss-mist:#e0ece5;--slate:#2f5b82;--slate-mist:#dfe8f1;--hush:#58616a;--mark:var(--rhine)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:1rem}
body{margin:0;background:var(--color-bg);color:var(--color-text);font:400 1.08rem/1.6 var(--font-sans);overflow-wrap:break-word}
header,nav,main,footer,section,article,aside,details{display:block}
h1,h2,h3{margin:0 0 .6rem;font-family:var(--font-display);font-weight:700;line-height:1.18;color:var(--rhine-deep)}
h1{font-size:clamp(1.8rem,1.35rem + 1.8vw,2.55rem);letter-spacing:-.005em}
h2{margin-top:2rem;font-size:clamp(1.25rem,1.1rem + .5vw,1.52rem)}
h3{margin-top:1.15rem;font-size:1.08rem}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1rem;padding-left:1.3rem}
li{margin:.2rem 0}
dl{margin:0 0 1rem}
dt{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--hush)}
dd{margin:.1rem 0 0}
blockquote{margin:0}
q{quotes:"\201C" "\201D" "\2018" "\2019"}
:lang(de) q{quotes:"\201E" "\201C" "\201A" "\2018"}
time{white-space:nowrap}
svg{max-width:100%}
bdi{unicode-bidi:isolate}
table{width:100%;border-collapse:collapse;font-size:.94rem;background:var(--sheet)}
th,td{padding:.52rem .8rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule-soft)}
thead th{font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--rhine-deep);background:var(--sand);border-bottom:2px solid var(--sand-deep)}
a{color:var(--color-accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--red-deep);text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
details{margin:2.5rem 0 0;padding:1rem 1.2rem;background:var(--sheet);border:1px solid var(--rule);border-left:4px solid var(--sand-deep)}
summary{cursor:pointer;font-family:var(--font-display);font-size:1.08rem;font-weight:700;color:var(--rhine-deep)}
summary::marker{color:var(--color-accent)}
fieldset{min-width:0}
input,select,textarea,button{font:inherit}
.kol-sprite{position:absolute;width:0;height:0;overflow:hidden}
.kol-sprite symbol{stroke-width:1.7}
.kol-icon{display:inline-block;flex:none;width:1.08em;height:1.08em;margin-right:.45em;vertical-align:-.16em;fill:none;stroke:currentColor}
.kol-skip{position:absolute;top:.5rem;left:-500vw;z-index:90;padding:.55rem 1.1rem;font-weight:700;color:#fff;background:var(--color-accent)}
.kol-skip:focus{left:.75rem}
.kol-wrap{width:100%;max-width:70rem;margin:0 auto;padding:0 1rem}
.kol-header{position:relative;z-index:40;background:var(--sheet);border-top:6px solid var(--color-accent);box-shadow:0 1px 0 var(--rule),0 3px 0 var(--gold)}
.kol-header>.kol-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:0 1.5rem;padding-top:.55rem}
.kol-brand{display:inline-flex;align-items:flex-end;gap:.55rem;min-height:2.9rem;font-family:var(--font-display);font-size:1.42rem;font-weight:700;letter-spacing:.005em;color:var(--rhine-deep);text-decoration:none}
.kol-brand::before{content:"";flex:none;width:1.3rem;height:1.7rem;margin-bottom:.32rem;background:var(--rhine);clip-path:polygon(0 100%,0 32%,19% 0,38% 32%,38% 100%,62% 100%,62% 32%,81% 0,100% 32%,100% 100%)}
.kol-brand:hover{color:var(--color-accent)}
.kol-langs{display:flex;gap:.2rem;margin:0 0 0 auto;padding:0;list-style:none;font-size:.88rem}
.kol-langs li{margin:0}
.kol-langs a{display:inline-block;padding:.28rem .6rem;color:var(--rhine);text-decoration:none;border:1px solid transparent;border-radius:.2rem}
.kol-langs a:hover{color:var(--rhine-deep);border-color:var(--rule)}
.kol-langs [aria-current]{color:var(--rhine-deep);font-weight:700;background:var(--gold-mist);border-color:var(--gold)}
.kol-nav{order:3;flex:1 1 100%}
.kol-nav>ul{display:flex;flex-wrap:wrap;gap:0 .2rem;margin:0 -.6rem;padding:0;list-style:none}
.kol-nav>ul>li{margin:0}
.kol-nav>ul>li>a{display:inline-flex;align-items:baseline;gap:.38rem;padding:.6rem .6rem .7rem;font-size:.98rem;font-weight:700;color:var(--rhine-deep);text-decoration:none;border-bottom:3px solid transparent}
.kol-nav>ul>li>a:hover{color:var(--color-accent);border-bottom-color:var(--sand)}
.kol-nav>ul>li>a[aria-current]{color:var(--color-accent);border-bottom-color:var(--color-accent)}
.kol-nav .kol-count{font-size:.74rem;font-weight:400;color:var(--hush)}
.kol-sub{display:none;position:absolute;top:100%;left:0;right:0;flex-wrap:wrap;gap:.4rem;margin:0;padding:.9rem 1rem 1rem;list-style:none;background:var(--sheet);border-top:3px solid var(--gold);border-bottom:1px solid var(--rule);box-shadow:0 12px 24px rgba(46,58,66,.14)}
.kol-sub li{margin:0}
.kol-sub a{display:inline-flex;align-items:baseline;gap:.38rem;padding:.36rem .78rem;font-size:.9rem;color:var(--rhine-deep);text-decoration:none;background:var(--color-bg);border:1px solid var(--rule);border-radius:.2rem}
.kol-sub a:hover{color:var(--color-accent);border-color:var(--color-accent)}
.kol-nav .kol-sub .kol-count{color:var(--gold-ink)}
.kol-sub [aria-current]{color:#fff;background:var(--rhine-deep);border-color:var(--rhine-deep)}
.kol-nav .kol-sub [aria-current] .kol-count{color:var(--sand)}
.kol-has-sub:hover>.kol-sub,.kol-has-sub:focus-within>.kol-sub{display:flex}
.kol-main{padding:1.8rem 0 var(--space-section)}
.kol-main:focus{outline:none}
.kol-crumbs{margin:0 0 1.15rem;font-size:.87rem;color:var(--hush)}
.kol-crumbs ol{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none}
.kol-crumbs li{margin:0}
.kol-crumbs li+li::before{content:"/";margin:0 .55rem;color:var(--sand-deep)}
.kol-crumbs a{color:var(--rhine)}
.kol-hero{padding:.5rem 0 1.1rem;background:linear-gradient(var(--sand),var(--sand)) left bottom/100% 2px no-repeat}
.kol-hero h1::before{content:"";display:block;width:2.6rem;height:.42rem;margin-bottom:.8rem;background:repeating-linear-gradient(90deg,var(--color-accent) 0 .42rem,transparent .42rem .62rem)}
.kol-lead{font-size:1.15rem;line-height:1.6}
.kol-intro{font-size:1.06rem}
.kol-note{font-size:.88rem;color:var(--hush)}
.kol-count{font-variant-numeric:tabular-nums}
h1 .kol-count,h2 .kol-count{display:inline-block;margin-left:.55rem;padding:.05rem .5rem;font-family:var(--font-sans);font-size:.55em;font-weight:700;vertical-align:.24em;color:var(--rhine-deep);background:var(--gold-mist);border:1px solid var(--gold);border-radius:1rem}
.kol-block{margin-top:var(--space-section)}
.kol-block>h2{display:flex;flex-wrap:wrap;align-items:baseline;margin-bottom:.15rem}
.kol-block>h2 .kol-icon{color:var(--color-accent)}
.kol-see-all{font-size:.94rem;font-weight:700}
.kol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15.6rem,1fr));gap:.85rem;margin:.95rem 0 0;padding:0;list-style:none}
.kol-teaser{display:flex;flex-direction:column;gap:.3rem;margin:0;padding:.85rem 1rem .8rem 1.05rem;background:var(--sheet);border:1px solid var(--rule-soft);border-left:4px solid var(--mark);box-shadow:0 1px 2px rgba(46,58,66,.07)}
.kol-teaser:hover{border-color:var(--rule);border-left-color:var(--mark);box-shadow:0 4px 12px rgba(46,58,66,.12)}
.kol-teaser-name{font-family:var(--font-display);font-size:1.1rem;font-weight:700;line-height:1.26;color:var(--rhine-deep);text-decoration:none}
.kol-teaser-name:hover{color:var(--color-accent);text-decoration:underline}
.kol-teaser-name .kol-icon{color:var(--mark)}
.kol-teaser-meta{font-size:.88rem;color:var(--hush)}
.kol-teaser-when{font-size:.9rem;font-weight:700;color:var(--rhine-deep);font-variant-numeric:tabular-nums}
.kol-teaser-cues{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.1rem}
.kol-teaser-chess{margin-top:auto;padding-top:.45rem;font-size:.8rem;color:var(--hush);border-top:1px solid var(--rule-soft)}
.kol-badge{display:inline-block;padding:0 .42rem;font-size:.76rem;font-weight:700;letter-spacing:.02em;color:var(--rhine-deep);background:var(--rhine-mist);border-radius:.15rem}
.kol-cue{display:inline-block;padding:.03rem .5rem;font-size:.77rem;line-height:1.5;color:var(--rhine-deep);background:var(--sheet);border:1px solid var(--rule);border-radius:.15rem}
.kol-cue-access{color:var(--moss);background:var(--moss-mist);border-color:#a9c7b6}
.kol-cue-free{color:var(--gold-ink);background:var(--gold-mist);border-color:var(--gold)}
.kol-cue-kids{color:var(--slate);background:var(--slate-mist);border-color:#a8bfd6}
.kol-cue-beginners{color:var(--red-deep);background:var(--red-mist);border-color:#e0aab3}
.kol-cue-format{color:var(--rhine-deep);background:var(--sand-mist);border-color:var(--sand)}
.kol-cue-closed{color:#fff;background:var(--rhine);border-color:var(--rhine)}
.kol-cue-register{color:var(--rhine-deep);border-style:dashed;border-color:var(--rhine)}
.kol-kind-club{--mark:var(--rhine)}
.kol-kind-tournament{--mark:var(--color-accent)}
.kol-kind-academy,.kol-kind-coach{--mark:var(--slate)}
.kol-kind-library_community{--mark:var(--sand-deep)}
.kol-kind-cafe_bar{--mark:#8a4b2a}
.kol-kind-outdoor_tables,.kol-kind-giant_chess{--mark:var(--moss)}
.kol-kind-shop{--mark:var(--gold-ink)}
.kol-kind-group{--mark:#6a4f7d}
.kol-kind-hotel_mall,.kol-kind-other{--mark:#7d7462}
.kol-ch-confirmed::before,.kol-ch-confirmed_undated::before,.kol-ch-scheduled::before{content:"";display:inline-block;width:.46rem;height:.46rem;margin-right:.45rem;vertical-align:.08em;background:var(--moss);border-radius:50%}
.kol-ch-scheduled::before{background:var(--gold)}
.kol-ch-not_confirmed,.kol-ch-not_confirmed_nodate{color:var(--hush);font-style:italic}
.kol-ch-moved,.kol-ch-moved_unknown,.kol-ch-ended{color:var(--red-deep)}
.kol-is-past time{text-decoration:line-through;text-decoration-color:var(--color-accent);text-decoration-thickness:2px}
.kol-past{display:inline-block;margin-left:.4rem;padding:0 .38rem;font-size:.68rem;font-weight:700;font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--hush);border-radius:.15rem}
.kol-facets{display:flex;flex-wrap:wrap;gap:.42rem;margin:.85rem 0 1.35rem;padding:0;list-style:none}
.kol-facets li{margin:0}
.kol-facets a{display:inline-flex;align-items:baseline;gap:.4rem;padding:.36rem .82rem;font-size:.9rem;color:var(--rhine-deep);text-decoration:none;background:var(--sheet);border:1px solid var(--rule);border-radius:.2rem}
.kol-facets a:hover{color:var(--color-accent);border-color:var(--color-accent)}
.kol-facet .kol-count{font-size:.77rem;font-weight:700;color:var(--gold-ink)}
.kol-facets [aria-current]{color:#fff;background:var(--color-accent);border-color:var(--color-accent)}
.kol-facets [aria-current] .kol-count{color:var(--gold-mist)}
.kol-group{margin-top:2rem}
.kol-group-h2{margin:0;padding:0 0 .32rem;font-size:1.14rem;color:var(--rhine-deep);border-bottom:2px solid var(--sand)}
.kol-about{margin-top:2.5rem}
.kol-slice-about{padding-top:.75rem}
.kol-about-list{margin-top:var(--space-section);padding:1.5rem 1.45rem .6rem;background:var(--sheet);border:1px solid var(--rule);border-top:4px solid var(--rhine)}
.kol-about-list h2{margin-top:0}
.kol-c960{margin-top:var(--space-section);padding:1.4rem 1.45rem .7rem 1.6rem;background:var(--sand-mist) linear-gradient(var(--rhine-deep) 50%,var(--sand) 50%) left top/7px 14px repeat-y;border:1px solid var(--sand)}
.kol-c960 h2{margin-top:0}
.kol-c960 ul{padding-left:1.25rem}
.kol-c960 li{margin:.42rem 0}
.kol-cta{margin-top:var(--space-section);padding:1.5rem 1.45rem;color:var(--rhine-mist);background:var(--rhine-deep);border-bottom:5px solid var(--gold)}
.kol-cta h2{margin-top:0;color:#fff}
.kol-cta a{color:#fff}
.kol-cta .kol-btn{color:var(--rhine-deep);background:var(--gold);border-color:var(--gold)}
.kol-cta .kol-btn:hover{color:var(--rhine-deep);background:var(--gold-mist);border-color:var(--gold-mist)}
.kol-btn{display:inline-flex;align-items:center;gap:.15rem;margin:.25rem .5rem .25rem 0;padding:.5rem 1.05rem;font-size:.95rem;font-weight:700;line-height:1.3;color:#fff;text-decoration:none;background:var(--color-accent);border:2px solid var(--color-accent);border-radius:.2rem;cursor:pointer}
.kol-btn:hover{color:#fff;background:var(--red-deep);border-color:var(--red-deep)}
.kol-card{margin-top:.4rem}
.kol-card-head{margin-bottom:1.65rem;padding:1.25rem 1.35rem 1.15rem;background:var(--sheet);border:1px solid var(--rule);border-left:6px solid var(--mark)}
.kol-card-head h1{margin-bottom:.4rem}
.kol-card-head h1 .kol-icon{color:var(--mark)}
.kol-name-local{margin:0 0 .3rem;font-family:var(--font-display);font-style:italic;color:var(--hush)}
.kol-kind-line{margin:0 0 .6rem;color:var(--hush)}
.kol-cues{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .85rem;padding:0;list-style:none}
.kol-cues .kol-cue{margin:0;font-size:.82rem}
.kol-status{display:grid;gap:.25rem;padding:.6rem .85rem;background:var(--color-bg);border-left:3px solid var(--sand-deep)}
.kol-status-line{margin:0;font-size:.95rem}
.kol-status-label{display:inline-block;min-width:4.9rem;margin-right:.45rem;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--hush)}
.kol-st-open,.kol-st-operating{color:var(--moss)}
.kol-st-closed{color:var(--red-deep)}
.kol-st-unknown,.kol-st-not_a_venue{color:var(--rhine-deep)}
.kol-stale{margin-left:.35rem;font-size:.82rem;color:var(--red-deep)}
.kol-card-body{display:grid;gap:1.75rem}
.kol-card-main>section:first-child>h2,.kol-card-side>section:first-child>h2{margin-top:0}
.kol-card-side{display:flex;flex-direction:column;gap:1rem}
.kol-card-side>section,.kol-report{padding:1rem 1.1rem;background:var(--sheet);border:1px solid var(--rule)}
.kol-card-side h2{margin-top:0;font-size:1.08rem}
.kol-card h2 .kol-icon{color:var(--color-accent)}
.kol-when,.kol-training,.kol-facts-sec,.kol-evidence,.kol-corrections{margin-bottom:1.75rem}
.kol-facts{display:grid;gap:.6rem}
.kol-fact{padding:0 0 .5rem;border-bottom:1px dotted var(--rule)}
.kol-unknown{font-style:italic;color:var(--hush)}
.kol-table-wrap{overflow-x:auto;border:1px solid var(--rule)}
.kol-sessions{min-width:33rem}
.kol-sessions .kol-badge{color:#fff;background:var(--rhine)}
.kol-coaches{padding-left:1.15rem}
.kol-coach{margin:.3rem 0}
.kol-evidence-q{padding:1rem 1.2rem;background:var(--sheet);border:1px solid var(--rule);border-left:5px solid var(--gold)}
.kol-evidence-q p{margin-bottom:.55rem}
.kol-evidence-q footer{font-size:.85rem;color:var(--hush)}
.kol-src-ref{display:inline-block;min-width:1.25rem;margin-left:.2rem;padding:0 .28rem;font-size:.68rem;font-weight:700;line-height:1.45;text-align:center;text-decoration:none;vertical-align:.25em;color:var(--rhine-deep);background:var(--rhine-mist);border-radius:.15rem}
.kol-src-ref:hover{color:#fff;background:var(--rhine)}
.kol-flag-official{color:var(--moss)}
.kol-flag-secondary{color:var(--slate)}
.kol-flag-unverified{color:var(--red-deep)}
.kol-src-ref.kol-flag-official{background:var(--moss-mist)}
.kol-src-ref.kol-flag-secondary{background:var(--slate-mist)}
.kol-src-ref.kol-flag-unverified{background:var(--red-mist)}
.kol-sources{padding-left:1.35rem;font-size:.92rem}
.kol-src-group{margin:.8rem 0}
.kol-src-link{font-weight:700}
.kol-src-group ol,.kol-src-group ul{margin:.3rem 0 0;padding-left:1.1rem}
.kol-src-item{margin:.38rem 0}
.kol-src-time{font-size:.82rem;color:var(--hush)}
.kol-src-quote{font-style:italic;color:var(--rhine-deep)}
.kol-flag{display:inline-block;margin:0 .3rem;padding:0 .32rem;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:1px solid currentColor;border-radius:.15rem}
.kol-not-opened{font-size:.8rem;color:var(--red-deep)}
.kol-location .kol-btn,.kol-contacts .kol-btn{font-size:.88rem}
.kol-contact-list{margin:0;padding:0;list-style:none}
.kol-contact-list li{margin:.38rem 0}
.kol-report{margin:0}
.kol-report .kol-btn{color:var(--red-deep);background:transparent;border-color:#e0aab3}
.kol-report .kol-btn:hover{color:#fff;background:var(--red-deep);border-color:var(--red-deep)}
.kol-doc-section{margin-top:2.15rem}
.kol-doc-section h2{margin-top:0}
.kol-form{max-width:46rem;margin-top:1.5rem}
.kol-fieldset{margin:0 0 1.3rem;padding:1rem 1.2rem;background:var(--sheet);border:1px solid var(--rule)}
.kol-fieldset legend{padding:0 .4rem;font-family:var(--font-display);font-weight:700;color:var(--rhine-deep)}
.kol-modes label{display:flex;align-items:center;gap:.55rem;margin:.32rem 0}
.kol-modes .kol-input{width:auto;flex:none}
.kol-field{margin:0 0 1.05rem}
.kol-label{display:block;margin-bottom:.28rem;font-weight:700}
.kol-hint{display:block;margin-top:.22rem;font-size:.86rem;color:var(--hush)}
.kol-input,.kol-textarea{width:100%;padding:.55rem .72rem;color:var(--color-text);background:#fff;border:1px solid var(--rhine);border-radius:.15rem}
.kol-input:focus,.kol-textarea:focus{border-color:var(--color-accent)}
.kol-textarea{min-height:7.5rem;resize:vertical}
.kol-hp{position:absolute;left:-600vw;width:1px;height:1px;overflow:hidden}
.kol-submit{font-weight:700}
.kol-notice{margin:1rem 0;padding:.8rem 1rem;background:var(--sheet);border:1px solid var(--rule)}
.kol-notice-ok{background:var(--moss-mist);border-color:var(--moss)}
.kol-notice-fail{background:var(--red-mist);border-color:var(--color-accent)}
.kol-notice-sending{background:var(--slate-mist);border-color:var(--slate)}
.kol-noscript{padding:.8rem 1rem;background:var(--gold-mist)}
.kol-log{min-width:30rem}
.kol-log-type{white-space:nowrap;font-size:.8rem;font-weight:700}
.kol-type-launch{color:var(--color-accent)}
.kol-type-data{color:var(--moss)}
.kol-type-fix{color:var(--red-deep)}
.kol-type-copy{color:var(--slate)}
.kol-type-method{color:var(--gold-ink)}
.kol-notfound{padding:2.4rem 0}
.kol-footer{padding:2.1rem 0 2.6rem;font-size:.92rem;color:var(--rhine-mist);background:var(--rhine-deep);border-top:3px solid var(--gold)}
.kol-footer a{color:var(--sand)}
.kol-footer a:hover{color:#fff}
.kol-footer-nav{display:flex;flex-wrap:wrap;gap:.35rem 1.45rem;margin:0 0 1rem;padding:0 0 .9rem;list-style:none;border-bottom:1px solid rgba(227,212,182,.28)}
.kol-footer-nav li{margin:0}
.kol-footer-nav [aria-current]{color:#fff;font-weight:700;text-decoration:none}
.kol-asof{font-size:.85rem;color:#c8cfd3}
@media (min-width:54rem){.kol-card-body{grid-template-columns:minmax(0,1fr) 19.75rem;align-items:start}.kol-facts-sec .kol-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:53.99rem){.kol-card-body{display:flex;flex-direction:column}.kol-card-side{order:-1}}
@media print{body{background:#fff}.kol-header,.kol-footer,.kol-cta,.kol-report,.kol-skip{display:none}.kol-teaser{break-inside:avoid}}
