:root{--ink:#181a19;--paper:#f1f0e9;--yellow:#f3dc31;--muted:#686b63;--line:#d1d2c8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #bc8f00;outline-offset:6px}::selection{background:var(--yellow);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-feature-settings:'palt';letter-spacing:-.045em;line-height:1.45}p{font-size:15px}.mono,.eyebrow,.section-label,.visual-caption,.hero-bottom,.ticker,footer small{font-family:'Helvetica Neue',sans-serif;letter-spacing:.09em}.skip{position:fixed;top:-100px;background:var(--yellow);padding:10px;z-index:10}.skip:focus{top:0}.header{height:86px;padding:0 4.5%;display:flex;align-items:center;gap:28px;background:var(--ink);color:var(--paper);position:sticky;top:0;z-index:5;border-bottom:1px solid #ffffff20}.brand{font-family:'Helvetica Neue',sans-serif;font-size:25px;font-weight:900;letter-spacing:-1.3px;white-space:nowrap;display:flex;align-items:center;gap:10px}.brand-mark{color:var(--yellow);font-size:35px}.header nav{margin-left:auto;display:flex;align-items:center;gap:32px;font-size:12px;font-weight:600}.header nav a{transition:color .2s}.header nav a:hover{color:var(--yellow)}.nav-contact{border-bottom:1px solid #e0e1d8;padding:8px 0}.nav-contact span{margin-left:20px}#motion{background:transparent;border:1px solid #777;color:var(--paper);width:34px;height:34px;line-height:1;cursor:pointer}.hero{min-height:740px;height:calc(100svh - 86px);max-height:1100px;position:relative;overflow:hidden;background:#171918;color:white;display:flex;align-items:center}.hero-image{position:absolute;inset:0;background:url('assets/manufacturing-hero.jpg') 67% center/cover no-repeat;animation:hero-enter 1.7s ease-out both;will-change:transform}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111513e8 0%,#111513b3 32%,#11151310 76%),linear-gradient(0deg,#111513bd,transparent 22%)}.hero-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent calc(100% - 1px),#ffffff06 0);background-size:12.5% 100%;pointer-events:none}.hero-copy{position:relative;z-index:1;margin:10px 0 75px 7.5%;max-width:850px}.eyebrow{font-size:10px;font-weight:600}.hero .eyebrow{color:#e0e0cc;margin-bottom:27px;display:flex;align-items:center;gap:10px}.signal{display:inline-block;width:6px;height:6px;background:var(--yellow);box-shadow:0 0 16px #f3dc3199;animation:blink 3s infinite}.hero h1{font-size:clamp(42px,4.7vw,76px);font-weight:800;line-height:1.43;letter-spacing:-.06em;animation:rise 1s .1s both}.hero h1 span{color:var(--yellow)}.hero-desc{font-size:15px;line-height:2;margin:27px 0 30px;color:#dfdfd7;animation:rise 1s .25s both}.button{min-width:270px;padding:17px 24px;display:inline-flex;justify-content:space-between;gap:32px;font-size:13px;font-weight:700;transition:background .25s,transform .25s}.yellow{background:var(--yellow);color:var(--ink)}.button:hover{background:#fff17e;transform:translateY(-3px)}.button span{font-size:22px;line-height:1}.hero-bottom{position:absolute;bottom:30px;left:4.5%;right:4.5%;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#ccc}.hero-bottom small{font-size:8px}.ticker{overflow:hidden;background:var(--yellow);font-weight:700;font-size:13px;line-height:60px;white-space:nowrap}.ticker>div{width:max-content;animation:ticker 36s linear infinite}.ticker b{margin:0 45px}.section{padding:110px 7.5%}.section-label{font-size:10px;font-weight:700;display:flex;gap:30px;align-items:center;margin-bottom:50px}.section-label:before{content:'';width:8px;height:8px;background:currentColor}.section-label span{letter-spacing:.02em;font-size:11px;color:var(--muted)}h2{font-size:clamp(29px,3vw,46px);font-weight:700}.approach-main{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:start}.approach-copy p+p{margin-top:20px}.approach-copy{color:#50544e}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid var(--line)}.principles article{padding:35px 30px 0 0}.principles article+article{padding-left:32px;border-left:1px solid var(--line)}.mono{font-size:10px;color:var(--muted)}.principles h3{font-size:25px;margin:23px 0 17px}.principles p{font-size:13px;color:#5d625b;max-width:290px}.services{background:#212522;color:var(--paper)}.services .section-label span{color:#a4aaa0}.section-title{display:flex;justify-content:space-between;gap:35px;align-items:end}.section-title p{color:#b3b8af;font-size:13px}.service-row{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;margin-top:70px;padding-top:55px;border-top:1px solid #ffffff25;align-items:center}.service-copy .eyebrow{color:var(--yellow)}.service-copy h3{font-size:clamp(26px,2.6vw,39px);margin:20px 0}.service-copy>p:not(.eyebrow){font-size:14px;color:#c0c5bc;max-width:440px}.tags{padding:0;margin:24px 0 35px;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.tags li{font-size:10px;padding:4px 10px;border:1px solid #ffffff30}.text-link{font-size:12px;display:flex;max-width:260px;justify-content:space-between;border-bottom:1px solid #85897f;padding:12px 0}.text-link:hover{color:var(--yellow)}.visual-caption{font-size:9px;display:flex;justify-content:space-between;padding:17px 20px;border-bottom:1px solid #ffffff20;color:#b1b7ac}.visual-caption span{font-size:8px;color:#969f90}.mes-visual{background:#eeeee5;color:var(--ink);padding:0 24px 12px;box-shadow:12px 12px 0 #ffffff08;transform:perspective(1200px) rotateY(-3deg)}.mes-visual .visual-caption{padding:15px 0;color:#6c7166;border-color:#c9cebf}.mes-top{display:flex;justify-content:space-between;align-items:center;margin:20px 0 16px}.mes-top strong{font-size:16px}.mes-top span{font-size:8px;color:#696f63}.mes-stats{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #c9cebf;padding-bottom:15px}.mes-stats>div{padding-left:15px;border-left:1px solid #c9cebf}.mes-stats>div:first-child{padding:0;border:0}.mes-stats small{display:block;font-size:9px;color:#626a59}.mes-stats b{font-size:31px;font-family:'Helvetica Neue',sans-serif;font-weight:500}.mes-stats em{font-size:9px;font-style:normal}.timeline-head{display:grid;grid-template-columns:90px repeat(3,1fr);font-size:8px;color:#6b7462;margin:18px 0 9px}.timeline{display:flex;height:40px;border-top:1px solid #d6d9cd;align-items:center;font-family:monospace;font-size:10px}.timeline>span{width:90px;flex-shrink:0}.timeline>div{flex:1;position:relative;height:100%;background:repeating-linear-gradient(90deg,#c9cebf 0 1px,transparent 1px 33.33%)}.timeline i{position:absolute;left:var(--start);width:var(--width);top:9px;height:22px;background:#cbd69c;padding:1px 9px;font-size:8px;font-style:normal;white-space:nowrap;overflow:hidden;transform-origin:left;animation:bar 1.5s ease both}.timeline:nth-last-of-type(1) i{background:#d9d7b9}.mes-note{font-size:9px;margin:16px 0 4px;color:#68715d}.process{background:#e6e7dd}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.process-grid article{border-top:1px solid #aeb4a3;padding-top:20px}.process-grid article>span{font:38px 'Helvetica Neue',sans-serif;color:#8b9580}.process-grid h3{font-size:19px;margin:20px 0 13px}.process-grid p{font-size:13px;color:#5c6555}.company{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.company-en{font-size:12px;letter-spacing:.12em;margin-top:20px;color:#697060}.company-table{margin:0;font-size:12px}.company-table>div{display:grid;grid-template-columns:110px 1fr;padding:19px 0;border-top:1px solid var(--line)}.company-table dt{color:#747a6e}.company-table dd{margin:0}.company-table a:hover{text-decoration:underline}.contact{background:var(--yellow);padding-top:80px;padding-bottom:75px}.contact-content{display:flex;align-items:center;justify-content:space-between;margin:27px 0 22px}.contact h2{font-size:clamp(33px,4.2vw,65px)}.contact-arrow{font-size:90px;line-height:1;width:125px;height:125px;border:1px solid #181a19;display:grid;place-items:center;border-radius:50%;transition:background .2s,color .2s}.contact-arrow:hover{color:var(--yellow);background:var(--ink)}.contact>p{font-size:13px}.contact .mail{display:inline-block;font-family:'Helvetica Neue',sans-serif;font-size:26px;border-bottom:1px solid;margin-top:25px;letter-spacing:-.02em}.contact .mail-note{font-size:10px;margin-top:8px;color:#505027}footer{background:var(--ink);color:var(--paper);padding:40px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer small,footer>a:last-child{font-size:9px;color:#a0a799}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:translateY(0)}.principles article:nth-child(2),.process-grid article:nth-child(2){transition-delay:.1s}.principles article:nth-child(3),.process-grid article:nth-child(3){transition-delay:.2s}.paused *,.paused *:before,.paused *:after{animation-play-state:paused!important}.paused{scroll-behavior:auto}.paused .reveal{opacity:1;transform:none;transition:none}@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes hero-enter{from{transform:scale(1.055)}to{transform:scale(1)}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes blink{50%{opacity:.4}}@keyframes data{from{left:0;opacity:0}10%,90%{opacity:1}to{left:93%;opacity:0}}@keyframes machine{50%{transform:translateY(8px)}}@keyframes bar{from{transform:scaleX(.1)}to{transform:scaleX(1)}}
@media(min-width:1600px){.section{padding-left:max(7.5%,calc((100% - 1440px)/2));padding-right:max(7.5%,calc((100% - 1440px)/2))}}
@media(max-width:900px){.header nav{gap:20px}.section{padding:75px 6%}.hero-copy{margin-left:6%}.hero{min-height:680px}.approach-main{gap:35px}.service-row{gap:35px}.principles article+article{padding-left:22px}.principles h3{font-size:21px}.company{gap:40px}.timeline-head{grid-template-columns:65px repeat(3,1fr)}.timeline>span{width:65px}.mes-visual{padding:0 15px 12px}}
@media(max-width:600px){.header{height:68px;padding:0 5%;gap:15px}.brand{font-size:21px}.brand-mark{font-size:27px}.header nav{gap:0}.header nav>a:not(.nav-contact){display:none}.nav-contact{font-size:11px}.nav-contact span{margin-left:10px}#motion{width:30px;height:30px}.hero{height:calc(100svh - 68px);min-height:690px;max-height:860px;align-items:flex-start}.hero-image{background-position:62% center}.hero-image:after{background:linear-gradient(90deg,#101411d9,#10141160),linear-gradient(0deg,#1014117a,transparent)}.hero-copy{margin:70px 5% 100px}.hero .eyebrow{font-size:8px;letter-spacing:.05em;margin-bottom:25px}.hero h1{font-size:clamp(33px,8.8vw,52px);line-height:1.55}.hero-desc{font-size:12px;margin:25px 0}.button{padding:15px 20px;font-size:12px;min-width:255px}.hero-bottom{bottom:23px;left:5%;right:5%;flex-wrap:wrap;gap:15px;font-size:8px}.hero-bottom small{width:100%;font-size:7px}.ticker{font-size:10px;line-height:46px}.ticker b{margin:0 23px}.section{padding:65px 6%}.section-label{margin-bottom:30px;font-size:9px;gap:18px}.section-label span{font-size:10px}.approach-main,.company{grid-template-columns:1fr;gap:30px}h2{font-size:29px}.approach-copy p{font-size:13px}.principles{grid-template-columns:1fr;margin-top:38px}.principles article,.principles article+article{padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.principles h3 br{display:none}.principles h3{font-size:23px;margin:12px 0}.principles p{max-width:none}.section-title{display:block}.section-title h2{font-size:26px}.section-title p{margin-top:20px}.service-row{grid-template-columns:1fr;gap:30px;margin-top:40px;padding-top:35px}.service-copy h3{font-size:29px}.service-copy>p:not(.eyebrow){font-size:13px}.tags{margin:20px 0}.mes-visual{transform:none}.process h2{font-size:25px}.process-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}.process-grid article{display:grid;grid-template-columns:45px 1fr;column-gap:15px}.process-grid article>span{grid-row:1/3;font-size:27px;padding-top:4px}.process-grid h3{margin:0 0 10px}.process-grid p{grid-column:2}.company-table>div{grid-template-columns:90px 1fr;font-size:11px}.company .section-label{margin-bottom:20px}.contact-content{gap:15px}.contact h2{font-size:29px}.contact-arrow{font-size:37px;width:55px;height:55px;flex-shrink:0}.contact .mail{font-size:21px}footer{flex-wrap:wrap;padding:30px 6%}footer .brand{width:100%}footer small{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
@media(max-width:760px){.header nav>a:not(.nav-contact){display:none}.header nav{margin-left:auto}.nav-contact{white-space:nowrap}.hero-image:after{background:linear-gradient(90deg,#101411ed,#10141190 55%,#10141120),linear-gradient(0deg,#10141190,transparent)}.hero-desc{color:#f0f0e9}}

/* Preserve the supplied logo artwork and its original black color. */
.brand{display:inline-flex;flex-shrink:0;background:var(--paper);padding:8px 12px;line-height:1}.brand img{display:block;width:156px;height:auto}.brand-mark{display:none}@media(max-width:600px){.brand{padding:6px 9px}.brand img{width:124px}footer .brand{width:auto}}
.paused .hero h1,.paused .hero-desc,.paused .hero-image{animation:none;opacity:1;transform:none}
/* White header keeps the original black logo on a continuous surface. */
.header{background:#fff;color:var(--ink);border-bottom:1px solid #dedfd9}
.header .brand{background:transparent;padding:0}
.header nav a:hover{color:#666d52}
.header .nav-contact{border-bottom-color:var(--ink)}
.header #motion{color:var(--ink);border-color:#a7ada1}
/* Japanese service descriptions take precedence over decorative labels. */
.hero .eyebrow,.section-label,.service-copy .eyebrow{letter-spacing:.06em}
.hero h1{font-size:clamp(40px,4.6vw,72px);line-height:1.5}
.principles h3{font-size:22px;letter-spacing:-.025em}
.contact h2{font-size:clamp(30px,4vw,60px)}
@media(max-width:600px){.hero h1{font-size:clamp(30px,8.2vw,48px)}.hero-desc br{display:none}.hero-desc{max-width:310px;line-height:2}.principles h3{font-size:21px}.contact h2{font-size:28px}.contact>p br{display:none}}

.service-photo{margin:0;min-width:0}.service-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.service-photo figcaption{font-size:10px;line-height:1.7;color:#b3b8af;margin-top:12px}
.mes-gallery{min-width:0}.mes-switch{display:flex;gap:0;margin-bottom:18px;border-bottom:1px solid #ffffff35}.mes-switch button{flex:1;border:0;border-bottom:2px solid transparent;background:transparent;color:#bcc3b7;font-size:12px;padding:14px 6px;cursor:pointer}.mes-switch button[aria-pressed="true"]{color:var(--paper);border-bottom-color:var(--yellow)}.mes-switch button:hover{color:#fff}.mes-screen{margin:0}.mes-screen[hidden]{display:none}.mes-screen img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;display:block;background:#f4f5f6}.mes-screen p{font-size:12px;line-height:1.9;color:#c0c5bc;margin-top:15px}.mes-screen a{display:inline-block;font-size:11px;margin-top:12px;border-bottom:1px solid #8b9284}.mes-screen a:hover{color:var(--yellow)}
.collaboration-photo{margin:48px 0 0}.collaboration-photo img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;object-position:center 45%}@media(max-width:600px){.collaboration-photo{margin-top:30px}.collaboration-photo img{aspect-ratio:4/3}}
.mes-row{grid-template-columns:1fr;gap:36px}.mes-row .service-copy>p:not(.eyebrow){max-width:720px}.mes-gallery{max-width:1080px;width:100%;margin:0 auto}.mes-screen>img{aspect-ratio:auto}.mobile-screens{display:grid;grid-template-columns:repeat(2,minmax(0,310px));justify-content:center;gap:44px;padding:28px;background:#2b302b}.mobile-screens figure{margin:0;min-width:0}.mobile-screens h4{font-size:15px;font-weight:500;margin:0 0 18px}.mobile-screens img{aspect-ratio:auto;width:100%;height:auto}.mobile-screens p{font-size:11px}@media(max-width:600px){.mes-switch button{font-size:11px;padding:13px 2px}.mobile-screens{grid-template-columns:minmax(0,310px);gap:35px;padding:20px}.mes-row{gap:25px}}
/* Small overlapping screens communicate the product at a glance. */
.mes-row{grid-template-columns:.85fr 1.15fr;gap:35px}.mes-collage{position:relative;width:100%;aspect-ratio:1.25;isolation:isolate}.mes-collage img{position:absolute;height:auto;border:1px solid #cbd1d9;border-radius:5px;box-shadow:0 16px 35px #0005;display:block}.collage-orders{width:67%;left:3%;top:5%;transform:rotate(-5deg);opacity:.85;z-index:1}.collage-results{width:49%;right:0;top:18%;transform:rotate(5deg);opacity:.9;z-index:2}.collage-planning{width:79%;left:0;top:33%;transform:rotate(-2deg);z-index:3}.collage-mobile-plan{width:19%;right:18%;top:47%;transform:rotate(-5deg);z-index:4}.collage-mobile-clock{width:21%;right:0;top:42%;transform:rotate(5deg);z-index:5}@media(max-width:800px){.mes-row{grid-template-columns:1fr;gap:30px}.mes-collage{max-width:620px;margin:0 auto}}@media(max-width:600px){.mes-collage{margin-top:10px}.mes-collage img{border-radius:3px;box-shadow:0 10px 22px #0004}}
