/* EWA identity: the supplied question-mark logo, charcoal, amber and ivory. */
:root{--ink:#1b2226;--muted:#62686b;--paper:#fffef9;--cream:#f3f1e9;--amber:#ffb51f;--line:#deded6;--focus:#885300;--radius:22px;--ewa-charcoal:#1b2226;--ewa-amber:#ffb51f;--ewa-ivory:#fffef9;color-scheme:light}
body{background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
h1,h2,h3{font-weight:800;letter-spacing:-.045em}em{font-family:inherit;font-weight:800;font-style:italic;letter-spacing:inherit}
.brand{gap:12px}.brand-logo{width:132px;height:92px;object-fit:cover;object-position:center}.header{min-height:108px;border-bottom:1px solid var(--line)}.nav-contact{border:0;background:var(--amber);font-weight:700;border-radius:8px}.nav a[aria-current="page"]{text-decoration-color:var(--focus)}
.button{border-radius:8px;min-height:54px}.button.dark{background:var(--ink)}.button.dark:hover{background:#333d43}.button.amber{background:var(--amber);color:var(--ink)}.button.amber:hover,.nav-contact:hover{background:#ffc64e}
.hero,.service-hero{background:var(--ink);color:var(--paper);border-radius:28px;padding:clamp(24px,4vw,52px);margin-block:32px 64px;gap:clamp(28px,4vw,60px);position:relative;overflow:hidden;isolation:isolate}
.hero::before,.service-hero::before{content:"";position:absolute;inset:0 auto auto 0;width:96px;height:5px;background:var(--amber)}
.hero h1,.service-copy h1{font-size:clamp(2.4rem,4.6vw,4.35rem);letter-spacing:-.055em}.hero h1 em,.service-copy h1 em{color:var(--amber)}.hero .lead,.service-hero .lead{color:#d1d5d6}.hero .text-link{color:var(--paper)}.hero a:focus-visible,.service-hero a:focus-visible{outline-color:var(--amber)}
.hero-visual,.service-visual{height:clamp(300px,34vw,440px);border-radius:18px}.hero-brand{display:flex;align-items:center;justify-content:center;background:var(--paper)}.hero-brand>img{width:100%;height:100%;object-fit:contain;object-position:center}.quiz-brand-panel{background:var(--paper);padding:12px 24px 22px;gap:0}.quiz-brand-panel>img{width:min(100%,350px);max-height:calc(100% - 30px);object-fit:contain;mix-blend-mode:normal}.quiz-topics{color:var(--muted);font-size:.8rem;gap:8px 14px}.service-photo-label{color:var(--paper)}
.breadcrumb{padding-top:20px}.breadcrumb+.service-hero{margin-top:14px}.formats{border-top:0;padding-top:52px}.format-grid{border-top:0;gap:22px}.format{background:var(--cream);border-radius:16px;padding:28px;border:1px solid transparent}.format+.format{border-top:0}.format-number{color:#815000;font-weight:800;letter-spacing:.15em}.format .text-link{margin-top:28px}.format p{max-width:40ch}.related-services{padding-top:64px}.event-rows{border-color:var(--line)}.row-number{font-size:1.1rem;color:#885300;font-weight:800}
.schedule-section{background:var(--cream)}.schedule-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.schedule-heading h2{max-width:18ch}.game-card{border:1px solid var(--line);border-radius:20px}.game-date{color:#835100}.game-art{background:var(--ink);color:var(--paper);border-color:var(--amber)}.game-art::after{border-color:#ffb51f40;box-shadow:0 0 0 24px #ffb51f06,0 0 0 48px #ffb51f04}.game-art-top{letter-spacing:.09em}.game-art-logo{width:100px;height:64px;object-fit:cover;border-radius:8px;background:var(--paper)}.game-art-date{color:#ffd074}.game-art-title{font-style:italic;max-width:11ch}.game-art-music{background:var(--amber);color:var(--ink);border-color:var(--ink)}.game-art-music .game-art-date{color:var(--ink)}.game-art-music::after{border-color:#1b222655;box-shadow:0 0 0 24px #1b222608,0 0 0 48px #1b222604}.game-art-bottom{line-height:1.5}.game-action .button.dark{background:var(--amber);color:var(--ink)}.game-action .button.dark:hover{background:#ffc64e}
.feedback-section{background:var(--ink);color:var(--paper)}.feedback-intro .section-copy,.feedback-intro .quiet,.feedback-section .field-hint,.feedback-section .form-notice{color:#c7cccf}.feedback-form input,.feedback-form select,.feedback-form textarea{border-color:#535c61;border-radius:8px;background:#fffef9;color:var(--ink)}.feedback-section .form-status.is-error{color:#ffcbbf}.feedback-section :focus-visible{outline-color:var(--amber)}.feedback-section .form-status{color:var(--paper)}
.footer{border-top:0;min-height:160px}.footer-brand .brand-logo{width:118px;height:78px}.footer .brand-tagline{font-size:.78rem;margin-top:0}.footer-links{color:var(--ink)}.feedback-section+.footer{padding-top:32px}
@media(hover:hover) and (pointer:fine){.format:hover{border-color:#aa8b44;background:#f7f3e7}.format:hover .text-link{color:#815000}}
@media(max-width:780px){.header{min-height:88px}.brand-logo{width:114px;height:80px}.menu-toggle{border-color:#b6b9b8;border-radius:8px}.hero,.service-hero{margin-block:20px 44px;border-radius:20px;padding:26px 22px;gap:28px}.hero h1,.service-copy h1{font-size:clamp(2.2rem,8vw,3.65rem)}.hero-visual,.service-visual{height:auto;min-height:0;aspect-ratio:1.25}.quiz-brand-panel{aspect-ratio:1.1}.quiz-brand-panel>img{width:270px;height:auto;max-height:calc(100% - 28px)}.hero .lead,.service-hero .lead{font-size:1rem}.hero .hero-actions{gap:16px}.hero .button,.service-copy .button{width:100%;justify-content:center;gap:12px}.format-grid,.format-grid.two-services{gap:16px}.format{padding:24px}.schedule-heading{display:block}.schedule-city{margin-top:12px}.footer{gap:20px}.game-art-title{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* The detail rows use the same card treatment as the service tiles. */
.event-rows{display:grid;gap:14px;border:0}.event-rows article{padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--cream)}.city-links a{border-radius:12px;background:var(--paper)}
@media(max-width:780px){.event-rows article{padding:22px 18px}}
/* Shared EWA interaction language. Decorative loops run only during hover. */
:root{--ewa-ease:cubic-bezier(.2,.7,.2,1)}
.button,.nav-contact,.menu-toggle,.site-header nav a:last-child{transition:transform .22s var(--ewa-ease),box-shadow .22s var(--ewa-ease),background-color .22s,border-color .22s}
.format,.game-card,.city-links a,.portal .panel,.event-rows article{transition:transform .28s var(--ewa-ease),box-shadow .28s var(--ewa-ease),border-color .24s,background-color .24s}
.fa-icon{transition:translate .22s var(--ewa-ease),transform .22s var(--ewa-ease),color .22s}
.brand-logo,.ewa-wordmark img{transition:transform .3s var(--ewa-ease)}
.game-art::after{transition:transform .5s var(--ewa-ease)}
.game-art::before{content:"";position:absolute;right:56.5px;top:161.5px;width:7px;height:7px;border-radius:50%;background:#ffd074;z-index:-1;transform:rotate(-135deg) translateX(95px);box-shadow:0 0 0 5px #ffb51f12;pointer-events:none}
.game-art-music::before{background:#1b2226;box-shadow:0 0 0 5px #1b22260d}
@keyframes ewa-orbit{from{transform:rotate(-135deg) translateX(95px)}to{transform:rotate(225deg) translateX(95px)}}
@keyframes ewa-rings{0%,100%{transform:scale(1);opacity:.7}50%{transform:scale(1.065);opacity:1}}
.row-number{transition:color .22s}
.button:not(:disabled):not([aria-disabled="true"]):focus-visible,.nav-contact:focus-visible,.site-header nav a:last-child:focus-visible{box-shadow:0 5px 18px #1b222621}
.format:focus-visible,.game-card:focus-within,.city-links a:focus-visible,.portal .panel:focus-within{border-color:#b8882b;box-shadow:0 8px 26px #1b222610}
@media(hover:hover) and (pointer:fine){
 .game-art::before{animation:ewa-orbit 9s linear infinite paused}
 .button:not(:disabled):not([aria-disabled="true"]):hover,.nav-contact:hover,.menu-toggle:hover,.site-header nav a:last-child:hover{transform:translateY(-2px);box-shadow:0 7px 18px #1b222626}
 .format:hover,.game-card:hover,.city-links a:hover{transform:translateY(-5px);border-color:#b8882b;box-shadow:0 14px 32px #1b222614}
 .portal .panel:hover{border-color:#baa36f;box-shadow:0 8px 26px #1b22260e}
 .event-rows article:hover{background:#f7f3e7;border-color:#baa36f}
 .event-rows article:hover .row-number{color:#5c3b00}
 .button:not(:disabled):not([aria-disabled="true"]):hover .fa-icon,.text-link:hover .fa-icon,.nav-contact:hover .fa-icon,.format:hover .text-link .fa-icon,.schedule-city a:hover .fa-icon{translate:3px 0}
 .game-address:hover .fa-icon{translate:2px -2px}
 .brand:hover .brand-logo,.ewa-wordmark:hover img{transform:scale(1.035) rotate(-1deg)}
 .game-card:hover .game-art::after{animation:ewa-rings 3.6s ease-in-out infinite}
 .game-card:hover .game-art::before{animation-play-state:running}
}
.button:not(:disabled):not([aria-disabled="true"]):active,.nav-contact:active,.menu-toggle:active,.site-header nav a:last-child:active{transform:translateY(1px) scale(.985);box-shadow:none;transition-duration:.1s}
.button:disabled,.button[aria-disabled="true"]{transform:none;box-shadow:none}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .button,.nav-contact,.menu-toggle,.site-header nav a:last-child,.format,.game-card,.city-links a,.portal .panel,.event-rows article,.fa-icon,.brand-logo,.ewa-wordmark img,.game-art::after,.row-number{transition:none!important}
 .button,.nav-contact,.menu-toggle,.site-header nav a:last-child,.format,.game-card,.city-links a,.brand-logo,.ewa-wordmark img,.game-art::after{transform:none!important}
 .fa-icon{translate:none!important}
 .game-art::before,.game-art::after{animation:none!important}
}

.events-photo>img,.catering-photo>img{object-position:center}

/* Explain the quiz before asking a visitor to register. Native disclosures work without JavaScript. */
.quiz-facts{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px;margin:26px 0 0;padding-top:20px;border-top:1px solid #ffffff30}
.quiz-facts>div{display:flex;flex-direction:column-reverse;align-items:flex-start;justify-content:end;gap:4px;min-width:0}.quiz-facts dt{font-size:.8rem;color:#d1d5d6;line-height:1.3}.quiz-facts dd{font-size:1.7rem;font-weight:800;line-height:1.2;color:var(--paper);margin:0;white-space:nowrap}.quiz-facts>div:last-child dd{font-size:1.25rem}
.quiz-demo{min-width:0;padding:clamp(24px,3vw,38px);border-radius:20px;background:var(--paper);color:var(--ink);align-self:center}.quiz-eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#825000;margin-bottom:12px}.quiz-demo h2{font-size:clamp(1.7rem,2.6vw,2.3rem);max-width:16ch}.quiz-demo-question{font-size:clamp(1.1rem,1.65vw,1.4rem);line-height:1.5;margin-top:24px;font-weight:700}.quiz-demo-hint{color:var(--muted);font-size:.9rem;line-height:1.5;margin-top:16px}.quiz-demo-note{font-size:.76rem;line-height:1.5;color:var(--muted);margin-top:20px}
.quiz-answer{margin-top:22px}.quiz-answer summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:12px 16px;background:var(--amber);border-radius:8px;cursor:pointer;list-style:none;font-weight:700;line-height:1.4}.quiz-answer summary::-webkit-details-marker,.quiz-faq summary::-webkit-details-marker{display:none}.quiz-answer summary::marker,.quiz-faq summary::marker{content:""}.quiz-answer summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.quiz-answer .answer-open,.quiz-answer[open] .answer-closed{display:none}.quiz-answer[open] .answer-open{display:inline}.quiz-answer[open] summary .fa-icon,.quiz-faq details[open] summary .fa-icon{transform:rotate(180deg)}.quiz-answer-body{padding-top:16px;line-height:1.6;font-size:.95rem}.quiz-answer-body strong{display:block;margin-bottom:4px}
.service-copy>.text-link{display:flex;color:var(--paper);margin-top:16px;width:fit-content}.hero .hero-actions{align-items:center}.hero .hero-actions .text-link{margin-top:16px}
.quiz-explainer{padding-bottom:var(--section);scroll-margin-top:24px}.quiz-explainer .section-copy{max-width:75ch}.quiz-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0}.quiz-steps li{border:1px solid var(--line);border-radius:18px;padding:28px;background:var(--cream)}.quiz-step-number{font-size:.9rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--amber);margin-bottom:22px}.quiz-steps h3{font-size:1.3rem;line-height:1.2;letter-spacing:-.025em}.quiz-steps p{color:var(--muted);margin-top:14px;line-height:1.6}
.quiz-formats{margin-top:40px}.quiz-formats>h3{font-size:1.6rem;margin-bottom:22px}.quiz-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.quiz-format-grid article{border-top:3px solid var(--amber);padding-top:20px}.quiz-format-grid h4{font-size:1.12rem;line-height:1.4;margin:0 0 10px;font-weight:800}.quiz-format-grid article>p:last-child{color:var(--muted);max-width:59ch}
.quiz-solo{display:flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid #d5b46f;border-radius:18px;padding:28px;margin-top:36px;background:#fff8e7}.quiz-solo h3{font-size:1.35rem}.quiz-solo p{color:var(--muted);margin-top:10px;max-width:70ch;font-size:.96rem}.quiz-solo .button{flex-shrink:0}
.quiz-faq{padding-top:var(--section)}.quiz-faq .section-top{margin-bottom:26px}.quiz-faq details{border-bottom:1px solid var(--line)}.quiz-faq details:first-of-type{border-top:1px solid var(--line)}.quiz-faq summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:1.07rem;line-height:1.4;font-weight:700;list-style:none}.quiz-faq details>div{padding:0 32px 24px 0;max-width:80ch;color:var(--muted)}.quiz-faq details>div .text-link{color:var(--ink);margin-top:12px}
@media(hover:hover) and (pointer:fine){.quiz-answer summary:hover{background:#ffc64e}.quiz-faq summary:hover{color:#825000}.quiz-steps li:hover{border-color:#baa36f;background:#f7f3e7}}
@media(max-width:900px){.quiz-steps{gap:16px}.quiz-steps li{padding:22px}.quiz-solo{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:780px){.quiz-demo{padding:24px 22px}.quiz-demo h2{max-width:none}.quiz-facts{margin-top:22px;gap:8px}.quiz-facts dd{font-size:1.5rem}.quiz-facts>div:last-child dd{font-size:1.12rem}.quiz-facts dt{font-size:.75rem}.quiz-steps,.quiz-format-grid{grid-template-columns:1fr}.quiz-steps li{padding:24px}.quiz-step-number{margin-bottom:16px}.quiz-steps h3{font-size:1.3rem}.quiz-formats{margin-top:30px}.quiz-format-grid{gap:26px}.quiz-solo{padding:24px;margin-top:28px}.quiz-solo .button{width:100%;justify-content:space-between}.quiz-faq summary{font-size:1rem}.quiz-faq details>div{padding-right:0}.service-copy>.text-link{margin-top:14px}.hero .hero-actions .text-link{margin-top:0}}
