@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-garamond.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('fonts/cormorant-garamond-italic.woff2') format('woff2');font-style:italic;font-weight:400 600;font-display:swap}
@font-face{font-family:'Manrope';src:url('fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--paper:#f5f2e9;--warm:#efebdf;--ink:#1e2530;--muted:#747573;--accent:#b64b37;--line:#d6d2c8;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'Manrope',Arial,sans-serif;--gutter:80px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%;height:auto}
figure,p,h1,h2,h3,h4{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.025em}
em{color:var(--accent);font-weight:400}
p+p{margin-top:20px}
.container{width:calc(100% - var(--gutter)*2);max-width:1440px;margin-inline:auto}
.section{padding-block:120px}
.section-warm{background:var(--warm)}
.eyebrow{color:var(--muted);font-family:var(--sans);font-size:11px;font-weight:500;line-height:1.6;letter-spacing:.24em;text-transform:uppercase}
.accent{color:var(--accent)}
.skip-link{position:absolute;z-index:30;left:20px;top:-100px;background:var(--ink);color:var(--paper);padding:12px 20px}
.skip-link:focus{top:10px}
.site-header{padding-block:31px}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.wordmark{display:inline-flex;flex-direction:column;flex-shrink:0;line-height:1}
.wordmark-name{font-family:var(--serif);font-weight:600;font-size:37px;letter-spacing:.075em;text-transform:uppercase}
.wordmark-subtitle{margin-top:8px;font-size:11px;font-weight:700;letter-spacing:.43em;text-transform:uppercase}
.site-nav{display:flex;align-items:center;gap:34px}
.site-nav a{font-size:12px;letter-spacing:.12em;text-transform:uppercase;transition:color .18s ease}
.site-nav a:hover,.site-footer a:hover{color:var(--accent)}
.nav-contact{border:1px solid #bcb8ae;padding:14px 20px}
.nav-toggle{display:none;background:none;border:0;padding:12px}
.hero{padding-block:62px 112px;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:.94fr 1fr;gap:55px;align-items:start}
.hero-copy .eyebrow{margin:3px 0 29px;letter-spacing:.2em}
.hero h1{font-size:clamp(50px,5.13vw,82px);line-height:1.08;letter-spacing:-.027em}
.hero h1 em{white-space:nowrap}
.button-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:42px}
.button{display:inline-flex;min-height:49px;align-items:center;justify-content:center;gap:28px;padding:15px 27px;font-size:12px;font-weight:600;letter-spacing:.095em;line-height:1.4;text-transform:uppercase;border:1px solid var(--ink);transition:background .2s,color .2s,border-color .2s}
.button-dark{background:var(--ink);color:var(--paper)}
.button-dark:hover{background:var(--accent);border-color:var(--accent)}
.button-outline{border-color:#bcb8ae;background:transparent}
.button-outline:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.hero-visual{position:relative;margin-top:0}
.hero-visual img{width:100%;aspect-ratio:652/450;object-fit:cover}
.corner-bottom:before{content:'';position:absolute;left:-16px;bottom:-16px;width:97px;height:97px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);pointer-events:none}
.vertical-caption{position:absolute;right:-37px;top:0;writing-mode:vertical-rl;font-family:var(--serif);font-size:17px;letter-spacing:.2em;color:#96948d}
.vertical-caption span{margin-block:17px}
.bridge-section{padding-top:71px}
.bridge-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-bottom:1px solid var(--line);padding-bottom:70px}
.direction{font-size:12px;letter-spacing:.28em;text-transform:uppercase;display:flex;align-items:center;gap:18px}
.direction-arrow{font-family:Georgia,serif;font-size:32px;line-height:1;color:var(--accent);font-weight:400;letter-spacing:0}
.japanese-label{font-family:var(--serif);font-size:14px;color:#9b9891;letter-spacing:.22em;margin-top:11px}
.bridge-grid h2{font-size:38px;line-height:1.2;margin-top:30px}
.overview{padding-block:121px 122px}
.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.experience-number{font-family:var(--serif);font-size:128px;color:var(--accent);line-height:.95;letter-spacing:-.055em;margin-top:70px}
.experience-caption{max-width:280px;color:var(--muted);font-size:15px;line-height:1.65;margin-top:13px}
.overview-copy h2{font-size:35px;line-height:1.28}
.overview-copy>p{margin-top:29px;color:var(--muted);line-height:1.7}
.business{padding-block:122px 125px;border-block:1px solid var(--line)}
.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:56px}
.business-card{border-top:1px solid #c6c2b8;padding-top:32px}
.roman{font-family:var(--serif);font-size:17px;line-height:1.2;margin-bottom:20px}
.business-card h3{font-size:46px;line-height:1.12;margin-bottom:29px}
.business-card>p:not(.roman){color:var(--muted);line-height:1.65}
.territories{display:flex;flex-wrap:wrap;gap:9px 10px;padding:0;margin:28px 0 0;list-style:none;max-width:520px}
.territories li{border:1px solid #c9c5bb;background:var(--paper);padding:8px 13px;font-size:11px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.services{padding-block:120px 130px}
.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-top:28px;margin-bottom:67px}
.section-intro h2{font-size:53px;line-height:1.08}
.section-intro p{color:var(--muted);font-size:15px;line-height:1.65}
.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:47px;row-gap:0;list-style:none;padding:0;margin:0;counter-reset:services}
.service-list li{counter-increment:services;position:relative;border-top:1px solid var(--line);padding:24px 0 25px 46px;font-size:15px;line-height:1.6;min-height:75px}
.service-list li:before{content:counter(services,decimal-leading-zero);position:absolute;left:0;top:25px;color:var(--accent);font-family:var(--serif);font-size:15px}
.advantages{padding-block:125px 121px;border-block:1px solid var(--line)}
.advantage-words{display:grid;grid-template-columns:1.16fr .75fr .9fr .97fr;gap:30px;margin:34px 0 84px;padding:0;list-style:none}
.advantage-words li{font-family:var(--serif);font-size:clamp(38px,3.9vw,62px);line-height:1.12;letter-spacing:-.035em;border-top:1px solid #c6c2b8;padding-top:24px}
.advantage-copy{display:grid;grid-template-columns:1fr 1fr;gap:70px;color:var(--muted);font-size:15px;line-height:1.7}
.advantage-copy p+p{margin-top:0}
.clients{padding-block:117px 119px}
.client-list{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;padding:42px 0;margin:52px 0 0;list-style:none;border-block:1px solid var(--line)}
.client-list li{font-family:var(--serif);font-size:25px;letter-spacing:.035em;line-height:1.55}
.contact-section{border-top:1px solid var(--line);padding-block:140px 120px}
.contact-statement{font-size:clamp(48px,5.4vw,82px);line-height:1.04;max-width:1120px}
.founder-grid{display:grid;grid-template-columns:440px 1fr;gap:64px;margin-top:91px}
.founder-visual{position:relative}
.founder-visual img{width:100%;aspect-ratio:440/550;object-fit:cover}
.corner-top:before{content:'';position:absolute;right:-16px;top:-16px;width:97px;height:97px;border-right:2px solid var(--accent);border-top:2px solid var(--accent);pointer-events:none}
.founder-info{display:flex;flex-direction:column;justify-content:space-between;gap:60px;min-width:0}
.founder-info>.eyebrow,.founder-info>div>.eyebrow{margin-top:0}
.founder-info h3{font-size:63px;line-height:1.1;margin-top:23px}
.founder-role{font-size:12px;letter-spacing:.21em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-top:5px}
.conversation-button{margin-top:35px;gap:20px}
.conversation-button span{font-size:20px;line-height:1}
.contact-details{display:grid;grid-template-columns:1.14fr 1.05fr .85fr;gap:27px;margin-bottom:0}
.contact-details>div{padding-top:20px;border-top:1px solid var(--line);min-width:0}
.contact-details h4{font-size:11px;font-weight:600;line-height:1.7;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px}
.contact-details address{font-style:normal;color:var(--muted);font-size:15px;line-height:1.65}
.contact-details address a{display:inline-block;margin-top:8px;border-bottom:1px solid var(--accent)}
.text-link{color:var(--muted);border-bottom:1px solid var(--accent);font-size:15px;padding-bottom:3px}
.text-link:hover,.contact-details a:hover{color:var(--accent)}
.japanese-inline{color:#9b9891;font-family:var(--serif);white-space:nowrap}
.site-footer{border-top:1px solid var(--line);padding-block:32px}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;color:var(--muted);font-size:12px}
.site-footer nav{display:flex;flex-wrap:wrap;gap:27px}
@media(min-width:1600px){.hero h1{font-size:82px}.hero{padding-top:80px}.hero-grid{gap:75px}}
@media(max-width:1200px){:root{--gutter:48px}.hero-grid{gap:36px}.hero h1{font-size:clamp(46px,5.1vw,62px)}.hero-copy .eyebrow{font-size:10px}.hero h1 em{white-space:normal}.wordmark-name{font-size:32px}.site-nav{gap:25px}.bridge-grid h2{font-size:32px}.overview-copy h2{font-size:32px}.business-card h3{font-size:40px}.founder-grid{grid-template-columns:35% 1fr;gap:48px}.founder-info h3{font-size:52px}.contact-details{gap:17px;grid-template-columns:1fr 1fr}.contact-details>div:last-child{grid-column:2}.contact-details>div:first-child{grid-row:span 2}.contact-details h4{font-size:10px}.advantage-words{gap:24px}.advantage-words li{font-size:clamp(34px,4vw,47px)}.client-list li{font-size:22px}}
@media(max-width:900px){:root{--gutter:32px}.section{padding-block:85px}.site-header{padding-block:25px}.wordmark-name{font-size:30px}.wordmark-subtitle{font-size:9px}.site-nav{gap:21px}.site-nav a{font-size:10px}.nav-contact{padding:12px 15px}.hero{padding-block:55px 85px}.hero-grid{grid-template-columns:1fr;gap:60px}.hero-copy{max-width:660px}.hero h1{font-size:64px}.hero-visual{width:90%;max-width:690px;margin-left:auto;margin-right:20px}.hero-copy .eyebrow{font-size:11px}.bridge-section{padding-top:55px}.bridge-grid{gap:34px;padding-bottom:55px}.bridge-grid h2{font-size:29px}.overview-grid,.business-grid,.section-intro,.advantage-copy{gap:38px}.overview-copy h2{font-size:30px}.experience-number{font-size:110px;margin-top:50px}.business-grid{margin-top:45px}.business-card h3{font-size:36px}.section-intro h2{font-size:45px}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}.advantage-words{grid-template-columns:1fr 1fr;gap:33px;margin-bottom:55px}.advantage-words li{font-size:49px}.client-list{flex-wrap:wrap;justify-content:flex-start;gap:35px 45px;margin-top:35px}.client-list li{flex-basis:calc(33.333% - 30px);font-size:23px}.contact-statement{font-size:60px}.founder-grid{grid-template-columns:38% 1fr;gap:40px;margin-top:65px}.founder-info h3{font-size:45px}.contact-details{grid-template-columns:1fr;gap:20px}.contact-details>div:last-child{grid-column:auto}.contact-details>div:first-child{grid-row:auto}.founder-info{gap:40px}.conversation-button{padding:15px 20px;font-size:11px;gap:13px}.contact-details address,.text-link{font-size:14px}.footer-inner{align-items:flex-start}.site-footer nav{gap:18px}}
@media(max-width:640px){:root{--gutter:24px}html{scroll-padding-top:20px}body{font-size:15px}.section{padding-block:68px}.site-header{padding-block:23px}.header-inner{position:relative;gap:15px}.wordmark-name{font-size:27px;letter-spacing:.065em}.wordmark-subtitle{font-size:8px;letter-spacing:.4em;margin-top:6px}.site-nav{gap:12px;flex-wrap:wrap;justify-content:flex-end}.site-nav a{font-size:9px}.site-nav .nav-contact{padding:8px 10px}.js .nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px;padding:10px}.nav-toggle span{display:block;width:22px;height:1px;background:var(--ink);transition:transform .2s}.nav-toggle[aria-expanded='true'] span:first-child{transform:translateY(3.5px) rotate(45deg)}.nav-toggle[aria-expanded='true'] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.js .site-nav{display:none;position:absolute;top:calc(100% + 21px);left:0;right:0;background:var(--paper);border:1px solid var(--line);padding:23px;flex-direction:column;align-items:stretch;gap:20px;z-index:10;box-shadow:0 12px 25px #1e25300d}.js .site-nav.is-open{display:flex}.js .site-nav a{font-size:12px}.hero{padding-block:44px 68px}.hero-grid{gap:45px}.hero-copy .eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:25px}.hero h1{font-size:clamp(44px,9.6vw,60px);line-height:1.05}.desktop-break{display:none}.hero h1 em{white-space:normal}.button-row{margin-top:30px;gap:11px}.button{font-size:10px;min-height:46px;padding:14px 20px;letter-spacing:.075em}.hero-visual{width:calc(100% - 18px);margin-right:13px}.vertical-caption{right:-26px;font-size:13px}.corner-bottom:before{width:64px;height:64px;left:-12px;bottom:-12px}.bridge-section{padding-top:43px}.bridge-grid{grid-template-columns:1fr;gap:40px;padding-bottom:48px}.direction{font-size:10px;gap:16px}.japanese-label{font-size:12px;margin-top:8px}.bridge-grid h2{font-size:31px;margin-top:20px;line-height:1.18}.overview-grid{grid-template-columns:1fr;gap:42px}.experience-number{font-size:109px;margin-top:34px}.experience-caption{font-size:14px;max-width:275px}.overview-copy h2{font-size:33px;line-height:1.22}.overview-copy>p{margin-top:24px;font-size:14px}.business-grid{grid-template-columns:1fr;gap:44px;margin-top:35px}.business-card{padding-top:24px}.business-card h3{font-size:38px;margin-bottom:23px}.business-card>p:not(.roman){font-size:14px}.roman{margin-bottom:15px}.territories{gap:8px;margin-top:23px}.territories li{font-size:9px;padding:7px 10px}.section-intro{grid-template-columns:1fr;gap:25px;margin-top:23px;margin-bottom:37px}.section-intro h2{font-size:43px}.section-intro p{font-size:14px}.service-list{grid-template-columns:1fr}.service-list li{font-size:14px;padding:21px 0 21px 39px;min-height:66px}.service-list li:before{top:21px;font-size:14px}.advantage-words{gap:27px 22px;margin-top:27px;margin-bottom:37px}.advantage-words li{font-size:clamp(30px,7.8vw,45px);padding-top:18px;letter-spacing:-.04em}.advantage-copy{grid-template-columns:1fr;gap:23px;font-size:14px}.client-list{gap:30px 20px;padding-block:29px;margin-top:31px}.client-list li{flex-basis:calc(50% - 10px);font-size:22px;letter-spacing:0}.contact-statement{font-size:clamp(40px,9.6vw,55px);line-height:1.08}.founder-grid{grid-template-columns:1fr;gap:42px;margin-top:52px}.founder-visual{width:80%;max-width:340px}.corner-top:before{right:-12px;top:-12px;width:70px;height:70px}.founder-info h3{font-size:49px;margin-top:18px}.founder-role{font-size:10px}.conversation-button{margin-top:26px;font-size:11px}.contact-details{grid-template-columns:1fr 1fr;gap:27px 23px}.contact-details>div:first-child{grid-column:span 2}.contact-details h4{font-size:10px}.footer-inner{flex-direction:column;gap:20px;font-size:11px}.site-footer{padding-block:27px}.site-footer nav{gap:21px}.eyebrow{font-size:10px;letter-spacing:.2em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
