:root{--forest:#26352b;--deep:#18231c;--olive:#9b9a78;--ivory:#f3efe6;--white:#faf8f3;--sand:#ead6b5;--greige:#c9c1b3;--ink:#243028;--line:rgba(38,53,43,.2);--serif:"Gilda Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.7}img{display:block;width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;padding:.7rem 1rem;background:var(--white)}.skip-link:focus{top:1rem}.ja,small[lang="ja"]{display:block;margin-top:.7em;font-family:"Zen Old Mincho","Yu Mincho",serif;font-size:.78em;font-weight:400;line-height:1.85;letter-spacing:.05em;opacity:.72}.site-header{position:absolute;inset:0 0 auto;z-index:20;height:106px;padding:0 clamp(1.4rem,5vw,5.5rem);display:flex;align-items:center;justify-content:space-between;color:var(--ivory);border-bottom:1px solid rgba(255,255,255,.24)}.wordmark{display:flex;align-items:center;gap:.78rem;font-family:var(--serif);font-size:1.04rem;letter-spacing:.16em}.wordmark i{width:1px;height:30px;background:currentColor;opacity:.55}.primary-nav{display:flex;gap:clamp(1.8rem,3.5vw,4rem)}.primary-nav a{font-family:var(--serif);font-size:1rem;text-align:center}.primary-nav a span{display:block;margin-top:.16rem;font-family:"Zen Old Mincho",serif;font-size:.62rem;letter-spacing:.08em;opacity:.7}.menu-toggle{display:none;background:none;border:0;color:inherit;padding:.5rem}.menu-toggle>span{display:block;width:27px;height:1px;margin:6px;background:currentColor}.hero{position:relative;min-height:100svh;overflow:hidden;color:var(--white)}.hero-image,.hero-wash{position:absolute;inset:0}.hero-image{background:url("hero.webp") center 53%/cover no-repeat;transform:scale(1.01)}.hero-wash{background:linear-gradient(90deg,rgba(18,27,21,.76),rgba(18,27,21,.34) 58%,rgba(18,27,21,.08)),linear-gradient(0deg,rgba(18,27,21,.55),transparent 48%)}.hero-content{position:relative;z-index:2;width:min(1050px,88%);padding:clamp(10rem,19vh,14rem) clamp(1.5rem,8.2vw,9rem) 13rem}.eyebrow,.kicker{margin:0 0 1.25rem;text-transform:uppercase;letter-spacing:.18em;font-size:.7rem;font-weight:500}.eyebrow .ja,.kicker span{display:inline;margin-left:.8rem;font-family:"Zen Old Mincho",serif;font-size:.88em;letter-spacing:.1em;text-transform:none}.hero-ideas{position:relative;min-height:420px}.hero-idea{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateX(2rem);transition:opacity 1s ease,transform 1.2s ease,visibility 0s linear 1.2s}.hero-idea.is-active{opacity:1;visibility:visible;transform:none;transition-delay:.15s,.15s,0s}.hero h1{max-width:980px;margin:0;font-family:var(--serif);font-size:clamp(3.6rem,6.7vw,7.1rem);font-weight:400;letter-spacing:-.035em;line-height:.96}.hero h1 .ja{font-size:clamp(.9rem,1.2vw,1.1rem);letter-spacing:.08em}.hero-idea>p{max-width:620px;margin:2.2rem 0 0;font-size:clamp(1rem,1.35vw,1.16rem)}.hero-selector{position:absolute;z-index:3;right:clamp(1.5rem,5vw,5.5rem);bottom:3rem;width:min(520px,46vw)}.hero-selector>p{margin:0 0 .8rem;text-transform:uppercase;letter-spacing:.15em;font-size:.62rem}.hero-selector>p span{margin-left:.6rem;font-family:"Zen Old Mincho",serif;opacity:.65}.hero-selector>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.35)}.hero-selector button{padding:1rem .4rem 0 0;border:0;background:none;color:rgba(255,255,255,.55);text-align:left;font-size:.68rem;cursor:pointer;transition:color .3s}.hero-selector button span{display:block;margin-bottom:.15rem;font-family:var(--serif);font-size:1rem}.hero-selector button.is-active{color:#fff}.section{position:relative;padding:clamp(6rem,11vw,10rem) clamp(1.5rem,8.2vw,9rem)}.section-mark{position:absolute;right:clamp(1.5rem,5vw,5.5rem);top:3.5rem;font-family:var(--serif);font-size:.8rem;color:rgba(38,53,43,.55)}.section-mark:before{content:"";display:inline-block;width:35px;height:1px;margin:0 .8rem .25rem 0;background:currentColor}.section-mark.light{color:rgba(243,239,230,.6)}.kicker{color:#6e715d}.stand-for{background:var(--ivory)}.editorial-heading{display:grid;grid-template-columns:.55fr 1fr;gap:1rem clamp(3rem,9vw,10rem);align-items:end;margin-bottom:clamp(4rem,8vw,7rem)}.editorial-heading .kicker{grid-column:1}.editorial-heading h2{grid-column:1;margin:0;font-family:var(--serif);font-size:clamp(3.3rem,6vw,6.2rem);font-weight:400;line-height:.92;letter-spacing:-.035em}.editorial-heading>p:last-child{grid-column:2;grid-row:2;max-width:590px;margin:0;font-size:1.05rem}.principle-list{border-top:1px solid var(--line)}.principle{display:grid;grid-template-columns:50px minmax(250px,.8fr) minmax(280px,1fr);gap:clamp(1.5rem,6vw,6rem);padding:clamp(2.1rem,3.7vw,3.4rem) 0;border-bottom:1px solid var(--line)}.principle>span{font-family:var(--serif);color:#7a7c68}.principle h3{margin:0;font-family:var(--serif);font-size:clamp(2rem,3vw,3.1rem);font-weight:400;line-height:1}.principle h3 small{font-size:.36em}.principle>p{max-width:540px;margin:.25rem 0 0}.services{background:var(--white)}.service-heading{display:grid;grid-template-columns:1fr .8fr;gap:1rem clamp(3rem,8vw,9rem);margin-bottom:clamp(4rem,8vw,7rem)}.service-heading .kicker{grid-column:1/-1}.service-heading h2{margin:0;font-family:var(--serif);font-size:clamp(3rem,5vw,5.3rem);font-weight:400;line-height:1}.service-heading>p:last-child{margin:.4rem 0 0}.service-list{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:50px 1fr;padding:clamp(2rem,4vw,3.6rem) 0;border-bottom:1px solid var(--line)}.service>span{font-family:var(--serif);color:#7a7c68}.service>div{display:grid;grid-template-columns:.9fr .75fr;gap:clamp(2rem,8vw,9rem)}.service h3{margin:0;font-family:var(--serif);font-size:clamp(2rem,3.2vw,3.4rem);font-weight:400;line-height:1}.service h3 small{font-size:.3em}.service p{margin:.2rem 0 0}.approach{display:grid;grid-template-columns:1fr 1fr;background:#c7c0b3}.approach-image{margin:0;min-height:880px}.approach-image img{height:100%;object-fit:cover}.approach-copy{padding:clamp(5rem,8vw,9rem) clamp(2rem,7vw,8rem)}.approach-copy h2{margin:0 0 2.5rem;font-family:var(--serif);font-size:clamp(3rem,4.6vw,5rem);font-weight:400;line-height:1}.approach-copy h2 .ja{font-size:.22em}.approach-copy>p:not(.kicker){max-width:590px}.approach-copy blockquote{margin:3rem 0;padding:2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:clamp(1.5rem,2vw,2rem);line-height:1.35}.approach-copy blockquote .ja{font-size:.48em}.approach-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}.approach-steps li{padding:1rem .5rem;border-right:1px solid var(--line);font-family:var(--serif);font-size:.88rem}.approach-steps li:last-child{border:0}.approach-steps span{display:block;font-family:"Zen Old Mincho",serif;font-size:.65rem;opacity:.65}.founder{background:var(--ivory)}.founder-grid{display:grid;grid-template-columns:.8fr 1.15fr;gap:clamp(4rem,12vw,13rem)}.founder h2{margin:0;font-family:var(--serif);font-size:clamp(4rem,7vw,7.5rem);font-weight:400;line-height:.9;letter-spacing:-.035em}.founder-copy{padding-top:3rem}.founder-copy .lead{font-family:var(--serif);font-size:clamp(1.6rem,2.5vw,2.35rem);line-height:1.35}.impact{margin-top:clamp(6rem,10vw,9rem);padding-top:3.5rem;border-top:1px solid var(--line)}.impact>header{display:grid;grid-template-columns:.55fr 1fr;gap:clamp(2rem,8vw,9rem);margin-bottom:4rem}.impact h3{margin:0;font-family:var(--serif);font-size:clamp(2.3rem,4vw,4rem);font-weight:400;line-height:1.05}.impact h3 .ja{font-size:.26em}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.impact-grid article{min-height:320px;padding:clamp(1.7rem,3vw,2.8rem);border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.impact-grid strong{margin-bottom:auto;font-family:var(--serif);font-size:clamp(2.2rem,3.5vw,3.8rem);font-weight:400;line-height:1;color:#6f735e}.impact-grid h4{margin:2.5rem 0 .7rem;font-family:var(--serif);font-size:1.25rem;font-weight:400}.impact-grid h4 small{font-size:.58em}.impact-grid p{margin:0;font-size:.9rem}.beliefs{position:relative;min-height:min(78vw,900px);display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;color:var(--ivory);isolation:isolate}.belief-images,.belief-images img,.belief-wash{position:absolute;inset:0}.belief-images img{height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity 1.5s ease,transform 9s ease}.belief-images img.is-active{opacity:1;transform:scale(1.01)}.belief-wash{z-index:1;background:linear-gradient(90deg,rgba(18,27,21,.86),rgba(18,27,21,.52) 55%,rgba(18,27,21,.2)),linear-gradient(0deg,rgba(18,27,21,.55),transparent)}.belief-heading{position:relative;z-index:2;padding:clamp(5rem,8vw,7rem) clamp(1.5rem,8.2vw,9rem) 0}.belief-heading .kicker{color:var(--greige)}.belief-heading h2{margin:0;font-family:var(--serif);font-size:1.25rem;font-weight:400;color:rgba(255,255,255,.72)}.belief-heading h2 .ja{margin-top:.25rem;font-size:.65em}.belief-slides{position:relative;z-index:2;align-self:center;width:min(1000px,80%);min-height:390px;margin:0 clamp(1.5rem,8.2vw,9rem)}.belief-slides article{position:absolute;inset:50% auto auto 0;width:100%;opacity:0;visibility:hidden;transform:translate(2rem,-45%);transition:opacity 1s ease,transform 1.2s ease,visibility 0s linear 1.2s}.belief-slides article.is-active{opacity:1;visibility:visible;transform:translate(0,-50%);transition-delay:.2s,.2s,0s}.belief-slides article>p{margin:0 0 1rem;text-transform:uppercase;letter-spacing:.18em;font-size:.7rem}.belief-slides h3{margin:0;font-family:var(--serif);font-size:clamp(3.2rem,6vw,6.7rem);font-weight:400;line-height:.98}.belief-slides h3 .ja{font-size:.16em}.belief-slides article>div{max-width:700px;margin-top:2rem;font-size:1.08rem}.belief-slides article>div .ja{font-size:.78em}.belief-controls{position:relative;z-index:3;display:flex;align-items:end;justify-content:space-between;padding:0 clamp(1.5rem,5vw,5.5rem) 3rem}.belief-controls>div{display:flex;align-items:center;gap:.8rem;font-family:var(--serif)}.belief-controls i{width:52px;height:1px;background:rgba(255,255,255,.5)}.belief-controls em{font-style:normal;opacity:.55}.belief-controls button{display:grid;justify-items:center;gap:.45rem;width:110px;padding:0;border:0;background:none;color:var(--ivory);cursor:pointer}.belief-controls b{display:grid;place-items:center;width:92px;height:92px;border:1px solid rgba(234,214,181,.75);border-radius:50%;font-family:var(--serif);font-size:1.35rem;font-weight:400;letter-spacing:.08em;background:rgba(24,35,28,.55);box-shadow:0 12px 24px rgba(0,0,0,.2);transition:transform .5s}.belief-controls button:hover b{transform:translateY(-4px)}.belief-controls small{text-transform:uppercase;letter-spacing:.14em;font-size:.55rem}.contact{min-height:720px;display:grid;place-items:center;text-align:center;background:var(--forest);color:var(--ivory)}.contact-inner{max-width:940px}.contact .kicker{color:var(--greige)}.contact h2{margin:0;font-family:var(--serif);font-size:clamp(3.2rem,5.7vw,6rem);font-weight:400;line-height:1}.contact h2 .ja{font-size:.17em}.contact-inner>p:not(.kicker){max-width:680px;margin:2rem auto 3rem}.contact-inner>a{display:inline-block;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.65);font-family:var(--serif);font-size:1.3rem}.contact-inner>a span{margin-left:.7rem;font-family:"Zen Old Mincho",serif;font-size:.6em;opacity:.7}footer{padding:3rem clamp(1.5rem,5vw,5.5rem);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;background:var(--deep);color:rgba(255,255,255,.68);font-size:.72rem}footer p{margin:0;text-align:center}footer p:last-child{text-align:right}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s,transform .9s}.reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero-idea,.hero-idea.is-active,.belief-slides article,.belief-slides article.is-active,.belief-images img{transition:none}.beliefs{min-height:auto;display:block;padding-bottom:5rem}.belief-slides{min-height:0;width:auto}.belief-slides article,.belief-slides article.is-active{position:relative;inset:auto;opacity:1;visibility:visible;transform:none;padding:2.3rem 0;border-top:1px solid rgba(255,255,255,.3)}.belief-controls{display:none}}
@media(max-width:900px){.site-header{height:86px}.menu-toggle{display:block;z-index:2}.primary-nav{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--deep);opacity:0;pointer-events:none;transition:opacity .3s}.site-header.menu-open .primary-nav{opacity:1;pointer-events:auto}.hero-content{width:100%;padding-bottom:15rem}.hero-selector{left:1.5rem;right:1.5rem;width:auto}.editorial-heading,.service-heading,.founder-grid,.impact>header{grid-template-columns:1fr}.editorial-heading .kicker,.editorial-heading h2,.editorial-heading>p:last-child,.service-heading .kicker{grid-column:1;grid-row:auto}.principle{grid-template-columns:42px 1fr}.principle>p{grid-column:2}.service>div{grid-template-columns:1fr;gap:1.2rem}.approach{grid-template-columns:1fr}.approach-image{min-height:620px}.founder-copy{padding-top:0}.impact-grid{grid-template-columns:repeat(2,1fr)}.beliefs{min-height:760px}.belief-slides{width:calc(100% - 3rem);margin:0 1.5rem}footer{grid-template-columns:1fr;justify-items:center;gap:1rem}footer p,footer p:last-child{text-align:center}}
@media(max-width:560px){.wordmark{font-size:.82rem;gap:.55rem}.wordmark i{height:24px}.hero-content{padding-left:1.5rem;padding-right:1.5rem}.hero-ideas{min-height:440px}.hero h1{font-size:clamp(3rem,14vw,4.4rem)}.hero-selector>div{gap:.5rem}.hero-selector button{font-size:.58rem}.principle{grid-template-columns:1fr;gap:.7rem}.principle>p{grid-column:1}.service{grid-template-columns:34px 1fr}.approach-image{min-height:480px}.approach-steps{grid-template-columns:1fr}.approach-steps li{border-right:0;border-bottom:1px solid var(--line)}.impact-grid{grid-template-columns:1fr}.impact-grid article{min-height:260px}.beliefs{min-height:720px}.belief-heading h2{max-width:75%;line-height:1.5}.belief-slides h3{font-size:clamp(3rem,13vw,4.5rem)}.belief-controls button{width:84px}.belief-controls b{width:76px;height:76px}}

