@font-face{font-family:Zen Kaku Gothic New;src:url(/fonts/zen-kaku-regular.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Zen Kaku Gothic New;src:url(/fonts/zen-kaku-medium.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:Zen Maru Gothic;src:url(/fonts/zen-maru-bold.woff2)format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/manrope.woff2)format("woff2");font-style:normal;font-weight:200 800;font-display:swap}:root{--paper:#fafbf7;--grass:#edf2e5;--ink:#263a2e;--moss:#8fa67b;--sprout:#dce87d;--line:#d7ded0;--gutter:clamp(24px,6.25vw,100px);color:var(--ink);background:var(--paper);font-synthesis:none;font-family:Zen Kaku Gothic New,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{-webkit-font-smoothing:antialiased;margin:0;font-size:16px;font-weight:400}a{color:inherit;text-underline-offset:6px;text-decoration:none}a:focus-visible{outline:2px solid var(--ink);outline-offset:7px}a:hover{text-decoration:underline}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}::selection{background:var(--sprout);color:var(--ink)}.skip-link{z-index:10;background:var(--ink);color:var(--paper);padding:12px 20px;position:fixed;top:16px;left:16px;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{padding:38px var(--gutter) 0;z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0 0 auto}.site-header>a:hover,.site-footer>a:hover{text-decoration:none}.site-header nav{letter-spacing:.03em;align-items:center;gap:38px;font-family:Manrope,Zen Kaku Gothic New,sans-serif;font-size:12px;font-weight:500;display:flex}.site-header nav a{padding:12px 0}.hero{isolation:isolate;height:min(940px,100svh);min-height:810px;padding:135px var(--gutter) 125px;align-items:center;display:flex;position:relative}.hero-field{z-index:-2;background:var(--grass);width:60%;position:absolute;top:0;bottom:58px;right:0}.hero-copy{z-index:1;pointer-events:none;padding-top:18px;position:relative}.hero-copy a{pointer-events:auto}.hero h1{letter-spacing:-.055em;font-size:clamp(58px,5.8vw,90px);line-height:1.48}.hero h1 span,.hero-introduction span,.about h2 span,.contact h2 span{display:block}.hero-introduction{letter-spacing:.04em;margin-top:32px;font-size:14px;line-height:2.15}.hero-introduction span:first-child{letter-spacing:.1em;margin-bottom:5px;font-size:16px}.text-link{letter-spacing:.05em;align-items:center;gap:30px;font-size:13px;display:inline-flex}.hero .text-link{margin-top:33px}.arrow-circle{border:1px solid var(--line);border-radius:50%;place-items:center;width:42px;height:42px;transition:background-color .18s,border-color .18s,transform .18s;display:grid}a:hover .arrow-circle{background:var(--sprout);border-color:var(--sprout);transform:translate(3px)}.hero-art{z-index:0;align-items:center;width:min(58vw,850px);min-width:0;height:calc(100% - 105px);min-height:0;display:flex;position:absolute;top:65px;right:0}.hero-art>*{flex:0 0 100%;width:100%;min-width:0;height:auto;min-height:0}.explore{bottom:29px;left:var(--gutter);letter-spacing:.08em;align-items:center;gap:20px;font-family:Manrope,sans-serif;font-size:10px;display:flex;position:absolute}.section-shell{width:100%;max-width:1600px;padding-inline:var(--gutter);margin-inline:auto}.section-label{letter-spacing:.08em;font-family:Manrope,Zen Kaku Gothic New,sans-serif;font-size:12px;font-weight:500}.about{grid-template-columns:1fr 2fr;gap:36px;padding-top:130px;padding-bottom:138px;display:grid}.about>.section-label{padding-top:15px}.about h2{letter-spacing:-.025em;font-size:clamp(32px,3.3vw,49px);line-height:1.65}.about-body>p{letter-spacing:.035em;text-wrap:pretty;margin-top:34px;font-size:15px;line-height:2.3}.about-body>p span{display:block}.interests{padding-top:36px;padding-bottom:140px}.interests-heading{grid-template-columns:1fr 2fr;align-items:center;gap:36px;margin-bottom:52px;display:grid}.interests h2{letter-spacing:-.02em;font-size:clamp(26px,2.7vw,40px);line-height:1.7}.interest-list{margin:0;padding:0;list-style:none}.interest-list li{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-items:center;gap:32px;padding:40px 0;display:grid}.interest-list li:last-child{border-bottom:1px solid var(--line)}.interest-list h3{letter-spacing:.015em;font-size:25px;line-height:1.6}.interest-list p{letter-spacing:.025em;font-size:14px;line-height:2}.contact{background:var(--grass)}.contact-inner{padding:91px var(--gutter) 103px;text-align:center}.contact h2{letter-spacing:-.035em;margin-top:35px;font-size:clamp(32px,3.8vw,54px);line-height:1.65}.contact-link{letter-spacing:-.035em;align-items:center;gap:42px;margin-top:38px;font-family:Manrope,sans-serif;font-size:clamp(22px,2.25vw,32px);font-weight:400;display:inline-flex}.contact-link .arrow-circle{border-color:var(--moss);width:54px;height:54px}.site-footer{margin-inline:var(--gutter);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;align-items:end;padding:34px 0 36px;display:grid}.site-footer>a:first-child{justify-self:start}.site-footer small{text-align:center;letter-spacing:.06em;font-family:Manrope,sans-serif;font-size:9px}.back-top{justify-self:end;align-items:center;gap:20px;font-size:11px;display:flex}.not-found{padding:25vh var(--gutter)}.not-found h1{margin:24px 0;font-size:clamp(24px,4vw,52px)}.not-found .text-link{margin-top:20px}@media (prefers-reduced-motion:no-preference){.hero-copy{animation:.65s cubic-bezier(.2,.65,.3,1) both arrive}.hero-art{animation:.85s cubic-bezier(.2,.65,.3,1) .1s both arrive}@keyframes arrive{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}}@media (width>=1600px){.hero-copy{margin-left:calc(50vw - 800px)}}@media (width<=1000px){.site-header nav{gap:25px}.hero{height:90svh;min-height:750px}.hero h1{font-size:clamp(43px,6vw,60px)}.hero-art{width:54vw;height:calc(100% - 120px);top:100px;right:0}.about{grid-template-columns:1fr 3fr;padding-top:100px;padding-bottom:110px}.interests-heading{grid-template-columns:1fr 3fr}.interest-list li{grid-template-columns:1fr 1.1fr}.interest-list h3{font-size:22px}}@media (width<=700px){:root{--gutter:25px}html{scroll-padding-top:24px}.site-header{align-items:center;padding-top:25px}.site-header nav{letter-spacing:0;gap:19px;font-size:10px}.hero{height:auto;min-height:850px;padding-top:162px;padding-bottom:420px;display:block}.hero-field{width:87%;top:330px;bottom:54px}.hero-copy{padding-top:0}.hero h1{letter-spacing:-.06em;font-size:clamp(38px,7.8vw,54px);line-height:1.5}.hero-introduction{letter-spacing:.01em;max-width:310px;margin-top:25px;font-size:12px;line-height:2}.hero-introduction span:first-child{letter-spacing:.07em;margin-bottom:6px;font-size:14px}.hero .text-link{gap:18px;margin-top:20px;font-size:12px}.arrow-circle{width:36px;height:36px}.hero-art{aspect-ratio:1;width:calc(100% - 20px);height:auto;top:auto;bottom:65px;right:0}.explore{font-size:9px;bottom:24px}.about{padding-top:81px;padding-bottom:84px;display:block}.about>.section-label{margin-bottom:30px;padding:0}.section-label{font-size:11px}.about h2{letter-spacing:-.03em;font-size:clamp(25px,6.4vw,38px);line-height:1.7}.about-body>p{letter-spacing:.01em;margin-top:27px;font-size:13px;line-height:2.25}.about-body>p span:nth-child(3){margin-top:14px}.about-body>p span:nth-child(n+3){display:inline}.interests{padding-top:20px;padding-bottom:82px}.interests-heading{margin-bottom:34px;display:block}.interests-heading h2{margin-top:26px;font-size:clamp(22px,6.66vw,26px)}.interest-list li{padding:27px 0 28px;display:block}.interest-list h3{letter-spacing:-.015em;font-size:22px}.interest-list p{max-width:320px;margin-top:10px;font-size:12px;line-height:2}.contact-inner{padding:66px var(--gutter) 65px}.contact h2{letter-spacing:-.04em;margin-top:28px;font-size:clamp(24px,6vw,36px);line-height:1.75}.contact-link{gap:20px;margin-top:27px;font-size:23px}.contact-link .arrow-circle{width:42px;height:42px}.site-footer{grid-template-columns:1fr 1fr;row-gap:30px;padding:29px 0}.site-footer small{text-align:left;grid-area:2/1/auto/-1;font-size:8px}.back-top{gap:12px;font-size:10px}}@media (width<=360px){:root{--gutter:20px}.site-header nav{gap:12px;font-size:9px}.hero{padding-top:145px}.hero h1{font-size:36px}.contact-link{font-size:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
