@charset "UTF-8";
:root{--ink:#141716;--muted:#58605d;--line:#bec6c2;--white:#fcfdfc;--silver:#e7ebea;--green:#b5ff35;--gutter:5.2vw;--font:Arial,"Helvetica Neue","Noto Sans JP","Yu Gothic","Meiryo",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:16px var(--font);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none;touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500}small{font-weight:400}i{font-style:normal}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible{outline:3px solid #408414;outline-offset:5px}.skip-link{position:absolute;top:-100px;padding:15px;background:var(--green);z-index:20}.skip-link:focus{top:0}.wrap{margin-left:var(--gutter);margin-right:var(--gutter)}.unbroken{white-space:nowrap}
.header{height:104px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--white);border-bottom:1px solid #c3cbc7}.brand{font-size:31px;font-weight:800;letter-spacing:-1.4px;white-space:nowrap}.brand span{display:block;font-size:12px;letter-spacing:2.5px;font-weight:400;margin-top:7px}.primary-nav{display:flex;gap:32px;margin-left:auto}.primary-nav a{font-size:13px;letter-spacing:.5px;padding:9px 0;position:relative}.primary-nav small{display:block;letter-spacing:0;font-size:12px;color:var(--muted);margin-top:7px}.primary-nav a:after{content:"";height:2px;position:absolute;bottom:0;left:0;width:0;background:var(--green);transition:width .25s}.primary-nav a:hover:after{width:100%}.menu-button{display:flex;align-items:center;gap:20px;background:var(--green);border:0;padding:16px 19px;font-size:13px;letter-spacing:1px;min-width:126px;text-align:left}.menu-button small{display:block;letter-spacing:0;font-size:12px;margin-top:5px}.menu-button i{display:grid;gap:6px;width:24px}.menu-button b{display:block;height:1px;background:var(--ink)}
.hero{padding:22px var(--gutter) 35px;background:linear-gradient(125deg,#fafcfa 7%,#e5e9e7 53%,#fcfdfc 75%,#d4dcd7 100%);border-bottom:1px solid #c3ccc7;position:relative}.hero-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:1.6px;margin-bottom:24px}.hero-meta b{font-weight:400;margin-left:8px;letter-spacing:0}.hero-grid{display:grid;grid-template-columns:1.17fr 1fr;align-items:center;gap:40px}.hero-kicker{font-size:12px;letter-spacing:1px;line-height:1.9}.hero-kicker>span{display:block;font-size:13px;letter-spacing:0;color:var(--muted);margin-top:5px}.hero h1{font-size:clamp(55px,6.45vw,102px);font-weight:700;letter-spacing:-.075em;line-height:.9;margin-top:29px}.hero h1>span{display:block}.hero h1>span+span{margin-top:4px}.hero h1 small{display:block;font-size:24px;line-height:1.7;font-weight:500;letter-spacing:.04em;margin-top:30px}.hero-index{display:flex;align-items:center;gap:17px;font-size:12px;letter-spacing:.8px;margin-top:44px;border-top:1px solid #aeb9b2;padding-top:18px}.hero-art{padding:10px;background:linear-gradient(155deg,#fff,#bbc6bd 55%,#f9fcf9 95%);box-shadow:0 23px 32px -22px #34483a55;border:1px solid #fff;transform:translateY(4px)}.hero-art img{width:100%;border:1px solid #f8faf8}.hero-art figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.6px;margin-top:10px;padding:0 5px;line-height:1.7}.hero-art figcaption>span:last-child{font-size:10px;letter-spacing:.15px}.about{display:grid;grid-template-columns:.8fr 1.8fr;gap:64px;padding-top:34px;padding-bottom:36px;border-bottom:1px solid var(--line)}.about-label{display:flex;align-items:center;justify-content:space-between;gap:25px}.about h2{font-size:28px;letter-spacing:-.7px}.about h2 small{display:block;font-size:14px;letter-spacing:0;margin-top:11px}.circle-link{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;border:1px solid #8c9991;border-radius:50%;font-size:29px;font-weight:400;transition:transform .25s,background .25s}.circle-link:hover{background:var(--green);transform:rotate(6deg)}.about-copy p{font-size:15px;line-height:1.9}.about-copy p+p{margin-top:10px}
.directory{padding-top:35px;padding-bottom:35px;display:grid;grid-template-columns:1.45fr 1fr;gap:35px;border-bottom:1px solid var(--line)}.artists-entry{position:relative;overflow:hidden;isolation:isolate;min-height:447px;background:#eef1f0;border:1px solid #ccd4cf;display:flex;flex-direction:column;justify-content:space-between;padding:30px 32px}.silver-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% center;z-index:-2;transition:transform .6s}.artists-entry:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#fafcfaf5 0%,#fafcfa88 22%,transparent 49%)}.artists-entry:hover .silver-art{transform:scale(1.035)}.artists-label{font-size:12px;letter-spacing:1px;line-height:1.7}.artists-label small{display:block;font-size:14px;letter-spacing:0;margin-top:7px}.artists-bottom h2{font-size:clamp(58px,7.8vw,119px);font-weight:500;letter-spacing:-.065em;line-height:1}.artists-action{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:15px;font-size:14px}.artists-action .circle-link{background:var(--green);border:0;width:53px;height:53px;font-size:33px}.creation{display:grid;grid-template-rows:1fr 1.14fr}.creation article>a{display:block;min-height:100%;padding:5px 0 18px}.creation article+article{margin-top:15px;padding-top:24px;border-top:1px solid #707e74}.entry-owner{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:13px;line-height:1.7}.entry-owner>span:last-child{font-size:12px;color:var(--muted)}.entry-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.entry-heading h2{font-size:42px;letter-spacing:-1.7px;line-height:1.03}.entry-heading small{display:block;font-size:15px;letter-spacing:0;line-height:1.6;margin-top:12px}.entry-heading>i{font-size:32px;align-self:start;line-height:1}.creation p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:15px}.lesson-entry .entry-owner>span:first-child{font-size:15px}.lesson-entry .entry-heading h2{font-size:35px;letter-spacing:-1.3px}.creation a:hover .entry-heading>i{transform:translate(3px,-3px)}.entry-heading>i{transition:transform .25s}
.activities{display:grid;grid-template-columns:1.5fr 1fr;gap:44px;padding-top:35px;padding-bottom:35px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{font-size:54px;letter-spacing:-2.6px;line-height:1}.section-heading small{display:inline-block;font-size:14px;letter-spacing:0;margin-left:18px;vertical-align:middle}.small-link{display:flex;align-items:center;gap:15px;font-size:13px;line-height:1.7}.small-link i{font-size:24px}.event-feature{display:grid;grid-template-columns:198px 1fr;gap:28px}.flyer-mat{display:block;background:linear-gradient(130deg,#f5f7f5,#d1dbd4);padding:15px;border:1px solid #c4cec7}.flyer{aspect-ratio:4/5;padding:19px 10px;background:#f8faf8;border:1px solid #c1cdc4;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;outline:1px solid #e2e9e4;outline-offset:-7px;color:#59675e}.flyer>span:first-child{font-size:23px;line-height:1}.flyer>span:nth-child(2){font-size:12px;letter-spacing:.8px;line-height:1.7}.flyer small{display:block;font-size:12px;letter-spacing:0;margin-top:5px}.flyer>span:last-child{font-size:12px}.event-copy{padding-top:8px}.event-category{font-size:12px;letter-spacing:.5px;color:var(--muted)}.event-copy h3{font-size:35px;letter-spacing:-1.3px;font-weight:500;line-height:1.2;margin-top:15px}.event-copy>p{font-size:14px;margin-top:9px;line-height:1.6;color:var(--muted)}.event-copy .small-link{margin-top:24px}.second-series{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;padding-top:20px;border-top:1px solid #aebcb3;font-size:18px;letter-spacing:-.5px;line-height:1.6}.second-series small{display:block;font-size:12px;letter-spacing:0;color:var(--muted);margin-top:6px}.second-series>i{font-size:24px}.related-pages{border-left:1px solid #b1bfb6;padding-left:33px}.related-pages>a{display:block}.related-heading{display:flex;justify-content:space-between;gap:18px}.related-heading h2{font-size:25px;letter-spacing:-.7px;line-height:1.05}.related-heading h2>span{display:block;white-space:nowrap}.related-heading small{font-size:14px;display:block;letter-spacing:0;line-height:1.7;margin-top:10px}.related-heading>i{font-size:27px;line-height:1}.country-line{display:flex;align-items:center;gap:15px;max-width:280px;margin-top:18px;font-size:12px;letter-spacing:1px}.country-line i{height:1px;flex:1;background:#9eaba3;position:relative}.country-line i:after{content:"";position:absolute;left:35%;top:-1px;height:3px;width:30%;background:var(--green)}.project-entry>p{font-size:17px;letter-spacing:-.4px;margin-top:15px;line-height:1.7}.project-entry>p small{display:block;font-size:12px;color:var(--muted);letter-spacing:0;margin-top:5px}.audition-entry{position:relative;border-top:1px solid var(--line);padding-top:20px;margin-top:23px}.audition-entry h2{font-size:31px;letter-spacing:-1px}.audition-entry p{font-size:13px;line-height:1.9;color:var(--muted);margin-top:11px}.connect{display:grid;grid-template-columns:.9fr 1.2fr 1fr;gap:35px;padding-top:31px;padding-bottom:35px}.connect>a{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.connect h2{font-size:26px;letter-spacing:-.9px}.connect small{font-size:13px;letter-spacing:0;display:block;margin-top:8px;color:var(--muted)}.connect>a>i{font-size:27px;flex-shrink:0}.social{border-left:1px solid var(--line);padding-left:30px;display:block}.social>div{display:flex;align-items:center;gap:24px;margin-top:12px;font-size:13px}.contact-entry{border-left:1px solid var(--line);padding-left:30px}.contact-entry .circle-link{background:var(--green);border:0}.footer{background:linear-gradient(110deg,#e8eeea,#f2f5f2 58%,#d4ded6);border-top:1px solid #bac8bd;padding:28px var(--gutter)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-logo{display:block;width:310px;max-width:100%;flex-shrink:0}.footer-logo img{width:100%}.footer-location{font-size:12px;letter-spacing:2px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:12px;line-height:1.8;color:var(--muted);margin-top:20px}
dialog{border:0;max-width:none;background:var(--white);color:var(--ink);box-shadow:0 20px 90px #10201040}dialog::backdrop{background:#293b2e70;backdrop-filter:blur(12px)}.menu-dialog{width:min(1180px,94vw);max-height:94dvh;padding:35px 45px;border-top:4px solid var(--green)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:24px}.dialog-head h2{font-size:42px;letter-spacing:-1.7px}.dialog-head h2 small{font-size:14px;letter-spacing:0;margin-left:16px}.close-button{background:var(--green);border:0;padding:13px 17px;min-height:44px;font-size:14px}#main-nav{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;padding-top:12px}#main-nav>a{display:grid;grid-template-columns:25px 1fr 25px;gap:13px;padding:19px 0;border-bottom:1px solid #bbc7be}.nav-index{font-size:12px;color:var(--muted);padding-top:4px}.nav-en{display:block;font-size:24px;letter-spacing:-.6px;line-height:1.2}.nav-en>span{display:inline-block;white-space:nowrap}.nav-ja{font-size:13px;display:block;margin-top:8px;line-height:1.7}.nav-arrow{font-size:25px}.menu-bottom{font-size:23px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:27px;letter-spacing:-.5px}.menu-bottom>span{font-weight:400;font-size:13px;letter-spacing:0}.destination-dialog{width:min(580px,92vw);padding:28px}.destination-dialog .dialog-head>span{font-size:12px;line-height:1.6}.destination-dialog h2{font-size:26px;line-height:1.5;margin-top:26px}.destination-dialog p{font-size:14px;line-height:1.9;margin-top:20px}.destination-route{font-family:monospace;overflow-wrap:anywhere;padding:10px 14px;background:var(--silver)}
@media(min-width:1600px){:root{--gutter:calc((100vw - 1434px)/2)}}
@media(max-width:1180px){.primary-nav{gap:20px}.primary-nav a{font-size:12px}.primary-nav small{font-size:12px}.header{gap:24px}.brand{font-size:28px}.menu-button{min-width:112px;padding:14px}.hero-grid{gap:28px}.hero-index{gap:12px;letter-spacing:0;font-size:12px}.hero-art figcaption>span:last-child{display:none}.hero h1 small{font-size:21px}.hero-kicker{letter-spacing:.5px}.hero-kicker>span{font-size:12px}.about{gap:40px;grid-template-columns:.85fr 1.8fr}.directory{grid-template-columns:1.2fr 1fr;gap:27px}.artists-entry{padding:27px}.entry-heading h2{font-size:37px}.lesson-entry .entry-heading h2{font-size:33px}.entry-owner{gap:10px;flex-wrap:wrap}.entry-owner>span:last-child{font-size:12px}.activities{gap:28px}.related-pages{padding-left:24px}.section-heading small{display:block;margin:10px 0 0}.event-feature{grid-template-columns:163px 1fr;gap:22px}.event-copy h3{font-size:30px}.event-copy .small-link{margin-top:17px}.second-series{margin-top:20px;padding-top:16px;font-size:17px}.related-heading h2{font-size:22px}.connect{gap:26px}.connect h2{font-size:24px}.audition-entry h2{font-size:29px}}
@media(max-width:920px){.primary-nav{display:none}.header .menu-button{margin-left:auto}.hero-grid{grid-template-columns:1.1fr 1fr;gap:26px}.hero h1{font-size:clamp(42px,6.35vw,60px)}.hero-kicker{font-size:12px}.hero-kicker>span{font-size:12px}.hero h1 small{font-size:20px;margin-top:24px}.hero-index{flex-wrap:wrap;gap:10px;margin-top:25px}.directory{grid-template-columns:1fr 1fr;gap:25px}.artists-entry{min-height:440px;padding:24px}.artists-bottom h2{font-size:58px}.artists-action{font-size:13px;gap:15px}.entry-heading h2{font-size:34px}.lesson-entry .entry-heading h2{font-size:31px}.creation p{font-size:13px}.activities{grid-template-columns:1fr}.event-feature{grid-template-columns:190px 1fr}.events{max-width:none}.section-heading h2{font-size:49px}.section-heading small{display:inline-block;margin:0 0 0 18px}.related-pages{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:35px}.audition-entry{margin:0;padding:0 0 0 27px;border-top:0;border-left:1px solid var(--line)}.connect{gap:23px}.connect h2{font-size:22px}.social{padding-left:23px}.contact-entry{padding-left:23px}#main-nav{column-gap:35px}.nav-en{font-size:21px}}
@media(max-width:650px){:root{--gutter:22px}.header{height:84px;gap:15px;padding:0 22px}.brand{font-size:25px;letter-spacing:-1px}.brand span{font-size:10px;letter-spacing:1.8px;margin-top:5px}.menu-button{font-size:12px;min-width:102px;padding:12px 13px;gap:17px}.menu-button small{font-size:12px}.menu-button i{width:21px}.hero{padding:17px 22px 25px}.hero-meta{margin-bottom:16px;font-size:12px;letter-spacing:1px}.hero-grid{display:flex;flex-direction:column;gap:0;align-items:stretch}.hero-art{order:0;padding:7px;width:100%;max-width:370px;align-self:center;transform:none;box-shadow:0 16px 23px -18px #2d463a77}.hero-art figcaption{margin-top:6px;font-size:10px;padding:0 3px;letter-spacing:1.5px}.hero-copy{order:1;margin-top:25px}.hero-kicker{font-size:12px;letter-spacing:1px}.hero-kicker>span{display:none}.hero h1{font-size:clamp(41px,12.65vw,75px);letter-spacing:-.065em;line-height:.93;margin-top:15px}.hero h1>span+span{margin-top:1px}.hero h1 small{font-size:19px;line-height:1.65;letter-spacing:.035em;margin-top:19px}.hero h1 small br{display:none}.hero-index{margin-top:21px;padding-top:13px;font-size:10px;letter-spacing:.8px;gap:15px}.about{display:block;padding-top:25px;padding-bottom:27px}.about-label{margin-bottom:20px}.about h2{font-size:26px;letter-spacing:-.6px}.about h2 small{font-size:13px;margin-top:8px}.about-label .circle-link{width:38px;height:38px;font-size:25px}.about-copy p{font-size:16px;line-height:1.9}.about-copy p+p{margin-top:12px}.directory{display:block;padding-top:26px;padding-bottom:26px}.artists-entry{min-height:310px;padding:22px 23px}.artists-label{font-size:12px;letter-spacing:.6px}.artists-label small{font-size:13px;margin-top:5px}.silver-art{object-position:62% center}.artists-bottom h2{font-size:64px;letter-spacing:-3.6px}.artists-action{font-size:13px;margin-top:8px}.artists-action .circle-link{width:43px;height:43px;font-size:29px}.creation{display:block;margin-top:28px}.creation article>a{padding:0 0 3px}.creation article+article{padding-top:24px;margin-top:25px}.entry-owner{font-size:13px;gap:15px}.entry-owner>span:last-child{font-size:12px}.entry-heading{margin-top:15px}.entry-heading h2{font-size:37px;letter-spacing:-1.6px}.entry-heading small{font-size:14px;margin-top:10px}.entry-heading>i{font-size:28px}.creation p{font-size:14px;margin-top:14px;line-height:1.9}.desktop-break{display:none}.lesson-entry .entry-owner>span:first-child{font-size:14px}.lesson-entry .entry-heading h2{font-size:33px;letter-spacing:-1.3px}.activities{display:block;padding-top:28px;padding-bottom:26px}.section-heading{gap:20px;margin-bottom:24px;align-items:center}.section-heading h2{font-size:42px;letter-spacing:-2px}.section-heading small{display:block;font-size:13px;margin:9px 0 0}.section-heading .small-link{font-size:12px;gap:12px}.small-link i{font-size:23px}.event-feature{grid-template-columns:135px 1fr;gap:20px}.flyer-mat{padding:9px;align-self:start}.flyer{padding:14px 7px;outline-offset:-5px}.flyer>span:first-child{font-size:19px}.flyer>span:nth-child(2){font-size:12px;letter-spacing:0}.flyer small{font-size:12px;line-height:1.7}.flyer>span:last-child{font-size:12px}.event-copy{padding-top:0}.event-category{font-size:12px;letter-spacing:0}.event-copy h3{font-size:25px;letter-spacing:-.9px;margin-top:13px}.event-copy>p{font-size:13px;margin-top:7px}.event-copy .small-link{font-size:13px;gap:9px;margin-top:15px}.second-series{font-size:15px;letter-spacing:-.3px;margin-top:17px;padding-top:14px;gap:8px;line-height:1.5}.second-series small{font-size:12px;margin-top:7px}.second-series>i{font-size:22px}.related-pages{display:block;margin-top:26px;padding-top:27px}.related-heading h2{font-size:25px;line-height:1.05}.related-heading small{font-size:14px;margin-top:10px}.related-heading>i{font-size:26px}.country-line{margin-top:17px;font-size:12px}.project-entry>p{font-size:17px;line-height:1.7;margin-top:14px}.project-entry>p small{font-size:13px;margin-top:4px}.project-entry>p small br{display:none}.audition-entry{border-left:0;border-top:1px solid var(--line);margin-top:26px;padding:23px 0 0}.audition-entry h2{font-size:31px;letter-spacing:-1px}.audition-entry p{font-size:14px;line-height:1.9;margin-top:12px}.connect{display:block;padding-top:0;padding-bottom:24px}.connect>a,.connect>.social{padding:23px 0;border-left:0;border-bottom:1px solid var(--line)}.connect h2{font-size:25px;letter-spacing:-.7px}.connect small{font-size:13px;margin-top:8px}.connect .contact-entry{padding-bottom:0;border:0}.contact-entry .circle-link{width:40px;height:40px;font-size:27px}.footer{padding:25px 22px}.footer-logo{width:260px}.footer-location{display:none}.footer-bottom{display:block;font-size:12px;margin-top:17px}.footer-bottom p{margin-bottom:13px;line-height:1.9}.menu-dialog{width:100%;height:100dvh;max-height:100dvh;padding:22px;margin:0}.dialog-head{padding-bottom:20px}.dialog-head h2{font-size:32px;letter-spacing:-1.2px}.dialog-head h2 small{font-size:13px;letter-spacing:0;margin-left:12px}.close-button{font-size:13px;padding:12px 14px}#main-nav{display:block;padding-top:8px}#main-nav>a{padding:18px 0;grid-template-columns:22px 1fr 22px;gap:12px}.nav-en{font-size:21px;line-height:1.2;letter-spacing:-.5px}.nav-en>span{display:block}.nav-ja{font-size:13px;margin-top:7px}.nav-arrow{font-size:23px}.menu-bottom{display:block;font-size:23px}.menu-bottom>span{display:block;font-size:12px;margin-top:12px;line-height:1.7}.destination-dialog{padding:23px}.destination-dialog h2{font-size:23px}.destination-dialog .dialog-head{gap:12px}.destination-dialog .close-button{flex-shrink:0}}
@media(max-width:374px){:root{--gutter:20px}.header{padding:0 20px}.brand{font-size:23px}.menu-button{min-width:98px;gap:14px;padding:11px 12px}.hero{padding-left:20px;padding-right:20px}.hero h1{font-size:45px}.hero h1 small{font-size:18px}.hero-index{gap:12px;letter-spacing:.4px}.artists-bottom h2{font-size:59px}.artists-entry{min-height:292px;padding:21px}.event-feature{grid-template-columns:120px 1fr;gap:17px}.event-copy h3{font-size:24px}.flyer-mat{padding:8px}.second-series{font-size:14px}.related-heading h2{font-size:24px}}
.flyer{justify-content:center;border:0;outline:0}.flyer>span:first-child{font-size:12px;line-height:1.8;letter-spacing:1.4px}.flyer small{font-size:12px;letter-spacing:0}
@media(max-width:650px){.brand span{font-size:12px;letter-spacing:1.3px}.hero-art{max-width:320px}.hero-kicker,.hero-index{display:none}.hero-copy{margin-top:23px}.hero h1{font-size:clamp(27px,7.6vw,45px);line-height:1.05;margin-top:0;letter-spacing:-.055em}.hero h1>span{display:inline}.hero h1>span+span{margin-left:7px}.hero h1 small{font-size:19px;line-height:1.65;letter-spacing:.03em;margin-top:14px}.hero h1 small br{display:initial}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.event-copy>.small-link{justify-content:space-between;width:100%;min-height:44px}.event-copy>.small-link>i{flex-shrink:0}

/* Japan and Norway project partnership preview. */
.project-entry .related-heading>i{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;font-size:24px}
.project-entry .country-line{display:grid;grid-template-columns:minmax(0,1fr) clamp(24px,3vw,48px) minmax(0,1fr);align-items:start;gap:10px;max-width:none;margin-top:20px;padding:18px 12px;background:linear-gradient(135deg,#edf1ef,#fafcfb);border:1px solid var(--line)}
.country-mark{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center}
.country-mark img{width:60px;height:42px;object-fit:contain;padding:4px;background:#fff;border:1px solid #c3ccc7;box-shadow:0 3px 8px #233f3010}
.country-name{margin-top:9px;color:var(--muted);font-size:10px;line-height:1.3;letter-spacing:1.2px}
.partner-name{margin-top:5px;font-size:15px;font-weight:600;line-height:1.4;letter-spacing:-.3px;white-space:nowrap}
.country-connection{position:relative;height:1px;margin-top:21px;background:#aabbb0}
.country-connection:after{content:"";position:absolute;left:50%;top:-1px;width:18px;height:3px;transform:translateX(-50%);background:var(--green)}
.project-entry>.project-caption{margin-top:12px;font-size:13px;line-height:1.8;letter-spacing:0;color:var(--muted)}
.project-entry:hover .country-line,.project-entry:focus-visible .country-line{border-color:#839789}
.project-entry:hover .related-heading>i{background:var(--green);border-color:var(--green)}


/* Home introduction: the message and company description face the supplied logo. */
.hero.hero-intro { padding: clamp(36px, 4vw, 60px) var(--gutter); }
.hero-intro .hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(28px, 4vw, 64px);
  max-width: 1440px;
  margin-inline: auto;
}
.hero-intro .hero-copy { order: 0; min-width: 0; margin: 0; }
.hero-intro h1 {
  margin: 0;
  font-size: clamp(32px, 4vw, 62px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .015em;
  line-break: strict;
}
.hero-intro h1 > span, .hero-intro h1 > span + span { display: block; margin: 0; }
.hero-intro .hero-company {
  margin-top: 28px;
  font-size: clamp(16px, 1.3vw, 20px);
  font-weight: 500;
  line-height: 1.85;
  letter-spacing: .025em;
}
.hero-intro .hero-description {
  margin-top: 14px;
  font-size: clamp(14px, 1.1vw, 16px);
  line-height: 2;
  letter-spacing: .015em;
  color: var(--muted);
}
.hero-intro .hero-description > span { display: block; }
.hero-intro .hero-art {
  order: 1;
  justify-self: end;
  align-self: center;
  width: 100%;
  max-width: 520px;
  margin: 0;
  padding: 10px;
  transform: none;
}
.hero-intro .hero-art img { display: block; width: 100%; height: auto; }
@media (max-width: 760px) {
  .hero.hero-intro { padding-top: 32px; padding-bottom: 34px; }
  .hero-intro .hero-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .hero-intro .hero-copy { width: 100%; max-width: 560px; margin-inline: auto; }
  .hero-intro h1 { font-size: clamp(29px, 8vw, 44px); line-height: 1.5; letter-spacing: .01em; }
  .hero-intro .hero-company { margin-top: 22px; font-size: 16px; line-height: 1.85; }
  .hero-intro .hero-description { margin-top: 12px; font-size: 14px; line-height: 1.9; }
  .hero-intro .hero-art { justify-self: center; max-width: 340px; padding: 7px; }
}

/* Shared inner pages extend the approved HOME design. */
.sns-label{display:inline-flex;align-items:center;gap:.55rem;font-weight:400;white-space:nowrap}.sns-label .sns-icon{display:block;width:20px;height:20px;max-width:none;flex-shrink:0}.sns-link{display:inline-flex;align-items:center;gap:.65rem;min-height:44px}.social>div{flex-wrap:wrap}@media(max-width:650px){.connect .social{display:block}.connect .social>div{margin-top:.8rem;gap:1.5rem;font-size:14px}}
.home-message{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:1.65rem 1.8rem;margin-top:1.5rem;background:linear-gradient(110deg,#e5ede4,#f3f6f1 55%,#fafdF8);border:1px solid #b8c8b3;border-left:4px solid var(--green);transition:background .2s,border-color .2s}.home-message:hover{background:#e7f1dc;border-color:#89b952}.home-message h2{font-size:2.25rem;letter-spacing:-.045em;line-height:1.1}.home-message h2 small{display:block;font-size:1rem;letter-spacing:.04em;margin-top:.65rem}.home-message .circle-link{background:var(--green);border:0}@media(max-width:800px){.home-message{gap:1.4rem;padding:1.4rem}.home-message h2{font-size:1.9rem}}@media(max-width:600px){.home-message{gap:1.2rem;margin-top:1.2rem;padding:1.25rem}.home-message-heading{grid-column:1}.home-message h2{font-size:1.8rem}.home-message h2 small{font-size:1rem;margin-top:.6rem}.home-message>.circle-link{grid-column:2;grid-row:1;width:42px;height:42px}}
.logo-frame{position:relative;display:block;overflow:hidden;aspect-ratio:var(--logo-ratio);mix-blend-mode:multiply}.logo-frame img{position:absolute;width:var(--logo-width);max-width:none;height:auto;left:var(--logo-left);top:var(--logo-top)}.header .brand-image{width:310px;flex-shrink:0}.footer .footer-logo{width:360px}@media(max-width:1180px){.header .brand-image{width:280px}}@media(max-width:650px){.header .brand-image{width:auto;flex:1;min-width:0;max-width:220px}.footer .footer-logo{width:320px;max-width:100%}}
.gallery-viewport:focus-visible{outline:2px solid #478213;outline-offset:2px}
.gallery-dialog .gallery-viewport{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;width:100%;overflow:auto;overscroll-behavior:contain}.gallery-dialog figure .gallery-viewport img{width:100%;height:100%;min-height:0;flex:none;object-fit:contain}.gallery-dialog .gallery-viewport.is-zoomed{align-items:flex-start;justify-content:flex-start}.gallery-dialog figure .gallery-viewport.is-zoomed img{width:var(--gallery-image-width);min-width:100%;max-width:none;height:auto;flex:0 0 auto}.gallery-dialog .dialog-head h2{margin-right:auto}.gallery-dialog .gallery-zoom{background:#eaf0e6;border:1px solid #a7b79b;white-space:nowrap}.home-flyer>span{gap:4px!important;font-size:12px!important}.home-flyer>span>span{font-size:18px}@media(max-width:600px){.gallery-dialog .dialog-head{flex-wrap:wrap}.gallery-dialog .dialog-head h2{flex:1}.gallery-dialog .gallery-zoom{font-size:12px;padding:10px}.home-flyer{padding:8px}}
html{scroll-padding-top:1.5rem}body{font-size:1rem}button,input,textarea,select{font:inherit}button:disabled{cursor:not-allowed;opacity:.55}input,textarea,select,summary{accent-color:#426a19}input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #478213;outline-offset:4px}a,button{-webkit-tap-highlight-color:#b5ff3570}a:active,button:active{filter:brightness(.95)}[hidden]{display:none!important}.primary-nav a[aria-current]:after{width:100%}.about-copy p{font-size:1rem}.page-wrap{margin:0 var(--gutter)}.page-mast{padding:1.75rem var(--gutter) 3.8rem;background:linear-gradient(130deg,#fbfdfb,#e4e9e6 60%,#f8faf8);border-bottom:1px solid var(--line)}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.8125rem;color:var(--muted);margin-bottom:3.2rem}.breadcrumb .text-link{font-size:.8125rem;border:0;padding:0;min-height:1.5rem}.breadcrumb .text-link>.link-arrow{display:none}.mast-grid{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:3rem}.dual-title>span{display:block;font-size:clamp(2rem,3.3vw,3.6rem);line-height:1.06;letter-spacing:-.045em;font-weight:500;overflow-wrap:normal}.dual-title small{display:block;font-size:1rem;letter-spacing:.035em;line-height:1.7;margin-top:.8rem}.page-mast h1>span{font-size:clamp(3.2rem,6.6vw,7rem);font-weight:600;letter-spacing:-.065em;line-height:1}.page-mast h1 small{font-size:1.25rem;margin-top:1.2rem}.mast-aside{font-size:1rem;line-height:1.95;max-width:31rem}.mast-aside>.action,.mast-aside>.text-link{margin-top:1.25rem}.content-section{padding:4.5rem 0;border-bottom:1px solid var(--line);scroll-margin-top:1.5rem}.content-section:last-child{border-bottom:0}.split-section{display:grid;grid-template-columns:.8fr 1.6fr;gap:5rem}.prose{font-size:1rem;line-height:2.05;overflow-wrap:break-word}.prose p+p{margin-top:1.4rem}.prose h3{font-size:1.35rem;line-height:1.5;margin-top:2rem;margin-bottom:1rem}.large-prose{font-size:1.125rem;line-height:2.1}.text-list{margin:0;padding-left:1.25rem;line-height:1.95;font-size:1rem}.text-list li+li{margin-top:.65rem}.subheading{font-size:1.2rem;margin:2rem 0 1rem}.subheading:first-child{margin-top:0}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:44px;border:0;background:none;padding:.5rem 0;font-size:.875rem;line-height:1.8;text-align:left;transition:color .18s}.text-link>.link-arrow{font-size:1.4rem;flex-shrink:0;transition:transform .18s}.text-link:hover{color:#35621b}.text-link:hover>.link-arrow{transform:translate(3px,-3px)}.action{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;border:1px solid var(--green);padding:1rem 1.4rem;min-height:3.5rem;background:var(--green);font-size:1rem;line-height:1.6;text-align:left;transition:background .2s,box-shadow .2s}.action>.link-arrow{font-size:1.5rem;flex-shrink:0}.action small{font-size:.875rem;display:block}.action:hover:not(:disabled){background:#a6f51b;box-shadow:0 5px 16px #8ebe3320}.action.secondary{border-color:#96a49a;background:transparent}.action.secondary:hover{background:#e9eee9}.closing-actions{display:flex;flex-wrap:wrap;gap:1rem;padding:3rem 0 4.5rem}.eyebrow{font-size:.8125rem;line-height:1.8;letter-spacing:.05em;color:#536157}.info-table{margin:0}.info-table>div{display:grid;grid-template-columns:10.5rem 1fr;gap:2rem;padding:1.25rem 0;border-top:1px solid var(--line);line-height:1.9}.info-table dt{font-size:.875rem;color:var(--muted)}.info-table dd{font-size:1rem;margin:0;overflow-wrap:anywhere}.info-table .text-link{padding:0}.info-table>div:first-child{border-top:0;padding-top:0}.about-statement{display:grid;grid-template-columns:1fr 1.35fr;gap:6rem;align-items:start}.statement-mark{padding:1rem;background:linear-gradient(140deg,#fff,#d6ded8);border:1px solid #cad4cc}.statement-mark img{width:100%}.image-slot{background:linear-gradient(140deg,#eff3f0,#dce3de 50%,#f5f7f5);border:1px solid #c6d1c9;position:relative;min-width:0;display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem;color:#57635b;overflow:hidden}.image-slot.portrait{aspect-ratio:4/5}.image-slot.landscape{aspect-ratio:16/9}.image-slot>span:last-child{display:block;text-align:center;font-size:1rem;letter-spacing:.18em;margin:auto;line-height:1.8}.image-slot small{display:block;letter-spacing:.04em;font-size:.875rem;margin-top:.6rem}.slot-name{font-size:.8125rem;letter-spacing:.03em;line-height:1.7}.image-slot.supplied{padding:0}.image-slot img{width:100%;height:100%;object-fit:cover}.image-slot.landscape.supplied img{object-fit:contain}.person-message{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.35fr);gap:6rem;align-items:start}.person-message:nth-child(2){grid-template-columns:minmax(0,.92fr) minmax(0,1.35fr)}.person-visual{max-width:31rem}.person-name{font-size:clamp(2.2rem,4vw,4rem);letter-spacing:.035em;line-height:1.4;margin:.65rem 0 1.5rem}.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:1.75rem;margin-top:1rem}.disclosure{margin-top:2rem;border-top:1px solid #87988a;border-bottom:1px solid #87988a}.disclosure summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:1rem;padding:1.3rem 0;font-size:1.35rem;line-height:1.4}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary small{font-size:.875rem}.disclosure summary>span{margin-left:auto}.disclosure[open] summary>span{transform:rotate(45deg)}.disclosure-content{padding:1rem 0 2rem}.disclosure-content h3>span{font-size:1.5rem}.disclosure-content h3{margin:1rem 0}.disclosure-content h4{font-size:1rem;margin:1.75rem 0 .8rem}.artist-roster{display:grid;grid-template-columns:1fr 1fr;gap:4rem}.roster-link{min-width:0}.roster-link .image-slot{transition:background .2s}.roster-link:hover .image-slot{background:#e0e9e0}.roster-name{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.5rem}.roster-name h2{font-size:clamp(1.65rem,2.5vw,2.8rem);letter-spacing:-.015em;line-height:1.4}.roster-name p{font-size:.875rem;line-height:1.8;margin-top:.35rem}.roster-name .circle-link{background:var(--green);border:0}.profile-hero{margin:0 var(--gutter);display:grid;grid-template-columns:.85fr 1.25fr;gap:5rem;align-items:center}.profile-hero .image-slot{max-width:34rem}.profile-intro{padding:1rem 0}.profile-training,.former-name{font-size:1rem;line-height:1.9;margin-top:1rem}.artist-expression{font-size:1.6rem;line-height:1.6;letter-spacing:-.02em}.profile-intro .social-links{margin-top:2rem}.profile-intro .social-links>.action{width:100%;max-width:25rem}.profile-actions{display:flex;flex-direction:column;align-items:start;gap:1.4rem;margin-top:2rem}.credits-intro{max-width:55rem;margin:2rem 0}.credits-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:4rem}.credits-grid>section{border-top:2px solid #b2c0b6;padding-top:1.5rem}.credits-grid h3>span{font-size:1.75rem}.credits-grid h4{font-size:1rem;font-weight:500;margin:1.6rem 0 .9rem}.credits-grid .text-list{margin-top:1.4rem}.worlds{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-top:2.5rem}.worlds>article{padding:2.5rem;background:linear-gradient(140deg,#f0f4f0,#dee6df);border-top:2px solid #a1b09e}.worlds h3{font-size:2.2rem;letter-spacing:-.045em;line-height:1.2;margin:2rem 0 1rem}.worlds p{line-height:1.9}.worlds .image-slot{margin-top:2rem}.section-nav{display:flex;flex-wrap:wrap;column-gap:2rem;row-gap:.5rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.service-group>.dual-title{margin-bottom:2.5rem}.service-row{display:grid;grid-template-columns:3rem 1fr 8rem;gap:2rem;padding:2rem 0;border-top:1px solid var(--line);align-items:start}.service-number{font-size:.875rem;color:var(--muted);padding-top:.3rem}.service-row h3{font-size:1.4rem;line-height:1.6;margin-bottom:.85rem}.service-row p{font-size:1rem;line-height:1.95;max-width:53rem}.service-row>.text-link{margin-left:auto}.service-row>div>.text-link{margin-top:1rem}.work-feature{display:grid;grid-template-columns:1fr 1.25fr;gap:4rem;align-items:center;margin-top:3rem}.work-feature .flyer-slot,.work-feature .gallery-trigger{max-width:25rem}.work-feature .prose h3{font-size:2rem;line-height:1.45;margin:1rem 0 1.5rem}.work-feature .prose>.action,.work-feature .prose>.text-link{display:flex;max-width:25rem;margin-top:1.5rem}.work-feature.game-work{padding-top:3rem;border-top:1px solid var(--line);grid-template-columns:1.3fr 1fr}.flow-list{list-style:none;counter-reset:step;padding:0;margin:2rem 0}.flow-list>li{counter-increment:step;display:flex;gap:1.2rem;align-items:baseline;line-height:1.7;padding:1.15rem 0;border-bottom:1px solid var(--line)}.flow-list>li:before{content:counter(step,decimal-leading-zero);font-size:.875rem;color:#546a50}.related-banner{display:flex;align-items:center;justify-content:space-between;gap:3rem;margin:2rem 0 4rem;padding:2.5rem;background:linear-gradient(120deg,#e8eeea,#fafcfa);border:1px solid var(--line)}.related-banner .dual-title>span{font-size:2rem}.related-banner p{font-size:1rem;line-height:1.9;margin-top:1rem}.related-banner .action{flex-shrink:0}.lesson-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:5rem;align-items:start}.lesson-intro .image-slot{max-width:31rem}.lesson-intro .prose{margin-top:1.5rem}.lesson-intro .text-link{margin-top:1rem}.fee-note{background:#e8efdf;border-left:3px solid #749f2b;padding:1rem 1.2rem;font-size:1rem;line-height:1.8;margin-top:1.5rem}.lesson-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 2rem;margin-top:2rem}.lesson-fields>div{display:flex;align-items:baseline;gap:1rem;border-bottom:1px solid var(--line);padding:1.5rem 0;min-width:0}.lesson-fields>div>span{font-size:.8125rem;color:var(--muted)}.lesson-fields h3{font-size:1.125rem;font-weight:500;line-height:1.6}.section-note{font-size:.9375rem;line-height:1.9;margin-top:1.5rem}.series-heading{display:grid;grid-template-columns:1fr 1.2fr;column-gap:5rem;align-items:start}.series-heading>.eyebrow{grid-column:1/-1;margin-bottom:1rem}.series-heading>h2{font-size:clamp(2.5rem,4.7vw,5rem);line-height:1.07;letter-spacing:-.055em}.series-social{grid-column:2;margin-top:1.2rem;font-size:.8125rem}.event-detail{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;margin-top:3rem;align-items:start}.flyer-slot{aspect-ratio:4/5;max-height:44rem;padding:1.5rem}.event-art>.gallery-trigger{width:100%}.event-information h3{font-size:1.8rem;line-height:1.5;letter-spacing:-.035em;margin:.7rem 0 1.5rem}.event-information .info-table>div{grid-template-columns:8.5rem 1fr;gap:1.5rem}.ticket-link{margin-top:1.75rem;width:100%}.event-state:empty{display:none}.event-state{font-size:.875rem;color:#54634b;padding:.55rem .8rem;background:#e3ebde;display:inline-block;margin-top:1rem}.lineup{margin-top:3rem}.lineup h4>span{font-size:1.65rem}.lineup ul{list-style:none;margin:1.5rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.65rem 1.5rem}.lineup li{font-size:1rem;line-height:1.8}.gallery-trigger{background:#edf1ed;border:1px solid #becbbf;padding:.75rem;display:block;cursor:zoom-in;min-width:0;text-align:left}.gallery-trigger img{width:100%;height:auto;object-fit:contain}.gallery-trigger>span{display:flex;justify-content:space-between;font-size:.875rem;line-height:1.7;margin:.75rem 0 .2rem}.gallery-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin-top:1rem}.gallery-strip .gallery-trigger{padding:.35rem}.home-flyer{align-self:start}.gallery-dialog{width:min(76rem,96vw);height:94dvh;max-height:94dvh;padding:1.5rem;overflow:hidden;display:none}.gallery-dialog[open]{display:flex;flex-direction:column}.gallery-dialog .dialog-head{flex-shrink:0;padding-bottom:1rem}.gallery-dialog h2{font-size:1.6rem;letter-spacing:-.03em}.gallery-dialog h2 small{font-size:.875rem;letter-spacing:0}.gallery-dialog figure{display:flex;flex:1;flex-direction:column;min-height:0;align-items:center;padding:1rem 0;gap:.75rem}.gallery-dialog figure img{width:100%;min-height:0;flex:1;object-fit:contain}.gallery-dialog figcaption{flex-shrink:0;font-size:.875rem;line-height:1.5;text-align:center}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-shrink:0}.gallery-controls button{padding:.7rem 1rem;border:1px solid #a9b7aa;background:#eef3ed;min-height:44px;font-size:.875rem}.gallery-controls>span{font-size:.875rem}.partnership-heading .eyebrow{letter-spacing:.12em}.partnership-heading h2{font-size:clamp(2rem,4.8vw,5rem);line-height:1.2;letter-spacing:-.055em;margin:1.5rem 0 3rem}.partnership-heading h2>span{font-weight:400;margin:0 1.5rem;color:#6e805f}.partnership>.image-slot{max-height:31rem}.partnership-copy{max-width:55rem;margin:3rem auto 0}.partnership-copy .action{margin-top:2rem}.audition-lead{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem}.audition-lead h2{font-size:clamp(1.65rem,2.65vw,3rem);line-height:1.65;letter-spacing:-.03em}.training-fields{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;list-style:none;padding:0;margin:1.2rem 0 1.5rem}.training-fields>li{padding:.5rem 0;border-bottom:2px solid #b5db86;font-size:1.1rem}.training-fees{margin:2rem 0}.training-fees>div{border-top:1px solid var(--line);padding:1.2rem 0}.training-fees dt{font-size:.875rem;color:var(--muted)}.training-fees dd{margin:.5rem 0 0;font-size:1rem;line-height:1.9}.form-section{max-width:57rem;margin:0 auto}.form-intro{line-height:1.9;margin:1.5rem 0 2.5rem}.request-form{min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.form-field{margin-bottom:1.6rem}.form-field>label{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.9375rem;line-height:1.7;margin-bottom:.65rem}.form-field>label>span{font-size:.75rem;color:var(--muted);flex-shrink:0}.form-field input,.form-field textarea,.form-field select{width:100%;border:1px solid #96a79b;border-radius:0;padding:.9rem;background:#fff;color:var(--ink);line-height:1.5;font-size:1rem;min-height:3.2rem;max-width:100%}.form-field textarea{resize:vertical}.form-field select{padding-right:1.8rem}.field-hint{font-size:.8125rem;line-height:1.8;color:var(--muted);margin-top:.5rem}.guardian-check{padding:1.3rem;background:#ecf1e8;margin-bottom:1.5rem}.guardian-check label{display:flex;gap:.85rem;align-items:start;font-size:.9375rem;line-height:1.9}.guardian-check input{width:1.2rem;height:1.2rem;flex-shrink:0;margin:.3rem 0 0}.privacy-note{font-size:.875rem;line-height:1.9;padding-top:1.5rem;border-top:1px solid var(--line);margin-bottom:1.4rem}.submit-button{min-width:18rem;max-width:100%}.connection-note{font-size:.875rem;line-height:1.8;margin-top:1rem;color:#60665c}.form-status:empty{display:none}.form-status{margin:1rem 0;padding:1rem 1.2rem;border:1px solid #9daa97;background:#eff4eb;line-height:1.9;font-size:.9375rem}.form-status[data-state="error"]{border-color:#a06b60;background:#fff4ee;color:#74362a}.form-status[data-state="success"]{border-color:#6a8a40}.form-field [aria-invalid="true"]{border:2px solid #975443}.field-error{color:#833a30;font-size:.8125rem;line-height:1.8;margin:.45rem 0 0}.trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.reply-note{font-size:.9375rem;line-height:1.9;margin-top:2rem}.contact-layout{display:grid;grid-template-columns:.8fr 1.5fr;gap:5rem}.contact-aside{min-width:0}.contact-aside>.dual-title>span{font-size:2.25rem}.contact-aside>p{font-size:.9375rem;line-height:1.9;margin-top:1.5rem;overflow-wrap:anywhere}.contact-aside .text-link{gap:.75rem;overflow-wrap:anywhere;min-width:0;max-width:100%}.application-link{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.5rem}.application-link>p{font-size:.875rem;line-height:1.9}.contact-layout .form-grid{grid-template-columns:1fr}.form-field:has([required]) label>span{color:#355623}#main-nav a[aria-current]{background:linear-gradient(90deg,#b5ff3528,transparent)}
@media(min-width:1600px){.page-wrap{max-width:1434px;margin-left:auto;margin-right:auto}.profile-hero{max-width:1434px;margin-left:auto;margin-right:auto}}
@media(max-width:1100px){.split-section{gap:3rem;grid-template-columns:.8fr 1.4fr}.person-message,.about-statement,.profile-hero,.lesson-intro,.contact-layout{gap:3rem}.artist-roster{gap:2.5rem}.lesson-fields{grid-template-columns:1fr 1fr}.service-row{gap:1.25rem;grid-template-columns:2rem 1fr 7rem}.event-detail,.series-heading{gap:2.5rem}.event-information .info-table>div{grid-template-columns:1fr;gap:.5rem}.work-feature{gap:2.5rem}.credits-grid{gap:2rem}.worlds h3{font-size:1.8rem}.worlds>article{padding:2rem}.audition-lead{gap:2.5rem}.contact-layout .form-grid{grid-template-columns:1fr}}
@media(max-width:800px){.mast-grid{grid-template-columns:1fr;gap:1.75rem}.page-mast{padding-bottom:2.75rem}.breadcrumb{margin-bottom:2.5rem}.page-mast h1>span{font-size:clamp(2.9rem,8.4vw,5rem)}.mast-aside{max-width:none}.mast-aside br{display:none}.content-section{padding:3rem 0}.split-section{grid-template-columns:1fr;gap:2rem}.about-statement{gap:2rem;grid-template-columns:.85fr 1.15fr}.person-message,.person-message:nth-child(2){grid-template-columns:.8fr 1fr;gap:2rem}.person-name{font-size:2.5rem}.profile-hero{gap:2rem;grid-template-columns:.8fr 1fr}.artist-expression{font-size:1.25rem}.profile-intro .social-links{gap:1rem}.profile-actions .action{font-size:.9375rem}.series-heading{display:block}.series-heading>h2{margin:1rem 0 1.5rem}.series-social{margin-top:1.5rem}.event-detail{gap:2rem;grid-template-columns:1fr 1fr}.event-information h3{font-size:1.5rem}.lesson-intro{gap:2rem;grid-template-columns:.75fr 1.25fr}.related-banner{display:block;padding:2rem}.related-banner .action{margin-top:1.5rem}.contact-layout{grid-template-columns:1fr;gap:3rem}.contact-aside{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem}.contact-aside .application-link{grid-column:1/-1;margin-top:0}.contact-aside>p,.contact-aside .social-links{margin-top:0}.contact-layout .form-grid{grid-template-columns:1fr 1fr}.audition-lead{grid-template-columns:1fr;gap:2rem}.audition-lead h2{font-size:2.25rem}.work-feature{grid-template-columns:1fr 1.2fr;gap:2rem}.work-feature .prose h3{font-size:1.65rem}.worlds{gap:1.5rem}.worlds>article{padding:1.5rem}.gallery-dialog h2{font-size:1.3rem}}
@media(max-width:600px){.page-mast{padding-top:1.2rem;padding-bottom:2.1rem}.breadcrumb{font-size:.75rem;gap:.65rem;margin-bottom:2rem}.breadcrumb .text-link{font-size:.75rem}.mast-grid{gap:1.5rem}.page-mast h1>span{font-size:clamp(2rem,9.3vw,3.4rem);letter-spacing:-.055em}.page-mast h1 small{font-size:1rem;margin-top:1rem}.mast-aside{font-size:.9375rem;line-height:1.9}.mast-aside>.action{width:100%}.dual-title>span{font-size:clamp(1.75rem,7.6vw,2.7rem)}.dual-title small{font-size:.9375rem;margin-top:.7rem}.content-section{padding:2.6rem 0}.split-section{gap:1.75rem}.prose,.large-prose{font-size:1rem;line-height:2}.about-statement,.person-message,.person-message:nth-child(2),.profile-hero,.lesson-intro,.artist-roster,.event-detail,.credits-grid,.worlds,.work-feature,.work-feature.game-work{grid-template-columns:1fr;gap:2rem}.about-statement .statement-mark{max-width:24rem;width:100%;margin:auto}.person-visual{max-width:none}.image-slot{padding:1.25rem}.person-name{font-size:2.5rem;margin:.65rem 0 1.25rem}.person-message .person-visual .image-slot{max-height:31rem}.person-message .social-links{margin-top:.6rem}.disclosure summary{font-size:1.2rem;gap:.75rem}.disclosure-content .text-list{font-size:.9375rem}.roster-name{margin-top:1.1rem}.roster-name h2{font-size:1.9rem}.roster-name p{font-size:.875rem}.artist-roster{gap:2.75rem}.profile-hero .image-slot{max-height:31rem;width:100%}.profile-intro{padding:0}.profile-intro .social-links>.action{max-width:none}.profile-actions{gap:1rem}.profile-actions .action{width:100%}.credits-grid{gap:2rem}.credits-grid h3>span{font-size:1.6rem}.credits-grid h3 small{font-size:.875rem}.credits-intro{margin:1.5rem 0 2rem}.info-table>div{grid-template-columns:1fr;gap:.5rem;padding:1rem 0}.info-table dd{font-size:1rem}.info-table dt{font-size:.8125rem}.section-nav{column-gap:1.5rem;row-gap:.4rem;padding:1rem 0}.section-nav .text-link{font-size:.875rem;gap:.6rem}.service-group>.dual-title{margin-bottom:1.5rem}.service-row{grid-template-columns:1.5rem 1fr;gap:.75rem;padding:1.5rem 0}.service-row h3{font-size:1.15rem;margin-bottom:.6rem}.service-row>.text-link{grid-column:2;justify-self:start;margin:0;gap:2rem}.service-row p{line-height:1.9}.service-number{font-size:.75rem}.work-feature{margin-top:2rem}.work-feature .flyer-slot,.work-feature .gallery-trigger{max-width:none}.work-feature .prose h3{font-size:1.65rem;margin-top:.8rem}.work-feature .prose>.action,.work-feature .prose>.text-link{max-width:none}.work-feature.game-work{padding-top:2rem}.flow-list{margin:1.5rem 0}.related-banner{padding:1.5rem;margin:1rem 0 2.6rem}.related-banner .dual-title>span{font-size:1.8rem}.related-banner .action{width:100%}.lesson-fields{grid-template-columns:1fr;gap:0;margin-top:1.25rem}.lesson-fields>div{padding:1.25rem 0;gap:1.15rem}.lesson-fields h3{font-size:1.125rem}.lesson-intro .image-slot{max-height:31rem;max-width:none}.lesson-intro .text-link{font-size:.875rem}.closing-actions{padding:2rem 0 3rem;display:grid;grid-template-columns:1fr;gap:1rem}.action{font-size:.9375rem;padding:.9rem 1.1rem;gap:1rem;min-height:3.3rem}.series-heading>h2{font-size:2.4rem;margin:.9rem 0 1.3rem}.event-detail{margin-top:2rem}.event-information .info-table>div{grid-template-columns:7.5rem 1fr;gap:1rem}.event-information .info-table dd{font-size:.9375rem}.event-information h3{font-size:1.6rem}.lineup{margin-top:2rem}.lineup ul{gap:.5rem 1.25rem}.lineup li{font-size:.9375rem}.gallery-dialog{width:100%;height:100dvh;max-height:100dvh;padding:1rem;margin:0}.gallery-dialog .dialog-head{gap:.8rem}.gallery-dialog h2{font-size:1.15rem;letter-spacing:0}.gallery-dialog h2 small{display:block;font-size:.75rem;margin-top:.4rem}.gallery-controls{gap:.5rem}.gallery-controls button{padding:.7rem .65rem;font-size:.8125rem}.gallery-controls>span{font-size:.8125rem}.partnership-heading h2{font-size:1.8rem;line-height:1.8;margin:1.25rem 0 1.5rem}.partnership-heading h2>span{margin:0 .25rem}.partnership>.image-slot{aspect-ratio:4/3}.partnership-copy{margin-top:2rem}.partnership-copy .action{width:100%}.audition-lead h2{font-size:1.55rem;line-height:1.8;letter-spacing:-.03em}.audition-lead h2 br{display:none}.training-fields{gap:.5rem 1rem}.training-fields>li{font-size:1rem}.form-grid,.contact-layout .form-grid{grid-template-columns:1fr}.form-field{margin-bottom:1.5rem}.form-field>label{font-size:.875rem}.form-field input,.form-field textarea,.form-field select{padding:.85rem;font-size:1rem}.submit-button{width:100%;min-width:0}.form-intro{font-size:1rem;margin:1.5rem 0 2rem}.guardian-check{padding:1rem}.guardian-check label{font-size:.875rem}.contact-aside{display:block}.contact-aside>p,.contact-aside .social-links{margin-top:1rem}.contact-aside .application-link{margin-top:1.5rem}.contact-layout{gap:2.5rem}.contact-aside>.dual-title>span{font-size:1.9rem}.contact-aside>p .text-link{font-size:.9375rem}.form-status{padding:1rem}.worlds h3{font-size:2rem}.worlds>article{padding:1.5rem}.worlds h3{margin-top:1.5rem}.privacy-note{margin-bottom:1rem}.artist-mast h1>span{font-size:clamp(3rem,13vw,5rem)}}
@media(prefers-reduced-motion:no-preference){.subpage{animation:page-enter .35s ease both}@keyframes page-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.page-mast.sakura-mast h1>span{font-size:clamp(2.8rem,6.6vw,6.5rem);letter-spacing:.025em;line-height:1.25}.page-mast.sakura-mast h1 small{font-size:clamp(.9375rem,1.5vw,1.25rem);letter-spacing:.14em;line-height:1.5;margin-top:1rem}

.person-name .person-name-english{display:block;margin-top:.65rem;font-size:clamp(.9375rem,1.4vw,1.2rem);font-weight:400;letter-spacing:.14em;line-height:1.5}

.person-name.liane-person-name{font-size:clamp(2rem,3.5vw,3.5rem);letter-spacing:.01em;line-height:1.25}.person-name .person-name-reading{display:block;margin-top:.75rem;font-size:clamp(1rem,1.7vw,1.3rem);font-weight:500;letter-spacing:.025em;line-height:1.6}.artist-nickname{font-size:1rem;line-height:1.8}

.person-visual .image-slot.supplied:has(img[src$='director-portrait.webp'])>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.person-visual:has(img[src$='sakura-message.jpeg']){width:100%;max-width:26.25rem}.person-visual .image-slot.supplied:has(img[src$='sakura-message.jpeg'])>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.image-slot.supplied:has(img[src$='sakura-artist.optimized.webp'])>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.sns-label .sns-icon-tiktok{box-sizing:border-box;object-fit:contain;padding:3px;background:#000;border-radius:4px}

.image-slot.supplied:has(img[src$='liane-artist.optimized.webp'])>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.gallery-strip{align-items:start}.gallery-strip .gallery-item-label{display:block;margin:.6rem .25rem .35rem;font-size:.8125rem;line-height:1.6;overflow-wrap:anywhere}@media(max-width:650px){.gallery-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}

.menu-logo{width:310px;max-width:100%;flex-shrink:0}@media(max-width:650px){.menu-logo{width:280px}}

.promotion-work{padding:3rem 0;border-top:1px solid var(--line);margin-top:3rem}.promotion-work h3{font-size:clamp(1.4rem,2.2vw,2rem);line-height:1.5;margin:.75rem 0}.promotion-work>p:not(.eyebrow){font-size:1rem;line-height:1.8;margin-bottom:1.5rem}.promotion-work .gallery-strip img{height:320px;object-fit:contain;background:#080b09}@media(max-width:650px){.promotion-work .gallery-strip img{height:210px}}

.promotion-work .gallery-banner{grid-column:1/-1}.promotion-work .gallery-banner img{height:auto;object-fit:contain}

.partnership-overview{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,5rem);align-items:start}.partnership-overview .partnership-copy{margin:0}.partnership-poster{width:100%;max-width:500px;justify-self:center}.partnership-poster img,.international-artists .gallery-trigger img{display:block;width:100%;height:auto;object-fit:contain}.international-artists{margin-top:4rem;padding-top:3rem;border-top:1px solid #cdd1cb}.international-artists h2{font-size:clamp(1.5rem,3vw,2.2rem)}.international-artists h2 small{display:block;font-size:.8rem;font-weight:400;letter-spacing:.12em;margin-top:.7rem}.international-artists .gallery-strip{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2rem}@media(max-width:800px){.partnership-overview{grid-template-columns:1fr}.international-artists .gallery-strip{grid-template-columns:1fr;max-width:500px;margin:2rem auto 0}}

.partnership-heading h2>.partnership-names{margin:0;color:inherit}.partnership-subtitle{display:block;font-size:clamp(1rem,2vw,1.5rem);font-weight:400;letter-spacing:.03em;line-height:1.8;margin-top:.75rem}

.partnership-announcement{font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.8;margin:0 0 1.5rem}

/* Artist logos stay beside their names at every width. */
.artist-logo{display:block;width:100%;height:auto;object-fit:contain}
.artist-mast .mast-grid{grid-template-columns:minmax(0,max-content) clamp(110px,22vw,280px);justify-content:start;gap:1.5rem 2rem;align-items:center}
.artist-mast .mast-grid>.dual-title{grid-column:1;grid-row:1;min-width:0}
.artist-mast .mast-aside{display:contents}
.artist-mast .artist-logo{grid-column:2;grid-row:1;margin:0}
.artist-mast .mast-aside>.text-link{grid-column:1/-1;grid-row:2;justify-self:start;margin:0}
.profile-identity{display:grid;grid-template-columns:minmax(0,max-content) clamp(100px,12vw,160px);justify-content:start;align-items:center;gap:1rem;margin-bottom:1.5rem}
.profile-identity>div{min-width:0}
.profile-identity .person-name{font-size:clamp(1.75rem,3.2vw,3.7rem);margin:.65rem 0 0}
.profile-identity .person-name.liane-person-name{font-size:clamp(1.7rem,3vw,3.3rem)}
.profile-identity .eyebrow{margin:0}
.profile-identity .artist-logo{margin:0}
@media(max-width:650px){
.artist-mast .mast-grid{grid-template-columns:minmax(0,max-content) clamp(96px,28vw,150px);gap:1.5rem .75rem}
.artist-mast h1>span{font-size:clamp(1.8rem,7.2vw,3rem);line-height:1.1}
.page-mast.sakura-mast h1>span{font-size:clamp(1.8rem,7.5vw,3rem);letter-spacing:.01em}
.artist-mast h1 small,.page-mast.sakura-mast h1 small{font-size:.8125rem;line-height:1.6;letter-spacing:.07em;margin-top:.65rem}
.profile-identity{grid-template-columns:minmax(0,max-content) clamp(84px,24vw,110px);gap:.75rem}
.profile-identity .person-name{font-size:clamp(1.6rem,6.5vw,2.2rem)}
.profile-identity .person-name.liane-person-name{font-size:clamp(1.6rem,4.6vw,2rem)}
.profile-identity .eyebrow{font-size:.65rem;line-height:1.7;letter-spacing:.03em}
.profile-identity .person-name-english,.profile-identity .person-name-reading{font-size:.8125rem;letter-spacing:.04em;line-height:1.6}
}


/* Layout audit: align labels, logos and actions consistently. */
.link-label{display:block;min-width:0}.link-arrow{flex-shrink:0;line-height:1}.action .link-label small{display:block;margin-top:.15rem}.text-link,.action{max-width:100%}
.artist-roster{max-width:1000px;margin-inline:auto;align-items:start;gap:2.5rem}
.roster-name{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center;column-gap:.75rem;row-gap:.1rem;margin-top:.85rem}
.roster-heading{grid-column:1;grid-row:1;display:flex;align-items:center;gap:.65rem;min-width:0;min-height:56px}
.roster-heading h2{min-width:0;font-size:clamp(1.25rem,1.8vw,1.65rem);line-height:1.4;margin:0;letter-spacing:0}
.roster-heading .artist-logo{width:72px;flex:0 0 72px;margin:0}
.roster-name .circle-link{grid-column:2;grid-row:1;width:36px;height:36px;font-size:24px;align-self:center;background:transparent;border:1px solid #96a49a}
.roster-link:hover .circle-link{background:var(--green);border-color:var(--green)}
.roster-reading{grid-column:1/-1;grid-row:2;min-width:0}.roster-reading p{font-size:.8125rem;line-height:1.7;margin:0}.roster-reading p+p{margin-top:.15rem}
.artist-mast .mast-grid{grid-template-columns:minmax(0,max-content) clamp(96px,16vw,190px);gap:1.25rem 1.5rem}
.artist-mast h1>span{font-size:clamp(2.5rem,4.6vw,4.5rem);line-height:1.1}
.page-mast.sakura-mast h1>span{font-size:clamp(2.5rem,4.6vw,4.5rem);line-height:1.25}
.artist-mast h1 small,.page-mast.sakura-mast h1 small{font-size:clamp(.875rem,1.2vw,1rem);margin-top:.7rem}
.profile-identity{grid-template-columns:minmax(0,max-content) clamp(84px,9vw,120px);gap:.75rem}
.profile-identity .person-name{font-size:clamp(1.75rem,2.8vw,3rem)}.profile-identity .person-name.liane-person-name{font-size:clamp(1.6rem,2.6vw,2.7rem)}
.profile-hero{align-items:start}.profile-intro{padding-top:0}.profile-actions,.closing-actions{align-items:stretch}.closing-actions>.action{flex:1 1 240px}
.performer-gallery{margin-top:2.5rem}.performer-gallery>.subheading{margin:0 0 1rem}.performer-gallery .gallery-strip{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:1rem}.performer-gallery .gallery-trigger{display:flex;flex-direction:column}.performer-gallery .gallery-trigger img{aspect-ratio:4/5;object-fit:contain;background:#080b09}.performer-gallery .gallery-item-label{margin-top:.65rem}
.work-feature{align-items:start}.work-feature.text-only-work{display:block}.text-only-work>.prose{max-width:44rem}
@media(max-width:800px){.artist-roster{gap:1.5rem}.roster-name{grid-template-columns:minmax(0,1fr) 32px;column-gap:.5rem}.roster-heading{gap:.5rem}.roster-heading .artist-logo{width:48px;flex-basis:48px}.roster-heading h2{font-size:1.2rem}.roster-name .circle-link{width:32px;height:32px;font-size:22px}.performer-gallery .gallery-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.artist-mast .mast-grid{grid-template-columns:minmax(0,max-content) clamp(90px,25vw,140px);gap:1.25rem .75rem}.artist-mast h1>span,.page-mast.sakura-mast h1>span{font-size:clamp(1.8rem,7.2vw,2.5rem)}.artist-mast h1 small,.page-mast.sakura-mast h1 small{font-size:.8125rem}.profile-identity{grid-template-columns:minmax(0,max-content) 90px}.profile-identity .person-name,.profile-identity .person-name.liane-person-name{font-size:clamp(1.6rem,4.6vw,2rem)}.social-links{column-gap:1rem;row-gap:.25rem}.social-links>.action{margin-top:.65rem}.performer-gallery .gallery-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}}
@media(max-width:600px){.artist-roster{max-width:440px;gap:2rem}.roster-heading h2{font-size:1.3rem}.roster-heading .artist-logo{width:60px;flex-basis:60px}}

.lesson-closing>.action{flex:0 1 600px}.work-feature .prose>.action,.work-feature .prose>.text-link{width:100%}

.event-information .event-subtitle{display:block;font-size:clamp(1rem,1.5vw,1.3rem);font-weight:500;line-height:1.6;letter-spacing:.015em;margin-top:.5rem}

.work-feature.game-work{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr)}.work-feature .game-poster{width:100%;max-width:400px;justify-self:start}.game-poster img{display:block;width:100%;height:auto;object-fit:contain}@media(max-width:600px){.work-feature.game-work{grid-template-columns:1fr}.work-feature .game-poster{max-width:100%}}

.profile-actions{width:100%;max-width:25rem}@media(max-width:600px){.profile-actions{max-width:none}}

.contact-heading{min-width:0}.contact-heading .contact-logo{width:280px;max-width:100%}.contact-heading h2{font-size:1rem;font-weight:500;line-height:1.7;letter-spacing:.035em;margin-top:1rem}


/* Shared SNS rows for the home, profiles, messages, events and contact pages. */
.official-social-links,.connect .social>.official-social-links{display:grid;grid-template-columns:minmax(0,1fr);gap:0;font-size:14px}
.connect .social>.official-social-links{margin-top:14px}
.official-social-links>.sns-link{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:46px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5}
.official-social-links .link-label{display:flex;align-items:center}
.official-social-links>.sns-link>[aria-hidden="true"]{display:grid;place-items:center;width:24px;flex:0 0 24px;font-size:22px;line-height:1}
.official-social-links>.sns-link:hover{border-bottom-color:var(--ink)}
.social-links{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:1rem}
.social-links>.official-social-links{margin-top:0}
.profile-intro .social-links,.series-social .social-links{width:100%;max-width:25rem}
@media(max-width:600px){.profile-intro .social-links{max-width:none}}

.profile-visual{width:100%;max-width:34rem}
.lesson-visual{width:100%;max-width:31rem}
.profile-visual>.social-links,.lesson-visual>.social-links{margin-top:1rem}
.info-table .social-links{margin-top:0}
@media(max-width:600px){.lesson-visual{max-width:none}}

.event-art .series-social{margin-top:1rem}
.event-art .series-social>p{font-size:.8125rem;line-height:1.7}
.event-art .series-social .social-links{max-width:none;margin-top:.5rem}

/* Hosted forms keep submission and confirmation inside the official provider. */
.hosted-form { min-width: 0; }
.hosted-form-help { font-size: .875rem; color: var(--muted); margin: 0 0 .75rem; }
.hosted-form-action { display: flex; justify-content: flex-end; margin-bottom: 1.5rem; }
.hosted-form-frame { display: block; width: 100%; height: 1320px; border: 0; background: #edf2ef; scroll-margin-top: 1rem; }
.hosted-form[data-hosted-form="audition"] .hosted-form-frame { height: 1900px; }
@media (max-width: 760px) {
  .hosted-form-frame { height: 1520px; }
  .hosted-form[data-hosted-form="audition"] .hosted-form-frame { height: 2100px; }
}

/* Shared compact controls: short labels, a fine black outline. */
[class].outline-control {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  gap: 8px;
  width: fit-content;
  min-width: 0;
  max-width: 100%;
  min-height: 44px;
  padding: 9px 16px;
  border: 1px solid #1a1a1a;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  color: var(--ink, #101813);
  font: inherit;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .025em;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
  transform: none;
  transition: background-color .18s ease;
}
.outline-control:hover:not(:disabled),
.outline-control.secondary:hover,
.outline-control:focus-visible,
.card-link:hover .outline-control,
.card-link:focus-visible .outline-control {
  color: var(--ink, #101813);
  border-color: #1a1a1a;
  background: var(--green);
  box-shadow: none;
  transform: none;
}
.outline-control:focus-visible, .card-link:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 3px;
}
.outline-control:disabled { opacity: .48; cursor: not-allowed; }
.outline-control .link-label { min-width: 0; }
.outline-control .link-label small {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
}
.breadcrumb-link { text-underline-offset: 4px; }
.breadcrumb-link:hover { text-decoration: underline; }
.primary-nav { gap: 12px; }
.primary-nav > .outline-control { padding: 9px 14px; font-size: 13px; }
.primary-nav > .outline-control::after { content: none; }
.primary-nav > [aria-current] { font-weight: 700; }
.header > .menu-button { min-width: 84px; flex: 0 0 auto; align-self: center; }
#main-nav { gap: 12px 24px; }
#main-nav > .outline-control {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 52px;
  padding: 12px 16px;
  border: 1px solid #1a1a1a;
  background: #fff;
  text-align: left;
}
#main-nav > .outline-control[aria-current] { font-weight: 700; background: #fff; }
#main-nav > .outline-control:hover, #main-nav > .outline-control:focus-visible { background: var(--green); }
#main-nav .nav-index { align-self: center; font-size: 11px; color: var(--muted); }
#main-nav .nav-label { font-size: 15px; line-height: 1.6; }
.dialog-head > .close-button { flex-shrink: 0; align-self: center; }

/* Keep actions close to their section, without stretching short captions. */
.about-label { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.home-message, .home-message:hover {
  background: linear-gradient(110deg, #e5ede4, #f3f6f1 55%, #fafdf8);
  border-color: #b8c8b3;
}
.home-message > .card-control { align-self: center; justify-self: end; }
.artists-action { display: block; margin-top: 22px; }
.creation article > a { display: flex; flex-direction: column; }
.creation .card-control { margin-top: 20px; }
.creation p { flex-grow: 1; }
.section-heading { flex-wrap: wrap; gap: 18px; }
.section-heading > .outline-control { flex-shrink: 0; align-self: center; }
.second-series { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }
.second-series > .card-control { font-size: 14px; }
.related-pages > .card-link { display: flex; flex-direction: column; }
.related-pages .card-control { margin-top: 20px; }
.connect > .card-link { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; gap: 0; }
.connect > .card-link > .card-control { margin-top: 18px; }
.connect .social > .official-social-links { margin-top: 18px; }
.official-social-links, .connect .social > .official-social-links {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
}
.official-social-links > .outline-control { flex: 0 0 auto; min-width: 62px; }
.sns-label { font-weight: 500; }
.roster-name { grid-template-columns: minmax(0, 1fr); row-gap: 4px; }
.roster-reading { min-height: 46px; }
.roster-name > .card-control { grid-column: 1; grid-row: 3; justify-self: start; margin-top: 12px; }
.profile-actions { align-items: flex-start; gap: 12px; }
.closing-actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 12px; }
.closing-actions > .outline-control { flex: 0 1 auto; }
.work-feature .prose > .outline-control { display: flex; width: fit-content; margin-top: 18px; }
.section-nav { gap: 10px; }
.service-row > .outline-control { justify-self: start; margin-left: 0; }
.disclosure { border: 0; }
.disclosure > summary.outline-control { list-style: none; }
.disclosure > summary.outline-control > span { margin: 0; transform: none; }
.disclosure .disclosure-open, .disclosure[open] .disclosure-closed { display: none; }
.disclosure[open] .disclosure-open { display: inline; }
.gallery-trigger > .card-control { margin: 12px 0 0; }
.gallery-strip .gallery-trigger > .card-control { padding: 9px 12px; font-size: 13px; }
.gallery-item-label + .card-control { margin-top: 8px; }
.gallery-controls { display: grid; grid-template-columns: 1fr auto 1fr; gap: 16px; }
.gallery-controls > button:last-child { justify-self: end; }

/* Align the button boxes to the right; keep their captions centered. */
main [class].outline-control {
  display: flex;
  margin-inline-start: auto;
  align-self: flex-end;
  justify-self: end;
}
.official-social-links, .connect .social > .official-social-links,
.closing-actions, .section-nav { justify-content: flex-end; }
main .official-social-links > .outline-control,
main .closing-actions > .outline-control,
main .section-nav > .outline-control { margin-inline-start: 0; }
.profile-actions { max-width: none; }
.artist-mast .mast-aside > .outline-control { justify-self: end; }
.about-label { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 16px; }

@media (min-width: 1280px), (min-width: 768px) and (max-width: 920px) {
  .event-copy { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 18px; align-content: start; }
  .event-copy > .event-category, .event-copy > h3, .event-copy > .second-series { grid-column: 1 / -1; }
  .event-copy > p { grid-column: 1; grid-row: 3; align-self: center; }
  .event-copy > .outline-control { grid-column: 2; grid-row: 3; margin-top: 12px; }
  .event-copy > .second-series { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
}
@media (min-width: 1280px) {
  .related-pages > .card-link { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 18px; }
  .related-pages .related-heading, .related-pages .country-line { grid-column: 1 / -1; }
  .related-pages .project-caption, .related-pages .audition-entry > p { grid-column: 1; }
  .related-pages .card-control { grid-column: 2; margin-top: 12px; }
}

@media (max-width: 1279px) {
  .header > .primary-nav { display: none; }
}
@media (min-width: 651px) and (max-width: 920px) {
  .related-pages .project-caption, .related-pages .audition-entry > p { flex-grow: 1; }
}
@media (max-width: 650px) {
  .header > .menu-button { min-width: 78px; padding: 9px 12px; font-size: 13px; }
  .home-message { grid-template-columns: minmax(0, 1fr) auto; gap: 16px; }
  .home-message > .card-control { font-size: 13px; padding: 9px 12px; }
  .service-row > .outline-control { grid-column: 2; }
  #main-nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  #main-nav > .outline-control { min-height: 50px; padding: 11px 14px; gap: 10px; }
  #main-nav .nav-label { font-size: 14px; }
  .gallery-controls { gap: 10px; }
  .gallery-controls > .outline-control { padding: 9px 10px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .outline-control { transition: none; }
}

/* Material and light only. The established page geometry remains in its own stylesheets. */
:root {
  --ink: #101414;
  --muted: #444e4d;
  --line: #8f9b99;
  --silver: #ccd5d4;
  --world-material: url("assets/metal-light-v1.webp");
}

body {
  position: relative;
  background-color: #d8dddd;
  isolation: isolate;
}
body::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(112deg, #f2f5f42e, #9dacaa2b 46%, #eef3f245 70%, #8fa19b24),
              repeating-linear-gradient(0deg, #ffffff06 0 1px, transparent 1px 4px);
}
::selection { background: var(--green); color: #101414; }

/* A continuous silver stage behind the supplied hero artwork. */
.header {
  background: linear-gradient(112deg, #fafcfc, #c5cecf 49%, #f1f4f3 72%, #b8c3c3);
  border-bottom-color: #85968b;
  box-shadow: inset 0 1px #fff, 0 3px 16px #20382b14;
}
.hero.hero-intro {
  isolation: isolate;
  background: #dce3de;
  border-bottom-color: #7b8d80;
  box-shadow: inset 0 1px #fff9, inset 0 -1px #fff8;
}
.hero-intro::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background: var(--world-material) center 60% / cover no-repeat;
  filter: contrast(1.38) saturate(1.2) brightness(.96);
}
.hero-intro::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse 320px 180px at 78% 62%, #f3f7ede6, #f3f7edb3 46%, #edf5ed57 70%, transparent),
              radial-gradient(ellipse at 77% 45%, #f1f5ef61, transparent 43%),
              linear-gradient(90deg, #f2f5f136, transparent 56%);
  box-shadow: inset 0 1px #fff9, inset 0 -1px #20352e40;
}
.hero-intro .hero-art {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  mix-blend-mode: normal;
}
.hero-intro .hero-art img {
  border-color: transparent;
  mask-image: linear-gradient(90deg, transparent, #00000029 3%, #00000080 7%, #000000db 12%, #000 17%, #000 83%, #000000db 88%, #00000080 93%, #00000029 97%, transparent),
              linear-gradient(0deg, transparent, #00000029 5%, #00000080 11%, #000000db 17%, #000 23%, #000 77%, #000000db 83%, #00000080 89%, #00000029 95%, transparent);
  mask-composite: intersect;
}
.hero-intro h1 {
  color: #101414;
  text-shadow: none;
}
.hero-intro .hero-company {
  color: #101414;
  font-size: clamp(18px, 1.6vw, 22px);
  font-weight: 600;
}
.hero-intro .hero-description {
  color: #17201b;
  font-size: clamp(16px, 1.25vw, 18px);
  font-weight: 500;
}

/* Light continues into the rest of HOME, behind the existing content. */
.about, .directory, .activities, .connect {
  position: relative;
  isolation: isolate;
}
.about::before, .directory::before, .activities::before, .connect::before {
  content: "";
  position: absolute;
  inset: 0 calc(-1 * var(--gutter));
  z-index: -1;
  pointer-events: none;
}
.about::before {
  background: linear-gradient(100deg, #f7f9f8, #d3dbda 69%, #eaf0ec);
  box-shadow: inset 0 1px #fff;
}
.directory::before {
  background: linear-gradient(118deg, #abb8b829, #f0f3f3 57%, #c1cdcc);
}
.activities::before {
  background: linear-gradient(110deg, #edf1f0, #cbd5d4 66%, #dfe6e2);
}
.connect::before {
  background: linear-gradient(110deg, #eff2f1, #d5dcdb 57%, #ebefed);
}
.home-message, .home-message:hover {
  color: #f0f6ed;
  background: radial-gradient(ellipse at 95% 120%, #87cc3524, transparent 56%),
              linear-gradient(105deg, #151e1c, #2b3833 57%, #111a18);
  border-color: #63796a;
  box-shadow: inset 0 1px #e6f6d84d, 0 12px 24px -18px #1222199e;
}
.artists-entry {
  border-color: #7c8e80;
  box-shadow: inset 0 1px #fff, 0 18px 34px -25px #13241a9e;
}
.artists-entry .silver-art { filter: contrast(1.16); }
.artists-entry::before {
  background: linear-gradient(0deg, #dfe7e3f7, #f2f6f08a 27%, transparent 57%),
              linear-gradient(115deg, #17271d0f, transparent 48%, #40574b2e);
}
.artists-entry::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(132deg, transparent 66%, #7eb81700 66.2%, #8cdc16ba 66.35%, #eaffc6e6 66.47%, #8cdc1699 66.58%, transparent 66.8%);
}
.project-entry .country-line {
  background: linear-gradient(125deg, #f9fcf9, #c5d2ca 49%, #ecf3e6);
  border-color: #829782;
  box-shadow: inset 0 1px #fff, 0 5px 15px -12px #25402d;
}
.country-mark img { border-color: #a1aca8; }
.country-connection { background: #95a092; }
.country-connection::after { box-shadow: 0 0 8px #9ed82c7a; }
.creation article + article, .second-series, .related-pages {
  border-color: var(--line);
}
.audition-entry { border-color: var(--line); }

/* The same finish on page headings, photo surrounds and content surfaces. */
.page-mast {
  position: relative;
  isolation: isolate;
  background: linear-gradient(115deg, #f4f7f5 9%, #bcc8c7 48%, #eff4ed 66%, #a5b4b0 100%);
  border-bottom-color: var(--line);
  box-shadow: inset 0 1px #fff, inset 0 -1px #ffffff9e;
}
.page-mast::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 78%, #e1ffc25c 79%, #89c528ba 79.15%, #eaffd4d9 79.35%, transparent 80.5%),
              radial-gradient(ellipse at 100% 80%, #b5ff3526, transparent 50%);
}
.page-wrap {
  background: linear-gradient(90deg, #f0f3f447, #edf2efb3 25%, #ebefefc2 75%, #ecf3ed52);
}
.image-slot, .statement-mark, .gallery-trigger, .flyer-mat {
  background: linear-gradient(125deg, #f7faf8, #b5c2bd 51%, #e3ebe5);
  border-color: #8c9f8e;
  box-shadow: inset 0 1px #fff, 0 16px 30px -25px #172f1e80;
}
.statement-mark {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  mix-blend-mode: multiply;
}
.statement-mark img {
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent),
              linear-gradient(0deg, transparent, #000 13%, #000 89%, transparent);
  mask-composite: intersect;
}
.related-banner, .worlds > article {
  background: linear-gradient(115deg, #eef4ed, #c6d4cb 63%, #eaf2e6);
  border-color: #859b84;
  box-shadow: inset 0 1px #fff;
}
.fee-note, .guardian-check, .event-state {
  background: #e3ecd9;
  color: #253721;
}
.form-field input, .form-field textarea, .form-field select {
  background: #f9fcf9;
  border-color: #87988b;
  box-shadow: inset 0 2px 5px #17362006;
}
.form-field input:focus, .form-field textarea:focus, .form-field select:focus {
  outline: 2px solid #507b22;
  outline-offset: 2px;
}

/* The approved compact black frames stay consistent throughout the site. */
[class].outline-control, #main-nav > .outline-control, #main-nav > .outline-control[aria-current] {
  background: #f9fbf8;
  color: #101414;
  border-color: #1a1a1a;
}
.outline-control:hover:not(:disabled), .outline-control.secondary:hover,
.outline-control:focus-visible, .card-link:hover .outline-control,
.card-link:focus-visible .outline-control, #main-nav > .outline-control:hover,
#main-nav > .outline-control:focus-visible {
  background: var(--green);
  color: #101414;
  border-color: #1a1a1a;
}
.footer {
  background: linear-gradient(110deg, #e3e9e6, #a5b2b2 53%, #d9e1df 75%, #a5b5ac);
  border-top-color: #748875;
  box-shadow: inset 0 1px #fff;
}
.footer-location, .footer-bottom { color: #263b2a; }
dialog {
  background: linear-gradient(115deg, #f5f9f2, #d6e1d8 65%, #edf3e8);
}
dialog::backdrop { background: #111c16ad; }

@media (max-width: 760px) {
  .hero-intro .hero-company { font-size: 18px; }
  .hero-intro .hero-description { font-size: 16px; }
  .hero-intro::before {
    background-position: 65% center;
  }
  .hero-intro::after {
    background: linear-gradient(180deg, #f2f6ee66 0%, #f3f6ef30 34%, transparent 70%),
                radial-gradient(ellipse 190px 110px at 50% 76%, #f2f8e9d9, #edf5e580 55%, transparent),
                radial-gradient(ellipse at 50% 67%, #f4ffe080, transparent 48%);
  }
  .page-mast {
    background: linear-gradient(115deg, #f1f5ef, #ccd6d1 64%, #b8c8bd);
  }
}

@media (forced-colors: active) {
  body::before, .hero-intro::before, .hero-intro::after, .page-mast::before,
  .about::before, .directory::before, .activities::before, .connect::before,
  .artists-entry::after { display: none; }
  .hero-intro .hero-art, .statement-mark { mix-blend-mode: normal; }
  .hero-intro .hero-art img, .statement-mark img { mask-image: none; }
}
