@font-face{font-family:GFAReference;src:url('/assets/reference-font.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;color:#f8f8f8;background:#000;font:15px/1.3667 GFAReference,'Century Gothic',sans-serif}body:before{content:'';position:fixed;inset:0;z-index:-1;background:url('/assets/optimized/8a9f08_154c858fc2e94476816e7ea21a4a3983~mv2.jpg') center/cover}body:after{content:'';position:fixed;inset:0;z-index:-1;background:#000b}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid white;outline-offset:3px}.skip{position:absolute;left:8px;top:-80px;z-index:99;background:#000}.skip:focus{top:5px}header{height:107px;background:#000;text-align:center;position:relative;padding-top:10px}.wordmark{width:240px;height:50px;object-fit:contain}nav{height:30px;display:flex;justify-content:center;position:absolute;left:50%;top:66px;transform:translateX(-50%);white-space:nowrap}nav a{font-size:12px;line-height:30px;padding:0 23px;border-right:1px solid #ddd}nav a:last-child{border:0}nav a[aria-current],nav a:hover{color:#e21c21}.menu-toggle{display:none}main{width:min(980px,calc(100% - 30px));margin:auto;text-align:center;min-height:60vh;padding-top:64px}h1{font-weight:400;font-size:30px;line-height:40.5px;margin:0}h1:not(.email){text-shadow:2px 1px 1px #555,-1px 0 #992424}.home{padding-top:47px}.home h2{font-size:22px;font-weight:400;line-height:27.5px;margin:0}.home-rule{width:42px;height:3px;background:#eee;margin:23px auto 17px}.statement{width:min(549px,100%);margin:auto;font-size:15px;line-height:20.5px}.statement p{margin:0}.home-gallery{margin-top:53px}.home-picture{display:block;width:100%;padding:0;border:0;background:none;position:relative}.home-picture img{width:100%;height:auto;display:block}.home .email{font-size:15px;line-height:20.5px;margin:21px 0 51px}.gallery:not(.home-gallery){position:relative;margin-top:69px;height:calc(var(--gallery-height)*var(--scale,1)*1px)}.gallery-item{position:absolute;left:var(--x);top:calc(var(--y)*var(--scale,1)*1px);width:var(--w);height:calc(var(--h)*var(--scale,1)*1px);border:0;padding:0;background:none;overflow:hidden}.gallery-item img{width:100%;height:100%;display:block;object-fit:contain}.collaborations-gallery .gallery-item img{object-fit:cover}.hover-title{position:absolute;left:0;right:0;bottom:0;background:#0009;padding:13px;color:#eee;font-size:18px;opacity:0;transition:opacity .25s}.hover-share{position:absolute;top:12px;right:14px;opacity:0;color:white;font-size:24px}.art:hover .hover-title,.art:focus-visible .hover-title,.art:hover .hover-share{opacity:1}.works,.collaborations{padding-bottom:12px}.event-copy{width:min(586px,100%);margin:59px auto 0;line-height:27.5px}.event-copy p{margin:0}.event-images{position:relative;margin-top:83px;height:1780px}.event-images img{position:absolute;left:1px;top:0;width:760px;height:400px;object-fit:cover}.event-images img:nth-child(2){left:221px;top:419px}.event-images img:nth-child(3){top:840px}.event-images img:nth-child(4){left:221px;top:1260px}.event{padding-bottom:14px}.about-copy{width:min(650px,100%);margin:59px auto 85px;text-align:center;line-height:25px}.about-copy p{margin:0 0 25px}.social .social-bar.large{margin:70px auto 165px;gap:20px;flex-wrap:wrap}.social-bar{display:flex;align-items:center;justify-content:center;gap:4px}.social-bar img{display:block;width:35px;height:35px}.social-bar.large img{width:60px;height:60px}.social-bar a:hover{opacity:.7}.contact-copy{width:min(370px,100%);margin:59px auto 0;line-height:20.5px}.contact-copy p{margin:0}.contact-copy p:nth-child(2){line-height:22.5px}form{width:min(402px,100%);margin:57px auto 84px;text-align:left}form input,form textarea{width:100%;display:block;background:transparent;color:#f8f8f8;border:0;border-bottom:1px solid #eee;border-radius:0;padding:5px 12px;height:30px;font-size:15px}form textarea{height:133px;resize:none}form input::placeholder,form textarea::placeholder{color:#f8f8f8;opacity:1}.captcha-note{height:78px;padding-top:25px;color:#aaa;font-size:11px;line-height:16px;width:300px}.send-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.send-row p{margin:0;font-size:12px;width:253px}.send-row button{width:120px;height:30px;background:#e21c21;color:#fff;border:0}footer{height:218px;background:#000;text-align:center;padding-top:14px}.brandmark{display:block;margin:auto;width:115px;height:115px;object-fit:contain}footer .social-bar{margin-top:17px}footer p{font:11.2px/15px 'MS Mincho','Hiragino Mincho Pro',serif;margin:10px auto 0}dialog{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#000c;color:white;overflow:hidden}dialog::backdrop{background:#000b}dialog button{background:none;border:0;color:white;font-size:27px}#close{position:absolute;right:12px;top:8px;font-size:42px;z-index:3}#full,#share{position:absolute;left:10px;top:8px;z-index:3}#share{left:90px}#previous,#next{position:absolute;top:48%;z-index:3}#previous{left:5px}#next{right:calc(320px + 5px)}.image-stage{width:calc(100% - 320px);height:100%;padding:55px 35px 25px;display:flex;align-items:center;justify-content:center}.image-stage img{max-width:100%;max-height:100%;object-fit:contain}dialog aside{position:absolute;right:0;top:70px;width:320px;text-align:center;padding:0 25px}dialog h2{font-size:24px;font-weight:400;margin:0 0 15px}dialog p{white-space:pre-line;margin:0 0 15px}#original-post{text-decoration:underline}.no-gallery button:not(#close){display:none}main{animation:appear .6s ease-out}@keyframes appear{from{opacity:0}to{opacity:1}}@media(max-width:767px){header{height:66px;padding-top:15px}.wordmark{width:170px;height:35px}.menu-toggle{display:block;position:absolute;right:20px;top:20px;color:#fff;border:0;background:none;font-size:24px}nav{display:none;position:absolute;left:0;right:0;top:66px;transform:none;height:auto;background:#000;z-index:10;padding:15px 0}nav.open{display:flex;flex-direction:column}nav a{border:0;padding:8px}main{width:calc(100% - 40px);padding-top:39px}.home{padding-top:44px}.home h2{font-size:17.6px;line-height:24px}.home-rule{margin:14px auto 11px}.statement{font-size:12px;line-height:17px}.home-gallery{margin-top:36px}.home .email{font-size:12px}.gallery:not(.home-gallery){margin-top:50px}.hover-title{font-size:11px;padding:5px}h1{font-size:24px;line-height:34px}.event-copy{margin-top:35px;font-size:12px;line-height:20px}.event-images{height:auto;margin-top:35px;display:flex;flex-direction:column;gap:15px}.event-images img{position:static!important;width:100%;height:auto;aspect-ratio:1.9;object-fit:cover}.event{padding-bottom:30px}.about-copy{font-size:13px;margin-top:35px}.contact-copy{font-size:12px;margin-top:35px}form{margin:40px auto 45px}.captcha-note{width:100%;font-size:10px}footer{height:190px;padding-top:10px}.brandmark{width:80px;height:80px}footer .social-bar{margin-top:10px}footer p{font-size:9px;max-width:280px}.image-stage{width:100%;height:70%;padding:55px 25px 10px}dialog aside{top:70%;width:100%;padding:10px 25px;max-height:30%;overflow:auto}dialog h2{font-size:20px}#next{right:5px}#previous,#next{top:35%}}@media(prefers-reduced-motion:reduce){main{animation:none}.hover-title{transition:none}}
@media(max-width:767px){body:before{background-image:url('/assets/mobile-background.png')}body:after{background:transparent}header{width:min(320px,100%);margin:auto}main{width:min(280px,calc(100% - 40px));min-height:0}.home h2{font-size:12px;line-height:18px}.home-rule{height:3px;margin:14px auto 13px}.statement{font-size:12px;line-height:16px}.home-gallery{margin-top:36px}.home .email{font-size:11px;line-height:14.5px;margin:30px 0 43px;text-decoration:underline}footer{width:min(320px,100%);margin:auto;height:176px}main.works,main.collaborations{width:min(320px,100%);padding-top:59px}main.works h1,main.collaborations h1{font-size:20px;line-height:28px}.works .gallery{margin-top:145px}.collaborations .gallery{margin-top:52px}.gallery:not(.home-gallery){height:calc(var(--mobile-height)*var(--scale,1)*1px)}.gallery-item{left:var(--mx);top:calc(var(--my)*var(--scale,1)*1px);width:var(--mw);height:calc(var(--mh)*var(--scale,1)*1px)}.collaborations{padding-bottom:90px}.menu-toggle{right:40px}.event h1{font-size:20px}.social .social-bar.large{gap:14px;margin-bottom:65px}.social-bar.large img{width:50px;height:50px}}

/* Responsive migration layout: continuous widths, full-width black bands. */
header,footer{width:100%;max-width:none}
nav{max-width:100%}nav a{padding-inline:clamp(10px,1.8vw,23px)}
main{overflow-wrap:break-word}
.event-images{height:auto;aspect-ratio:980/1780}
.event-images img{left:0;width:77.551%;height:22.472%}
.event-images img:nth-child(2){left:22.449%;top:23.539%}
.event-images img:nth-child(3){top:47.191%}
.event-images img:nth-child(4){left:22.449%;top:70.787%}
@media(max-width:767px){
header,footer{width:100%;max-width:none}
main{width:min(680px,calc(100% - 40px))}
main.works,main.collaborations{width:min(600px,calc(100% - 32px))}
.home h2{font-size:clamp(12px,2.8vw,20px);line-height:1.5}
.statement{font-size:clamp(12px,2.1vw,15px);line-height:1.4}
.home-gallery{margin-top:clamp(36px,6vw,53px)}
.works .gallery{margin-top:clamp(50px,12vw,92px)}
.menu-toggle{right:clamp(16px,4vw,32px)}
.about-copy{font-size:clamp(13px,2.1vw,15px)}
.event-images{aspect-ratio:auto}
.event-images img{height:auto}
.send-row{flex-wrap:wrap}.send-row p{flex:1;min-width:130px;width:auto}
footer{height:auto;min-height:176px;padding-bottom:18px}
}
@media(min-width:768px) and (max-width:1023px){
main{width:calc(100% - 48px);padding-top:52px}
nav a{padding-inline:14px}
.image-stage{width:calc(100% - 240px)}dialog aside{width:240px;padding-inline:15px}#next{right:245px}
}
@media(max-width:479px){main.works,main.collaborations{width:min(320px,calc(100% - 24px))}}

@media(max-width:767px){body:after{background:#0008}}

.home .home-heading{font-size:22px;line-height:27.5px;margin:0;text-shadow:none}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-privacy{font-size:11px;line-height:1.5;color:#ccc}button:disabled{opacity:.5;cursor:wait}#form-status{overflow-wrap:anywhere}@media(max-width:767px){.home .home-heading{font-size:clamp(12px,2.8vw,20px);line-height:1.5}}

#contact-form .field-error{color:#ffb7ba;font-size:12px;text-align:left;margin:4px 0 12px;line-height:1.5;}#contact-form [aria-invalid="true"]{border-color:#ffb7ba;}#contact-form .field-error[hidden]{display:none;}

.featured-work{margin:55px auto 85px;text-align:center;}.featured-poster{display:block;position:relative;width:min(100%,526px);margin:0 auto;padding:0;border:0;background:none;color:inherit;}.featured-poster img{display:block;width:100%;height:auto;}.featured-work .ryoshian-entry{margin:18px auto 0;padding:12px 0!important;font-size:14px;}.featured-work .ryoshian-entry a{text-decoration:underline;text-underline-offset:5px;}.featured-work+.gallery{margin-top:0;}@media(max-width:767px){.featured-work{margin:40px auto 65px;}.featured-poster{width:min(100%,360px);}.featured-work .ryoshian-entry{font-size:12px;line-height:1.8;}}

/* Keep the GFA navigation visible without changing document spacing. */
header{position:sticky;top:0;z-index:100;background:rgba(20,20,24,.48);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12);}
html{scroll-padding-top:120px;}
@media(max-width:767px){html{scroll-padding-top:80px;}header nav{background:rgba(20,20,24,.94);border-bottom:1px solid rgba(255,255,255,.12);max-height:calc(100dvh - 66px);overflow-y:auto;}}
@supports not ((backdrop-filter:blur(10px)) or (-webkit-backdrop-filter:blur(10px))){header{background:rgba(20,20,24,.92);}}

/* A darker navigation surface, with a restrained mobile dropdown. */
header{background:rgba(8,8,10,.88);border-bottom-color:rgba(255,255,255,.09);}
@media(max-width:767px){.menu-toggle{top:50%;transform:translateY(-50%);right:20px;width:32px;height:32px;padding:0;display:grid;place-items:center;line-height:1;font-size:22px;}header nav{top:100%;background:rgba(8,8,10,.98);padding:14px 24px 20px;box-shadow:0 14px 24px #0006;}header nav.open{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;}header nav a{display:block;text-align:left;padding:12px 4px;font-size:13px;line-height:1.4;border-bottom:1px solid #ffffff14;}header nav a:last-child{border-bottom:1px solid #ffffff14;}}

@media(max-width:767px){.menu-toggle{right:10px;width:40px;height:40px;font-size:0;display:block;}.menu-toggle span{position:absolute;left:6px;width:28px;height:1px;background:currentColor;top:50%;margin-top:-.5px;transition:transform .25s ease,opacity .2s ease;transform-origin:center;}.menu-toggle span:nth-child(1){transform:translateY(-8px);}.menu-toggle span:nth-child(3){transform:translateY(8px);}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg);}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg);}}
@media(prefers-reduced-motion:reduce){.menu-toggle span{transition:none;}}
