/* Supplied 2026 brand artwork, preserved as images. */
:root{--gray-050:#eee;--gray-200:#d4d4d4;--gray-400:#9f9f9f;--gray-700:#646464;--line:#9f9f9f;--futura:"Futura PT","Futura Medium","Futura","Century Gothic",Arial,sans-serif}
header{background:#fff}
.brand{width:174px}
.hero h1,.motion-on .hero h1{font-size:inherit;line-height:1;margin-bottom:36px}
#hero-title .title-mask,.motion-on #hero-title .title-mask{margin:0 0 18px;padding:0;overflow:visible}
#hero-title .title-line,.motion-on #hero-title .title-line{display:block;width:58vw;max-width:930px}
.title-line img{display:block;width:100%;height:auto}
.hero-name img{display:block;width:100%;height:auto}
.hero-statement>p.hero-copy:nth-of-type(2){display:none}
.hero-name,.hero-bottom,nav,.header-note,.section-label,.eyebrow,.principle-top,.service h3,.service>span,.awards h3,.about-expansion,.footer-line,.contact-top,.contact-mail{font-family:var(--futura);font-weight:500}
.hero-name,.motion-on .hero-name{max-width:580px;margin-top:30px;margin-bottom:22px}
.hero-diamond{background:var(--gray-050)}
.hero-orbit{border-color:var(--gray-700)!important}
.philosophy,.motion-on .philosophy{background:var(--gray-050)}
.material-catch,.motion-on .manifesto .material-catch{width:75%;max-width:880px;transform:none;margin-bottom:40px}
.material-catch,.material-numbers{display:none!important}
.material-catch img{display:block;width:100%;height:auto;margin:0 0 24px}
.material-catch img:nth-child(2){margin-left:12%}
.material-catch img:nth-child(3){margin-left:4%}
.kanji img{display:block;width:100%;height:auto}
.kanji{width:100%;max-width:500px}
.motion-on .kanji{width:min(43vw,62svh);max-width:none}
.principle-echo img{width:min(70vw,105svh);height:auto;display:block}
.principles article:nth-child(2) .kanji img,.principles article:nth-child(2) .principle-echo img{filter:brightness(0) invert(1)}
.motion-on .principles article:nth-child(2){background:var(--gray-700);color:#fff}
.motion-on .principles article:nth-child(3){background:var(--gray-200)}
.expertise{background:var(--gray-200)}
.expertise .service{border-color:var(--gray-400)}
.experience{background:#242424;--line:#646464}
.experience .section-label span:last-child,.experience .note{color:#d4d4d4}
.about{background:var(--gray-400);border:0}
.about .section-label span:last-child{color:#242424}
.section-label span:last-child{color:#505050}
.since-art{display:block;width:clamp(180px,25vw,370px);height:auto;margin:0 0 48px auto}
.motion-on .footer-brand{margin-bottom:30px}
.motion-on .manifesto-copy p:first-child{font-size:clamp(24px,3vw,48px);font-weight:800;line-height:1.65;letter-spacing:-.02em;max-width:18em;animation:manifesto-statement 6s cubic-bezier(.65,0,.2,1) infinite}
.manifesto-copy p:first-child{font-size:clamp(20px,2.2vw,34px);font-weight:800;line-height:1.7;max-width:22em}
.motion-toggle{display:none!important}
.motion-on .ticker-rail span:has(img){display:flex;align-items:center;gap:40px;padding-right:40px}
.ticker-row span{font-family:var(--futura)!important;font-weight:500;letter-spacing:.01em}
.motion-on .ticker-row:nth-child(2) span{font-family:var(--futura)!important;font-weight:500;letter-spacing:.015em}
.ticker-rail img{display:block;width:42vw;height:auto}
.material-numbers{display:block;width:100%;max-width:650px;height:auto;margin:48px 0 0;opacity:.7}
.motion-on .hero-stage{min-height:max(800px,calc(100svh - 100px))}
@media(max-width:600px){
 .brand{width:135px}
 #hero-title .title-line,.motion-on #hero-title .title-line{width:72vw;max-width:none}
 #hero-title .title-mask,.motion-on #hero-title .title-mask{margin-bottom:22px}
 .hero h1,.motion-on .hero h1{margin-bottom:38px}
 .hero-name,.motion-on .hero-name{margin-left:0;max-width:100%;margin-top:25px}
 .motion-on .hero-stage{min-height:650px;padding-top:66px}
 .material-catch,.motion-on .manifesto .material-catch{width:88%;max-width:none}
 .material-catch img{margin-bottom:20px}
 .motion-on .kanji{width:min(65vw,38svh)}
 .kanji{max-width:140px}
 .motion-on .kanji{max-width:none}
 .principle-echo img{width:100vw}
 .since-art{margin-bottom:35px}
}

/* The first-view catchphrase is intentionally not repeated in the second view. */
.material-catch,.material-numbers{display:none!important}
@keyframes manifesto-statement{0%,100%{transform:translateX(0);opacity:.9}50%{transform:translateX(2.4vw);opacity:1}}
@media(prefers-reduced-motion:reduce){.motion-on .manifesto-copy p:first-child{animation:none}}
