.place-dot{display:inline-block;flex:none;width:8px;height:8px;border-radius:50%;background:var(--place-color,var(--accent))}
.outing-list{display:flex;flex-direction:column;gap:12px}.outing-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:16px;align-items:start;position:relative;isolation:isolate}.outing-date{text-align:center;line-height:1.1}.outing-date>b{display:block;font-size:40px;line-height:1}.outing-date>span{display:block;font-size:15px;margin-top:4px}.outing-date>small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.outing-date>strong{display:block;font-size:19px;margin-top:12px}.outing-date>.outing-date-end{margin-top:12px}.outing-picture{display:block;position:relative;flex:none;overflow:hidden;border-radius:10px;background:var(--place-color,var(--accent))}.outing-card>.outing-picture{width:150px;height:112px}.outing-initial{display:flex;width:100%;height:100%;justify-content:center;align-items:center;color:white;font-size:38px;font-weight:600}.outing-age{position:absolute;top:6px;right:6px;padding:2px 5px;border-radius:6px;background:white;color:var(--text);font-size:12px;font-weight:600;line-height:1.4;box-shadow:0 1px 2px #0003}.outing-card-copy{grid-column:1/-1;min-width:0}.outing-card-copy h2{font-size:20px;line-height:1.3;margin-bottom:6px;overflow-wrap:anywhere}.outing-venue{color:var(--muted);font-size:15px;margin-bottom:10px;overflow-wrap:anywhere}.outing-buy{display:flex;gap:8px 14px;align-items:baseline;flex-wrap:wrap}.outing-price{font-size:17px;color:var(--text);font-weight:600;white-space:nowrap}.outing-price.free{font-size:14px;padding:3px 10px;border-radius:24px;background:#E1EEEF;color:var(--accent)}.outing-buy>a{font-size:14px;font-weight:600;text-decoration:none;min-height:32px;display:inline-flex;align-items:center}.outing-credit{line-height:1.8}
.outing-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.outing-heading h2{margin-bottom:0}.outing-heading .more-link{font-size:13px}.outing-home-strip{gap:12px;scrollbar-width:none;scroll-snap-type:x proximity;padding:2px 0 10px}.outing-home-strip::-webkit-scrollbar{display:none}.outing-home-card{display:flex;align-items:flex-start;gap:12px;flex:0 0 88%;min-width:0;padding:12px;color:var(--text);text-decoration:none;scroll-snap-align:start}.outing-home-card>.outing-picture{width:72px;height:72px}.outing-home-card .outing-age{top:4px;right:4px;font-size:11px}.outing-home-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.outing-home-date{font-size:11px;color:var(--muted)}.outing-home-date>b{font-size:20px;color:var(--text)}.outing-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:14px;line-height:1.3}.outing-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;color:var(--muted)}.outing-meta .outing-price{font-size:12px}.outing-meta .outing-price.free{padding:1px 6px}.outing-ribbon>.scroll-arrow-prev{left:0;right:auto;display:none}.outing-ribbon.can-scroll-back>.scroll-arrow-prev{display:block}.outing-mini{color:var(--text);text-decoration:none}.outing-mini .event-content{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.outing-mini .event-date{display:block}.outing-mini .outing-price{font-size:13px}.outing-mini[data-external]::after{content:none}
@media(min-width:650px){.outing-card{grid-template-columns:84px 150px minmax(0,1fr);gap:18px;padding:18px}.outing-card-copy{grid-column:auto}}
@media(min-width:900px){.outing-home-card{flex-basis:calc((100% - 12px)/2)}.outing-home-card>.outing-picture{width:84px;height:84px}.outing-title{display:block;overflow:visible;-webkit-line-clamp:unset}}
@media(max-width:899px){.outing-ribbon>.scroll-arrow,.outing-ribbon.can-scroll-back>.scroll-arrow-prev{display:none}}
.outing-card-link{color:inherit;text-decoration:none}.outing-card-link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:14px}.outing-card .outing-buy>a{position:relative;z-index:2}
.event-detail{padding:18px;display:grid;gap:18px}.event-detail>.outing-picture{width:100%;height:220px}.event-detail-copy{min-width:0}.event-kind{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.event-detail h1{font-size:24px;line-height:1.25;margin:6px 0 12px;overflow-wrap:anywhere}.event-when{font-size:26px;font-weight:600;line-height:1.25}.event-when>small{display:block;color:var(--muted);font-size:14px;font-weight:400;margin-top:4px}.event-facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;margin:16px 0}.event-facts dt{color:var(--muted)}.event-facts dd{margin:0;overflow-wrap:anywhere}.event-banner{padding:12px 14px;border-radius:12px;font-weight:600}.event-banner>small{display:block;font-size:13px;font-weight:400;margin-top:4px}.event-banner-past{background:var(--secondary);color:var(--muted)}.event-banner-cancelled{background:var(--soon);color:#9A4508}.event-detail-past>.outing-picture,.event-detail-past .event-when{opacity:.55}.event-description{line-height:1.65;overflow-wrap:anywhere}.event-description p{margin:0 0 12px}.event-description .event-description-source{margin:6px 0 0}.event-description ul,.event-description ol{padding-left:22px}
@media(min-width:650px){.event-detail{grid-template-columns:220px minmax(0,1fr);gap:22px}.event-detail>.outing-picture{height:300px}}

.event-thumb-frame{display:block;width:56px;height:56px;overflow:hidden;border-radius:9px}
.outing-image{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-size:cover;background-position:center;transform-origin:50% 50%;transform:translate3d(0,0,0) scale(1);will-change:transform;backface-visibility:hidden}.outing-image>picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.outing-image img{display:block;width:100%;height:100%;max-width:var(--image-width,100%);max-height:var(--image-height,100%);object-fit:contain;object-position:center}.event-thumb-frame .event-thumb{border-radius:0}.event-related-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.event-related-card{width:100%}
@media(min-width:900px){.event-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(hover:hover) and (pointer:fine) and (min-width:801px){.outing-image{transition:transform .25s}.outing-card:hover .outing-image,.outing-home-card:hover .outing-image,.outing-mini:hover .outing-image{transform:translate3d(0,0,0) scale(1.08)}.event-detail .outing-buy>a:hover{text-decoration:underline dashed;text-underline-offset:3px}}
@media(prefers-reduced-motion:reduce){.outing-image{transition:none!important}}

.outing-card a,.outing-home-card,.outing-home-card *,.outing-mini,.outing-mini *{text-decoration:none!important}
.outing-home-grid{display:none}
@media(min-width:900px){.outing-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:2px 0 10px}.outing-home-grid>p{grid-column:1/-1}.outing-home-mobile{display:none}}
.outing-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.outing-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:var(--card,#fff);color:var(--text);font-size:14px;text-decoration:none}.outing-pill.active{background:var(--accent);border-color:var(--accent);color:#fff}.outing-pill.active .place-dot{box-shadow:0 0 0 2px #fff}.outing-place-info{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 18px;margin:0}.outing-place-info dt{color:var(--muted)}.outing-place-info dd{margin:0;overflow-wrap:anywhere}.outing-place-hours{white-space:pre-wrap}.outing-place-note{display:block;margin-top:4px}.event-place-link{color:var(--text);text-decoration:underline dashed;text-decoration-color:var(--muted);text-underline-offset:3px}.event-related-all{display:inline-block;margin-top:12px}
.outing-pill:hover{text-decoration:none}
@media(hover:hover) and (pointer:fine){.event-place-link:hover{color:var(--accent);text-decoration:underline dashed;text-decoration-color:var(--accent);text-underline-offset:3px}}
@media(max-width:480px){.outing-place-info{grid-template-columns:minmax(0,1fr);gap:2px}.outing-place-info dd+dt{margin-top:8px}}
