.logo-image{object-fit:cover;object-position:center;mix-blend-mode:multiply;width:190px;height:58px;display:block}.site-footer .logo-image,.contact-footer .logo-image{mix-blend-mode:multiply;background:0 0}.contact-footer .logo-image{width:150px;height:46px}.site-footer,.contact-footer{color:var(--ink)!important;background:#fff!important}.site-footer .footer-brand p{color:var(--muted)}.site-footer .footer-bottom{border-color:var(--line)!important;color:var(--muted)!important}:root{--ink:#182420;--muted:#6e7975;--line:#d8dfdb;--cream:#f3f5ef;--mint:#dceee6;--lime:#ccf56a;--dark:#15241f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,system-ui,sans-serif}a{color:inherit;text-decoration:none}main{overflow:hidden}.site-header{z-index:3;border-bottom:1px solid #1824201f;justify-content:space-between;align-items:center;height:92px;padding:0 5vw;display:flex;position:absolute;top:0;left:0;right:0}.logo{letter-spacing:.18em;align-items:center;gap:10px;font-size:18px;font-weight:800;display:flex}.logo-mark{letter-spacing:0;border:2px solid;border-radius:50%;place-items:center;width:28px;height:28px;font-size:13px;display:inline-grid}.main-nav{gap:clamp(18px,3.2vw,52px);margin-left:auto;margin-right:4vw;display:flex}.main-nav a{letter-spacing:.12em;font-size:11px;font-weight:700}.main-nav small{letter-spacing:.05em;color:var(--muted);margin-top:5px;font-size:9px;font-weight:500;display:block}.header-contact{background:var(--ink);color:#fff;letter-spacing:.12em;align-items:center;gap:14px;padding:15px 21px;font-size:10px;display:flex}.arrow{font-size:19px;font-weight:300;line-height:0}.hero{background:var(--mint);align-items:center;height:min(100vh,840px);min-height:700px;padding:110px 10vw 70px;display:flex;position:relative}.hero-copy{z-index:1;max-width:620px;position:relative}.eyebrow{letter-spacing:.22em;color:#476057;margin:0 0 27px;font-size:10px;font-weight:800}.hero h1{letter-spacing:-.07em;margin:0 0 30px;font-size:clamp(40px,5.8vw,82px);font-weight:800;line-height:1.13}.hero h1 em,.statement em,.contact em{color:#598565;font-style:normal}.hero-lead{letter-spacing:.06em;margin:0 0 33px;font-size:15px;line-height:2}.text-link{letter-spacing:.1em;border-bottom:1px solid;align-items:center;gap:27px;padding-bottom:12px;font-size:11px;font-weight:800;display:inline-flex}.hero-art{background:#b1d8c6;width:48%;height:100%;position:absolute;top:0;right:0;overflow:hidden}.art-grid{background-image:linear-gradient(#ffffff38 1px,#0000 1px),linear-gradient(90deg,#ffffff38 1px,#0000 1px);background-size:58px 58px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 25%);mask-image:linear-gradient(90deg,#0000,#000 25%)}.orb{mix-blend-mode:multiply;border-radius:50%;position:absolute}.orb-one{background:#92ccad;width:390px;height:390px;top:18%;right:10%}.orb-two{background:#d3ef83;width:260px;height:260px;top:42%;right:27%}.orb-three{background:#f2db97;width:170px;height:170px;top:13%;right:2%}.art-line{opacity:.65;background:#fff;height:1px;position:absolute;transform:rotate(-38deg)}.line-one{width:700px;top:31%;right:-150px}.line-two{width:500px;top:70%;right:0;transform:rotate(44deg)}.art-note{font:700 14px/1.3 var(--font-geist-mono,monospace);letter-spacing:.15em;color:#fff;position:absolute;top:30%;left:18%}.art-note span{letter-spacing:-.08em;font-size:44px}.art-coord{font:10px var(--font-geist-mono,monospace);letter-spacing:.15em;color:#fff;position:absolute;bottom:10%;right:9%}.hero-scroll{font:10px var(--font-geist-mono,monospace);letter-spacing:.2em;align-items:center;gap:13px;display:flex;position:absolute;bottom:35px;left:10vw}.hero-scroll span{background:currentColor;width:46px;height:1px}.section-shell{max-width:1220px;margin:auto;padding:130px 5vw}.section-label{letter-spacing:.16em;color:#77847e;align-items:center;gap:18px;font-size:10px;display:flex}.section-label span{font:11px var(--font-geist-mono,monospace);color:#84a28f}.section-label b{font-weight:800}.intro-content{grid-template-columns:1fr 1fr;gap:12%;padding:78px 0 100px;display:grid}.section-kicker{letter-spacing:-.06em;margin:0;font-size:clamp(28px,3.7vw,52px);font-weight:700;line-height:1.4}.intro-body{max-width:420px;padding-top:8px}.intro-body p,.company-copy{letter-spacing:.03em;color:#53615b;margin:0 0 18px;font-size:14px;line-height:2.2}.dark-link{margin-top:22px}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);padding-top:28px;display:grid}.stats strong{font:500 clamp(45px,6vw,80px)/1 var(--font-geist-mono,monospace);letter-spacing:-.1em}.stats strong span{color:#80a691;margin-left:8px;font-size:.45em}.stats small{letter-spacing:.14em;color:#718078;margin-top:12px;font-size:9px;display:block}.services{background:var(--dark);color:#ecf1e9;max-width:none;padding-left:calc(55vw - 610px);padding-right:calc(55vw - 610px)}.light-label{color:#a9b8af}.light-label span{color:var(--lime)}.services-heading{justify-content:space-between;align-items:end;padding:76px 0 70px;display:flex}.light-text{color:#eff5ed}.services-desc{letter-spacing:.04em;color:#abbab1;margin:0 4% 5px 0;font-size:13px;line-height:2}.service-list{border-top:1px solid #42544a;grid-template-columns:repeat(3,1fr);display:grid}.service-card{border-right:1px solid #42544a;min-height:350px;padding:28px 34px 30px 0;position:relative}.service-card:not(:first-child){padding-left:34px}.service-top{color:#99ab9f;font:11px var(--font-geist-mono,monospace);letter-spacing:.12em;justify-content:space-between;display:flex}.service-tag{letter-spacing:.14em;color:var(--lime);font-size:8px}.service-card h3{letter-spacing:-.05em;margin:52px 0 24px;font-size:27px;line-height:1.5}.service-card h3 span{display:block}.service-card p{color:#aab8b0;max-width:280px;font-size:12px;line-height:2}.service-card>a{color:var(--lime);position:absolute;bottom:30px;right:32px}.statement{text-align:center;background:#e6ebdf;place-items:center;min-height:480px;display:grid}.statement h2,.contact h2{letter-spacing:-.09em;margin:0 0 27px;font-size:clamp(48px,7vw,92px);line-height:1.1}.statement p:last-child{font:12px/2 var(--font-geist-mono,monospace);letter-spacing:.1em;color:#718179}.company-grid{grid-template-columns:1fr 1fr;gap:15%;padding-top:78px;display:grid}.company-copy{max-width:330px;margin-top:50px}.company-info{margin:0}.company-info div{border-top:1px solid var(--line);grid-template-columns:100px 1fr;padding:20px 0;font-size:13px;line-height:1.8;display:grid}.company-info div:last-child{border-bottom:1px solid var(--line)}.company-info dt{color:#7c8d84;letter-spacing:.12em;font-size:10px}.company-info dd{margin:0}.news{padding-top:0}.news-heading{justify-content:space-between;align-items:center;margin-bottom:45px;display:flex}.news-list{border-top:1px solid var(--line)}.news-item{border-bottom:1px solid var(--line);grid-template-columns:120px 110px 1fr 24px;align-items:center;gap:10px;padding:22px 0;font-size:13px;display:grid}.news-item time{font:11px var(--font-geist-mono,monospace);color:#7c8c84}.news-cat{font:9px var(--font-geist-mono,monospace);color:#7c9c87;letter-spacing:.12em}.news-item>.arrow{text-align:right;font-size:17px}.contact{background:var(--lime);justify-content:space-between;align-items:end;padding:120px 10vw;display:flex}.contact .eyebrow{color:#50622c}.contact h2{margin-bottom:30px;font-size:clamp(46px,6.5vw,82px)}.contact>div>p:last-child{color:#4c5d2b;font-size:13px;line-height:2}.contact-button{color:#4c5d2b;border-bottom:1px solid #4c5d2b;justify-content:space-between;align-items:center;gap:110px;min-width:260px;padding:0 0 17px;font-size:12px;font-weight:800;display:flex}.site-footer{background:var(--dark);color:#eef3eb;grid-template-columns:1fr 1fr;gap:70px;padding:60px 5vw 23px;display:grid}.footer-brand p{letter-spacing:.15em;color:#95a49b;margin-top:20px;font-size:9px}.footer-links{flex-wrap:wrap;place-content:start end;gap:14px 35px;display:flex}.footer-links a{letter-spacing:.15em;font-size:10px}.footer-bottom{font:9px var(--font-geist-mono,monospace);color:#84938b;letter-spacing:.1em;border-top:1px solid #415248;grid-column:1/-1;justify-content:space-between;padding-top:18px;display:flex}@media (width<=800px){.site-header{height:74px;padding:0 6vw}.main-nav{display:none}.header-contact{padding:12px 14px}.hero{height:auto;min-height:680px;padding:150px 8vw 100px}.hero-art{opacity:.7;width:100%;height:50%;top:auto;bottom:0}.hero-copy{margin-bottom:270px}.hero h1{font-size:14vw}.hero-lead{font-size:13px}.desktop-break,.hero-scroll{display:none}.section-shell,.services{padding:85px 8vw}.intro-content,.company-grid{grid-template-columns:1fr;gap:45px;padding:55px 0 70px}.intro-body{max-width:none}.stats{gap:14px}.stats strong{font-size:39px}.stats small{letter-spacing:.05em;font-size:7px}.services-heading{padding:55px 0 45px;display:block}.services-desc{margin-top:30px}.service-list{grid-template-columns:1fr}.service-card,.service-card:not(:first-child){border-bottom:1px solid #42544a;border-right:0;min-height:290px;padding:25px 0}.service-card h3{margin-top:35px}.service-card>a{right:0}.statement{min-height:390px}.company-copy{margin-top:30px}.news-item{grid-template-columns:95px 70px 1fr 18px;gap:5px;font-size:11px}.news-cat{font-size:8px}.contact{padding:85px 8vw;display:block}.contact-button{min-width:0;margin-top:55px}.site-footer{grid-template-columns:1fr;gap:35px;padding:45px 8vw 20px}.footer-links{justify-content:start}.footer-bottom{grid-column:auto}.art-note{top:35%;left:10%}}.contact-page{background:var(--cream);min-height:100vh}.contact-header{background:var(--cream);border-bottom:1px solid var(--line);position:relative}.contact-hero{background:var(--mint);padding:120px 10vw 110px}.contact-hero-inner{max-width:1220px;margin:0 auto}.contact-hero h1{letter-spacing:-.08em;margin:0 0 25px;font-size:clamp(48px,7vw,92px);line-height:1.1}.contact-hero p:last-child{letter-spacing:.04em;margin:0;font-size:14px;line-height:2}.form-section{max-width:1220px;margin:auto;padding:120px 5vw}.form-intro{grid-template-columns:100px 1fr;align-items:start;gap:45px;margin-bottom:55px;display:grid}.form-index{font:12px var(--font-geist-mono,monospace);color:#84a28f;padding-top:4px}.form-intro h2{letter-spacing:-.07em;margin:0;font-size:clamp(34px,4vw,58px);line-height:1.35}.form-frame-wrap{border:1px solid var(--line);background:#fff;padding:42px;box-shadow:0 20px 50px #1824200f}.custom-contact-form{gap:27px;display:grid}.form-field{gap:10px;display:grid}.form-field label{letter-spacing:.08em;font-size:12px;font-weight:700}.form-field label span{color:#7c9c87;margin-left:9px;font-size:9px;font-weight:500}.form-field input,.form-field select,.form-field textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:0 0;border-radius:0;outline:none;padding:12px 0;font-size:14px}.form-field textarea{resize:vertical;border:1px solid var(--line);min-height:140px;padding:14px;line-height:1.8}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#7c9c87}.form-field input::placeholder,.form-field textarea::placeholder{color:#a8b2ad}.consent-field{align-items:flex-start;gap:12px;margin-top:5px;font-size:12px;line-height:1.8;display:flex}.consent-field input{accent-color:#5f8d6d;margin-top:4px}.consent-field a{text-underline-offset:3px;text-decoration:underline}.form-submit{background:var(--dark);color:#fff;letter-spacing:.08em;cursor:pointer;border:0;justify-self:start;padding:17px 25px;font:700 11px inherit}.form-submit:disabled{opacity:.55;cursor:wait}.form-note{color:var(--muted);letter-spacing:.04em;margin:0;font-size:11px}.form-error{color:#b05245;margin:0;font-size:12px}.form-complete{text-align:center;padding:100px 30px}.form-complete h3{letter-spacing:-.06em;margin:0 0 20px;font-size:clamp(26px,3vw,42px)}.form-complete p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:2}.form-reset{border:0;border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;margin-top:18px;padding:10px 0;font-size:11px}.contact-footer{background:var(--dark);color:#eef3eb;letter-spacing:.08em;justify-content:space-between;align-items:center;padding:36px 5vw;font-size:10px;display:flex}.contact-footer .logo{font-size:16px}.contact-footer a:last-child{color:#a9b8af}@media (width<=800px){.contact-hero{padding:90px 8vw}.form-section{padding:75px 8vw}.form-intro{grid-template-columns:1fr;gap:20px;margin-bottom:35px}.form-frame-wrap{padding:27px 20px}.contact-footer{gap:24px;padding:32px 8vw;display:grid}.contact-footer a:last-child{order:3}}@media (width>=801px){.service-list{grid-template-columns:repeat(4,1fr)}}
