@font-face{font-family:zenMaru;src:url(../media/ZenMaruGothic_400Regular-s.p.3eonvjdv9qdcx.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:zenMaru;src:url(../media/ZenMaruGothic_500Medium-s.p.29dmnmvn6k0j8.ttf)format("truetype");font-display:swap;font-weight:500}@font-face{font-family:zenMaru;src:url(../media/ZenMaruGothic_700Bold-s.p.1vgrtisono84f.ttf)format("truetype");font-display:swap;font-weight:700}@font-face{font-family:zenMaru Fallback;src:local(Arial);ascent-override:117.05%;descent-override:29.06%;line-gap-override:0.0%;size-adjust:99.1%}.zenmaru_5b7d4abc-module__731LDG__className{font-family:zenMaru,zenMaru Fallback}.zenmaru_5b7d4abc-module__731LDG__variable{--font-zen-maru:"zenMaru", "zenMaru Fallback"}
:root{--ink:#1e2938;--muted:#65717c;--paper:#fffaf0;--paper-deep:#f8f2e7;--paper-line:#d8c39d;--primary:#4f8fb7;--primary-deep:#2f6f98;--primary-soft:#e8f3f8;--favorite:#db6f87;--success:#447f62;--warning:#9a6a1e;--shadow:0 15px 34px #43301c1f}*{box-sizing:border-box}html{background:var(--paper-deep);scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at 20% 0%, #fffdf7 0, transparent 34rem), var(--paper-deep);font-family:var(--font-zen-maru), "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif;margin:0;line-height:1.75}a{color:inherit}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline-offset:3px;outline:3px solid #e89a37}.skipLink{z-index:99;background:var(--ink);color:#fff;border-radius:.6rem;padding:.7rem 1rem;position:fixed;top:-5rem;left:1rem}.skipLink:focus{top:1rem}.pageShell{width:min(1120px,100% - 2rem);margin-inline:auto}.siteHeader{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f2e7f0;border-bottom:1px solid #785b3733;position:sticky;top:0}.siteHeaderInner{justify-content:space-between;align-items:center;gap:2rem;width:min(1180px,100% - 2rem);min-height:78px;margin:auto;display:flex}.brandLink{color:var(--muted);letter-spacing:.16em;align-items:center;gap:.7rem;font-size:.78rem;text-decoration:none;display:flex}.brandImage{width:132px;height:auto}.siteNav{align-items:center;gap:clamp(1rem,3vw,2rem);font-size:.94rem;font-weight:700;display:flex}.siteNav a{border-bottom:2px solid #0000;text-decoration:none}.siteNav a:hover{color:var(--primary-deep);border-color:var(--primary)}.hero{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:center;gap:clamp(2rem,5vw,4rem);min-height:620px;padding-block:clamp(5rem,10vw,9rem);display:grid}.heroCopy h1,.pageIntro h1,.detailCopy h1{letter-spacing:.03em;margin:.4rem 0 1.2rem;font-size:clamp(2rem,5vw,4rem);line-height:1.3}.heroCopy>p:not(.sectionKicker){max-width:46rem;color:var(--muted);font-size:clamp(1rem,1.5vw,1.14rem)}.sectionKicker{color:var(--primary-deep);letter-spacing:.18em;margin:0;font-size:.78rem;font-weight:700}.heroActions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.primaryAction,.secondaryAction{border:1px solid var(--primary-deep);border-radius:.85rem;justify-content:center;align-items:center;min-height:48px;padding:.65rem 1.35rem;font-weight:700;text-decoration:none;display:inline-flex}.primaryAction{color:#fff;background:var(--primary-deep);box-shadow:0 8px 18px #2f6f982e}.secondaryAction{color:var(--primary-deep);background:#fffaf0c2}.primaryAction:hover{background:#245d82}.secondaryAction:hover{background:var(--primary-soft)}.heroIllustration{justify-content:center;align-items:flex-end;min-height:390px;display:flex;position:relative}.heroDogFrame{width:min(100%,410px);position:relative}.heroDogFrame:before{content:"";inset-inline:0;border-top:2px solid var(--paper-line);position:absolute;top:79.19%}.heroDogFrame img{width:100%;height:auto;display:block;position:relative}.featureBand{background:#fffaf0bd;border-block:1px solid #785b372e;padding-block:4rem}.featureGrid{grid-template-columns:repeat(3,1fr);gap:1.3rem;display:grid}.featureGrid article{border-left:2px solid var(--paper-line);padding:1.5rem}.featureGrid span{color:var(--favorite);font-weight:700}.featureGrid h2{margin:.35rem 0 .5rem;font-size:1.18rem}.featureGrid p{color:var(--muted);margin:0}.listingPage,.detailPage,.legalPage{padding-block:clamp(3rem,7vw,6rem)}.pageIntro{max-width:780px;margin-bottom:2.3rem}.pageIntro h1{font-size:clamp(2rem,5vw,3.25rem)}.pageIntro>p:last-child{color:var(--muted)}.compactIntro{max-width:850px;margin-inline:auto}.filterBar{border:1px solid var(--paper-line);background:#fffaf0e6;border-radius:1rem;grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:.85rem;margin-bottom:2rem;padding:1rem;display:grid;box-shadow:0 8px 22px #43301c0f}.filterBar label{gap:.25rem;display:grid}.filterBar label span{color:var(--muted);font-size:.78rem;font-weight:700}.filterBar input,.filterBar select{width:100%;min-height:44px;color:var(--ink);background:#fffdf8;border:1px solid #c8b99d;border-radius:.65rem;padding:.5rem .7rem}.filterBar button{color:#fff;background:var(--primary-deep);cursor:pointer;border:0;border-radius:.65rem;min-height:44px;padding:.45rem 1rem;font-weight:700}.cardGrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:1.35rem;display:grid}.ticketLink{filter:drop-shadow(0 12px 16px #43301c17);text-decoration:none;display:block}.ticketLink:hover{transform:translateY(-2px)}.ticket{background:var(--paper);-webkit-mask-image:radial-gradient(circle at 0 0,#0000 11px,#000 11.5px),radial-gradient(circle at 100% 0,#0000 11px,#000 11.5px),radial-gradient(circle at 0 100%,#0000 11px,#000 11.5px),radial-gradient(circle at 100% 100%,#0000 11px,#000 11.5px);-webkit-mask-position:0 0,100% 0,0 100%,100% 100%;-webkit-mask-size:51% 51%;-webkit-mask-repeat:no-repeat;-webkit-mask-clip:border-box,border-box,border-box,border-box;-webkit-mask-origin:border-box,border-box,border-box,border-box;-webkit-mask-composite:source-over,source-over,source-over,source-over;mask-composite:add,add,add,add;-webkit-mask-source-type:auto,auto,auto,auto;mask-mode:match-source,match-source,match-source,match-source;position:relative;mask-image:radial-gradient(circle at 0 0,#0000 11px,#000 11.5px),radial-gradient(circle at 100% 0,#0000 11px,#000 11.5px),radial-gradient(circle at 0 100%,#0000 11px,#000 11.5px),radial-gradient(circle at 100% 100%,#0000 11px,#000 11.5px);-webkit-mask-position:0 0,100% 0,0 100%,100% 100%;mask-position:0 0,100% 0,0 100%,100% 100%;-webkit-mask-size:51% 51%;mask-size:51% 51%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-clip:border-box,border-box,border-box,border-box;mask-clip:border-box,border-box,border-box,border-box;-webkit-mask-origin:border-box,border-box,border-box,border-box;mask-origin:border-box,border-box,border-box,border-box;-webkit-mask-composite:source-over,source-over,source-over,source-over;mask-composite:add,add,add,add;-webkit-mask-source-type:auto,auto,auto,auto;mask-mode:match-source,match-source,match-source,match-source}.ticket:after{content:"";pointer-events:none;border:1px dashed #b0895270;border-radius:.55rem;position:absolute;inset:8px}.outingCard{grid-template-columns:minmax(150px,38%) 1fr;height:100%;min-height:230px;display:grid;overflow:hidden}.cardArtwork{min-height:230px;position:relative;overflow:hidden}.cardArtworkImage{object-fit:cover;width:100%;height:100%}.cardArtwork>.cardArtworkImage{position:absolute;inset:0}.cardBody{flex-direction:column;justify-content:center;min-width:0;padding:1.25rem 1.3rem;display:flex}.cardEyebrow{color:var(--primary-deep);justify-content:space-between;align-items:center;gap:.7rem;font-size:.76rem;font-weight:700;display:flex}.status{white-space:nowrap;border:1px solid;border-radius:999px;padding:.12rem .55rem}.status-open{color:var(--success)}.status-full{color:var(--warning)}.status-closed{color:var(--muted)}.cardBody h2{margin:.42rem 0 .5rem;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.45}.dateLine{color:var(--ink);margin:0;font-weight:700}.placeLine{color:var(--muted);align-items:center;gap:.28rem;margin:.22rem 0 .55rem;font-size:.9rem;display:flex}.mapPinIcon{flex:none;width:1em;height:1em}.tagRow{flex-wrap:wrap;gap:.35rem;display:flex}.tagRow span{background:var(--primary-soft);color:#43677c;border-radius:999px;padding:.16rem .55rem;font-size:.76rem}.pagination{justify-content:center;margin-top:2rem;display:flex}.noticePaper,.lockedDetails,.appCta,.legalPaper{border:1px solid var(--paper-line);box-shadow:var(--shadow);background:#fffaf0ed;border-radius:1rem;padding:clamp(1.4rem,4vw,2.4rem)}.noticePaper{text-align:center}.noticePaper .primaryAction{margin-top:1rem}.detailPage{max-width:980px}.detailTicket{filter:drop-shadow(0 18px 24px #43301c1f);grid-template-columns:minmax(260px,42%) 1fr;min-height:460px;display:grid;overflow:hidden}.detailArtwork{min-height:460px}.detailCopy{align-self:center;padding:clamp(1.5rem,4vw,3rem)}.detailCopy h1{font-size:clamp(1.65rem,4vw,2.7rem)}.detailCopy>p:not(.sectionKicker):not(.sourceLine){color:var(--muted)}.detailList{gap:.65rem;margin:1.4rem 0;display:grid}.detailList div{border-bottom:1px solid #b0895240;grid-template-columns:6.5rem 1fr;gap:.8rem;padding-bottom:.5rem;display:grid}.detailList dt{color:var(--muted);font-size:.82rem;font-weight:700}.detailList dd{margin:0}.sourceLine{margin-top:1.2rem;font-size:.82rem}.lockedDetails{margin-top:1.5rem}.lockedDetails h2,.appCta h2{margin-top:0;font-size:1.25rem}.lockedDetails ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.4rem;display:grid}.appCta{background:linear-gradient(120deg,#fffaf0,#e9f4f8);justify-content:space-between;align-items:center;gap:2rem;margin-top:1.5rem;display:flex}.appCta p{color:var(--muted);margin-bottom:0}.appCta .primaryAction{flex:none}.legalPaper{max-width:850px;margin:auto}.legalPaper section+section{border-top:1px solid #b0895247;margin-top:2.2rem;padding-top:1.8rem}.legalPaper h2{font-size:1.18rem}.legalPaper p,.legalPaper li{color:#3d4854}.textLink,.legalPaper a{color:var(--primary-deep);font-weight:700}.siteFooter{background:#efe5d5;border-top:1px solid #785b3738;margin-top:5rem}.siteFooterInner{width:min(1120px,100% - 2rem);margin:auto;padding-block:2.5rem}.footerBrand{letter-spacing:.08em;font-size:1.2rem;font-weight:700}.footerBrand span{color:var(--muted);font-size:.75rem}.footerLinks{flex-wrap:wrap;gap:.7rem 1.4rem;font-size:.82rem;display:flex}.footerContact,.siteFooter small{color:var(--muted);font-size:.8rem}@media (min-width:821px){.heroCopy h1{word-break:keep-all;font-size:clamp(2.8rem,4.1vw,3.4rem)}.heroLine{white-space:nowrap;display:inline-block}}@media (max-width:820px){.siteHeaderInner{min-height:70px}.siteNav{gap:.9rem;font-size:.78rem}.siteNav a:last-child{display:none}.brandImage{width:112px}.brandLink span{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:4rem}.heroIllustration{width:100%;max-width:480px;min-height:300px;margin:auto}.featureGrid{grid-template-columns:1fr}.filterBar{grid-template-columns:1fr 1fr}.filterBar button{grid-column:1/-1}.cardGrid{grid-template-columns:1fr}}@media (max-width:560px){.pageShell{width:min(100% - 1.15rem,1120px)}.siteHeaderInner{width:calc(100% - 1.2rem)}.siteNav a:nth-child(2){display:none}.hero{padding-top:3rem}.heroCopy h1{font-size:2rem}.heroActions{display:grid}.filterBar{grid-template-columns:1fr}.filterBar button{grid-column:auto}.outingCard{grid-template-columns:35% 1fr;min-height:188px}.cardArtwork{min-height:188px}.cardBody{padding:1rem .9rem}.cardEyebrow{align-items:flex-start}.cardBody h2{font-size:1.02rem}.dateLine,.placeLine{font-size:.8rem}.tagRow span:nth-child(n+3){display:none}.detailTicket{grid-template-columns:1fr}.detailArtwork{min-height:250px;max-height:290px}.detailCopy{padding:1.4rem 1.1rem 1.8rem}.detailList div{grid-template-columns:5.5rem 1fr}.lockedDetails ul{grid-template-columns:1fr}.appCta{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (max-width:320px){.siteHeader{position:static}.siteHeaderInner{flex-wrap:wrap;gap:.5rem;padding-block:.5rem}.brandLink{flex:none}.siteNav{flex-wrap:wrap}.siteNav a{white-space:nowrap}.pageShell,.siteFooterInner{overflow-wrap:anywhere}.outingCard,.detailList div{grid-template-columns:minmax(0,1fr)}.cardBody,.detailCopy,.filterBar label{min-width:0}.filterBar input,.filterBar select{width:100%;min-width:0}.cardArtwork{min-height:140px}.lockedDetails ul{padding-left:1rem}}
