:root {
--jc-max: 1400px; --jc-gutter: clamp(12px, 3vw, 40px); --jc-thumb: 85px;
--jc-gap-x: 22px;
--jc-gap-y: 25px;
--jc-gray: #808080;
--jc-menu: #767676; --jc-para-gap: 22px; --jc-group-gap: 56px; --jc-menu-size: 13px; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #fff; color: #000; font-family: Tahoma, Verdana, Geneva, sans-serif; font-size: 13.3333px; line-height: normal; }
:where(.wp-site-blocks) > * { margin-block-start: 0; margin-block-end: 0; }
a { color: #000; }
a:focus-visible, button:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
img { border: 0; } .jc-page { position: relative; box-sizing: border-box; width: 100%; max-width: calc(var(--jc-max) + 2 * var(--jc-gutter)); margin: 0 auto; padding: 50px var(--jc-gutter) 0; } .jc-logo { padding-left: 15px; line-height: 0; }
.jc-logo img { width: 200px; max-width: 100%; height: auto; }
.jc-hero { margin: 91px auto 0; text-align: center; line-height: 0; }
.jc-hero img { max-width: 100%; height: auto; }
.jc-nav { margin-top: 96px; }
.jc-page--inner .jc-nav { margin-top: 29px; }
.jc-nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; column-gap: 15px; }
.jc-nav a { display: block; padding: 4px clamp(12px, calc(1.25vw - 1px), 22px); color: var(--jc-menu); font-size: var(--jc-menu-size); font-weight: bold; text-decoration: none; letter-spacing: 0.02em; }
.jc-nav a:hover { color: #222; }
.jc-nav a[aria-current="page"] { color: #000; }
.jc-nav__toggle { display: none; }
.jc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; } .jc-main { margin-top: 34px; }
.jc-main p { margin: var(--jc-para-gap) 0; }
.jc-main .wp-block-post-content > :first-child { margin-top: 0; }
.jc-page--home .jc-main p { padding: 0 50px 0 40px; }
.jc-page--inner .jc-main p, .jc-page--inner .jc-main ul, .jc-page--inner .jc-main h4 { padding-left: 7px; padding-right: 7px; }
.jc-quote em { font-style: italic; }
.jc-attrib { display: inline-block; margin-top: 4px; color: var(--jc-gray); font-size: 10.6667px; font-style: normal; }
.jc-attrib em { font-style: italic; }
.jc-page-title { margin-bottom: 20px !important; }
.jc-rules { margin: 0 0 var(--jc-para-gap); padding-left: 47px !important; }
.jc-rules li { margin: 0 0 var(--jc-para-gap); }
.jc-credit { font-size: 10.6667px; } .jc-series-title { font-size: 13.3333px; font-weight: bold; margin: var(--jc-group-gap) 0 34px; }
.wp-block-gallery.jc-series {
display: grid !important;
grid-template-columns: repeat(auto-fill, var(--jc-thumb));
column-gap: var(--jc-gap-x) !important; row-gap: var(--jc-gap-y) !important;
gap: var(--jc-gap-y) var(--jc-gap-x) !important;
margin: 0 0 24px; padding: 0;
}
.wp-block-gallery.jc-series figure.wp-block-image {
width: var(--jc-thumb) !important; height: var(--jc-thumb); margin: 0 !important; flex: none !important; display: block !important;
}
.wp-block-gallery.jc-series figure.wp-block-image a { display: block; width: 100%; height: 100%; }
.wp-block-gallery.jc-series figure.wp-block-image img {
display: block; width: 100% !important; height: 100% !important; object-fit: cover; border: 0;
}
.wp-block-gallery.jc-series figure.wp-block-image a:hover img { opacity: 0.85; } .wp-block-gallery.jc-exhibit { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 24px 80px !important; margin: 40px 0 6px; }
.wp-block-gallery.jc-exhibit figure.wp-block-image { width: auto !important; flex: 0 1 auto !important; margin: 0 !important; }
.wp-block-gallery.jc-exhibit figure.wp-block-image img { width: auto !important; height: auto !important; max-width: 100%; object-fit: contain !important; }
.jc-credit { margin-top: 30px !important; } .jc-footer { margin: 0; padding: 35px 0 35px; text-align: center; color: var(--jc-gray); font-size: 10.6667px; } html.jc-lb-open { overflow: hidden; }
.jc-lb { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center; justify-content: center; }
.jc-lb[hidden] { display: none; }
.jc-lb__overlay { position: absolute; inset: 0; background: rgba(210, 210, 210, 0.92); }
.jc-lb__frame { position: relative; margin: 0; background: #fff; padding: 10px 10px 0; box-shadow: 0 2px 18px rgba(0, 0, 0, 0.18); max-width: calc(100vw - 24px); box-sizing: border-box; }
.jc-lb__stage { position: relative; display: flex; align-items: center; justify-content: center; min-width: 120px; min-height: 120px; }
.jc-lb__img { display: block; max-width: min(1600px, calc(100vw - 44px)); max-height: calc(100vh - 92px); max-height: calc(100dvh - 92px); width: auto; height: auto; cursor: pointer; transition: opacity 0.2s ease; }
.jc-lb.is-loading .jc-lb__img { opacity: 0.25; }
.jc-lb__bar { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 8px; min-height: 34px; }
.jc-lb__title { text-align: center; color: #555; font-size: 11px; padding: 0 4px; overflow-wrap: anywhere; }
.jc-lb__nav { display: flex; }
.jc-lb button { appearance: none; background: none; border: 0; padding: 0; margin: 0; width: 30px; height: 30px; display: inline-grid; place-items: center; color: #888; cursor: pointer; font: inherit; }
.jc-lb button:hover { color: #000; }
.jc-lb button svg { width: 14px; height: 14px; }
.jc-lb__count { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } @media (max-width: 760px) {
.jc-page { padding-top: 24px; }
.jc-hero { margin-top: 32px; }
.jc-nav { margin-top: 32px; }
.jc-page--inner .jc-nav { margin-top: 18px; }
.jc-nav ul { column-gap: 0; row-gap: 2px; }
.jc-nav a { font-size: 16.5px; padding: 6px 6px; } .jc-js .jc-nav { margin: 0; }
.jc-js .jc-nav__toggle {
display: grid; place-items: center; position: absolute; z-index: 20;
top: 18px; right: calc(var(--jc-gutter) - 8px); width: 44px; height: 44px;
padding: 0; margin: 0; border: 0; background: none; cursor: pointer; color: var(--jc-menu);
}
.jc-burger, .jc-burger span, .jc-burger::before, .jc-burger::after { display: block; width: 24px; height: 2px; background: currentColor; border-radius: 1px; }
.jc-burger { position: relative; background: none; }
.jc-burger span { position: absolute; top: 0; left: 0; }
.jc-burger::before, .jc-burger::after { content: ""; position: absolute; left: 0; transition: transform .2s ease, top .2s ease; }
.jc-burger::before { top: -7px; }
.jc-burger::after { top: 7px; }
.jc-nav__toggle[aria-expanded="true"] .jc-burger span { opacity: 0; }
.jc-nav__toggle[aria-expanded="true"] .jc-burger::before { top: 0; transform: rotate(45deg); }
.jc-nav__toggle[aria-expanded="true"] .jc-burger::after { top: 0; transform: rotate(-45deg); }
.jc-nav__toggle:hover, .jc-nav__toggle[aria-expanded="true"] { color: #000; }
.jc-js .jc-nav ul {
display: none; position: absolute; z-index: 19; top: 66px; left: var(--jc-gutter); right: var(--jc-gutter);
flex-direction: column; align-items: stretch; background: #fff; border: 1px solid #ddd; box-shadow: 0 6px 18px rgba(0,0,0,.08); padding: 6px 0;
}
.jc-js .jc-nav.is-open ul { display: flex; }
.jc-js .jc-nav ul li + li { border-top: 1px solid #eee; }
.jc-js .jc-nav a { color: var(--jc-menu); padding: 13px 16px; text-align: left; letter-spacing: 0.04em; }
.jc-js .jc-nav a:hover, .jc-js .jc-nav a[aria-current="page"] { color: #000; }
.jc-main { margin-top: 24px; }
.jc-page--home .jc-main p { padding: 0; }
.jc-page--inner .jc-main p, .jc-page--inner .jc-main ul, .jc-page--inner .jc-main h4 { padding-left: 0; padding-right: 0; }
.jc-rules { padding-left: 22px !important; }
}
@media (max-width: 600px) {
body { font-size: 15px; }
.jc-attrib, .jc-footer, .jc-credit { font-size: 12.5px; }
.jc-series-title { font-size: 15px; margin: 44px 0 14px; } .wp-block-gallery.jc-series { grid-template-columns: repeat(auto-fill, minmax(64px, 1fr)); gap: 8px !important; }
.wp-block-gallery.jc-series figure.wp-block-image { width: 100% !important; height: auto; aspect-ratio: 1 / 1; }
.wp-block-gallery.jc-exhibit { gap: 16px !important; }
.jc-lb__frame { padding: 6px 6px 0; max-width: calc(100vw - 12px); }
.jc-lb__img { max-width: calc(100vw - 24px); max-height: calc(100vh - 84px); max-height: calc(100dvh - 84px); }
.jc-lb button { width: 44px; height: 44px; }
.jc-lb__title { font-size: 12.5px; }
}
@media (prefers-reduced-motion: reduce) { .jc-lb__img, .jc-burger::before, .jc-burger::after { transition: none; } }