.hero-content{width:min(1200px,100%);padding-bottom:clamp(5rem,10vh,8rem)}
.hero-ideas{min-height:0}
.hero-idea,.hero-idea.is-active{position:relative;inset:auto;visibility:visible;opacity:1;transform:none;transition:none}
.hero h1{font-size:clamp(3rem,5.4vw,5.8rem);line-height:1.03}
@media(max-width:560px){.hero-content{padding-top:10rem;padding-bottom:5rem}.hero h1{font-size:clamp(2.6rem,11vw,3.6rem)}.hero-idea>p{margin-top:1.7rem}}

/* Give the two defining sections a clear editorial label. */
.stand-for .kicker,.services .kicker{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--line);color:var(--forest);font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2.15rem);font-weight:400;letter-spacing:.015em;text-transform:none;line-height:1.25}
.stand-for .kicker span,.services .kicker span{margin-left:0;font-size:.55em;letter-spacing:.04em}
@media(max-width:560px){.stand-for .kicker,.services .kicker{font-size:1.55rem;margin-bottom:1.5rem}.hero .eyebrow{font-size:.8rem;line-height:1.8}.hero .eyebrow .ja{display:block;margin-left:0}}

/* Clear signposts for readers choosing what to explore. */
.primary-nav{gap:clamp(1rem,2vw,2rem)}
.primary-nav a{font-size:.95rem}
.stand-for .kicker,.services .kicker{display:block;margin-bottom:1.2rem;padding:0;border:0;color:#6e715d;font-family:var(--sans);font-size:.8rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase}
.stand-for .kicker span,.services .kicker span{margin-left:.8rem;font-size:.9em;letter-spacing:.08em}
.editorial-heading h2 .ja,.service-heading h2 .ja{font-size:.2em;letter-spacing:.05em;line-height:1.6}
.service-heading h2{line-height:1.05}
.approach-copy h2{margin-bottom:1.6rem}
.approach-copy .section-thought{margin:0 0 1.8rem;font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2.1rem);line-height:1.3}
.approach-copy .section-thought .ja{font-size:.58em}
.founder h2{font-size:clamp(3.6rem,5.2vw,5.8rem);line-height:1}
.founder h2 .ja{font-size:.2em}
.founder-name{margin:3rem 0 0;font-family:var(--serif);font-size:clamp(2rem,3vw,3rem);line-height:1.2}
.founder-name span{font-family:var(--sans);font-size:.42em;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){.primary-nav{gap:1.5rem}.primary-nav a{font-size:1.3rem}}

