@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--ink:#111511;--paper:#f5f6f1;--lime:#c1ff65;--gray:#9da29a;--line:#d8dcd2;font-family:'DM Sans','Hiragino Kaku Gothic ProN','Microsoft YaHei',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0}a{color:inherit;text-decoration:none}button,select{font:inherit}a,select{ -webkit-tap-highlight-color:transparent}a:focus-visible,select:focus-visible{outline:3px solid #76aa2e;outline-offset:6px}header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px}.brand-mark{font-family:'Space Grotesk',sans-serif;font-size:53px;font-weight:700;letter-spacing:-5px;line-height:1}.brand-dot{color:#72a539}.brand-name{font-size:14px;line-height:1.4}.brand-name span{display:block;font-size:10px;letter-spacing:2.2px;margin-top:3px}nav{display:flex;gap:32px;font-size:14px}nav a:hover{color:#699330}.language{display:flex;gap:8px;align-items:center}.language select{border:0;background:transparent;font-size:14px;cursor:pointer;padding:10px 2px}.hero{background:var(--ink);color:var(--paper);padding:0 5%;overflow:hidden}.hero-top{display:flex;justify-content:space-between;padding:25px 0;font-size:11px;letter-spacing:1.5px;border-bottom:1px solid #333930}.hero-body{display:grid;grid-template-columns:1.2fr 1fr;min-height:630px;position:relative}.hero-copy{padding:61px 0 64px;position:relative;z-index:1}.eyebrow{font-size:12px;letter-spacing:2px;display:flex;align-items:center;gap:10px;color:#d8ded2}.eyebrow i{width:7px;height:7px;background:var(--lime)}h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(64px,7.5vw,112px);line-height:1.04;font-weight:500;letter-spacing:-6px;margin:29px 0 24px}.next{color:var(--lime)}.next svg{width:65px;height:65px;margin-left:18px;fill:none;stroke:var(--lime);stroke-width:3}.hero-subtitle{font-size:23px;letter-spacing:1px;margin:25px 0 16px}.hero-desc{font-size:15px;line-height:1.9;color:#aeb4a8;max-width:450px;margin-bottom:28px}.button{display:inline-flex;align-items:center;gap:45px;padding:17px 23px;font-size:14px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button span:last-child{font-size:22px;line-height:1}.lime{background:var(--lime);color:var(--ink)}.dark{background:var(--ink);color:white}.field{position:relative;min-width:0;margin-left:-35px}.field canvas{width:100%;height:100%;position:absolute;inset:0}.field-label{position:absolute;top:48px;right:0;color:#858f7b;font:10px 'Space Grotesk',sans-serif;letter-spacing:2px}.field-bottom{position:absolute;bottom:48px;width:100%;display:flex;justify-content:space-between;font-size:10px;line-height:1.8;letter-spacing:1.5px;color:#8e9a83}.hero-foot{border-top:1px solid #333930;display:flex;justify-content:space-between;padding:25px 0;font-size:11px;letter-spacing:1.3px;color:#aeb4a8}.hero-foot a span{padding-left:22px;color:var(--lime)}.section{padding:68px 7% 85px}.section-label{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.4px;margin-bottom:54px}.section-label>span:first-child{font-family:'Space Grotesk',sans-serif}.section-label>span:last-child{color:#71776c}h2{font-size:clamp(32px,3.4vw,48px);font-weight:500;line-height:1.5;letter-spacing:-1.7px;margin:0;white-space:pre-line}.about-layout,.team-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.lead{font-size:20px;line-height:1.9;margin:0 0 18px}.muted{color:#6a7166;line-height:2;font-size:15px}.about-facts{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);margin-top:34px;padding-top:28px;gap:14px}.about-facts strong{font:500 35px 'Space Grotesk',sans-serif;letter-spacing:-1px}.about-facts strong span{font-size:18px;color:#6c943a;margin-left:10px}.about-facts p{font-size:12px;color:#73796e}.expertise{background:#e9ece4}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px;gap:25px}.section-heading p{max-width:350px;font-size:15px;line-height:1.9;color:#6a7166;margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr)}.services article{border:1px solid #cbd1c4;padding:30px;background:transparent;transition:background .2s}.services article+article{border-left:0}.services article:hover{background:#f3f5ee}.service-top{display:flex;justify-content:space-between;align-items:center;font:13px 'Space Grotesk';color:#7a826f;margin-bottom:47px}.service-icon{font-size:35px;color:#26351b}.services h3{font-size:25px;font-weight:500;margin:0 0 8px}.english-label{font-size:10px;letter-spacing:1.5px;color:#717a65}.services p{font-size:15px;line-height:1.9;color:#65705d;min-height:90px;margin:24px 0 30px}.tag{display:inline-block;font-size:11px;border-top:1px solid #cbd1c4;padding-top:20px;width:100%;color:#526048}.product{background:var(--lime)}.product .section-label>span:last-child{color:#506838}.product-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}.product-badge{font-size:10px;letter-spacing:1.3px;border:1px solid #718f47;padding:7px 10px}.product h2{font:500 clamp(36px,4.2vw,60px) 'Space Grotesk';letter-spacing:-3px;margin:29px 0 24px}.product h2 span{color:#5c7d34}.product h3{font-size:21px;font-weight:500}.product p{font-size:15px;line-height:1.9;max-width:440px;color:#425830;margin-bottom:28px}.quant-visual{background:#172015;color:#c1ff65;aspect-ratio:1.2;position:relative;overflow:hidden;padding:23px;background-image:linear-gradient(#a9d5710a 1px,transparent 1px),linear-gradient(90deg,#a9d5710a 1px,transparent 1px);background-size:30px 30px}.quant-top{display:flex;justify-content:space-between;font:9px 'Space Grotesk';letter-spacing:1px;color:#9bb684}.quant-letter{font:500 200px 'Space Grotesk';letter-spacing:-25px;position:absolute;left:12%;top:6%;z-index:1}.quant-letter span{font-size:120px;vertical-align:30px;margin-left:14px}.quant-lines{position:absolute;bottom:60px;left:20px;right:20px;height:90px;display:flex;gap:10px;align-items:end;opacity:.45}.quant-lines i{flex:1;background:#9cc971;height:20%}.quant-lines i:nth-child(3n){height:60%}.quant-lines i:nth-child(2n){height:40%}.quant-lines i:nth-child(5n){height:95%}.quant-bottom{position:absolute;bottom:22px;left:23px;right:23px;display:flex;justify-content:space-between;font:10px 'Space Grotesk';letter-spacing:1px}.team{border-bottom:1px solid var(--line)}.team-domains{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.team-domains span{border:1px solid #cdd4c4;padding:9px 13px;font-size:12px}.company-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:110px 1fr;border-bottom:1px solid var(--line);padding:22px 0;font-size:14px;line-height:1.8;gap:22px}.company dl>div:first-child{padding-top:0}.company dt{color:#7a8073}.company dd{margin:0}.tokyo{margin-top:35px;max-width:315px;padding:24px 20px;position:relative;border:1px solid #d8ddd1;background-image:linear-gradient(#d8ddd166 1px,transparent 1px),linear-gradient(90deg,#d8ddd166 1px,transparent 1px);background-size:19px 19px;font:500 40px 'Space Grotesk';letter-spacing:3px}.tokyo>span{display:block;font-size:9px;letter-spacing:2px;margin-top:10px}.tokyo-cross{position:absolute;right:23px;top:22px;color:#82a94d}footer{background:var(--ink);color:var(--paper);padding:50px 5% 24px}.footer-main{display:flex;align-items:center;gap:50px;padding-bottom:46px}.footer-main .brand-mark{font-size:80px}.footer-main p{font:23px/1.4 'Space Grotesk';letter-spacing:-.5px}.back-top{margin-left:auto;border:1px solid #4a5145;padding:17px 22px;font-size:25px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #363d30;padding-top:25px;font-size:10px;letter-spacing:.8px;color:#9ba491}.skip{position:fixed;top:-100px;left:10px;background:var(--lime);padding:15px;z-index:10}.skip:focus{top:10px}
@media(min-width:1600px){header,.hero,footer{padding-left:max(5%,calc((100vw - 1450px)/2));padding-right:max(5%,calc((100vw - 1450px)/2))}.section{padding-left:max(7%,calc((100vw - 1350px)/2));padding-right:max(7%,calc((100vw - 1350px)/2))}}@media(max-width:900px){header{height:80px}nav{gap:18px}.brand-name{display:none}.hero-body{min-height:600px;grid-template-columns:1.3fr 1fr}h1{font-size:72px;letter-spacing:-4px}.field{margin-left:-100px;opacity:.7}.hero-copy{padding-top:50px}.section{padding:50px 5% 65px}.about-layout,.team-layout{gap:6%}.services article{padding:23px}.services p{min-height:142px}.product-layout{gap:5%}.quant-letter{font-size:155px}.quant-letter span{font-size:90px}.company-layout{gap:6%}.section-label{margin-bottom:35px}}@media(max-width:640px){header{height:auto;min-height:78px;flex-wrap:wrap;padding:15px 6%;gap:17px}.brand-mark{font-size:43px}nav{order:3;width:100%;justify-content:space-between;font-size:12px;padding:10px 0 2px;border-top:1px solid var(--line)}.language select{font-size:13px}.hero{padding:0 6%}.hero-top{font-size:8px;padding:18px 0}.location{display:none}.hero-body{display:block;min-height:740px}.hero-copy{padding:36px 0 0}.eyebrow{font-size:10px}h1{font-size:clamp(51px,12.5vw,77px);letter-spacing:-3px;margin:24px 0}.next svg{width:40px;height:40px;margin-left:15px}.hero-subtitle{font-size:20px}.hero-desc{font-size:14px;max-width:100%;line-height:1.85}.field{height:280px;margin:0;opacity:1}.field-label{top:22px;font-size:8px}.field-bottom{bottom:16px;font-size:8px}.hero-foot{font-size:9px;gap:20px}.hero-foot>span:nth-child(2){display:none}.section{padding:43px 6% 54px}.section-label{font-size:9px;letter-spacing:.8px;margin-bottom:29px}.about-layout,.team-layout,.company-layout,.product-layout{grid-template-columns:1fr;gap:28px}h2{font-size:31px;letter-spacing:-1px;line-height:1.5}.lead{font-size:18px}.muted{font-size:14px}.about-facts strong{font-size:31px}.about-facts p{font-size:11px}.section-heading{display:block}.section-heading p{margin-top:20px;font-size:14px}.services{grid-template-columns:1fr}.services article{padding:25px}.services article+article{border-left:1px solid #cbd1c4;border-top:0}.service-top{margin-bottom:20px}.services p{min-height:0;margin:18px 0 22px}.services h3{font-size:24px}.product h2{font-size:42px;letter-spacing:-2.5px}.quant-visual{aspect-ratio:1.3;max-width:480px}.quant-letter{font-size:170px;top:0}.quant-letter span{font-size:100px}.company dl>div{grid-template-columns:84px 1fr;font-size:13px;gap:15px}.tokyo{max-width:none}.footer-main{gap:25px;padding-bottom:26px}.footer-main .brand-mark{font-size:60px}.footer-main p{font-size:16px}.back-top{padding:11px 15px}.footer-bottom{flex-wrap:wrap;gap:15px;font-size:9px}.footer-bottom>span:last-child{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Rounded, familiar descenders keep the hero's lowercase g clearly legible. */
.hero h1{font-family:'DM Sans',Arial,sans-serif;line-height:1.14;letter-spacing:-.055em}
/* Match CJK glyphs to the selected language instead of mixing Japanese and Chinese fallbacks. */
html:lang(zh-Hans){font-family:'DM Sans','PingFang SC','Microsoft YaHei','Noto Sans CJK SC','Noto Sans SC',sans-serif}
html:lang(zh-Hant){font-family:'DM Sans','PingFang TC','Microsoft JhengHei','Noto Sans CJK TC','Noto Sans TC',sans-serif}
html:lang(ja){font-family:'DM Sans','Hiragino Kaku Gothic ProN','Yu Gothic','Meiryo','Noto Sans JP',sans-serif}
html:lang(en){font-family:'DM Sans',Arial,sans-serif}
html:lang(zh) h2[data-t],html:lang(zh) h3[data-t]{letter-spacing:0;line-height:1.55}
#language option[value="zh-Hans"]{font-family:'PingFang SC','Microsoft YaHei',sans-serif}
#language option[value="zh-Hant"]{font-family:'PingFang TC','Microsoft JhengHei',sans-serif}
#language option[value="ja"]{font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}

/* Uppercase wordmark spacing for both header and footer. */
.brand-mark{letter-spacing:-.055em}

/* Compact layouts keep long localized labels in their own layout tracks. */
@media(max-width:900px){
  header{height:auto;min-height:80px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding-top:18px;padding-bottom:18px}
  header .brand{min-width:0}
  header .language{justify-self:end}
  header nav{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border-top:1px solid var(--line);padding-top:16px;width:100%}
  header nav a{min-width:0;line-height:1.6;overflow-wrap:anywhere;text-align:center}
  .footer-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start}
  .footer-main>.brand-mark{grid-column:1;grid-row:1;justify-self:start}
  .footer-main>p{grid-column:1;grid-row:2;margin:0;line-height:1.6;overflow-wrap:anywhere}
  .footer-main>.back-top{grid-column:2;grid-row:1;margin:0;align-self:center}
  .footer-bottom{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;line-height:1.8}
  .footer-bottom>span{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:640px){
  header{gap:16px;padding:20px 6%}
  header nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;padding-top:12px}
  header nav a{text-align:left;font-size:14px;padding:9px 0;letter-spacing:0}
  .language{gap:6px}
  .language select{max-width:145px}
  .footer-main{padding-bottom:30px;gap:22px}
  .footer-main .brand-mark{font-size:56px}
  .footer-main p{font-size:18px}
  .footer-bottom{font-size:12px;letter-spacing:.02em}
}
/* Mobile disclosure navigation with touch-friendly language choices. */
.header-panel{display:contents}
.menu-toggle,.mobile-languages{display:none}
@media(max-width:900px){
  header{position:relative;z-index:5;display:flex;flex-wrap:nowrap;justify-content:space-between;min-height:84px;padding:18px 6%;gap:20px}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;padding:10px 12px;background:transparent;border:1px solid #cbd1c4;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
  .menu-lines{width:20px;height:12px;position:relative;border-top:2px solid currentColor;border-bottom:2px solid currentColor}
  .menu-open .menu-lines{border:0}
  .menu-open .menu-lines:before,.menu-open .menu-lines:after{content:'';position:absolute;top:5px;left:0;width:20px;height:2px;background:currentColor;transform:rotate(45deg)}
  .menu-open .menu-lines:after{transform:rotate(-45deg)}
  .header-panel{display:none;position:absolute;top:100%;left:0;right:0;padding:10px 6% 28px;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 18px 24px #11151112;max-height:calc(100dvh - 90px);overflow-y:auto}
  .menu-open .header-panel{display:block}
  header nav{display:flex;flex-direction:column;gap:0;padding:0;border:0}
  header nav a{display:block;text-align:left;font-size:17px;line-height:1.6;padding:15px 0;border-bottom:1px solid var(--line);letter-spacing:0}
  header nav a:after{content:'↗';float:right;font-size:18px;color:#6b765e}
  .header-panel>.language{display:none}
  .mobile-languages{display:block;margin-top:24px}
  #mobile-language-label{display:block;font-size:13px;color:#66715e;margin-bottom:12px}
  .language-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .language-options button{min-height:46px;padding:11px 8px;font:inherit;font-size:14px;border:1px solid #cbd1c4;background:transparent;color:var(--ink);cursor:pointer}
  .language-options button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--lime)}
  .menu-toggle:focus-visible,.language-options button:focus-visible{outline:2px solid #76aa2e;outline-offset:3px}
}
/* Persistent navigation; anchor spacing follows the actual header height. */
html{scroll-padding-top:calc(var(--header-height,96px) + 20px)}
header{position:sticky;top:0;z-index:50}
@media(max-width:900px){.header-panel{max-height:calc(100dvh - var(--header-height,84px))}}
/* In-page language menu avoids native select scrolling/focus behavior. */
.language{position:relative}
.language-trigger{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.language-popover{position:absolute;top:calc(100% + 10px);right:0;width:160px;padding:6px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 28px #11151118}
.language-popover[hidden]{display:none}
.language-popover button{display:block;width:100%;min-height:44px;text-align:left;padding:10px 14px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.language-popover button:hover{background:#e9ece4}
.language-popover button[aria-pressed="true"]{background:var(--ink);color:var(--lime)}
.language-trigger:focus-visible,.language-popover button:focus-visible{outline:2px solid #76aa2e;outline-offset:2px}
