/* Language disclosure, shared by homepage, Events and contest. */
.header{position:relative;z-index:5;gap:1.5rem}
.header nav{margin-left:auto}
.language-picker{position:relative;flex-shrink:0;-webkit-text-stroke:0}
.language-toggle{display:flex;align-items:center;gap:.45rem;min-width:5rem;min-height:2.75rem;padding:.5rem .55rem;border:1px solid #31516a;border-radius:.25rem;color:#95d3ff;background:#000609;cursor:pointer}
.language-toggle:hover,.language-toggle[aria-expanded=true]{background:#082c46;border-color:#4b9ace}
.language-code{font-size:.8rem;font-weight:700}
.language-options{position:absolute;right:0;top:calc(100% + .55rem);min-width:11rem;max-height:70vh;overflow-y:auto;overscroll-behavior:contain;padding:.4rem;border:1px solid #4b9ace;border-radius:.3rem;background:#071723;box-shadow:0 12px 32px #0009;z-index:20}
.language-options[hidden]{display:none}
.language-options button{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;width:100%;min-height:2.8rem;padding:.6rem .8rem;background:transparent;border:0;border-radius:.15rem;color:#c6e2fa;text-align:left;cursor:pointer;font-size:.9rem;-webkit-text-stroke:0}
.language-options button:hover,.language-options button:focus-visible{background:#0c3550}
.language-options button[aria-pressed=true]{color:#d8ecfc;background:#0c3550}
.language-options button[aria-pressed=true]::after{content:'✓';color:#62c3ff}
html:lang(zh){font-family:Manrope,'Microsoft YaHei','PingFang SC','Noto Sans SC',sans-serif}
html:lang(zh) body{font-family:inherit;-webkit-text-stroke:.35px var(--stroke)}
html:lang(zh-Hant){font-family:Manrope,'Microsoft JhengHei','PingFang TC','Noto Sans TC',sans-serif}
html:lang(zh) h1,html:lang(zh) h2,html:lang(zh) h3{font-family:inherit;line-height:1.25;letter-spacing:0;word-break:normal}
html:lang(zh) .hero h1{font-size:clamp(3rem,7vw,7.2rem);line-height:1.3;-webkit-text-stroke:1.3px var(--stroke)}
html:lang(zh) .hero h1 span{white-space:nowrap}
html:lang(zh) .studio h2{font-size:clamp(2rem,3.5vw,4rem)}
html:lang(zh) .promo-title{font-size:clamp(1.4rem,2.1vw,2.2rem)}
html:lang(zh) .promo-prize{font-family:'Barlow Condensed',sans-serif}
html:lang(zh) .contest-hero h1{font-size:clamp(2.8rem,4.8vw,5.5rem)}
html:lang(zh) .contest-page h2{font-size:clamp(2.2rem,3.8vw,4rem)}
html:lang(zh) .category-card h3{font-size:clamp(1.8rem,2.8vw,3.2rem)}
html:lang(zh) .steps h3,html:lang(zh) .eligibility h3{font-size:1.5rem}
html:lang(zh) .dates strong{font-family:inherit;font-size:2.3rem;font-weight:700;line-height:1.3}
html:lang(zh) .events-hero h1{font-size:clamp(3rem,6vw,6rem)}
html:lang(zh) .event-copy h2{font-size:clamp(2rem,3.8vw,4rem)}
html:lang(zh) .button{white-space:normal;text-align:center}
@media(max-width:760px){.header .language-picker{margin-left:auto}.header nav{margin-left:0}.language-toggle{min-width:4.5rem}.header{gap:1rem}.language-options{min-width:10rem}html:lang(zh) .hero h1{font-size:clamp(2.7rem,10vw,4.2rem)}html:lang(zh) .contest-hero h1{font-size:clamp(2.8rem,10vw,4rem)}html:lang(zh) .contact h2{font-size:3.5rem}html:lang(zh) .game h2{font-size:3rem}html:lang(zh) .brand{font-size:1rem}}

/* Local typefaces and flexible wrapping for the additional languages. */
html:lang(ja){font-family:Manrope,'Yu Gothic','Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif}
html:lang(ko){font-family:Manrope,'Malgun Gothic','Apple SD Gothic Neo','Noto Sans KR',sans-serif}
html:is(:lang(ja),:lang(ko)) body{font-family:inherit;-webkit-text-stroke:.35px var(--stroke)}
html:is(:lang(ja),:lang(ko)) h1,html:is(:lang(ja),:lang(ko)) h2,html:is(:lang(ja),:lang(ko)) h3{font-family:inherit;line-height:1.3;letter-spacing:0}
html:is(:lang(ja),:lang(ko)) .hero h1{font-size:clamp(2.5rem,5.6vw,6rem);line-height:1.4;-webkit-text-stroke:1.3px var(--stroke)}
html:is(:lang(ja),:lang(ko)) .contest-hero h1{font-size:clamp(2.5rem,4.8vw,5.5rem)}
html:is(:lang(ja),:lang(ko)) .contest-page h2,html:is(:lang(ja),:lang(ko)) .event-copy h2{font-size:clamp(2rem,3.6vw,3.8rem)}
html:is(:lang(ja),:lang(ko)) .category-card h3{font-size:clamp(1.8rem,2.8vw,3rem)}
html:is(:lang(ja),:lang(ko)) .studio h2{font-size:clamp(2rem,3.2vw,3.5rem)}
html:is(:lang(ja),:lang(ko)) .steps h3,html:is(:lang(ja),:lang(ko)) .eligibility h3{font-size:1.5rem}
html:is(:lang(ja),:lang(ko)) .dates strong{font-family:inherit;font-size:2.3rem;line-height:1.3}
html:is(:lang(ja),:lang(ko)) .events-hero h1{font-size:clamp(2.7rem,5.4vw,5.5rem)}
html:is(:lang(ja),:lang(ko)) .promo-title{font-size:clamp(1.25rem,1.9vw,2rem)}
html:is(:lang(ja),:lang(ko)) .promo-prize{font-family:'Barlow Condensed',sans-serif}
html:lang(ko) p{word-break:keep-all;overflow-wrap:anywhere}
html:lang(ru) h1,html:lang(ru) h2,html:lang(ru) h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.025em}
html:lang(ru) .hero h1{font-size:clamp(2rem,6.4vw,7rem)}
html:lang(ru) .contest-hero h1{font-size:clamp(2.3rem,4.2vw,4.7rem)}
html:lang(ru) .contest-page h2,html:lang(ru) .event-copy h2,html:lang(ru) .studio h2{font-size:clamp(2rem,3.3vw,3.7rem)}
html:lang(ru) .category-card h3{font-size:clamp(1.7rem,2.6vw,2.8rem)}
html:lang(ru) .steps h3,html:lang(ru) .eligibility h3{font-size:1.4rem}
html:lang(ru) .events-hero h1{font-size:clamp(2.4rem,5.5vw,6rem)}
html:lang(ru) .promo-title{font-size:clamp(1.2rem,1.9vw,2rem)}
html:lang(ru) .promo-prize{font-family:'Barlow Condensed',sans-serif}
html:is(:lang(fr),:lang(de),:lang(es),:lang(pt)) .hero h1{font-size:clamp(3rem,8vw,8.6rem)}
html:not(:lang(en)) .button{white-space:normal;text-align:center}
html:not(:lang(en)) .hero-bottom .button{max-width:22rem}
html:not(:lang(en)) .category-card,html:not(:lang(en)) .event-copy,html:not(:lang(en)) .promo-copy{min-width:0;overflow-wrap:anywhere;hyphens:auto}
html:not(:lang(en)) .reward{flex-wrap:wrap;gap:.65rem 1rem}
html:not(:lang(en)) .steps li,html:not(:lang(en)) .eligibility-grid>div,html:not(:lang(en)) .dates>div{min-width:0;overflow-wrap:anywhere;hyphens:auto}
html:not(:lang(en)) .section-heading{align-items:center}
html:not(:lang(en)) .prize-banner>p{min-width:0}
html:not(:lang(en)) .hero-art figcaption{letter-spacing:.04em}
html:is(:lang(fr),:lang(de),:lang(ru),:lang(es),:lang(pt)) .submit-action .button{font-size:1.15rem;gap:1rem}
@media(max-width:1050px) and (min-width:761px){html:not(:lang(en)) .prize-banner{grid-template-columns:auto 1fr;gap:1rem 2rem}html:not(:lang(en)) .submit-action{grid-column:2;grid-row:1 / span 2;justify-self:end}html:not(:lang(en)) .prize-banner>p{grid-column:1}}
@media(max-width:760px){html:is(:lang(fr),:lang(de),:lang(es),:lang(pt)) .hero h1{font-size:clamp(2.5rem,9.5vw,5rem)}html:lang(ru) .hero h1{font-size:clamp(1.8rem,7.1vw,4rem)}html:is(:lang(ja),:lang(ko)) .hero h1 span{white-space:nowrap}html:not(:lang(en)) .section-heading{display:block}html:not(:lang(en)) .section-label{flex-wrap:wrap}html:not(:lang(en)) .hero-art figcaption{flex-wrap:wrap}html:is(:lang(ja),:lang(ko),:lang(ru)) .contact h2{font-size:3rem}html:lang(ru) .contest-nav{gap:.5rem 1rem}html:not(:lang(en)) .event-promo{overflow-wrap:anywhere}}

/* A compact second entry action after the category cards, without repeating prizes/dates. */
@media(max-width:760px){html:is(:lang(ja),:lang(ko)) .hero h1{font-size:clamp(1.65rem,7.3vw,3.5rem)}}
.contest-page .category-submit{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2rem;padding-top:1.6rem;border-top:1px solid #7aaed2}
.contest-page .category-submit p{margin:0;color:#28475e;font-size:.9rem}
.contest-page .category-submit .button{background:#053252;color:#d8ecfc;border-color:#4b9ace;font-size:1.15rem;font-weight:800;min-width:15rem;max-width:100%;padding:1rem 1.8rem;min-height:3.8rem;gap:2rem}
.contest-page .category-submit .button:hover{background:#0b466b}
@media(max-width:760px){.contest-page .category-submit{flex-direction:column;align-items:stretch;gap:.9rem;margin-top:1.5rem;padding-top:1.4rem}.contest-page .category-submit p{text-align:center;font-size:.8rem}.contest-page .category-submit .button{width:100%;min-width:0}}