/* Three selectable beliefs, with a shorter transition. */
.belief-heading h2{font-size:clamp(2.2rem,3.7vw,4rem);line-height:1.05;color:var(--ivory)}
.belief-heading h2 .ja{font-size:.28em}
.belief-slides article{transition:opacity .55s ease,transform .65s ease,visibility 0s linear .65s}
.belief-slides article.is-active{transition-delay:.08s,.08s,0s}
.belief-images img{transition:opacity .7s ease,transform 6s ease}
.belief-controls{justify-content:center;align-items:center;gap:.15rem;padding:0 1.5rem 2.5rem}
.belief-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:var(--ivory);cursor:pointer}
.belief-controls button span{display:block;width:10px;height:10px;border:1px solid var(--ivory);border-radius:50%;background:transparent;transition:background .2s,transform .2s}
.belief-controls button.is-active span{background:var(--ivory);transform:scale(1.25)}
.belief-controls button:focus-visible{outline:2px solid var(--sand);outline-offset:2px;border-radius:50%}
@media(prefers-reduced-motion:reduce){.beliefs{display:grid;grid-template-rows:auto 1fr auto;min-height:720px;padding-bottom:0}.belief-slides{position:relative;min-height:390px}.belief-slides article,.belief-slides article.is-active{position:absolute;inset:50% auto auto 0;width:100%;padding:0;border:0;transform:translateY(-50%);transition:none}.belief-slides article{opacity:0;visibility:hidden}.belief-slides article.is-active{opacity:1;visibility:visible}.belief-controls{display:flex}.belief-images img{transition:none}}

