:root{
--color-bg:#f0ede7;
--color-text:#232e38;
--color-accent:#0a646e;
--font-sans:"Segoe UI Variable Text","Segoe UI",system-ui,Ubuntu,Cantarell,"Noto Sans","Helvetica Neue",sans-serif;
--font-display:"Avenir Next Condensed","Bahnschrift Condensed","Roboto Condensed","Arial Narrow","Nimbus Sans Narrow","Liberation Sans Narrow",sans-serif;
--space-section:3.15rem;
--ist-card:#fbfaf7;
--ist-stone:#e3ded4;
--ist-stone-2:#d4cdc0;
--ist-line:#c3bbac;
--ist-soft:#56616b;
--ist-teal-deep:#074a52;
--ist-teal-wash:#dcecec;
--ist-red:#a8261d;
--ist-red-wash:#f6e1dc;
--ist-cobalt:#24468f;
--ist-cobalt-wash:#e1e7f4;
--ist-saffron:#7e5300;
--ist-saffron-wash:#f4e8cd;
--ist-plum:#6b3a6b;
--ist-plum-wash:#efe2ee;
--ist-moss:#4b6420;
--ist-moss-wash:#e5ecd6;
--ist-umber:#5a4a3a;
--ist-umber-wash:#ebe3d8;
--ist-k:var(--ist-soft);
--ist-k-wash:var(--ist-stone);
--ist-radius:6px
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:1.0625rem;line-height:1.6}
header,nav,main,footer,section,article,aside,details{display:block}
h1,h2,h3{font-family:var(--font-display);font-stretch:condensed;font-weight:700;line-height:1.15;letter-spacing:.005em;color:var(--color-text);margin:0 0 .6rem}
h1{font-size:clamp(2rem,1.4rem + 2.6vw,3rem)}
h2{font-size:clamp(1.45rem,1.2rem + 1vw,1.85rem)}
h3{font-size:1.2rem}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1rem;padding-left:1.3rem}
li{margin:0 0 .3rem}
dl{margin:0}
dt{font-weight:600;font-size:.88rem;color:var(--ist-soft)}
dd{margin:0}
q{font-style:italic}
blockquote{margin:0}
time{font-variant-numeric:tabular-nums}
svg{max-width:100%}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{text-align:left;vertical-align:top;padding:.5rem .65rem;border-bottom:1px solid var(--ist-stone-2)}
thead th{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ist-soft);border-bottom:2px solid var(--color-accent)}
tbody tr:last-child td{border-bottom:0}
a{color:var(--color-accent);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--ist-red)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--ist-red);outline-offset:2px}
.ist-sprite{display:none}
.ist-sprite symbol{stroke-width:1.75}
.ist-icon{width:1.1em;height:1.1em;flex:none;vertical-align:-.16em;margin-right:.4em;color:var(--color-accent)}
.ist-skip{position:absolute;left:-999px;top:0;background:var(--color-text);color:#fff;padding:.5rem 1rem;z-index:20}
.ist-skip:focus{left:1rem;top:.5rem;color:#fff}
.ist-wrap{max-width:72rem;margin:0 auto;padding:0 16px}
.ist-header{background:var(--ist-card);border-bottom:3px solid var(--color-accent);box-shadow:0 3px 0 0 var(--ist-red-wash);position:relative;z-index:10}
.ist-header>.ist-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.5rem;padding-top:.7rem;padding-bottom:.7rem}
.ist-brand{font-family:var(--font-display);font-stretch:condensed;font-weight:700;font-size:1.45rem;color:var(--color-text);text-decoration:none;letter-spacing:.01em;display:inline-flex;align-items:center;gap:.5rem}
.ist-brand::before{content:"";width:.85rem;height:.85rem;border-radius:2px;background:linear-gradient(135deg,var(--color-accent) 50%,var(--ist-red) 50%)}
.ist-brand:hover{color:var(--color-accent)}
.ist-nav{flex:1 1 auto}
.ist-nav>ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.15rem .2rem}
.ist-nav>ul>li{position:relative;margin:0}
.ist-nav>ul>li>a{display:block;padding:.4rem .6rem;border-radius:var(--ist-radius);color:var(--color-text);text-decoration:none;font-weight:600;font-size:.97rem}
.ist-nav>ul>li>a:hover{background:var(--ist-teal-wash);color:var(--ist-teal-deep)}
.ist-nav>ul>li>a[aria-current]{background:var(--color-accent);color:#fff}
.ist-nav .ist-count{font-weight:500;font-size:.8em;opacity:.85;margin-left:.15em}
.ist-has-sub>a::after{content:"";display:inline-block;margin-left:.35em;border:4px solid transparent;border-top-color:currentColor;vertical-align:-.05em}
.ist-sub{display:none;position:absolute;left:0;top:100%;min-width:15rem;list-style:none;margin:0;padding:.35rem;background:var(--ist-card);border:1px solid var(--ist-line);border-top:3px solid var(--ist-red);border-radius:0 0 var(--ist-radius) var(--ist-radius);box-shadow:0 10px 24px rgba(35,46,56,.14)}
.ist-sub li{margin:0}
.ist-sub a{display:block;padding:.4rem .55rem;border-radius:4px;color:var(--color-text);text-decoration:none;font-size:.94rem}
.ist-sub a:hover{background:var(--ist-teal-wash);color:var(--ist-teal-deep)}
.ist-sub [aria-current]{background:var(--ist-teal-wash);font-weight:700}
.ist-has-sub:hover>.ist-sub,.ist-has-sub:focus-within>.ist-sub{display:block}
.ist-langs{list-style:none;margin:0;padding:0;display:flex;gap:.3rem;font-size:.9rem}
.ist-langs li{margin:0}
.ist-langs a{display:block;padding:.25rem .6rem;border:1px solid var(--ist-line);border-radius:999px;color:var(--color-text);text-decoration:none}
.ist-langs a:hover{border-color:var(--color-accent);color:var(--color-accent)}
.ist-langs [aria-current]{background:var(--color-text);border-color:var(--color-text);color:#fff}
.ist-main{display:block;padding:1.6rem 0 var(--space-section)}
.ist-main:focus{outline:0}
.ist-crumbs{font-size:.88rem;color:var(--ist-soft);margin-bottom:1rem}
.ist-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.ist-crumbs li{margin:0}
.ist-crumbs li+li::before{content:"/";margin:0 .5rem;color:var(--ist-line)}
.ist-footer{background:var(--color-text);color:#e8ebee;padding:2.2rem 0 2.6rem;font-size:.93rem;border-top:4px solid var(--ist-red)}
.ist-footer a{color:#9fd8dc}
.ist-footer a:hover{color:#fff}
.ist-footer-nav{list-style:none;margin:0 0 1.2rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem}
.ist-footer-nav li{margin:0}
.ist-footer-nav [aria-current]{color:#fff;text-decoration:none;font-weight:700}
.ist-footer p{margin:0 0 .7rem}
.ist-asof{color:#c3cbd2;font-size:.88rem}
.ist-intro{font-size:1.05rem}
.ist-lead{font-size:1.14rem;line-height:1.62;margin:0}
.ist-note{font-size:.87rem;color:var(--ist-soft)}
.ist-unknown{color:var(--ist-soft);font-style:italic}
.ist-count{font-variant-numeric:tabular-nums}
h1 .ist-count,h2 .ist-count{font-family:var(--font-sans);font-stretch:normal;font-size:.5em;font-weight:600;vertical-align:.35em;margin-left:.45rem;padding:.1rem .5rem;border-radius:999px;background:var(--ist-teal-wash);color:var(--ist-teal-deep)}
.ist-badge{display:inline-block;font-size:.76rem;font-weight:600;letter-spacing:.02em;padding:.05rem .45rem;border-radius:3px;background:var(--ist-k-wash);color:var(--ist-k)}
.ist-btn{display:inline-flex;align-items:center;gap:.1rem;padding:.48rem .95rem;border:2px solid var(--color-accent);border-radius:var(--ist-radius);background:var(--color-accent);color:#fff;font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer;line-height:1.3}
.ist-btn .ist-icon{color:currentColor}
.ist-btn:hover{background:var(--ist-teal-deep);border-color:var(--ist-teal-deep);color:#fff}
.ist-hero{padding:1.2rem 0 1.6rem;border-bottom:1px solid var(--ist-stone-2);margin-bottom:1.8rem}
.ist-block{margin:0 0 var(--space-section)}
.ist-block>h2{display:flex;align-items:center;flex-wrap:wrap;padding-bottom:.4rem;border-bottom:2px solid var(--ist-stone-2);margin-bottom:.5rem}
.ist-see-all{font-weight:600;font-size:.95rem;text-decoration:none}
.ist-see-all:hover{text-decoration:underline}
.ist-grid{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(16.5rem,1fr));gap:.85rem}
.ist-teaser{margin:0;display:flex;flex-direction:column;gap:.3rem;padding:.85rem 1rem .9rem 1.05rem;background:var(--ist-card);border:1px solid var(--ist-stone-2);border-left:5px solid var(--ist-k);border-radius:var(--ist-radius)}
.ist-teaser-name{font-weight:700;font-size:1.03rem;line-height:1.3;color:var(--color-text);text-decoration:none}
.ist-teaser-name .ist-icon{color:var(--ist-k)}
.ist-teaser-name:hover{color:var(--color-accent);text-decoration:underline}
.ist-teaser-meta{font-size:.87rem;color:var(--ist-soft)}
.ist-teaser-when{font-size:.9rem;font-weight:600;color:var(--color-text)}
.ist-teaser-cues{display:flex;flex-wrap:wrap;gap:.3rem}
.ist-teaser-chess{font-size:.8rem;color:var(--ist-soft);margin-top:auto}
.ist-kind-club{--ist-k:var(--color-accent);--ist-k-wash:var(--ist-teal-wash)}
.ist-kind-cafe_bar{--ist-k:var(--ist-red);--ist-k-wash:var(--ist-red-wash)}
.ist-kind-tournament{--ist-k:var(--ist-cobalt);--ist-k-wash:var(--ist-cobalt-wash)}
.ist-kind-academy,.ist-kind-coach{--ist-k:var(--ist-saffron);--ist-k-wash:var(--ist-saffron-wash)}
.ist-kind-outdoor_tables,.ist-kind-giant_chess,.ist-kind-library_community{--ist-k:var(--ist-moss);--ist-k-wash:var(--ist-moss-wash)}
.ist-kind-shop,.ist-kind-group,.ist-kind-other{--ist-k:var(--ist-plum);--ist-k-wash:var(--ist-plum-wash)}
.ist-kind-hotel_mall{--ist-k:var(--ist-umber);--ist-k-wash:var(--ist-umber-wash)}
.ist-cue{display:inline-block;font-size:.76rem;font-weight:600;padding:.08rem .5rem;border-radius:999px;border:1px solid var(--ist-line);background:var(--color-bg);color:var(--color-text)}
.ist-cue-access,.ist-cue-free{border-color:var(--color-accent);color:var(--ist-teal-deep);background:var(--ist-teal-wash)}
.ist-cue-kids,.ist-cue-beginners{border-color:#d9b46b;color:var(--ist-saffron);background:var(--ist-saffron-wash)}
.ist-cue-closed,.ist-cue-register{border-color:#e0a9a2;color:var(--ist-red);background:var(--ist-red-wash)}
.ist-cue-format{border-color:var(--ist-line);color:var(--ist-soft);background:var(--ist-card)}
.ist-ch-confirmed,.ist-ch-scheduled{color:var(--ist-teal-deep)}
.ist-ch-confirmed_undated{color:var(--ist-soft)}
.ist-ch-not_confirmed,.ist-ch-not_confirmed_nodate{color:var(--ist-saffron)}
.ist-ch-moved,.ist-ch-moved_unknown,.ist-ch-ended{color:var(--ist-red)}
.ist-is-past time{text-decoration:line-through;text-decoration-thickness:1px}
.ist-past{display:inline-block;margin-left:.35em;padding:0 .35em;border-radius:3px;background:var(--ist-stone);color:var(--ist-soft);font-size:.78em;font-weight:700;letter-spacing:.04em}
.ist-facets{list-style:none;margin:0 0 1.2rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}
.ist-facets li{margin:0}
.ist-facets a{display:inline-block;padding:.3rem .75rem;border:1px solid var(--ist-line);border-radius:999px;background:var(--ist-card);color:var(--color-text);text-decoration:none;font-size:.92rem}
.ist-facets a:hover{border-color:var(--color-accent);color:var(--color-accent)}
.ist-facet .ist-count{color:var(--ist-soft);font-size:.85em;margin-left:.2em}
.ist-facets [aria-current]{background:var(--color-accent);border-color:var(--color-accent);color:#fff}
.ist-facets [aria-current] .ist-count{color:#fff}
.ist-group{margin:0 0 1.6rem}
.ist-group-h2{font-size:1.3rem;border-left:4px solid var(--ist-red);padding-left:.55rem}
.ist-about{margin:1.5rem 0 0;border-top:1px solid var(--ist-stone-2);padding-top:.8rem}
.ist-about summary{cursor:pointer;font-weight:700;color:var(--color-accent)}
.ist-slice-about{padding-top:.8rem}
.ist-c960{margin:0 0 var(--space-section);padding:1.4rem 1.5rem;background:var(--ist-card);border:1px solid var(--ist-stone-2);border-top:4px solid var(--color-accent);border-radius:var(--ist-radius)}
.ist-c960 ul{margin-bottom:0}
.ist-c960 p:last-child{margin-bottom:0}
.ist-about-list{margin:0 0 var(--space-section);padding-top:1.2rem;border-top:1px solid var(--ist-stone-2);color:#3a4651}
.ist-about-list h2{font-size:1.35rem}
.ist-cta{padding:1.5rem;background:var(--ist-teal-wash);border-radius:var(--ist-radius);border-left:5px solid var(--ist-red)}
.ist-cta p:last-child{margin-bottom:0;display:flex;flex-wrap:wrap;gap:.6rem}
.ist-card{margin:0}
.ist-card-head{padding-bottom:1.1rem;margin-bottom:1.4rem;border-bottom:2px solid var(--ist-stone-2)}
.ist-card-head h1{display:flex;align-items:flex-start;gap:.1rem}
.ist-card-head h1 .ist-icon{color:var(--ist-k);margin-top:.12em}
.ist-name-local{font-size:1rem;color:var(--ist-soft);margin:0 0 .35rem}
.ist-kind-line{margin:0 0 .6rem;color:var(--ist-soft)}
.ist-cues{list-style:none;margin:0 0 .8rem;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}
.ist-cues li{margin:0}
.ist-status{display:grid;gap:.3rem;padding:.7rem .9rem;background:var(--ist-card);border:1px solid var(--ist-stone-2);border-radius:var(--ist-radius);font-size:.95rem}
.ist-status-line{margin:0}
.ist-status-label{display:inline-block;min-width:4.5rem;font-weight:700;color:var(--ist-soft);font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}
.ist-st-open,.ist-st-operating{color:var(--ist-teal-deep)}
.ist-st-closed{color:var(--ist-red)}
.ist-st-unknown,.ist-st-not_a_venue{color:var(--color-text)}
.ist-stale{color:var(--ist-saffron);font-size:.88em}
.ist-card-body{display:grid;grid-template-columns:minmax(0,1fr);gap:1.6rem}
.ist-card-main h2,.ist-card-side h2{font-size:1.3rem;display:flex;align-items:center}
.ist-card-side{order:-1}
.ist-when,.ist-training,.ist-facts-sec,.ist-evidence,.ist-corrections{margin:0 0 1.6rem}
.ist-location,.ist-contacts{margin:0 0 1.2rem;padding:1rem 1.1rem;background:var(--ist-card);border:1px solid var(--ist-stone-2);border-radius:var(--ist-radius)}
.ist-facts{display:grid;gap:.55rem}
.ist-fact{display:grid;grid-template-columns:minmax(7rem,30%) minmax(0,1fr);gap:.6rem;padding-bottom:.5rem;border-bottom:1px dotted var(--ist-line)}
.ist-fact:last-child{border-bottom:0;padding-bottom:0}
.ist-location .ist-fact{grid-template-columns:minmax(0,1fr);gap:.1rem}
.ist-table-wrap{overflow-x:auto;margin:0 0 1rem;background:var(--ist-card);border:1px solid var(--ist-stone-2);border-radius:var(--ist-radius)}
.ist-sessions td:first-child{white-space:nowrap}
.ist-training ul,.ist-corrections ul,.ist-coaches{padding-left:1.1rem}
.ist-coach{margin-bottom:.4rem}
.ist-evidence-q{padding:.9rem 1.1rem;background:var(--ist-card);border-left:4px solid var(--color-accent);border-radius:0 var(--ist-radius) var(--ist-radius) 0}
.ist-evidence-q p{margin:0 0 .5rem}
.ist-evidence-q footer{font-size:.85rem;color:var(--ist-soft)}
.ist-src-ref{display:inline-block;min-width:1.25rem;margin-left:.2rem;padding:0 .3rem;border-radius:3px;font-size:.72rem;font-weight:700;line-height:1.45;text-align:center;text-decoration:none;vertical-align:.18em;background:var(--ist-stone);color:var(--color-text)}
.ist-src-ref:hover{background:var(--color-accent);color:#fff}
.ist-src-ref.ist-flag-official{background:var(--ist-teal-wash);color:var(--ist-teal-deep)}
.ist-src-ref.ist-flag-secondary{background:var(--ist-cobalt-wash);color:var(--ist-cobalt)}
.ist-src-ref.ist-flag-unverified{background:var(--ist-saffron-wash);color:var(--ist-saffron)}
.ist-contact-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.ist-contact-list li{margin:0;display:flex;align-items:center;flex-wrap:wrap;overflow-wrap:anywhere}
.ist-report{margin:0}
.ist-report .ist-btn{background:transparent;color:var(--ist-red);border-color:var(--ist-red)}
.ist-report .ist-btn:hover{background:var(--ist-red);color:#fff}
.ist-sources{padding-left:1.2rem;font-size:.9rem}
.ist-src-group{margin-bottom:.8rem}
.ist-src-link{font-weight:600;overflow-wrap:anywhere}
.ist-src-group ol,.ist-src-group ul{list-style:none;padding-left:0;margin:.3rem 0 0}
.ist-src-item{margin:0 0 .4rem;padding-left:.7rem;border-left:2px solid var(--ist-stone-2)}
.ist-src-item:target{border-left-color:var(--ist-red);background:var(--ist-red-wash)}
.ist-src-time{color:var(--ist-soft)}
.ist-src-quote{font-style:italic}
.ist-flag{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:0 .3rem;border-radius:3px}
.ist-flag-official{color:var(--ist-teal-deep);background:var(--ist-teal-wash)}
.ist-flag-secondary{color:var(--ist-cobalt);background:var(--ist-cobalt-wash)}
.ist-flag-unverified{color:var(--ist-saffron);background:var(--ist-saffron-wash)}
.ist-not-opened{color:var(--ist-red);font-size:.85rem}
.ist-doc-section{margin:0 0 2rem}
.ist-doc-section h2{padding-top:.6rem;border-top:2px solid var(--ist-stone-2)}
.ist-form{max-width:44rem;display:grid;gap:1.1rem;margin:1.2rem 0}
.ist-fieldset{border:1px solid var(--ist-stone-2);border-radius:var(--ist-radius);padding:1rem 1.1rem 1.2rem;margin:0;background:var(--ist-card);display:grid;gap:.9rem;min-width:0}
.ist-fieldset legend{font-weight:700;padding:0 .4rem}
.ist-modes label{display:flex;gap:.5rem;align-items:center}
.ist-field{display:grid;gap:.25rem}
.ist-label{font-weight:600}
.ist-hint{font-size:.86rem;color:var(--ist-soft)}
.ist-input,.ist-textarea{width:100%;font:inherit;color:inherit;padding:.5rem .65rem;border:1px solid var(--ist-line);border-radius:4px;background:#fff}
.ist-textarea{min-height:7rem;resize:vertical}
select{max-width:100%}
.ist-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ist-submit{justify-self:start;font:inherit;font-weight:700}
.ist-notice{padding:.7rem 1rem;border-radius:var(--ist-radius);font-weight:600}
.ist-notice:empty{display:none}
.ist-notice-ok{background:var(--ist-teal-wash);color:var(--ist-teal-deep)}
.ist-notice-fail{background:var(--ist-red-wash);color:var(--ist-red)}
.ist-notice-sending{background:var(--ist-stone);color:var(--color-text)}
.ist-noscript{padding:.7rem 1rem;background:var(--ist-saffron-wash);border-radius:var(--ist-radius)}
.ist-log td:first-child{white-space:nowrap}
.ist-log-type{font-weight:700;font-size:.85rem}
.ist-type-launch{color:var(--ist-red)}
.ist-type-data{color:var(--color-accent)}
.ist-type-fix{color:var(--ist-saffron)}
.ist-type-copy{color:var(--ist-cobalt)}
.ist-type-method{color:var(--ist-plum)}
.ist-notfound{padding:2rem 0 3rem}
@media (min-width:56rem){
.ist-card-body{grid-template-columns:minmax(0,1fr) 19rem;gap:2.2rem}
.ist-card-side{order:0}
}
@media (max-width:40rem){
body{font-size:1rem}
.ist-header>.ist-wrap{gap:.3rem .8rem}
.ist-nav>ul>li>a{padding:.3rem .45rem;font-size:.92rem}
.ist-sub{position:static;box-shadow:none;min-width:0}
.ist-fact{grid-template-columns:minmax(0,1fr);gap:.1rem}
.ist-c960,.ist-cta{padding:1.1rem}
}
@media print{
.ist-header,.ist-footer,.ist-cta,.ist-report{display:none}
body{background:#fff}
}
