:root{--request-accent:#b91957;--request-hover:#941244}
.video-carousel{--video-visible:3;--video-gap:24px}
.video-carousel-viewport{overflow:hidden;touch-action:pan-y}
.video-carousel .ref-video-grid{display:flex;gap:var(--video-gap);overflow:visible;padding:0;margin:0;scroll-snap-type:none}
.video-carousel .ref-video-card{flex:0 0 calc((100% - (var(--video-visible) - 1)*var(--video-gap))/var(--video-visible));min-width:0;scroll-snap-align:none}
.video-carousel-controls{display:flex;align-items:center;gap:24px;border-top:1px solid var(--line);margin-top:24px;padding-top:16px}
.video-carousel-controls>span{font:12px var(--ref-display);min-width:60px}
.video-carousel-controls>p{flex:1;font-size:12px;color:var(--muted);margin:0}
.video-carousel-controls>div{display:flex;gap:8px;margin-left:auto}
.video-carousel-controls button{width:48px;height:48px;background:white;border:1px solid var(--line);font-size:24px}
.video-carousel-controls button:hover:not(:disabled){background:var(--ink);color:white}
.ref-video-section>.container>.ref-text-link{margin-top:28px}
.logo-marquee{overflow:hidden;position:relative;margin-top:48px}
.logo-marquee-track{display:flex;width:max-content}
.js .logo-marquee-track{animation:logo-flow var(--logo-duration,90s) linear infinite}
.logo-marquee-group{display:flex;flex:none;align-items:center;gap:40px;padding-right:40px}
.logo-marquee-group>a{flex:0 0 180px;width:180px;min-height:140px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:12px 8px;text-align:center}
.logo-marquee-group img{width:164px;height:80px;object-fit:contain}
.logo-marquee-group span{font-size:12px;line-height:1.5;color:var(--muted)}
.logo-marquee:hover .logo-marquee-track,.logo-marquee:focus-within .logo-marquee-track,.logo-marquee.is-paused .logo-marquee-track{animation-play-state:paused}
.logo-marquee.is-static{overflow-x:auto}
.logo-marquee.is-static .logo-marquee-track{animation:none}
.logo-marquee.is-static .logo-marquee-group[aria-hidden=true]{display:none}
.logo-marquee-controls{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;font-size:12px;color:var(--muted)}
.logo-marquee-controls button{min-height:44px;padding:8px 16px;border:1px solid var(--line);color:var(--ink);background:white;font-size:12px}
.logo-directory{margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.logo-directory summary{font-size:13px;min-height:48px;padding:16px 0;cursor:pointer}
.logo-directory>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 24px;padding-bottom:24px}
.logo-directory a{font-size:13px;min-height:44px;display:flex;align-items:center;line-height:1.6}
@keyframes logo-flow{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.request-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--request-accent);color:white!important;min-height:64px;padding:18px 24px;font-size:17px;font-weight:600;line-height:1.5;border:1px solid var(--request-accent);box-shadow:0 6px 18px #b919571c;transition:background .18s}
.request-cta:hover{background:var(--request-hover);border-color:var(--request-hover)}
.request-cta:focus-visible{outline:3px solid var(--request-accent);outline-offset:5px}
.request-cta small{display:block;color:white;font-size:12px;font-weight:400;margin-top:6px}
.request-cta>b{font:400 26px var(--ref-display)}
.ref-next-event .request-cta{width:100%;margin-top:24px}
.request-cta-inline{min-height:56px;white-space:nowrap;font-size:15px}
.ref-next-event .request-meaning{font-size:12px;margin:14px 0 0;color:var(--muted)}
.ref-next-event .next-event-date{font:600 18px/1.6 var(--ref-display);color:var(--ink);margin-bottom:12px}
.ref-next-event .next-event-attendance{font-size:13px;line-height:1.8}
.event-source-link{display:inline-flex;min-height:44px;align-items:center;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.upcoming-tag{display:inline-block;font-size:11px;line-height:1.5;background:white;border:1px solid var(--line);padding:6px 10px;margin-top:20px}
.ref-next-event:has(.upcoming-tag) h3{margin-top:16px}
.request-panel{border:1px solid var(--request-accent);background:#fff8fb}
.request-panel .request-cta{width:100%;font-size:16px}
.ref-contact{height:auto;min-height:440px;display:grid;grid-template-columns:1fr 1fr;background:var(--deep);overflow:hidden;color:#fff}
.ref-contact>img{position:static;width:100%;height:100%;min-height:440px;max-height:560px;object-fit:cover;object-position:50% 29%;opacity:1}
.ref-contact>div{align-items:flex-start;text-align:left;padding:56px 48px;background:var(--deep);color:#fff}
.ref-contact h2,.ref-contact .ref-title,.ref-contact .ref-title strong,.ref-contact .ref-title span{color:#fff;text-align:left;font-size:clamp(36px,4vw,56px)}
.ref-contact p{color:#fff;max-width:400px;line-height:1.9}
.ref-contact .ref-small-label{color:#dedede}
.ref-contact .button.light{font-size:15px;padding:14px 28px;min-height:50px;border:1px solid white}
.work-source-link{margin-top:24px;width:100%}
.work-source-note{font-size:12px!important;color:var(--muted);line-height:1.8;margin:12px 0 24px!important}
@media(max-width:900px){.video-carousel{--video-visible:2;--video-gap:20px}.logo-directory>div{grid-template-columns:repeat(2,minmax(0,1fr))}.ref-contact>div{padding:36px 32px}.ref-contact h2,.ref-contact .ref-title,.ref-contact .ref-title strong,.ref-contact .ref-title span{font-size:38px}.ref-guide{align-items:flex-start}.request-cta-inline{font-size:14px;padding:16px 20px}}
@media(max-width:600px){.video-carousel{--video-visible:1;--video-gap:16px}.video-carousel-controls{gap:12px}.video-carousel-controls>p{font-size:11px}.video-carousel-controls button{width:44px;height:44px}.logo-marquee{margin-top:32px}.logo-marquee-group{gap:24px;padding-right:24px}.logo-marquee-group>a{width:150px;flex-basis:150px}.logo-marquee-group img{width:138px;height:72px}.logo-marquee-controls{gap:12px;font-size:11px}.logo-directory>div{grid-template-columns:1fr 1fr;gap:8px 16px}.logo-directory a{font-size:12px}.request-cta{font-size:16px;padding:16px 20px}.ref-guide .request-cta-inline{margin-top:20px;width:100%;font-size:16px}.ref-next-event .next-event-date{font-size:16px}.ref-contact{display:block;min-height:0}.ref-contact>img{height:280px;min-height:0;max-height:none;object-position:50% 31%}.ref-contact>div{padding:36px 28px;min-height:310px}.ref-contact h2,.ref-contact .ref-title,.ref-contact .ref-title strong,.ref-contact .ref-title span{font-size:36px}.ref-contact p:not(.ref-small-label){font-size:14px}.text-tabs{flex-wrap:wrap;gap:8px 18px}.section-toolbar{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.js .logo-marquee-track{animation:none}.logo-marquee{overflow-x:auto}.logo-marquee-group[aria-hidden=true]{display:none}}
.logo-marquee-group>a.logo-surface-dark{background:var(--ink)}
.logo-marquee-group>a.logo-surface-dark span{color:#fff}
.ref-video-poster img:not([src]){visibility:hidden}
.logo-marquee:focus-within{overflow-x:auto}
.logo-marquee:focus-within .logo-marquee-track{animation:none;transform:none}