/* WHAT WE DO: one considered journey, four connected stages. */
.services{background:var(--white)}
.service-heading{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.15fr);gap:1rem clamp(3rem,8vw,9rem);align-items:start;margin-bottom:clamp(3.5rem,7vw,6rem)}
.service-heading .kicker{grid-column:1/-1;margin:0 0 1.1rem;color:#6e715d;font-family:var(--sans);font-size:.9rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.service-heading .kicker span{margin-left:.8rem;font-size:.9em}
.service-heading h2{grid-column:1;margin:0;font-family:var(--serif);font-size:clamp(3.6rem,5.5vw,6.4rem);font-weight:400;line-height:.98;letter-spacing:-.035em}
.service-heading h2 .ja{font-size:.18em;letter-spacing:.06em;line-height:1.7}
.service-intro{grid-column:2;max-width:690px;padding-top:.2rem}
.service-intro p{margin:0 0 1.25rem;font-size:1.02rem;line-height:1.7}
.service-intro .service-lead{margin:0 0 1.8rem;font-family:var(--serif);font-size:clamp(1.7rem,2.5vw,2.45rem);line-height:1.28}
.service-intro .service-conclusion{margin:1.6rem 0 0;padding-top:1.2rem;border-top:1px solid var(--line);font-family:var(--serif);font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.35}
.service-intro .ja{font-size:.87em;line-height:1.85}
.service-journey{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.3rem);align-items:stretch}
.service-journey:before{content:"";position:absolute;top:3.78rem;left:4rem;right:4rem;border-top:1px solid rgba(110,113,93,.35)}
.stage-card{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;padding:clamp(1.35rem,1.8vw,1.9rem);border:1px solid rgba(38,53,43,.14);background:#f7f5ef}
.stage-card:nth-child(even){background:#f2f0e9}
.stage-top{display:flex;align-items:center;justify-content:space-between;min-height:70px;margin-bottom:1.4rem;color:#7a7c68}
.stage-top svg{width:70px;height:70px;flex:none;color:#66715f}
.stage-number{font-family:var(--serif);font-size:1.25rem}
.stage-card h3{margin:0 0 1.4rem;font-family:var(--serif);font-size:clamp(1.7rem,2vw,2.25rem);font-weight:400;line-height:1.1}
.stage-card h3 .ja{font-size:.52em}
.stage-card p{margin:0;font-size:1rem;line-height:1.7}
.stage-card .stage-headline{margin-bottom:1.2rem;font-family:var(--serif);font-size:clamp(1.3rem,1.55vw,1.65rem);line-height:1.35}
.stage-card .ja{font-size:.88em;line-height:1.8}
.stage-card .stage-headline .ja{font-size:.7em}
@media(max-width:1180px){.service-journey{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.service-journey:before{display:none}.stage-card{padding:2rem}}
@media(max-width:900px){.service-heading{grid-template-columns:1fr;gap:1.5rem}.service-heading .kicker,.service-heading h2,.service-intro{grid-column:1}.service-intro{max-width:760px}}
@media(max-width:650px){.service-journey{grid-template-columns:1fr}.stage-card{padding:1.7rem}.service-heading h2{font-size:clamp(3.3rem,13vw,4.7rem)}.service-intro .service-lead{font-size:1.7rem}}

/* A quiet pause between the opening statement and What We Believe. */
.beliefs{margin-top:clamp(1.25rem,2.4vw,2.75rem)}

/* Language switch keeps the editorial rhythm in either language. */
.header-actions{display:flex;align-items:center;gap:clamp(1rem,2vw,2rem);position:relative;z-index:3}
.language-switch{display:flex;align-items:center;gap:.45rem;white-space:nowrap}
.language-switch button{padding:.35rem .25rem;border:0;border-bottom:1px solid transparent;background:transparent;color:rgba(255,255,255,.62);font-family:var(--sans);font-size:.72rem;letter-spacing:.09em;cursor:pointer}
.language-switch button[aria-pressed="true"]{border-color:var(--ivory);color:var(--ivory)}
.language-switch button:focus-visible{outline:2px solid var(--sand);outline-offset:3px}
.language-switch .divider{width:1px;height:13px;background:rgba(255,255,255,.45)}
body[data-lang="en"] [lang="ja"]{display:none!important}
body[data-lang="ja"] .language-pair>.language-english{display:none!important}
body[data-lang="ja"] .language-pair>[lang="ja"]{display:initial;margin:0;font-size:1em;line-height:inherit;letter-spacing:inherit;opacity:1}
body[data-lang="ja"] h1>[lang="ja"],body[data-lang="ja"] h2>[lang="ja"],body[data-lang="ja"] h3>[lang="ja"],body[data-lang="ja"] h4>[lang="ja"]{display:block;letter-spacing:.025em}
body[data-lang="ja"] .hero h1>[lang="ja"]{font-size:clamp(2.8rem,5.4vw,5.8rem);line-height:1.16}
body[data-lang="ja"] .belief-slides h3>[lang="ja"]{font-size:clamp(2.5rem,5vw,5.4rem);line-height:1.25}
body[data-lang="ja"] .primary-nav a [lang="ja"]{font-size:1em;margin:0;opacity:1}
body[data-lang="ja"] .founder-name>[lang="ja"]{font-family:"Zen Old Mincho",serif;font-size:1em;letter-spacing:0;text-transform:none}
body[data-lang="ja"] .contact-inner>a [lang="ja"]{font-size:1em;margin:0;opacity:1}
body[data-lang="ja"] .stage-card .stage-headline>[lang="ja"]{font-size:1em}
body[data-lang="ja"] .belief-slides article>div [lang="ja"]{font-size:1em}
body[data-lang="ja"] .belief-heading h2>[lang="ja"]{font-size:1em}
body[data-lang="ja"] .hero .eyebrow [lang="ja"],body[data-lang="ja"] .kicker [lang="ja"]{margin:0;font-size:1em}
@media(max-width:900px){.site-header .primary-nav{z-index:2}.header-actions{gap:.75rem}}
@media(max-width:560px){.language-switch button{font-size:.68rem}.header-actions{gap:.35rem}body[data-lang="ja"] .hero h1>[lang="ja"]{font-size:clamp(2.5rem,10vw,3.8rem)}}

/* Evidence reads as a set of numbers rather than another row of cards. */
.impact-grid{border:0;column-gap:clamp(1.5rem,3vw,3.5rem)}
.impact-grid article{border:0;border-bottom:1px solid var(--line);padding-left:0;padding-right:0}

/* Keep the English text at the parent's intended display size after language pairing. */
.language-pair>.language-english{display:inline!important;margin:0!important;font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important;line-height:inherit!important;opacity:1!important;text-transform:inherit!important}
body[data-lang="ja"] .language-pair>.language-english{display:none!important}
.site-header .wordmark{font-size:clamp(1.08rem,1.45vw,1.32rem)}
.belief-heading h2{font-size:clamp(2.8rem,4.6vw,4.8rem)}
@media(max-width:560px){.site-header .wordmark{font-size:.96rem;gap:.46rem}.belief-heading h2{font-size:clamp(2.5rem,10vw,3.8rem)}}

/* WHO WE ARE: the business and its changing team come before the founder. */
.who-intro>.kicker{margin-bottom:1.4rem}
.who-intro>h2{margin:0 0 clamp(3rem,6vw,5rem);font-family:var(--serif);font-size:clamp(3.5rem,6vw,6.6rem);font-weight:400;line-height:1;letter-spacing:-.035em}
.who-story{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(3rem,9vw,10rem);align-items:start}
.who-story h3{margin:0;font-family:var(--serif);font-size:clamp(2.6rem,4.1vw,4.6rem);font-weight:400;line-height:1.13;letter-spacing:-.025em}
.who-copy{max-width:690px}
.who-copy p,.profile-copy p{margin:0 0 1.5rem;font-size:1.04rem;line-height:1.8}
.who-copy .lead{font-family:var(--serif);font-size:clamp(1.35rem,1.9vw,1.85rem);line-height:1.48}
.who-copy strong{font-weight:500;color:#4f604e}
.who-rhythm{margin:clamp(2.7rem,5vw,4.5rem) 0 0;padding:1.3rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:clamp(1.18rem,1.8vw,1.65rem);color:#59654e}
.who-rhythm>.language-english span{padding:0 .45rem;color:#9b9a78}
.founder-profile{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(3rem,9vw,10rem);margin-top:clamp(5rem,9vw,8rem);padding-top:clamp(2.5rem,4vw,4rem);border-top:1px solid var(--line)}
.founder-profile .kicker{margin-bottom:1.5rem}
.founder-profile h3{margin:0;font-family:var(--serif);font-size:clamp(2.8rem,4.7vw,5.1rem);font-weight:400;line-height:1.04;letter-spacing:-.025em}
.profile-copy{max-width:690px}
.impact{margin-top:clamp(6rem,10vw,9rem)}
.impact>header{display:block;margin-bottom:1.5rem}
.impact>header .kicker{margin-bottom:1.2rem}
.impact h3{font-size:clamp(2.8rem,4.4vw,4.7rem)}
.impact-context{max-width:820px;margin:0 0 clamp(3rem,5vw,5rem);color:#4e574b}
.impact-context p{margin:0 0 1.2rem;line-height:1.8}
.impact-context p:last-child{font-size:.83rem;color:#777b71}
.impact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;border:0}
.impact-grid article{display:flex;flex-direction:column;min-height:350px;padding:clamp(1.5rem,2.2vw,2.3rem);border:1px solid rgba(38,53,43,.13);background:#f7f5ef}
.impact-grid article:nth-child(even){background:#f2f0e9}
.impact-grid .impact-capability{margin:0 0 2.5rem;color:#6b735e;font-size:.71rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5}
.impact-grid h4{margin:0 0 .65rem;font-family:var(--serif);font-size:clamp(1.5rem,2vw,2rem);line-height:1.12}
.impact-grid strong{margin:0 0 auto;padding-bottom:2rem;font-size:clamp(2.1rem,3vw,3.2rem);line-height:1.1}
.impact-grid strong.impact-line{font-size:clamp(1.25rem,1.65vw,1.7rem)}
.impact-grid article>p:last-child{margin:0;padding-top:1.2rem;border-top:1px solid var(--line);font-size:.9rem;line-height:1.65}
body[data-lang="ja"] .who-intro h2>[lang="ja"],body[data-lang="ja"] .who-story h3>[lang="ja"],body[data-lang="ja"] .founder-profile h3>[lang="ja"],body[data-lang="ja"] .impact h3>[lang="ja"]{font-size:1em;line-height:1.25}
body[data-lang="ja"] .impact-grid .impact-capability>[lang="ja"]{font-size:1em;letter-spacing:.05em}
@media(max-width:1100px){.impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.who-story,.founder-profile{grid-template-columns:1fr;gap:2rem}.who-story h3{max-width:700px}.founder-profile{gap:1.5rem}}
@media(max-width:650px){.who-intro>h2{font-size:clamp(3rem,12vw,4.2rem)}.who-story h3{font-size:clamp(2.5rem,10vw,3.5rem)}.impact-grid{grid-template-columns:1fr}.impact-grid article{min-height:300px}.who-rhythm>.language-english span{padding:0 .15rem}}

/* Commercial scope, expressed within the existing editorial system. */
.engagement-areas{margin:0 0 clamp(3rem,6vw,5rem);padding:1.8rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.engagement-areas .kicker{margin-bottom:1.4rem}
.engagement-areas ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;list-style:none;margin:0;padding:0}
.engagement-areas li{font-family:var(--serif);font-size:clamp(1.15rem,1.7vw,1.65rem);line-height:1.2}
.principle-statement{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,9rem);padding-top:2rem;border-top:1px solid var(--line)}
.principle-statement p{margin:0;font-family:var(--serif);font-size:clamp(1.5rem,2.35vw,2.4rem);line-height:1.35}
.principle-statement p:last-child{font-family:var(--sans);font-size:1rem;line-height:1.75}
.impact-grid article{min-height:270px}
.impact-grid .impact-capability{margin-bottom:1.4rem}
.impact-grid .impact-place{margin:0 0 1.6rem;color:#70756c;font-size:.84rem}
.impact-grid strong{margin:0;padding:0;font-family:var(--serif);font-size:clamp(1.4rem,1.9vw,2.1rem);line-height:1.25;overflow-wrap:anywhere}
.impact-note{margin:1.2rem 0 0;color:#777b71;font-size:.75rem}
.contact-actions{display:flex;justify-content:center;align-items:center;gap:1.5rem;flex-wrap:wrap}
.contact-actions a{display:inline-block;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.65);font-family:var(--serif);font-size:1.1rem}
.contact-actions a.contact-primary{padding:.85rem 1.5rem;border:1px solid rgba(255,255,255,.75);font-family:var(--sans);font-size:.82rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase}
.contact-actions a:focus-visible{outline:2px solid var(--sand);outline-offset:4px}
.belief-images img{transition:opacity .8s ease,transform 6s ease}
@media(max-width:900px){.engagement-areas ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.engagement-areas ul,.principle-statement{grid-template-columns:1fr}.impact-grid article{min-height:240px}.contact h2{font-size:clamp(2.6rem,10vw,4rem)}.contact-actions{flex-direction:column;gap:.75rem}}

/* A quiet editorial pause between the team story and its closing thought. */
.who-editorial-image{width:42%;max-width:540px;height:clamp(120px,12vw,165px);margin:clamp(2.75rem,5vw,4.5rem) auto;overflow:hidden}
.who-editorial-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:650px){.who-editorial-image{width:86%;height:clamp(125px,36vw,155px);margin:2.75rem auto}}

/* Restore the bilingual five-principle editorial composition. */
.stand-for .editorial-heading{grid-template-columns:1fr 1fr;align-items:end}
.stand-for .editorial-heading>p:last-child{max-width:510px;line-height:1.6}
.stand-for .principle{grid-template-columns:40px minmax(260px,1fr) minmax(300px,.9fr);gap:clamp(1.25rem,3vw,3rem);align-items:start}
.stand-for .principle h3{font-size:clamp(2rem,2.75vw,2.8rem)}
.stand-for .principle h3 small{font-size:.32em;margin-top:.7em}
.stand-for .principle>p{font-size:clamp(.9rem,1vw,1rem);line-height:1.6}
.stand-for .editorial-heading .ja,.stand-for .principle .ja{font-size:.7em;line-height:1.75}
body[data-lang="en"] .stand-for [lang="ja"]{display:block!important}
body[data-lang="ja"] .stand-for .language-pair>.language-english{display:inline!important}
body[data-lang="ja"] .stand-for .editorial-heading .ja,body[data-lang="ja"] .stand-for .principle .ja{font-size:.7em;line-height:1.75}
body[data-lang="ja"] .stand-for .principle h3 small{font-size:.32em}
@media(max-width:900px){.stand-for .editorial-heading{grid-template-columns:1fr}.stand-for .principle{grid-template-columns:36px 1fr;gap:1rem 1.5rem}.stand-for .principle>p{grid-column:2}}
@media(max-width:560px){.stand-for .principle{padding:2rem 0}.stand-for .principle h3{font-size:clamp(2rem,8vw,2.6rem)}}
.stand-for .editorial-heading h2 .ja,body[data-lang="ja"] .stand-for .editorial-heading h2 .ja{font-size:.2em;line-height:1.6;letter-spacing:.05em}
body[data-lang="en"] .stand-for .kicker [lang="ja"]{display:inline!important;margin-left:.8rem;font-size:.9em}

/* Give the pivotal decision a quiet secondary line within each impact card. */
.impact-grid article{min-height:390px}
.impact-grid .impact-detail{margin:1.4rem 0 0;color:#596057;font-size:.84rem;line-height:1.65}
.impact-grid .impact-detail [lang="ja"]{font-size:.9em;line-height:1.7}
@media(max-width:650px){.impact-grid article{min-height:0}.impact-grid .impact-detail{margin-top:1.25rem}}

/* Contact form follows the same restrained typography and tonal palette. */
.contact-actions button.contact-primary{padding:.85rem 1.5rem;border:1px solid rgba(255,255,255,.75);background:transparent;color:var(--ivory);font-family:var(--sans);font-size:.82rem;font-weight:500;letter-spacing:.13em;text-transform:uppercase;cursor:pointer}
.contact-actions button:focus-visible,.contact-form-wrap button:focus-visible,.contact-form-wrap input:focus-visible,.contact-form-wrap textarea:focus-visible{outline:2px solid var(--sand);outline-offset:4px}
.contact-form-wrap[hidden]{display:none}
.contact-form-wrap{max-width:650px;margin:3rem auto 0;padding:2rem 0 0;border-top:1px solid rgba(255,255,255,.3);text-align:left}
.contact-form-wrap label{display:block;margin:0 0 1.2rem;font-size:.8rem;letter-spacing:.06em}
.contact-form-wrap input,.contact-form-wrap textarea{display:block;width:100%;margin-top:.45rem;padding:.7rem .1rem;border:0;border-bottom:1px solid rgba(255,255,255,.5);border-radius:0;background:transparent;color:var(--ivory);font:inherit;font-size:1rem;resize:vertical}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.contact-form-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.contact-form-footer p{max-width:320px;margin:0;color:rgba(255,255,255,.67);font-size:.72rem;line-height:1.5}
.contact-form-footer button{padding:.8rem 1.4rem;border:1px solid rgba(255,255,255,.75);background:transparent;color:var(--ivory);font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.contact-form-footer button:disabled{opacity:.55;cursor:wait}
.contact-form-status{min-height:1.6em;margin:1rem 0 0;font-size:.84rem}
.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:650px){.contact-fields{grid-template-columns:1fr;gap:0}.contact-form-footer{align-items:flex-start;flex-direction:column}}

/* Japanese belief headlines keep a quieter scale beside the supporting copy. */
body[data-lang="ja"] .belief-slides h3>[lang="ja"]{font-size:clamp(1.9rem,3.3vw,3.4rem);line-height:1.5;letter-spacing:.035em}
@media(max-width:560px){body[data-lang="ja"] .belief-slides h3>[lang="ja"]{font-size:clamp(1.65rem,6.2vw,2.15rem);line-height:1.55}}

body[data-lang="ja"] .service-heading h2>[lang="ja"]{font-size:.65em;line-height:1.5;letter-spacing:.025em}
body[data-lang="ja"] .belief-heading h2>[lang="ja"]{font-size:.75em;line-height:1.45}

/* The Japanese principles view uses Japanese copy only. */
body[data-lang="ja"] .stand-for .language-pair>.language-english{display:none!important}
body[data-lang="ja"] .stand-for .editorial-heading h2>[lang="ja"]{font-size:.55em;line-height:1.5;margin-top:0}
body[data-lang="ja"] .stand-for .principle h3>[lang="ja"]{font-size:.75em;line-height:1.5;margin-top:0}
body[data-lang="ja"] .stand-for .editorial-heading>p>[lang="ja"],body[data-lang="ja"] .stand-for .principle>p>[lang="ja"]{font-size:1em;margin-top:0}

/* Keep the English principles view entirely in English. */
body[data-lang="en"] .stand-for [lang="ja"],body[data-lang="en"] .stand-for .kicker [lang="ja"]{display:none!important}

/* Concrete services precede the connected execution approach. */
.engagement-areas ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.engagement-areas li{padding:1.6rem 0;border-top:1px solid var(--line)}
.engagement-areas h3{margin:0 0 1rem;font-family:var(--serif);font-size:clamp(1.45rem,1.8vw,1.9rem);font-weight:400;line-height:1.35}
.engagement-areas li>p{margin:0;font-family:var(--sans);font-size:1rem;line-height:1.75}
body[data-lang="ja"] .engagement-areas h3>[lang="ja"]{font-size:.85em;line-height:1.5}
.service-approach-intro{max-width:900px;margin:0 0 2.5rem}
.service-approach-intro h3{margin:0 0 1.2rem;font-family:var(--serif);font-size:clamp(1.8rem,2.8vw,2.7rem);font-weight:400;line-height:1.35}
.service-approach-intro>p:last-child{max-width:780px;font-size:1rem;line-height:1.75}
body[data-lang="ja"] .service-approach-intro h3>[lang="ja"]{font-size:.8em;line-height:1.5}
@media(max-width:900px){.engagement-areas ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.engagement-areas ul{grid-template-columns:1fr;gap:.5rem}.engagement-areas h3{font-size:1.65rem}.service-approach-intro{margin-bottom:2rem}}

.service-overview>div{padding:1.25rem 0;border-top:1px solid var(--line)}
.service-overview h3{margin:0 0 .5rem;font-family:var(--sans);font-size:.9rem;font-weight:500;line-height:1.6;letter-spacing:.04em}
.service-overview p{margin:0;font-size:1rem;line-height:1.75}
body[data-lang="ja"] .service-overview h3>[lang="ja"]{font-size:1em;margin:0;line-height:1.6}
