:root{--blue:#5e17eb;--muted:#bab8c5}body{background:#080708}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #baabff;outline-offset:5px}.site-nav{display:flex;align-items:center;gap:30px;padding:24px 5%;background:#080708ed;border-bottom:1px solid #ffffff24;position:sticky;top:0;z-index:20;backdrop-filter:blur(15px)}.site-nav .wordmark{font-size:12px;font-weight:700;letter-spacing:2px;margin-right:auto;text-decoration:none}.site-nav a,.lang-link{font-size:12px;letter-spacing:1px;text-decoration:none}.site-nav a[aria-current=page]{color:#c6b6ff}.site-nav .lang-link{border:1px solid #6e647c;padding:8px 10px}.section{padding:90px 5%}.display{font-family:SwellHeadline,Arial,sans-serif;font-weight:700;line-height:1.1;font-size:clamp(30px,4vw,54px);margin:0 0 35px}.philosophy{display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(120deg,#0f1296,#371260 55%,#a70b28);min-height:690px}.ph-image{background:#000;padding:70px;display:grid;place-items:center}.ph-image img{width:100%;aspect-ratio:1;object-fit:cover}.ph-copy{padding:90px 42px;text-align:center;display:flex;flex-direction:column;justify-content:center}.ph-copy .display{font-size:clamp(30px,3.4vw,48px)}.ph-copy h3{font-size:clamp(20px,2vw,29px);margin:10px 0 32px}.ph-copy p{line-height:1.9;letter-spacing:2px;font-size:17px}.ph-copy .motto{margin-top:38px;font-size:17px}.about{position:relative;isolation:isolate;text-align:center;min-height:660px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#13060c;overflow:hidden}.about video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.about:before{content:'';position:absolute;inset:0;background:#0008;z-index:-1}.about p{max-width:870px;font-size:clamp(16px,1.5vw,21px);line-height:2;white-space:pre-line}.pill{display:inline-block;border:1px solid #ffffff70;border-radius:60px;padding:17px 42px;text-decoration:none;font-size:13px;letter-spacing:2px;background:var(--blue);margin-top:25px}.studio-grid{display:grid;grid-template-columns:1.05fr .8fr 1fr;gap:24px;align-items:start}.studio-grid img{width:100%;display:block;object-fit:cover}.studio-title{padding-top:95px}.studio-title h2{font-family:SwellHeadline;font-weight:400;font-size:clamp(36px,4vw,62px);line-height:1; margin:0 0 60px}.studio-tall{height:480px}.studio-caption{text-align:right;font-size:20px;font-weight:700;line-height:1.1;margin:16px 0}.studio-mic{max-width:55%;height:300px}.services{text-align:center;background:radial-gradient(ellipse at 20% 80%,#492033,transparent 55%),linear-gradient(130deg,#1b101b,#0a0a13)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:58px}.service-card{border:1px solid #ffffff80;text-align:left}.service-card header{text-align:center;padding:22px 12px;border-bottom:1px solid #ffffff70;min-height:98px}.service-card h3{font-size:16px;letter-spacing:1px;margin:0 0 8px}.service-card small{font-size:14px;color:#ddd}.service-card p{font-size:15px;line-height:1.9;padding:8px 18px 20px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.section-top .display{margin:0}.text-link{text-decoration:none;border-bottom:1px solid;padding:8px 0;font-size:12px;letter-spacing:1px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 24px}.work-card{text-decoration:none;display:block}.work-art{position:relative;background:#18141e;aspect-ratio:16/9;overflow:hidden;display:grid;place-items:center}.work-art img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.work-card:hover img{transform:scale(1.035)}.work-art .arrow{position:absolute;bottom:12px;right:12px;background:#101018d9;border:1px solid #fff5;border-radius:50%;padding:9px 12px}.work-card .meta{font-size:10px;color:#baadcb;letter-spacing:2px;margin:19px 0 10px}.work-card h3{font-size:17px;line-height:1.55;font-weight:500;margin:0}.work-card .sub{font-size:12px;color:var(--muted);line-height:1.6}.cave{background:radial-gradient(ellipse at 50% 100%,#375efa,#14124b 55%,#060b23);color:#d8e0ff;text-align:center;padding:22px;letter-spacing:3px;line-height:1.8}.now-playing{text-align:center;background:linear-gradient(125deg,#191575,#4e176c,#161325);padding:75px 25px}.now-playing .display{margin-bottom:20px}.now-playing p{letter-spacing:2px;font-size:12px;line-height:2}.clients{border-top:1px solid #ffffff24}.client-list{display:flex;flex-wrap:wrap;gap:25px 48px;font-size:14px;line-height:1.7;letter-spacing:1px;color:#d6d2df}.footer{padding:60px 5% 30px;background:#060607;border-top:1px solid #ffffff24}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer h2{font-size:clamp(30px,5vw,70px);font-family:SwellHeadline;margin:0 0 25px}.footer p{font-size:13px;line-height:1.9;color:#bab6c4}.footer-links{display:flex;gap:25px;flex-wrap:wrap;margin:20px 0}.footer-links a{font-size:13px;text-decoration:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #fff2;margin-top:50px;padding-top:25px;font-size:10px;letter-spacing:1px;color:#aaa}.footer-bottom button{border:0;background:none;color:inherit;cursor:pointer}.inner-page{min-height:65vh;padding:75px 5% 100px}.page-intro{color:var(--muted);line-height:1.9;max-width:780px;font-size:16px;margin-bottom:40px}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:32px 0}.filters button{background:none;border:1px solid #fff4;border-radius:30px;padding:10px 19px;color:white;cursor:pointer;font-size:12px}.filters button[aria-pressed=true]{background:var(--blue);border-color:var(--blue)}.project-head{max-width:1000px}.project-head h1{font-family:Arial,'Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(28px,4vw,54px);line-height:1.35;font-weight:500}.project-player{aspect-ratio:16/9;width:100%;max-width:1120px;display:block;background:#14121a;border:0;margin:35px 0}.project-note{max-width:800px;line-height:1.9;color:#ccc}.back-link{display:inline-block;font-size:12px;letter-spacing:1px;margin-bottom:35px;text-decoration:none}.company-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.company-layout img{width:100%}.facts{margin-top:40px;border-top:1px solid #fff3}.facts div{display:grid;grid-template-columns:140px 1fr;border-bottom:1px solid #fff3;padding:18px 0;line-height:1.8;font-size:14px}.facts dt{color:#aaa}.facts dd{margin:0}.members{margin-top:70px}.empty{padding:30px;border:1px solid #fff3;color:#b9b4c5;line-height:1.8}.contact-email{font-size:clamp(18px,3.8vw,50px);overflow-wrap:anywhere}.contact-page .page-intro{margin-top:35px}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.profile-grid img{width:100%;aspect-ratio:1;object-fit:cover}[hidden]{display:none!important}
@media(max-width:900px){.site-nav{gap:16px;padding:18px 4%;flex-wrap:wrap}.site-nav .wordmark{width:100%;font-size:10px}.site-nav a{font-size:11px}.ph-image{padding:35px}.ph-copy{padding:55px 25px}.ph-copy p{font-size:14px}.service-grid{grid-template-columns:repeat(2,1fr)}.studio-grid{gap:16px}.studio-title{padding-top:35px}.studio-tall{height:340px}.studio-mic{height:210px}.studio-caption{font-size:15px}.work-grid{grid-template-columns:repeat(2,1fr)}.section{padding:65px 5%}}
@media(max-width:600px){.site-nav{gap:17px;padding:17px 5%;position:relative}.site-nav .lang-link{margin-left:auto}.philosophy{grid-template-columns:1fr}.ph-image{padding:38px 8%}.ph-copy{padding:65px 7%}.ph-copy .display{font-size:33px}.about{min-height:600px}.about p{font-size:15px;line-height:2}.studio-grid{grid-template-columns:1fr 1fr}.studio-title{grid-column:1/-1;padding:0}.studio-title h2{font-size:48px;margin-bottom:30px}.studio-title img{aspect-ratio:16/10}.studio-tall{height:320px}.studio-mic{max-width:70%;height:170px}.studio-caption{font-size:12px;line-height:1.4}.service-grid{grid-template-columns:1fr;margin-top:35px}.service-card header{min-height:unset}.work-grid{grid-template-columns:1fr;gap:35px}.section-top{align-items:start}.section-top .display{font-size:29px}.text-link{white-space:nowrap;font-size:10px}.footer-top,.company-layout{grid-template-columns:1fr;gap:25px}.footer-bottom{flex-direction:column}.inner-page{padding-top:50px}.facts div{grid-template-columns:85px 1fr;font-size:12px}.profile-grid{grid-template-columns:1fr}.display{overflow-wrap:anywhere}.now-playing .display{font-size:30px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.service-grid{grid-template-columns:repeat(3,1fr)}.equipment-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;margin:50px 0 70px}.equipment-intro h2{font-size:clamp(22px,2.4vw,35px);line-height:1.3}.equipment-intro>div>p:not(.page-intro){font-size:14px;color:#c9bafa;line-height:1.8}.equipment-intro img{width:100%}.equipment-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.equipment-group{padding:25px 0 30px;border-top:1px solid #ffffff40}.equipment-group h2{font-size:16px;letter-spacing:1px;line-height:1.5}.equipment-group ul{padding:0;list-style:none;color:#d0ccd6;font-size:16px;line-height:2}.affiliated-heading{font-size:clamp(23px,2.6vw,38px);line-height:1.3}.person-card{border:1px solid #ffffff40;padding:28px}.person-card h3{font-size:19px;line-height:1.5;overflow-wrap:anywhere}.person-links{display:flex;flex-direction:column;gap:18px;margin-top:30px}.person-links a{font-size:11px;letter-spacing:1px;text-decoration:none;color:#cbb5ff}.company-heading{margin-top:60px}.company-heading+.facts{margin-top:25px}.facts div{grid-template-columns:160px 1fr}
@media(max-width:900px){.equipment-intro{gap:30px}.profile-grid{grid-template-columns:1fr}.site-nav{gap:16px}}
@media(max-width:600px){.service-grid,.equipment-grid,.equipment-intro{grid-template-columns:1fr}.equipment-intro{gap:20px;margin:30px 0 50px}.equipment-group ul{font-size:14px}.facts div{grid-template-columns:110px 1fr}.site-nav{gap:15px}.site-nav a{font-size:10px}.equipment-intro .page-intro{margin-bottom:0}}

.collaborators-heading{font-size:clamp(23px,3.2vw,44px);line-height:1.25;margin-bottom:12px;overflow-wrap:anywhere}.collaborators-subtitle{font-size:14px;letter-spacing:1px;margin:0 0 30px;color:#d0ccd6}

.group-links{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;margin-top:52px;padding:32px 0;border-top:1px solid #ffffff24}.group-links>.eyebrow{margin:0;color:#aaa2b5;letter-spacing:3px;font-size:10px}.group-brand{display:flex;align-items:center;justify-content:space-between;gap:30px;text-decoration:none;padding:10px 0}.group-brand img{display:block;width:210px;height:auto;max-width:65%;filter:brightness(0) invert(1);opacity:.82;transition:opacity .2s}.group-visit{display:flex;align-items:center;gap:15px;white-space:nowrap;color:#b6a5c7;font-size:10px;letter-spacing:1.5px}.group-arrow{font-size:23px;font-weight:300;transition:transform .2s}.group-brand:hover img{opacity:1}.group-brand:hover .group-arrow{transform:translate(3px,-3px)}@media(max-width:900px){.group-links{grid-template-columns:1fr;gap:12px;margin-top:35px;padding:24px 0}.group-brand{gap:15px}.group-brand img{width:180px}.group-visit{font-size:9px;gap:10px}}@media(prefers-reduced-motion:reduce){.group-brand img,.group-arrow{transition:none}}

.closing-quote{margin:0;padding:72px 20px 80px;text-align:center;border-top:1px solid #ffffff20}.closing-quote blockquote{margin:0 auto;max-width:950px}.closing-quote blockquote>p:first-child{font-family:Georgia,'Times New Roman',serif;font-size:clamp(20px,2.2vw,31px);font-weight:400;line-height:1.7;color:#e9e0d8;letter-spacing:.2px}.closing-quote .quote-ja{font-size:12px;line-height:2.1;color:#aaa1ad;margin:22px auto 0;max-width:650px}.closing-quote figcaption{margin-top:27px;color:#b3a1c9;font-size:11px;letter-spacing:3px}@media(max-width:600px){.closing-quote{padding:48px 0 54px}.quote-break{display:none}.closing-quote blockquote>p:first-child{font-size:21px}.closing-quote .quote-ja{font-size:11px;max-width:300px}}

.group-links>.eyebrow{grid-column:1/-1}.envox-logo{position:relative;display:block;flex:0 1 210px;width:210px;height:90px;overflow:hidden}.group-brand .envox-logo img{position:absolute;width:270px;height:270px;max-width:none;left:-30px;top:-92px;filter:none}.group-envox{min-width:0}@media(max-width:900px){.envox-logo{flex-basis:180px;width:180px;height:78px}.group-brand .envox-logo img{width:231px;height:231px;left:-26px;top:-78px}}

.person-card .hiroto-wordmark{position:relative;width:180px;max-width:100%;aspect-ratio:4;margin:19px 0 0;overflow:hidden}.profile-grid .hiroto-wordmark img{position:absolute;width:138%;max-width:none;height:auto;aspect-ratio:auto;left:-19%;top:50%;transform:translateY(-50%);mix-blend-mode:screen}

/* Keep each Japanese introduction sentence on one line on desktop. */
.about .about-copy-ja{width:100%;max-width:1400px;white-space:normal;font-size:clamp(14px,1.2vw,20px);line-height:2}
.about-copy span{display:block}
.about-copy span+span{margin-top:.75em}
@media(min-width:1000px){.about-copy-ja span{white-space:nowrap}}
@media(max-width:999px){.about .about-copy-ja{max-width:42em;font-size:16px;line-height:1.9}.about-copy-ja span{text-wrap:pretty}}

.site-nav>a{white-space:nowrap}
#collaborators{scroll-margin-top:100px}
@media(min-width:901px) and (max-width:1150px){.site-nav{gap:18px;padding-inline:3%}.site-nav a{font-size:10px}.site-nav .wordmark{font-size:10px}}
@media(min-width:601px) and (max-width:900px){#collaborators{scroll-margin-top:150px}}
@media(max-width:600px){#collaborators{scroll-margin-top:20px}}
