/* C — Kinetic Editorial. Approved A content, with a precise motion system. */
.concept-c{--paper:#101411;--ink:#f2f4ec;--muted:#a7b3a7;--line:#3c453d;--accent:#d4f2a5;background:var(--paper)}.concept-c .site-utility{background:#0a0d0b}.concept-c .header{background:#101411eF;color:#f2f4ec;border-bottom:1px solid #3c453d;position:sticky;top:0;z-index:80;backdrop-filter:blur(12px);padding-block:22px}.concept-c .header .brand{font-size:34px}.concept-c .header .main-nav{gap:24px;font-size:11px}.concept-c .header .nav-contact{color:#d4f2a5}.concept-c .hero{position:relative;padding:30px 5.5% 28px;overflow:hidden;border-bottom:1px solid var(--line)}.concept-c .hero-topline{padding-bottom:0}.concept-c .hero-topline .eyebrow{color:#bbd09f;font-size:10px;letter-spacing:.17em}.concept-c .hero-text-layout{grid-template-columns:minmax(0,1.7fr) minmax(230px,.75fr);gap:5vw;padding:66px 0 58px;align-items:end}.concept-c .hero h1{font-size:clamp(76px,10.2vw,170px);line-height:.99;letter-spacing:-.075em;transform:translate3d(0,var(--hero-drift,0px),0)}.title-line{display:block;overflow:hidden;padding:0 .06em .11em;margin-right:-.06em;margin-bottom:-.06em}.title-line>[data-title-word]{display:inline-block;transform-origin:0 100%;padding-right:.025em}.kinetic-title em{color:#d4f2a5;font-weight:400}.concept-c .hero .hero-jp{font-size:18px;letter-spacing:.07em;line-height:1.85;margin-bottom:23px}.concept-c .hero .hero-description{color:var(--muted);font-size:12px;line-height:2.1}.concept-c .hero .arrow-link{color:#d4f2a5;margin-top:8px}.hero-coordinate{display:flex;align-items:center;gap:24px;font-size:8px;letter-spacing:.13em;color:var(--muted);padding:0 0 5px}.hero-coordinate>i{display:block;height:1px;flex:1;background:#4e5d4f;transform:scaleX(var(--hero-line,1));transform-origin:left}.concept-c .profile-section{padding:80px 8.5% 95px}.concept-c .profile-section>.section-label{margin-bottom:50px}.concept-c .section-label{color:var(--muted);letter-spacing:.14em;gap:21px}.concept-c .profile-section .profile-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:10vw}.concept-c .profile-image .portrait-toggle{overflow:hidden}.concept-c .profile-image .caption{color:#c1cdc0}.concept-c .profile-info h3{font-size:clamp(42px,4.6vw,70px);letter-spacing:-.055em}.concept-c .profile-info .profile-ja{font-size:13px}.concept-c .history-archive{background:#1b231c}.concept-c .press-release-link{color:var(--muted)}.concept-c .design-section,.concept-c .company-section{--paper:#efefe8;--ink:#151c16;--line:#b6beb0;--muted:#5b6658;--accent:#3a5432;background:var(--paper);color:var(--ink)}.concept-c .design-section{padding-top:90px}.concept-c .section-heading{margin-bottom:64px;align-items:end}.concept-c .section-heading h2{font-size:clamp(70px,9.8vw,148px);letter-spacing:-.075em;line-height:.92}.concept-c .section-heading h2>span{letter-spacing:.06em;font-size:16px;margin-top:26px}.concept-c .section-heading>.body-copy{font-size:12px;max-width:470px}.concept-c .section-heading>.design-intro{max-width:520px;font-size:13px}.concept-c .service{gap:7vw;margin-bottom:62px;padding-bottom:62px;align-items:center}.concept-c .service h3{font-size:clamp(38px,4.1vw,63px);letter-spacing:-.055em;margin-block:20px}.concept-c .service-image{overflow:hidden;isolation:isolate;transform-origin:center}.concept-c .service:not(.own-brand) .service-image>img{transition:transform .9s cubic-bezier(.22,1,.36,1),filter .9s;transform:scale(1);filter:saturate(.8)}.concept-c .service:not(.own-brand) .service-image:after{content:'';position:absolute;inset:0;border:1px solid #15241b12;pointer-events:none}.concept-c .service .body-copy{font-size:12px}.concept-c .service-prices{margin-top:30px}.concept-c .branding-section{--paper:#18231c;--ink:#eff5ea;--line:#536551;--muted:#b0c1a7;--accent:#d4f2a5;background:var(--paper);padding-top:95px;padding-bottom:90px}.concept-c .branding-section .service h3{font-size:clamp(37px,4vw,60px)}.concept-c .service.own-brand .service-image{background:#c2d2b5;position:relative}.concept-c .service.own-brand .service-image>img{box-shadow:14px 20px 30px #1b2d2433}.concept-c .company-section{padding-top:85px;padding-bottom:85px}.concept-c .company-layout h2{font-size:clamp(49px,6.1vw,87px);letter-spacing:-.065em}.concept-c .contact-section{--paper:#d4e7bd;--ink:#182019;--line:#a1b58f;--muted:#526549;--accent:#294c2b;background:var(--paper);color:var(--ink);padding-top:80px;padding-bottom:85px}.concept-c .inquiry-intro h2{font-size:clamp(64px,7vw,102px);letter-spacing:-.06em}.concept-c .form-field input,.concept-c .form-field select,.concept-c .form-field textarea{background:#eef3e6;border-color:#96ac81}.concept-c .form-review-button{background:#19291d;border-color:#19291d;transition:background .2s}.concept-c .form-review-button:hover{background:#38523b}.concept-c footer{padding-top:40px;padding-bottom:28px;--ink:#edf2e7;--muted:#abb7a4;--line:#43513d}.concept-c .footer-wordmark{font-size:55px}.concept-c .original-notice{font-size:9px}.reading-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:200;pointer-events:none}.reading-progress>span{display:block;width:100%;height:100%;background:#d4f2a5;transform:scaleX(var(--reading,0));transform-origin:left}.motion-switch{appearance:none;position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;margin-block:-8px;border:0;background:transparent;color:#dce9d3;border-radius:6px;padding:0;line-height:1;white-space:nowrap}.motion-switch[hidden]{display:none}.motion-switch:disabled{opacity:.75;cursor:default}.motion-switch:focus-visible{outline:2px solid currentColor;outline-offset:0}.motion-icon{display:block;width:16px;height:16px}.motion-icon-play{display:none}.motion-switch[data-motion-state="paused"] .motion-icon-pause{display:none}.motion-switch[data-motion-state="paused"] .motion-icon-play{display:block}.motion-switch-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(hover:hover){.motion-switch:hover:not(:disabled){background:#ffffff12}}.concept-c .arrow-link span:last-child,.concept-c .contact-links a>span:last-child{transition:transform .35s cubic-bezier(.22,1,.36,1)}.concept-c .arrow-link:hover span:last-child,.concept-c .arrow-link:focus-visible span:last-child{transform:translate(4px,-3px)}.concept-c .contact-links a:hover>span:last-child{transform:translate(4px,-3px)}.concept-c summary:after{transition:transform .25s}.concept-c details[open]>summary:after{transform:rotate(180deg)}
@media(hover:hover) and (pointer:fine){.concept-c:not(.motion-paused) .service:not(.own-brand):hover .service-image>img,.concept-c:not(.motion-paused) .service:not(.own-brand):focus-within .service-image>img{transform:scale(1.025);filter:saturate(1)}}
@media(min-width:1600px){.concept-c .hero-text-layout{gap:7vw}.concept-c .hero h1{font-size:170px}}
@media(max-width:1100px){.concept-c .header .main-nav{gap:14px}.concept-c .hero-text-layout{gap:4vw;grid-template-columns:minmax(0,1.5fr) minmax(220px,.8fr);padding-block:50px}.concept-c .hero h1{font-size:9.8vw}.concept-c .hero .hero-jp{font-size:16px}.concept-c .section-heading h2{font-size:10vw}.concept-c .profile-section,.concept-c .design-section,.concept-c .branding-section,.concept-c .company-section{padding-inline:6%}.concept-c .profile-section .profile-layout{gap:7vw}.concept-c .section-heading{margin-bottom:45px}}
@media(max-width:760px){.concept-c .header{padding:17px 6%;backdrop-filter:none}.concept-c .header .brand{font-size:28px}.concept-c .header .main-nav{gap:5px;background:#101411}.concept-c .header .main-nav a{font-size:15px;min-height:44px}.concept-c .menu-button{min-height:34px}.concept-c .hero{padding:24px 6% 24px}.concept-c .hero-topline .eyebrow{font-size:8px;letter-spacing:.12em}.concept-c .hero-text-layout{grid-template-columns:minmax(0,1fr);padding:37px 0 34px;gap:32px}.concept-c .hero h1{font-size:clamp(66px,17.4vw,119px);line-height:.99;letter-spacing:-.07em;transform:none}.concept-c .hero .hero-jp{font-size:15px;margin-bottom:15px}.concept-c .hero .hero-description{font-size:11px;line-height:2}.concept-c .hero .arrow-link{font-size:11px;margin-top:3px}.hero-coordinate{gap:18px;font-size:7px}.concept-c .profile-section,.concept-c .design-section,.concept-c .branding-section,.concept-c .company-section{padding:58px 7%}.concept-c .profile-section>.section-label{margin-bottom:34px}.concept-c .profile-section .profile-layout{grid-template-columns:minmax(0,1fr);gap:33px}.concept-c .profile-section .profile-image{width:72%;max-width:300px}.concept-c .profile-info h3{font-size:43px}.concept-c .section-heading{gap:24px;margin-bottom:36px}.concept-c .section-heading h2{font-size:clamp(59px,13.8vw,87px)}.concept-c .section-heading h2>span{font-size:13px;margin-top:22px}.concept-c .section-heading>.body-copy,.concept-c .section-heading>.design-intro{font-size:11px;line-height:2.1}.concept-c .service,.concept-c .branding-section .service{grid-template-columns:minmax(0,1fr);gap:26px;margin-bottom:42px;padding-bottom:42px}.concept-c .service h3,.concept-c .branding-section .service h3{font-size:37px;line-height:1.12;margin-block:17px}.concept-c .service .body-copy{font-size:12px}.concept-c .company-layout h2{font-size:52px}.concept-c .contact-section{padding:59px 7% 62px}.concept-c .inquiry-intro h2{font-size:60px}.concept-c .footer-wordmark{font-size:37px}.concept-c footer{padding-top:31px}.motion-switch{margin-block:-7px}.reading-progress{height:2px}}
/* CSS and document remain readable without script; no hidden reveal state. */
.motion-paused *{animation:none!important;transition:none!important}.motion-paused .hero h1,.motion-paused .hero-coordinate>i,.motion-paused .service-image>img{transform:none!important}.motion-paused .reading-progress{display:none}
@media(prefers-reduced-motion:reduce){.concept-c .hero h1,.concept-c .hero-coordinate>i,.concept-c .service-image>img{transform:none!important}.reading-progress{display:none}.concept-c .header{backdrop-filter:none}}
/* Stop also covers native smooth anchors. Static navigation survives failed JS. */
html.motion-paused{scroll-behavior:auto}
@media(max-width:760px){.concept-c:not(.navigation-ready) .header{flex-wrap:wrap;gap:12px}.concept-c:not(.navigation-ready) .header .main-nav{display:flex;position:static;width:100%;padding:6px 0;order:3;border:0;gap:0}.concept-c:not(.navigation-ready) .menu-button{display:none}}
