:root{--ink:#23382b;--green:#3e842f;--lime:#a5cd51;--muted:#6c796e;--line:#dce4d8;--pale:#f3f7ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,'Hiragino Kaku Gothic ProN',Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #6eab3c;outline-offset:5px}.wrap{width:min(1120px,calc(100% - 96px));margin:auto}.section{padding:105px 0}.skip{position:fixed;top:-100px;left:20px;z-index:100;padding:15px;background:white}.skip:focus{top:12px}.header{height:100px;background:#ffffffed;backdrop-filter:blur(12px);position:sticky;top:0;z-index:20;border-bottom:1px solid #e7ecdf}.header-inner{height:100%;width:min(1280px,calc(100% - 80px));margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;flex-direction:column;gap:7px}.brand img{width:197px;height:auto;display:block}.brand>span{font-size:9px;letter-spacing:2px;padding-left:43px;color:#667462}.header nav{display:flex;align-items:center;gap:34px}.header nav>a{font-size:12px;font-weight:700;transition:color .2s}.header nav>a:hover{color:#5a9932}.header nav .nav-contact{padding:19px 24px;background:var(--green);color:white;border-radius:6px;display:flex;gap:28px}.nav-contact:hover{background:#306e26}.menu-toggle{display:none}.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#f8faf5 20%,#f0f6e8 100%)}.hero-inner{width:min(1280px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:30px;position:relative;padding:54px 0 36px}.hero-copy{padding:15px 0 20px 28px;position:relative;z-index:2}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;margin:0;color:var(--green)}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.4px;display:flex;align-items:center;gap:10px}.hero-copy .eyebrow>span{width:7px;height:7px;border-radius:50%;background:#8cbb42}.hero h1{font-size:clamp(39px,4vw,57px);font-weight:700;letter-spacing:1px;line-height:1.55;margin:29px 0 18px}.grow{color:#43882e;position:relative}.grow:after{content:'';height:7px;background:#c9df90a0;position:absolute;bottom:-1px;left:0;right:0;border-radius:50%}.hero-tagline{font-size:16px;font-weight:700;letter-spacing:3px;margin:24px 0 17px}.hero-description{font-size:13px;line-height:2.1;color:#6c7768;margin:0 0 29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:19px 25px;font-size:12px;font-weight:700;border-radius:5px;transition:background .2s,transform .2s}.primary{background:var(--green);color:white}.primary:hover{background:#2b6926;transform:translateY(-2px)}.button>span{font-size:18px;line-height:1}.hero-visual{position:relative;margin:0 0 10px;min-width:0}.photo-frame{position:relative;height:490px;border-radius:100px 6px 100px 6px;overflow:hidden;background:#24442c}.photo-frame>img{height:100%;width:100%;object-fit:cover;object-position:50% 50%;display:block}.photo-shade{position:absolute;inset:0;background:linear-gradient(transparent 60%,#122c1db8)}.photo-caption{position:absolute;bottom:28px;left:36px;color:white;display:flex;flex-direction:column;gap:10px;font-size:9px;letter-spacing:1.4px;margin:0}.photo-caption>span:last-child{font-size:13px;letter-spacing:2px}.photo-index{display:block;font-size:8px;letter-spacing:2px;color:#78896f;margin:17px 12px 0;text-align:right}.floating-leaf{position:absolute;bottom:-14px;left:-34px;background:#a1c94e;width:100px;height:100px;border-radius:50%;display:grid;place-items:center;box-shadow:0 7px 22px #344e2715}.floating-leaf svg{width:62px;fill:none;stroke:white;stroke-width:1.6}.hero-leaf{position:absolute;width:900px;height:700px;border:1px solid #9fbf7338;border-radius:100% 0 100% 0;transform:rotate(-20deg);right:-200px;top:-50px;box-shadow:0 0 0 55px #a3c77808,0 0 0 110px #a3c77808}.hero-bottom{width:min(1280px,calc(100% - 80px));margin:auto;padding:19px 28px 22px;border-top:1px solid #dce6ce;display:flex;justify-content:space-between;align-items:center;position:relative}.hero-bottom p{font-size:9px;font-weight:700;letter-spacing:1.8px;margin:0;color:#677b5c}.hero-bottom p span{color:#a4b594;margin:0 14px}.hero-bottom a{font-size:8px;letter-spacing:1.5px;color:#6a795e;display:flex;align-items:center;gap:30px}.hero-bottom a span{font-size:18px}.section-label{display:flex;align-items:center;gap:17px;margin-bottom:37px}.section-number{font-size:10px;color:#7f9b6a;padding-right:17px;border-right:1px solid #cbd8c1}.jp-label{font-size:10px;color:#8d9787;margin-left:auto;letter-spacing:1.2px}h2{font-size:35px;letter-spacing:1px;line-height:1.6;margin:0;font-weight:700}h2 span{color:var(--green)}.about-content{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.about-content h2{font-size:43px;line-height:1.65;padding-left:42px}.about-copy .lead{font-size:20px;font-weight:700;line-height:1.8;color:#374c35;margin:0 0 25px}.about-copy p:not(.lead){font-size:13px;line-height:2.2;color:var(--muted);margin:0 0 16px}.about-signature{display:flex;align-items:center;gap:25px;margin-top:38px}.signature-line{height:1px;flex:1;background:var(--line)}.about-signature>span:nth-child(2){font-size:12px;letter-spacing:2px;color:#8a9880}.about-signature img{opacity:.7;width:28px}.business{background:var(--pale);position:relative}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px;gap:25px}.section-heading .section-label{margin-bottom:20px}.section-heading>p{font-size:12px;line-height:2;color:#7a8571;margin:0 0 6px}.business-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.business-card{border-top:3px solid #87b94c;background:#fff;padding:28px 27px 0;display:flex;flex-direction:column;min-width:0;transition:transform .25s,box-shadow .25s}.business-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #304d2010}.card-top{display:flex;align-items:start;justify-content:space-between;gap:6px;height:85px}.card-top>span{font-size:8px;letter-spacing:1px;color:#8c9a80;line-height:1.7;padding-top:4px}.card-top svg{width:55px;height:55px;fill:none;stroke:#629e3a;stroke-width:1.5;flex-shrink:0}.business-english{font-size:24px;font-weight:700;letter-spacing:.5px;margin:0 0 12px;color:#3f7c2f}.business-card h3{font-size:16px;margin:0 0 22px;letter-spacing:0;line-height:1.7;min-height:28px}.card-description{font-size:11px;line-height:2;color:#75806d;margin:0 0 24px;min-height:44px}.business-card ul{list-style:none;padding:20px 0 22px;margin:0;border-top:1px solid #e5ebdf;flex:1}.business-card li{font-size:11px;line-height:2.5;display:flex;align-items:start;gap:9px}.business-card li:before{content:'';width:4px;height:4px;border-radius:50%;background:#9cc75a;margin-top:12px;flex-shrink:0}.detail-link{padding:20px 0;border:0;border-top:1px solid #e5ebdf;background:white;color:#304a2e;display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;text-align:left}.detail-link>span{font-size:18px;color:#6c9f3e}.detail-link:hover{color:#6c9f3e}.business-footnote{font-size:10px;color:#8b9880;text-align:right;margin:22px 0 0}.approach-heading{display:flex;justify-content:space-between;gap:40px;align-items:center}.approach-heading h2{font-size:33px}.approach-heading>p{font-size:12px;color:var(--muted);line-height:2.2;margin:0 30px 0 0}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid var(--line);padding-top:36px;gap:45px}.approach-grid>div{border-right:1px solid var(--line);padding-right:20px}.approach-grid>div:last-child{border:0}.approach-grid>div>span{font-size:10px;color:#89aa6c}.approach-grid h3{font-size:18px;letter-spacing:.5px;margin:17px 0}.approach-grid p{font-size:12px;color:var(--muted);line-height:2;margin:0}.company{background:#f8f9f5;border-top:1px solid #e9ede1}.company-inner{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.company h2{font-size:28px}.company-tagline{font-size:13px;color:#8c9b7d;letter-spacing:3px;margin-top:25px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:100px 1fr;padding:23px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:2}.company dl>div:first-child{padding-top:0}.company dt{color:#8b957f}.company dd{margin:0}.preview-note{font-size:10px;line-height:1.9;color:#959d8d;margin-top:20px}.contact{background:#eaf3db;position:relative;overflow:hidden}.contact-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px;position:relative;z-index:1}.contact h2{font-size:43px;line-height:1.55;margin-top:20px}.contact h2+p{font-size:12px;margin:22px 0 0;line-height:2;color:#687d56}.contact-panel{background:#ffffffd9;padding:33px 35px;border-radius:8px;border:1px solid #dae7c7;position:relative}.contact-panel h3{font-size:20px;margin:7px 0 24px}.contact-panel p{font-size:12px;color:#6e7f60}.contact-panel small{font-size:10px;line-height:1.9;color:#8a977e;display:block;max-width:290px}.contact-arrow{position:absolute;right:30px;top:27px;font-size:28px;color:#7fad47}.contact-leaf{position:absolute;right:-40px;bottom:-90px;width:420px;fill:none;stroke:#cedfb4;stroke-width:.6;transform:rotate(10deg)}footer{padding:50px 0 24px;background:#fff}.footer-main{display:flex;justify-content:space-between;align-items:start;gap:30px}.footer-main .brand img{width:178px}.footer-main .brand>span{font-size:8px;padding-left:39px}.footer-main p{font-size:10px;color:#8b9c7e;letter-spacing:2px;margin:22px 0 0}.footer-main nav{display:flex;gap:25px;font-size:10px;margin-top:15px;margin-left:auto}.footer-main nav a:hover{color:var(--green)}.to-top{width:38px;height:38px;border:1px solid #d7e1ce;border-radius:50%;display:grid;place-items:center;color:#739450;margin-left:15px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #e7ecdf;padding-top:22px;margin-top:38px;color:#98a28f}.footer-bottom small{font-size:8px;letter-spacing:1px}.mobile{display:none}dialog{padding:48px;max-width:630px;width:calc(100% - 40px);max-height:85dvh;overflow:auto;border:0;border-top:4px solid var(--lime);border-radius:7px;color:var(--ink);box-shadow:0 20px 80px #12311930}dialog::backdrop{background:#16322299;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:15px;top:10px;width:35px;height:35px;border:0;background:none;font-size:26px;color:#738465}dialog h2{font-size:25px;line-height:1.5;margin:20px 0}dialog>p:not(.eyebrow){font-size:13px;line-height:2}dialog ul{padding:19px 20px 19px 36px;background:#f4f8ee;font-size:13px;line-height:2}.dialog-note{color:#8a967e;font-size:11px!important}.dialog-contact{margin-top:15px;font-size:11px}
@media(min-width:1600px){.hero-inner{padding-top:70px;padding-bottom:50px}.photo-frame{height:550px}.hero-copy{padding-left:0}.hero h1{font-size:60px}}@media(max-width:1050px){.header-inner{width:calc(100% - 48px)}.header nav{gap:22px}.hero-inner,.hero-bottom{width:calc(100% - 48px)}.hero-copy{padding-left:0}.hero-copy .eyebrow{font-size:7px}.photo-frame{height:440px;border-top-left-radius:80px}.hero h1{font-size:41px}.wrap{width:calc(100% - 64px)}.about-content{gap:45px}.about-content h2{padding-left:0;font-size:38px}.business-card{padding:24px 20px 0}.card-top>span{font-size:7px}.business-card h3{font-size:14px}.business-english{font-size:22px}.card-description{min-height:66px}.card-description br{display:none}.company-inner{gap:45px}.contact-inner{gap:50px}.footer-main nav{gap:18px}}@media(max-width:780px){.header{height:78px}.brand img{width:172px}.brand>span{font-size:8px;padding-left:38px}.header nav{gap:17px}.header nav>a{font-size:10px}.header nav .nav-contact{padding:15px;gap:14px}.hero-inner{gap:20px}.photo-frame{height:410px}.hero h1{font-size:34px}.hero-description{font-size:11px}.hero-tagline{font-size:13px}.floating-leaf{width:75px;height:75px;left:-18px}.floating-leaf svg{width:45px}.photo-caption{left:24px;bottom:28px}.photo-caption>span:first-child{font-size:7px}.photo-caption>span:last-child{font-size:10px}.section{padding:75px 0}.about-content h2{font-size:32px}.about-copy .lead{font-size:18px}.business-grid{gap:12px}.business-card{padding:22px 15px 0}.card-top{height:78px;position:relative}.card-top>span{font-size:6px;max-width:75px}.card-top svg{width:40px}.business-english{font-size:19px}.business-card h3{min-height:48px}.card-description{font-size:10px}.business-card li{font-size:10px;line-height:2.2}.business-card li:before{margin-top:9px}.approach-heading h2{font-size:27px}.approach-heading>p{margin:0;font-size:11px}.approach-grid{gap:23px}.approach-grid h3{font-size:16px}.company h2{font-size:24px}.contact h2{font-size:36px}.contact-inner{gap:35px}.footer-main nav{gap:14px;font-size:9px}.to-top{margin-left:0}}@media(max-width:650px){html{scroll-padding-top:88px}.header-inner{width:calc(100% - 36px)}.header{height:76px}.brand img{width:169px}.brand>span{font-size:7px;letter-spacing:1.5px;gap:5px}.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:0;background:none;width:40px;height:44px;color:var(--ink)}.menu-toggle span{width:24px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle b{font-size:7px;letter-spacing:1px;margin-top:1px}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}.header nav{display:none;position:absolute;top:76px;left:0;width:100%;background:#fff;padding:18px 25px 28px;border-bottom:1px solid var(--line)}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a{font-size:13px;padding:20px 0;border-bottom:1px solid #e6ecdf}.header nav .nav-contact{margin-top:15px;padding:18px 20px;justify-content:space-between}.hero-inner{display:flex;flex-direction:column;width:calc(100% - 40px);gap:27px;padding:35px 0 0}.hero-copy{width:100%;padding:5px 0 0}.hero-copy .eyebrow{font-size:7px;letter-spacing:1px;gap:7px}.hero h1{font-size:40px;line-height:1.5;margin:22px 0 16px;letter-spacing:1px}.hero-tagline{font-size:13px;letter-spacing:2px;margin:20px 0 13px}.hero-description{font-size:12px;line-height:2;margin-bottom:23px}.hero-copy .button{padding:16px 22px;font-size:11px;gap:45px}.hero-visual{width:100%;margin:0 0 12px;padding-left:12px}.photo-frame{height:270px;border-radius:60px 5px 60px 5px}.floating-leaf{width:67px;height:67px;bottom:1px;left:-7px}.floating-leaf svg{width:43px}.photo-caption{left:26px;bottom:23px}.photo-caption>span:first-child{font-size:7px}.photo-caption>span:last-child{font-size:10px}.photo-index{font-size:6px;letter-spacing:1.5px;margin-top:13px}.hero-leaf{width:500px;height:650px;top:100px;right:-180px}.hero-bottom{width:calc(100% - 40px);padding:15px 0;gap:10px}.hero-bottom p{font-size:7px;letter-spacing:.7px}.hero-bottom p span{margin:0 5px}.hero-bottom a{font-size:0;gap:0}.hero-bottom a span{font-size:17px}.wrap{width:calc(100% - 40px)}.section{padding:62px 0}.section-label{gap:12px;margin-bottom:29px}.section-number{padding-right:12px;font-size:9px}.eyebrow{font-size:9px;letter-spacing:1.5px}.jp-label{font-size:8px;letter-spacing:.5px}.about-content{grid-template-columns:1fr;gap:25px}.about-content h2{font-size:35px;line-height:1.5}.about-copy .lead{font-size:18px;line-height:1.8;margin-bottom:19px}.about-copy p:not(.lead){font-size:12px;line-height:2}.about-signature{gap:14px;margin-top:25px}.about-signature>span:nth-child(2){font-size:10px;letter-spacing:1.4px}.about-signature img{width:23px}.section-heading{display:block;margin-bottom:30px}.section-heading .section-label{margin-bottom:20px}.section-heading h2{font-size:29px;line-height:1.6}.section-heading>p{font-size:11px;margin:17px 0 0;line-height:1.9}.business-grid{grid-template-columns:1fr;gap:20px}.business-card{padding:25px 25px 0}.card-top{height:70px}.card-top>span{font-size:8px;max-width:none;letter-spacing:1px}.card-top svg{width:52px;height:52px}.business-english{font-size:27px;margin-bottom:8px}.business-card h3{font-size:18px;min-height:0;margin-bottom:17px}.card-description{font-size:12px;min-height:0;margin-bottom:20px}.business-card ul{padding:17px 0}.business-card li{font-size:12px;line-height:2.4}.business-card li:before{margin-top:12px}.detail-link{padding:18px 0;font-size:12px}.business-footnote{text-align:left;font-size:10px;line-height:1.8;margin-top:18px}.approach-heading{display:block}.approach-heading h2{font-size:27px}.approach-heading>p{margin-top:22px;font-size:12px;line-height:2}.approach-grid{grid-template-columns:1fr;gap:0;margin-top:28px;padding-top:0}.approach-grid>div{padding:23px 0;border-right:0;border-bottom:1px solid var(--line)}.approach-grid>div:last-child{border-bottom:1px solid var(--line)}.approach-grid h3{font-size:19px;margin:12px 0}.approach-grid p{font-size:12px}.company-inner{grid-template-columns:1fr;gap:28px}.company h2{font-size:27px}.company-tagline{font-size:12px;letter-spacing:2px;margin:16px 0 0}.company dl>div{grid-template-columns:80px 1fr;font-size:12px;padding:20px 0}.preview-note{font-size:10px}.contact-inner{grid-template-columns:1fr;gap:28px}.contact h2{font-size:37px}.contact h2+p{font-size:11px}.contact-panel{padding:27px}.contact-panel h3{font-size:18px;margin-bottom:20px}.contact-panel p{font-size:12px}.contact-panel small{font-size:10px}.contact-leaf{width:320px;right:-70px;bottom:-65px}.footer-main{flex-wrap:wrap;gap:26px;position:relative}.footer-main nav{width:100%;margin:0;flex-wrap:wrap;gap:20px;font-size:10px}.footer-main .brand img{width:168px}.to-top{position:absolute;right:0;top:0}.footer-bottom{flex-direction:column;gap:12px;margin-top:28px}.footer-bottom small{font-size:7px}.mobile{display:inline}.desktop{display:none}dialog{padding:39px 25px 30px}dialog h2{font-size:22px}dialog>p:not(.eyebrow){font-size:12px}dialog ul{font-size:12px}.dialog-contact{padding:16px 18px;gap:25px}}@media(max-width:360px){.hero h1{font-size:35px}.hero-copy .eyebrow{font-size:6px}.photo-frame{height:230px}.business-card{padding:22px 19px 0}.business-card h3{font-size:16px}.section-heading h2{font-size:27px}.jp-label{font-size:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.photo-caption{left:96px}@media(max-width:650px){.photo-caption{left:79px}}
.grow{white-space:nowrap}@media(max-width:360px){.hero h1{font-size:31px;letter-spacing:.6px}}
@media(min-width:651px) and (max-width:780px){.photo-frame{height:340px}}
/* Restore the approved full-width photo slideshow and dark header. */
.header{height:87px;background:#161a18;backdrop-filter:none;border-bottom:0}.header-inner{max-width:1220px;width:calc(100% - 88px)}.header .brand img{width:220px}.header nav{gap:35px}.header nav a{font-weight:700;letter-spacing:1.3px;font-size:13px;display:flex;flex-direction:column;gap:7px;color:white;position:relative;padding:12px 0}.header nav a span{font-size:9px;letter-spacing:.7px;font-weight:400;color:#b3bab4}.header nav a:hover{color:#a6cf8c}.slideshow-hero{height:clamp(480px,49vw,720px);background:#263d27;position:relative;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.slides,.slide{position:absolute;inset:0}.slide{opacity:0;transition:opacity 1.5s ease;pointer-events:none}.slide.active{opacity:1}.slide img{width:100%;height:100%;object-fit:cover;object-position:center 52%;display:block}.slideshow-hero .hero-bottom{position:absolute;bottom:0;width:100%;padding:0;margin:0;border:0;display:flex;justify-content:space-between;align-items:stretch;background:linear-gradient(transparent,rgba(0,0,0,.14));color:white}.hero-caption{padding:19px 38px;display:flex;align-items:center;gap:22px;background:#161a18c9;font-size:11px;letter-spacing:2px}.divider{width:1px;height:14px;background:#8a968c}.hero-caption span:last-child{letter-spacing:3px;font-size:12px}@media(max-width:900px){.header-inner{width:calc(100% - 48px)}.header nav{gap:22px}.header .brand img{width:190px}}@media(max-width:650px){.header{height:70px}.header-inner{width:calc(100% - 36px)}.header .brand img{width:173px}.menu-toggle{color:white}.menu-toggle span{background:white}.header nav{top:70px;background:#161a18;padding:15px 26px 30px;border:0}.header nav a{padding:18px 0;border-bottom:1px solid #ffffff1f;flex-direction:row;justify-content:space-between;align-items:center}.slideshow-hero{height:calc(56vw + 42px);min-height:0;max-height:none}.slides{bottom:42px}.slide:nth-child(2) img{object-position:28% center}.slide:nth-child(4) img{object-position:36% center}.slideshow-hero .hero-bottom{height:42px}.hero-caption{width:100%;font-size:8px;gap:15px;padding:10px 20px}.hero-caption span:last-child{font-size:10px;letter-spacing:2px}}@media(prefers-reduced-motion:reduce){.slide{transition:none}}
/* Approved About and four-business design */
.about-v2,.business-v2{color:#1a211d}.unified-heading h2{font-size:32px;line-height:1.2;letter-spacing:5px;color:#171b18}.unified-heading>p{font-size:14px;letter-spacing:2px;margin:19px 0 0}.unified-heading:after{content:'';display:block;width:48px;height:2px;background:#5d9d3b;margin-top:17px}.about-v2{padding-top:105px;padding-bottom:75px}.about-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}.message-lockup{position:relative;margin:49px 0 49px;max-width:430px}.brand-message{position:relative;display:block;width:100%;height:auto;z-index:1}.brand-watermark{position:absolute;left:-90px;top:-85px;width:240px;height:245px;opacity:.075}.about-body{position:relative;font-size:14px;line-height:2.15;margin:0 0 31px}.about-actions{display:flex;gap:14px}.about-actions a{display:flex;justify-content:center;align-items:center;gap:25px;flex:1;border:1px solid #599f36;border-radius:5px;padding:16px 12px;font-size:13px;font-weight:700;color:#285b25}.about-actions a:first-child{background:#539e24;color:white}.about-actions a:hover{filter:brightness(.94)}.about-art{display:block;width:100%;height:auto}.business-v2{padding-top:65px;padding-bottom:90px;width:min(1240px,calc(100% - 96px))}.service-list{display:grid;gap:32px;margin-top:43px}.service-card{display:grid;grid-template-columns:220px 40px minmax(0,1fr) 112px;gap:21px;align-items:start;min-height:230px;padding:25px 24px;border:1px solid #c6dfce;border-radius:10px;background:linear-gradient(180deg,#eaf4ed 0%,#f7fbf8 55%,#fff 100%)}.service-photo{width:220px;height:170px;object-fit:cover;border-radius:6px;align-self:center}.service-number{font-size:30px;font-weight:700;color:#155e3b;line-height:1.3;margin-top:4px}.service-content{min-width:0;padding-left:19px;border-left:1px solid #c5decc}.service-content h3{font-size:19px;line-height:1.5;letter-spacing:.2px;margin:0 0 14px;color:#161d18}.service-description{font-size:12px;line-height:1.95;color:#535e57;margin:0 0 20px}.service-tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0}.service-tags li{font-size:10px;line-height:1.4;font-weight:700;color:#175d39;background:#e5f2e1;border-radius:30px;padding:7px 12px;white-space:nowrap}.service-button,.brand-pending{display:flex;align-items:center;justify-content:center;gap:10px;background:#075c37;color:white;border-radius:9px;padding:13px 12px;font-size:12px;font-weight:700;margin-top:10px;min-height:43px}.service-button:hover{background:#2d7b40}.auto-brand{color:#1c663e;font-size:12px;font-weight:700;margin:-9px 0 15px}.brand-pending{flex-direction:column;font-size:10px;gap:5px;line-height:1.5;text-align:center;background:#356e4f}.brand-pending small{font-size:9px;font-weight:400;color:#e0eee2}.image-note{font-size:10px;text-align:right;color:#8b938b;margin:16px 0 0}.detail-page{padding-top:45px;padding-bottom:85px}.breadcrumb{display:inline-block;font-size:12px;color:#39713f;margin-bottom:45px}.detail-page .unified-heading h1{font-size:30px;line-height:1.6;margin:0}.detail-intro{display:grid;grid-template-columns:1fr 300px;gap:60px;align-items:center;margin:40px 0 65px}.detail-intro p{font-size:16px;line-height:2.2}.detail-intro img{width:100%;border-radius:8px}.support-title{font-size:24px;margin-bottom:25px}.support-row{display:grid;grid-template-columns:250px 1fr;gap:40px;border-top:1px solid #dce5db;padding:28px 0}.support-row h2{font-size:17px;letter-spacing:0}.support-row p{margin:0;font-size:14px;line-height:2}.detail-scope{font-size:12px;color:#73806e;line-height:2;margin:30px 0}.detail-page+.footer{margin-top:40px}
@media(min-width:1450px){.about-layout{grid-template-columns:1fr 1fr;gap:65px}.service-card{grid-template-columns:235px 42px minmax(0,1fr) 112px}.service-photo{width:235px}}
@media(max-width:1050px){.business-v2{width:calc(100% - 64px)}.service-card{grid-template-columns:170px 32px minmax(0,1fr) 90px;gap:14px;padding:22px 18px}.service-photo{width:170px;height:160px}.service-content{padding-left:13px}.service-content h3{font-size:17px}.service-description{font-size:11px}.service-number{font-size:26px}.service-tags li{font-size:9px;padding:6px 9px}.service-button{font-size:11px}.about-layout{gap:24px}.about-body{font-size:12px}.about-actions a{font-size:11px;gap:12px}}
@media(max-width:780px){.service-card{grid-template-columns:150px 1fr 95px;gap:18px}.service-number{display:none}.service-photo{width:150px}.service-content h3{font-size:16px}.service-content{padding-left:0;border:0}.about-layout{grid-template-columns:1fr}.about-text{max-width:550px}.about-art{width:min(620px,100%);margin:15px auto 0}.message-lockup{max-width:420px}.about-body{font-size:14px}.about-actions a{font-size:13px}.brand-watermark{left:-35px}.service-description{font-size:12px}.unified-heading h2{font-size:28px}.detail-intro{gap:30px;grid-template-columns:1fr 230px}}
@media(max-width:650px){.about-v2{padding-top:65px;padding-bottom:35px}.business-v2{padding-top:45px;padding-bottom:65px;width:calc(100% - 40px)}.unified-heading h2{font-size:27px;letter-spacing:4px}.unified-heading>p{font-size:12px;margin-top:14px}.unified-heading:after{width:42px;margin-top:14px}.message-lockup{margin:43px 0 40px;width:94%}.brand-watermark{width:190px;height:194px;top:-67px;left:-18px}.about-body{font-size:12px;line-height:2.1}.about-actions{gap:10px}.about-actions a{padding:14px 10px;font-size:12px;gap:12px}.about-art{margin-top:20px}.service-list{margin-top:32px;gap:25px}.service-card{grid-template-columns:1fr;gap:0;padding:18px;min-height:0}.service-photo{width:100%;height:auto;aspect-ratio:1.95;object-fit:cover;margin-bottom:22px}.service-content h3{font-size:18px;line-height:1.6;margin-bottom:12px;overflow-wrap:anywhere}.service-description{font-size:12px;margin-bottom:18px;line-height:2}.service-tags{gap:7px}.service-tags li{font-size:10px;padding:7px 10px}.service-button,.brand-pending{justify-self:end;width:auto;min-width:105px;margin-top:23px;padding:12px 20px}.auto-brand{font-size:12px;margin-top:-7px}.brand-pending{font-size:11px}.image-note{font-size:9px;line-height:1.8}.detail-page{padding-top:30px}.detail-page .unified-heading h1{font-size:24px}.detail-intro{display:flex;flex-direction:column-reverse;gap:20px;margin:30px 0 40px}.detail-intro img{max-height:230px;object-fit:cover}.detail-intro p{font-size:14px;margin:0}.support-row{grid-template-columns:1fr;gap:10px;padding:23px 0}.support-row p{font-size:13px}.support-title{font-size:22px}}
/* Match the approved reference: square photo, centered index, balanced text column. */
@media(min-width:1051px){.business-v2{width:min(1120px,calc(100% - 96px))}.service-card{grid-template-columns:210px 72px minmax(0,1fr) 125px;gap:28px;padding:29px 30px;min-height:270px;align-items:center}.service-photo{width:210px;height:210px;object-fit:cover}.service-number{font-size:43px;line-height:1;margin:0;align-self:center;text-align:left}.service-content{padding-left:0;border-left:0}.service-content h3{font-size:20px;line-height:1.6;margin-bottom:14px}.service-description{font-size:13px;line-height:2;margin-bottom:18px}.service-tags{gap:8px 7px;max-width:440px}.service-tags li{font-size:10px;padding:7px 11px}.service-button,.brand-pending{align-self:center;margin-top:-16px}.service-button{font-size:13px;min-height:48px}.auto-brand{font-size:13px}.service-list{gap:30px}}
@media(min-width:781px) and (max-width:1050px){.service-card{grid-template-columns:165px 42px minmax(0,1fr) 92px;align-items:center;gap:17px;min-height:245px;padding:25px 20px}.service-photo{width:165px;height:190px}.service-number{font-size:33px;margin:0}.service-content{padding-left:0;border:0}.service-content h3{font-size:18px}.service-description{font-size:12px}.service-button,.brand-pending{margin-top:-15px}.service-tags li{font-size:10px}}
@media(min-width:1051px){.service-content h3{font-size:22px}.service-description{font-size:14px;line-height:1.95}.service-tags li{font-size:11px}.auto-brand{font-size:14px}.service-button{font-size:14px}}
@media(min-width:781px) and (max-width:1050px){.service-content h3{font-size:19px}.service-description{font-size:13px}.service-tags li{font-size:11px}}
@media(max-width:780px){.service-description{font-size:14px}.service-tags li{font-size:11px}.service-content h3{font-size:20px}}

@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/noto-sans-jp-400.woff") format("woff")}
@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:700;font-display:swap;src:url("assets/fonts/noto-sans-jp-700.woff") format("woff")}
body{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}.service-content h3{font-weight:700;letter-spacing:.035em}.service-description{letter-spacing:.025em;font-weight:400}.service-tags li{font-weight:700;letter-spacing:.025em}
/* Keep the complete hero below the in-flow dark navigation. */
.slideshow-hero{height:auto;min-height:0;max-height:none;background:#161a18}.slideshow-hero .slides{position:relative;inset:auto;aspect-ratio:2000 / 1140;width:100%}.slideshow-hero .slide{inset:0}.slideshow-hero .slide img{object-fit:contain;object-position:center}.slideshow-hero .hero-bottom{position:relative;bottom:auto;height:42px;background:#161a18}.slideshow-hero .hero-caption{background:none}.header{isolation:isolate}
.about-body{font-size:16px;line-height:2.15}.about-actions a{font-size:14px}.brand-watermark{width:250px;height:auto;object-fit:contain;left:-65px;top:-83px}
@media(max-width:1050px){.about-body{font-size:15px}.about-actions a{font-size:13px}}
@media(max-width:650px){.slideshow-hero{height:auto;max-height:none;min-height:0}.slideshow-hero .slides{bottom:auto;aspect-ratio:2000 / 1140}.slideshow-hero .slide:nth-child(2) img,.slideshow-hero .slide:nth-child(4) img{object-position:center}.about-body{font-size:14px;line-height:2.1}.about-actions a{font-size:13px}.brand-watermark{width:205px;height:auto;left:-16px;top:-65px}}
/* Full-screen stationary slideshow, with the content scrolling over it. */
:root{--header-height:87px}.slideshow-hero{height:calc(100svh - var(--header-height));min-height:0;max-height:none;position:relative;z-index:0;background:transparent}.slideshow-hero .slides{position:fixed;top:var(--header-height);left:0;right:0;bottom:auto;width:100%;height:calc(100svh - var(--header-height));aspect-ratio:auto;z-index:0;background:#17291e}.slideshow-hero .slide img{object-fit:cover;object-position:center}.page-content{position:relative;z-index:1;background:white;isolation:isolate}footer{position:relative;z-index:1;background:#fff}.about-v2{background:#fff}.motion-ready .about-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready .about-reveal.reveal-left{transform:translate3d(-30px,0,0)}.motion-ready .about-reveal.reveal-right{transform:translate3d(35px,0,0)}.motion-ready .about-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@media(max-width:650px){:root{--header-height:70px}.slideshow-hero{height:calc(100svh - var(--header-height))}.slideshow-hero .slides{height:calc(100svh - var(--header-height));bottom:auto;aspect-ratio:auto}.slideshow-hero .slide img{object-position:center}.slideshow-hero .slide:nth-child(2) img{object-position:38% center}.slideshow-hero .slide:nth-child(4) img{object-position:45% center}}
@media(prefers-reduced-motion:reduce){.motion-ready .about-reveal{opacity:1;transform:none;transition:none}}
/* Restore the brand strip within the first viewport. */
.slideshow-hero .slides{height:calc(100svh - var(--header-height) - 42px)}.slideshow-hero .hero-bottom{position:fixed;top:calc(100svh - 42px);bottom:auto;left:0;width:100%;height:42px;z-index:0;background:#161a18}.slideshow-hero .hero-caption{background:transparent}.slideshow-hero{height:calc(100svh - var(--header-height))}
@media(min-width:1051px){.about-art{width:110%;max-width:none;margin-left:-3%}}
/* A softly washed cityscape distinguishes the Business section. */
.business-scene{background-image:linear-gradient(110deg,rgba(255,255,255,.94),rgba(249,253,249,.84)),url('assets/business-city.webp');background-size:cover;background-position:center 52%;background-repeat:no-repeat;position:relative}.business-scene .business-v2{background:transparent;padding-top:80px;padding-bottom:85px}.business-scene .service-card{background:linear-gradient(180deg,rgba(234,244,237,.97),rgba(255,255,255,.98));box-shadow:0 6px 24px #1e493105}.business-scene .image-note{color:#687768}@media(max-width:650px){.business-scene .business-v2{padding-top:55px;padding-bottom:60px}.business-scene{background-position:57% center}}
/* Bring the skyline to the section entrance and increase photographic contrast. */
.business-scene{background-color:#f0f5f1;background-image:linear-gradient(110deg,rgba(255,255,255,.86),rgba(246,251,246,.72)),url('assets/business-city.webp');background-size:100% 100%,auto 185%;background-position:center,center bottom;border-top:1px solid #e3eae3}
@media(max-width:650px){.business-scene{background-size:100% 100%,auto 185%;background-position:center,54% bottom}}
.business-scene{background-image:linear-gradient(110deg,rgba(255,255,255,.90),rgba(246,251,246,.81)),url('assets/business-city.webp')}
/* Geometric photo corners: a second Business background direction. */
.business-scene{background:#fff;isolation:isolate;overflow:hidden;border-top:1px solid #eef2ec}.business-scene:before,.business-scene:after{content:'';position:absolute;z-index:-1;pointer-events:none;background-repeat:no-repeat;background-size:cover}.business-scene:before{top:0;right:0;width:48%;height:620px;clip-path:polygon(0 0,100% 0,100% 100%);background-image:linear-gradient(rgba(229,240,226,.70),rgba(229,240,226,.70)),url('assets/business-city.webp');background-position:center}.business-scene:after{bottom:0;left:0;width:39%;height:620px;clip-path:polygon(0 0,100% 100%,0 100%);background-image:linear-gradient(rgba(223,238,218,.80),rgba(223,238,218,.80)),url('assets/hero-4.webp');background-position:48% center}.business-angle{position:absolute;display:block;z-index:-1;pointer-events:none}.angle-top{top:0;left:0;width:210px;height:380px;clip-path:polygon(0 0,100% 0,0 100%);background:linear-gradient(140deg,#d6ded2 0 33%,#3c7d43 33% 100%)}.angle-bottom{right:0;bottom:0;width:200px;height:370px;clip-path:polygon(100% 0,100% 100%,0 100%);background:linear-gradient(140deg,#518d44 0 65%,#d6ded2 65%)}.business-scene .business-v2{position:relative}.business-scene .service-card{box-shadow:0 6px 24px #1e493108;background:linear-gradient(180deg,rgba(234,244,237,.97),rgba(255,255,255,.98))}
@media(max-width:780px){.business-scene:before{width:66%;height:420px}.business-scene:after{width:65%;height:500px}.angle-top{width:100px;height:210px}.angle-bottom{width:100px;height:240px}}
.angle-top{width:90px;height:330px}.business-scene:before{background-position:center bottom;background-size:auto 165%}@media(max-width:780px){.angle-top{width:22px;height:160px}}
/* Connected photo facets cross the center as well as the section edges. */
.business-scene:before,.business-scene:after,.business-angle{display:none}.business-mosaic{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#f7faf6}.facet{position:absolute;display:block;background-size:cover;background-repeat:no-repeat}.facet-city{inset:0 0 auto auto;width:72%;height:56%;clip-path:polygon(19% 0,100% 0,100% 100%,0 26%);background-image:linear-gradient(#ffffffcb,#f3f8efcb),url('assets/business-city.webp');background-position:center bottom}.facet-network{top:12%;left:0;width:70%;height:60%;clip-path:polygon(0 0,100% 72%,66% 100%,0 45%);background-image:linear-gradient(#f2f8efd9,#f2f8efd9),url('assets/hero-4.webp');background-position:center}.facet-digital{right:0;top:38%;width:62%;height:55%;clip-path:polygon(100% 0,100% 100%,0 45%);background-image:linear-gradient(#f7faf4d9,#f7faf4d9),url('assets/service-digital.webp');background-position:center}.facet-leaf{bottom:0;left:0;width:77%;height:35%;clip-path:polygon(0 0,100% 100%,0 100%);background-image:linear-gradient(#f6f9efd6,#f6f9efd6),url('assets/business-city.webp');background-position:center 70%}.facet-tint{inset:0;background:linear-gradient(135deg,#396f3c 0 8%,transparent 8% 72%,#8fba5524 72% 82%,transparent 82%);clip-path:polygon(0 0,30% 0,100% 70%,100% 100%,70% 100%,0 30%)}.business-scene .service-card{background:linear-gradient(180deg,rgba(234,244,237,.96),rgba(255,255,255,.97))}.business-scene .unified-heading{position:relative;z-index:1}.business-scene .business-v2{padding-top:80px}
@media(max-width:780px){.facet-city{width:100%}.facet-network{width:100%}.facet-digital{width:90%}.facet-tint{opacity:.35}.business-scene .business-v2{padding-top:55px}}
.facet-tint{background:linear-gradient(135deg,#396f3c 0 4%,transparent 4% 72%,#8fba5524 72% 82%,transparent 82%)}.facet-network{background-image:linear-gradient(#f2f8efd9,#f2f8efd9),url('assets/service-digital.webp')}.facet-city{background-size:auto 155%;background-position:center bottom}
.values-section{position:relative;overflow:hidden;background:#f0f6ed;padding:90px 0 100px;color:#202a23}.values-section>.wrap{position:relative;z-index:1}.values-watermark{position:absolute;top:-15px;right:4%;font-size:clamp(90px,13vw,190px);line-height:1.3;font-weight:700;letter-spacing:-5px;color:#ffffffa6;pointer-events:none;white-space:nowrap}.values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:45px}.value-card{position:relative;border:1px solid #d9e6d4;border-radius:12px;background:#fff;padding:33px 27px 34px;box-shadow:0 6px 20px #24452a03}.value-index{position:absolute;top:25px;right:24px;color:#a4b99a;font-size:12px;letter-spacing:1px}.value-icon{display:grid;place-items:center;width:72px;height:72px;margin-bottom:27px;border-radius:20px;background:#eaf3e4}.value-icon svg{width:43px;height:43px;fill:none;stroke:#397c43;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.value-label{font-size:12px;font-weight:700;color:#568244;letter-spacing:.05em;margin:0 0 10px}.value-card h3{font-size:19px;line-height:1.75;letter-spacing:.015em;margin:0 0 22px;min-height:67px}.value-body{font-size:13px;line-height:2.05;letter-spacing:.02em;color:#667066;margin:0}@media(max-width:1050px){.values-grid{gap:18px}.value-card{padding:29px 21px}.value-card h3{font-size:18px}.value-body{font-size:13px}}@media(max-width:780px){.values-grid{grid-template-columns:1fr;gap:20px}.value-card{padding:29px 28px}.value-card h3{min-height:0;font-size:20px;margin-bottom:17px}.value-icon{margin-bottom:20px}.value-body{font-size:14px}.values-watermark{top:15px;right:-30px;font-size:105px;letter-spacing:-3px}.values-section{padding:65px 0 70px}.values-grid{margin-top:34px}}
/* Clearer reading and a quieter boundary after the photographic Business layer. */
.values-section{background:#fafbf8;border-top:1px solid #e5eadf}.values-watermark{color:#edf1e8}.value-body{font-size:15px;line-height:2;color:#4e5c51}.value-card{border-color:#e2e8dd}.value-card h3{min-height:0;margin-bottom:23px}@media(max-width:780px){.value-body{font-size:15px;line-height:2}}
.value-illustration{height:170px;margin:0 0 25px;display:flex;align-items:center;justify-content:center}.value-illustration img{width:100%;height:100%;object-fit:contain;display:block}.value-card h3{white-space:nowrap;font-size:18px;line-height:1.7;min-height:31px;margin-bottom:23px;letter-spacing:0}.values-grid{align-items:stretch}.value-card{padding:33px 23px 34px}.value-label{min-height:20px;margin-bottom:10px}
@media(max-width:1050px){.values-grid{grid-template-columns:1fr;gap:24px}.value-card{padding:30px;display:grid;grid-template-columns:210px minmax(0,1fr);column-gap:30px}.value-illustration{grid-column:1;grid-row:1 / 4;height:210px;margin:0}.value-label,.value-card h3,.value-body{grid-column:2}.value-card h3{font-size:20px;min-height:0;margin-bottom:18px}.value-index{top:15px;right:18px}}
@media(max-width:650px){.value-card{display:block;padding:28px 20px}.value-illustration{height:185px;margin-bottom:24px}.value-card h3{font-size:clamp(15px,4.3vw,19px);line-height:1.7;min-height:0}.value-label{font-size:12px}.value-body{font-size:15px}}
.value-illustration{height:165px;margin-bottom:27px}.value-card h3{margin-bottom:22px}
@media(min-width:651px) and (max-width:1050px){.value-illustration{grid-row:1 / 3;height:190px;margin-bottom:0}}
@media(max-width:650px){.value-illustration{height:175px;margin-bottom:25px}}
.news-section{background:white;padding:105px 0 110px}.news-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:65px;align-items:start}.news-heading{position:relative;padding-top:20px}.news-heading .unified-heading{position:relative;z-index:1}.news-watermark{position:absolute;top:-48px;left:-5px;font-size:115px;font-weight:400;line-height:1;color:#edf3e9;letter-spacing:4px;pointer-events:none}.news-draft-note{position:relative;color:#8b958a;font-size:11px;line-height:1.9;margin-top:33px}.news-list{border-top:1px solid #d8e1d5}.news-item{border-bottom:1px solid #d8e1d5}.news-item summary{list-style:none;display:grid;grid-template-columns:103px 78px minmax(0,1fr) 26px;align-items:center;gap:18px;padding:32px 0;cursor:pointer}.news-item summary::-webkit-details-marker{display:none}.news-item summary:focus-visible{outline:2px solid #5b953f;outline-offset:5px}.news-date{font-size:11px;color:#727e71;white-space:nowrap}.news-category{background:#2e6540;color:white;font-size:10px;padding:5px 7px;text-align:center;letter-spacing:.04em}.news-title{font-size:15px;line-height:1.9;font-weight:700;color:#23382b}.news-arrow{border-radius:50%;background:#285e39;color:white;display:grid;place-items:center;width:25px;height:25px;line-height:1;transition:transform .2s}.news-item[open] .news-arrow{transform:rotate(45deg)}.news-item summary:hover .news-title{color:#579137}.news-detail{padding:0 22px 25px 0;font-size:14px;line-height:2;color:#586755}.news-detail p{margin:0 0 12px}.news-status{font-size:10px;letter-spacing:.06em;color:#8c967d}.news-section .unified-heading>p{font-size:22px;font-weight:700;letter-spacing:1px}
@media(max-width:1050px){.news-layout{grid-template-columns:230px minmax(0,1fr);gap:35px}.news-item summary{grid-template-columns:94px 70px minmax(0,1fr) 24px;gap:12px}.news-title{font-size:14px}.news-watermark{font-size:95px}}
@media(max-width:780px){.news-layout{grid-template-columns:1fr;gap:30px}.news-heading{padding-top:15px}.news-watermark{top:-25px;left:auto;right:0;font-size:90px}.news-draft-note{margin-top:23px}.news-section{padding:70px 0}.news-item summary{padding:26px 0;grid-template-columns:100px 75px 1fr 25px;gap:12px}.news-title{grid-column:1/4;grid-row:2;font-size:15px}.news-arrow{grid-column:4;grid-row:1/3}.news-category{grid-column:2}.news-detail{font-size:14px;padding-right:0}.news-section .unified-heading>p{font-size:19px}}
.contact-v2{position:relative;overflow:hidden;text-align:center;background:linear-gradient(110deg,#dfedd2,#f0f7e8);padding:85px 0 74px;color:#244b2f}.contact-eyebrow{font-size:12px;font-weight:700;letter-spacing:3px;color:#548444;margin:0 0 23px}.contact-v2 h2{font-size:29px;line-height:1.9;letter-spacing:.05em;color:#244b2f}.contact-v2-copy{font-size:14px;line-height:2.1;color:#677c5e;margin:23px 0 32px}.contact-v2-button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:#27673c;color:white;font-size:14px;font-weight:700;padding:20px 33px;border-radius:10px;min-width:210px;transition:background .2s,transform .2s}.contact-v2-button:hover{background:#39834b;transform:translateY(-2px)}.contact-v2-status{font-size:10px;color:#7b8e72;margin:15px 0 0}.contact-preparation{min-height:65svh}.contact-preparation-box{margin:50px 0 30px;padding:35px;background:#f3f7ef;border:1px solid #dce7d5;border-radius:9px}.contact-preparation-box h2{font-size:21px;letter-spacing:0}.contact-preparation-box p{font-size:14px;line-height:2;color:#65765f}@media(max-width:650px){.contact-v2{padding:60px 0 55px}.contact-v2 h2{font-size:clamp(17px,4.7vw,24px);line-height:1.9;letter-spacing:0}.contact-v2-copy{font-size:12px;line-height:2.1;margin:22px 0 28px}.contact-v2-button{font-size:13px;padding:18px 27px}.contact-preparation-box{padding:25px 20px}.contact-preparation-box h2{font-size:18px}.contact-preparation-box p{font-size:13px}}
/* Shared footer inspired by the original Leafrais site. */
.site-footer{background:#161a18;color:#e8ede8;padding:55px 0 22px;position:relative;z-index:1}.footer-brandline{display:flex;align-items:center;justify-content:space-between;gap:45px;padding-bottom:36px;border-bottom:1px solid #ffffff2b}.footer-message{display:block;width:350px;max-width:100%;height:auto}.footer-wordmark img{display:block;width:190px;height:auto}.footer-columns{display:grid;grid-template-columns:1.05fr 1.45fr .8fr 1.15fr;gap:38px;padding:34px 0 46px}.footer-column h2{font-size:13px;line-height:1.6;letter-spacing:1.1px;font-weight:700;margin:0 0 24px;color:#fff}.footer-column h2 span{display:block;font-size:10px;font-weight:400;letter-spacing:.05em;color:#9eada2;margin-top:5px}.footer-column a{display:block;width:fit-content;font-size:12px;line-height:1.9;color:#dce5dd;margin-bottom:12px;transition:color .2s}.footer-column a:hover{color:#b0d775}.footer-company-name{font-size:14px;font-weight:700;margin:0 0 14px}.footer-company address{font-size:12px;font-style:normal;line-height:1.9;color:#becabf;margin-bottom:22px}.footer-company>a{font-size:11px;display:flex;gap:20px}.footer-auto{font-size:12px;line-height:1.9;color:#dce5dd}.footer-auto small{display:block;font-size:10px;color:#a0b09f;margin-top:2px}.footer-contact>p{font-size:12px;line-height:1.9;color:#becabf;margin:0 0 19px}.footer-column .footer-contact-button{border:1px solid #809a7a;border-radius:4px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;min-width:165px;margin-bottom:11px}.footer-contact-note{display:block;font-size:9px;line-height:1.8;color:#97a697}.footer-end{border-top:1px solid #ffffff1b;padding-top:20px;display:flex;justify-content:space-between;align-items:center}.footer-end>small{font-size:10px;letter-spacing:.8px;color:#a6b1a8}.footer-back-top{display:flex;align-items:center;gap:15px;font-size:9px;letter-spacing:1px;color:#bcc8bd}.footer-back-top span{display:grid;place-items:center;width:30px;height:30px;border:1px solid #ffffff38;border-radius:3px;font-size:17px}
@media(max-width:1050px){.footer-columns{grid-template-columns:1fr 1.4fr 1fr;gap:35px}.footer-contact{grid-column:1/-1;padding-top:24px;border-top:1px solid #ffffff1b}.footer-contact>p{display:inline-block;margin-right:35px}.footer-column .footer-contact-button{display:inline-flex}.footer-message{width:310px}}
@media(max-width:650px){.site-footer{padding:40px 0 20px}.footer-brandline{display:block;padding-bottom:28px}.footer-message{width:290px}.footer-wordmark{display:block;margin-top:25px}.footer-wordmark img{width:165px}.footer-columns{grid-template-columns:1fr;gap:27px;padding:30px 0}.footer-column h2{font-size:13px;margin-bottom:17px}.footer-column h2 span{display:inline;font-size:10px;margin-left:12px}.footer-column a,.footer-auto,.footer-company address,.footer-contact>p{font-size:13px}.footer-column a{margin-bottom:10px}.footer-contact{grid-column:auto;padding-top:25px}.footer-contact>p{display:block;margin-right:0}.footer-column .footer-contact-button{display:flex;min-width:190px}.footer-contact-note{font-size:10px}.footer-company-name{font-size:15px}.footer-end>small{font-size:9px}.footer-back-top{font-size:8px}}
/* Compact footer: no upper brand strip or contents column. */
.footer-compact{padding:33px 0 19px}.compact-footer-grid{display:grid;grid-template-columns:1.05fr 1.9fr .9fr;gap:35px;align-items:start}.compact-company .footer-company-name{font-size:14px;margin:0 0 12px}.compact-company address{font-size:11px;line-height:1.9;font-style:normal;color:#bfcabf}.compact-business h2{font-size:11px;letter-spacing:1px;line-height:1.5;color:#bcc8bf;margin:0 0 13px}.compact-business-links{display:grid;grid-template-columns:1fr 1.15fr;gap:11px 20px}.compact-business-links>a,.compact-business-links>span{font-size:11px;line-height:1.8;color:#dce5dd}.compact-business-links small{display:block;font-size:9px;color:#94a695;margin-top:1px}.compact-contact{display:grid;gap:13px}.compact-contact>a{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;letter-spacing:.7px;border-bottom:1px solid #ffffff2b;padding:0 0 9px;color:#e5ece5}.compact-contact>a>span{font-size:10px;letter-spacing:0;color:#afc2ad}.compact-footer-bottom{margin-top:26px;padding-top:17px;border-top:1px solid #ffffff1b;display:flex;align-items:center;gap:24px}.compact-footer-logo img{width:156px;height:auto;display:block}.compact-footer-bottom>small{font-size:9px;color:#8f9e92;letter-spacing:.5px}.compact-footer-bottom .footer-back-top{margin-left:auto}.compact-footer-grid a:hover{color:#b3d978}.company-draft{min-height:65svh}.company-draft-info{margin:45px 0 30px}.company-draft-info>div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid #dde5d9;font-size:14px;line-height:2}.company-draft-info dt{color:#798774}.company-draft-info dd{margin:0}
@media(max-width:1050px){.compact-footer-grid{grid-template-columns:1fr 1.9fr;gap:25px}.compact-contact{grid-column:1/-1;display:flex;gap:32px}.compact-contact>a{min-width:200px}.compact-business-links{gap:10px 15px}}
@media(max-width:650px){.footer-compact{padding:30px 0 18px}.compact-footer-grid{grid-template-columns:1fr;gap:25px}.compact-company address{font-size:12px}.compact-business-links{grid-template-columns:1fr 1fr;gap:12px 14px}.compact-business-links>a,.compact-business-links>span{font-size:11px}.compact-contact{grid-column:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}.compact-contact>a{min-width:0;font-size:10px;gap:6px}.compact-contact>a>span{font-size:9px}.compact-footer-bottom{flex-wrap:wrap;gap:12px;margin-top:20px}.compact-footer-logo img{width:140px}.compact-footer-bottom>small{font-size:8px}.compact-footer-bottom .footer-back-top{font-size:0;gap:0}.compact-footer-bottom .footer-back-top span{font-size:16px}.company-draft-info>div{grid-template-columns:80px 1fr;font-size:13px;gap:15px}}

/* Unlinked social marks beneath recruitment. */
.footer-social{padding-top:1px}.footer-social p{font-size:11px;letter-spacing:1px;line-height:1.5;color:#bcc8bf;margin:0 0 10px}.footer-social-icons{display:flex;align-items:center;gap:18px}.footer-social-icon{display:inline-flex;width:20px;height:20px;color:#dce5dd}.footer-social-icon svg{display:block;width:100%;height:100%}
@media(max-width:1050px){.compact-contact{display:grid;grid-template-columns:200px 200px;gap:16px 32px}.footer-social{grid-column:2;grid-row:2}}
@media(max-width:650px){.compact-contact{grid-template-columns:1fr 1fr;gap:16px 20px}.footer-social-icons{gap:18px}}

/* Section entrances, with a calmer pace for About Us. */
.motion-ready .about-reveal{transition-duration:1.1s,1.2s}
.motion-ready .scroll-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .85s ease,transform 1s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .scroll-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@media(max-width:650px){.motion-ready .scroll-reveal{transform:translate3d(0,18px,0)}.motion-ready .scroll-reveal.is-visible{transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.motion-ready .about-reveal,.motion-ready .scroll-reveal{opacity:1;transform:none;transition:none}}

/* Company profile, in the same type and spacing system as the home page. */
.company-profile{max-width:1000px;padding-bottom:90px}.company-profile .unified-heading h1{font-size:38px;line-height:1.6;margin:0}.company-intro{font-size:18px;line-height:2.1;margin:36px 0 45px;color:#52654f}.company-profile .company-draft-info{border-top:1px solid #dde5d9;margin-top:0}.company-profile .company-draft-info>div{grid-template-columns:160px 1fr;padding:27px 0;font-size:15px}.company-services{list-style:none;padding:0;margin:0}.company-services li+li{border-top:1px solid #e7ece4}.company-services a,.company-services li>div{display:block;position:relative;padding:19px 28px 19px 0}.company-services li:first-child a{padding-top:0}.company-services strong{display:block;font-size:16px;color:#2e5939}.company-services span{display:block;font-size:13px;line-height:1.9;color:#75806f;margin-top:5px}.company-services b{position:absolute;right:3px;top:21px;font-size:17px;font-weight:400;color:#578341}.company-services li:first-child b{top:1px}.company-services a:hover strong{color:#6a9c3d}.company-inquiry{margin-top:44px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px;background:#f3f7ed;border-radius:8px}.company-inquiry p{font-size:15px;margin:0}
@media(max-width:650px){.company-profile{padding-bottom:60px}.company-profile .unified-heading h1{font-size:29px}.company-intro{font-size:15px;line-height:2;margin:26px 0 32px}.company-wide-break{display:none}.company-profile .company-draft-info>div{grid-template-columns:1fr;gap:9px;padding:22px 0;font-size:14px}.company-profile .company-draft-info dt{font-size:12px}.company-services strong{font-size:14px}.company-services span{font-size:12px}.company-inquiry{padding:25px;flex-direction:column;align-items:flex-start}.company-inquiry .button{width:100%}}

.contact-email{display:inline-flex;align-items:center;gap:24px;font-size:clamp(20px,4.8vw,30px);font-weight:700;line-height:1.6;color:#2e653b;border-bottom:1px solid #90af83;margin:8px 0 16px;overflow-wrap:anywhere}.contact-email span{font-size:20px}.contact-email:hover,.company-email:hover{color:#699b38}.contact-preparation-box .contact-email-note{font-size:12px;color:#788770;line-height:1.9}.company-email,.contact-v2-status a{text-decoration:underline;text-underline-offset:4px}
/* Airy two-column contact form. */
[hidden]{display:none!important}.inquiry-page{background:white}.inquiry-title{padding:44px 0 48px;background:linear-gradient(110deg,#eef5e5,#fbfdf8);border-bottom:1px solid #e1ebd7}.inquiry-title p{font-size:11px;letter-spacing:2px;color:#76965c;margin:0 0 9px}.inquiry-title h1{font-size:36px;margin:0;letter-spacing:.08em}.inquiry-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;padding-top:70px;padding-bottom:100px;align-items:start}.inquiry-aside{background:#eff5e7;border-radius:22px;padding:36px 32px}.inquiry-aside-label{font-size:14px;font-weight:700;margin:0 0 24px;color:#4c773b}.inquiry-aside h2{font-size:16px;letter-spacing:0;margin:0 0 7px}.inquiry-aside address{font-size:13px;font-style:normal;line-height:2;margin-bottom:22px}.inquiry-aside>a{font-size:14px;color:#3d6a32;text-decoration:underline;text-underline-offset:5px}.inquiry-message{font-size:13px;line-height:2.1;color:#78856e;margin-top:30px}.inquiry-message p{margin:0 0 15px}.inquiry-content{min-width:0}.inquiry-content fieldset{border:0;padding:0;margin:0 0 42px;min-width:0}.inquiry-content legend{display:block;float:left;width:100%;font-size:17px;font-weight:700;padding:0 0 13px;border-bottom:1px solid #dfead3;margin-bottom:24px;color:#376036}.inquiry-content legend+*{clear:both}.inquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:25px 20px}.inquiry-field{min-width:0}.field-wide{grid-column:1/-1}.inquiry-field>label,.inquiry-label{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;margin:0 0 11px}.field-badge{font-size:10px;font-weight:700;padding:4px 8px;border-radius:20px;line-height:1.5;white-space:nowrap}.field-badge.required{color:white;background:#54813c}.field-badge.optional{color:#7e9270;background:#eff5e8}.inquiry-field input:not([type=checkbox]),.inquiry-field select,.inquiry-field textarea{font:inherit;font-size:14px;line-height:1.6;color:#2f442e;background:white;width:100%;min-height:49px;border:1px solid #d2e1c6;border-radius:13px;padding:12px 14px;max-width:100%}.inquiry-field input::placeholder,.inquiry-field textarea::placeholder{color:#969e90}.inquiry-field textarea{resize:vertical;min-height:200px}.inquiry-field input:focus,.inquiry-field select:focus,.inquiry-field textarea:focus{outline:2px solid #8bb65f;outline-offset:2px}.inquiry-categories{display:flex;flex-wrap:wrap;gap:17px 20px;padding:6px 0 8px}.inquiry-categories label{display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.8;cursor:pointer}.inquiry-page input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:#53833c;margin:0}.field-help{font-size:11px;color:#8a9581;line-height:1.9;margin:10px 0 22px}.inquiry-privacy{font-size:12px;line-height:2;color:#748267;border:1px solid #dfe9d5;border-radius:13px;padding:15px 20px;margin-top:5px}.inquiry-privacy summary{cursor:pointer;color:#426435;font-weight:700}.inquiry-privacy a{text-decoration:underline}.inquiry-consent{display:flex;align-items:center;gap:13px;font-size:13px;background:#f1f6eb;padding:22px;border-radius:14px;margin-top:20px;cursor:pointer}.inquiry-error{font-size:13px;line-height:1.8;color:#b14335}.inquiry-submit{text-align:center;margin-top:28px}.inquiry-button{display:inline-flex;align-items:center;justify-content:center;gap:35px;border:0;background:#3f7138;color:white;font:inherit;font-size:14px;font-weight:700;border-radius:40px;min-height:52px;padding:15px 30px;cursor:pointer}.inquiry-button:hover{background:#558744}.inquiry-button span{font-size:20px;font-weight:400}#inquiry-review h2{font-size:24px}#inquiry-review>p{font-size:13px;line-height:2}#review-values>div{padding:20px 0;border-bottom:1px solid #dfe7d8}#review-values dt{font-size:12px;color:#839178;margin-bottom:8px}#review-values dd{font-size:14px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.inquiry-delivery-note{padding:16px;background:#f1f6e9;border-radius:10px}.review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.review-actions button:not(.inquiry-button){background:white;border:1px solid #d6e2cd;padding:12px 18px;border-radius:30px;color:#567344}
@media(max-width:1050px){.inquiry-layout{gap:35px;grid-template-columns:.75fr 1.25fr}.inquiry-aside{padding:28px 24px}.inquiry-fields{gap:22px 14px}}
@media(max-width:750px){.inquiry-layout{grid-template-columns:1fr;padding-top:35px;padding-bottom:65px;gap:38px}.inquiry-title{padding:30px 0}.inquiry-title h1{font-size:28px}.inquiry-aside{padding:27px;border-radius:17px}.inquiry-message{margin-top:20px}.inquiry-message p:last-child{margin-bottom:0}.inquiry-fields{gap:22px 14px}.inquiry-consent{font-size:12px;padding:19px 15px}}
@media(max-width:400px){.inquiry-fields{grid-template-columns:1fr}.inquiry-button{width:100%;gap:18px}.inquiry-field>label{font-size:12px}}
/* Business detail pages: editorial hero, paired consultations and service matrix. */
.business-detail{background:white}.business-detail-hero{padding:40px 0 65px;background-image:linear-gradient(90deg,#fafcf8 10%,#fafcf8eb 45%,#f7faf3a8 100%),var(--business-image);background-size:cover;background-position:center;position:relative;overflow:hidden;border-bottom:1px solid #dce7d3}.business-detail-hero:after{content:'';position:absolute;width:370px;height:370px;border-radius:50%;background:#a4ca7720;right:-100px;top:-85px;pointer-events:none}.business-detail .breadcrumb{font-size:11px;line-height:2;display:block;margin-bottom:36px;color:#7a8c6c}.detail-eyebrow{font-size:11px!important;font-weight:700;letter-spacing:1.7px;line-height:1.8;color:#5c8a42!important;margin:0 0 24px!important}.business-detail h1{font-size:clamp(26px,3.2vw,43px);line-height:1.6;letter-spacing:.04em;margin:0 0 23px;max-width:850px}.business-detail-hero h2{font-size:18px;line-height:1.9;letter-spacing:.04em;color:#467337;max-width:650px;margin-bottom:19px}.business-detail-intro{max-width:590px;font-size:15px;line-height:2.1;margin:0}.business-overview{padding-top:80px;padding-bottom:85px;max-width:860px}.business-overview h2{font-size:29px;line-height:1.8;margin:0 0 24px}.business-overview>p:last-child{font-size:15px;line-height:2.2;color:#71806a;max-width:760px}.business-problems{background:#f7f9f3;padding:75px 0}.business-detail h2{letter-spacing:.03em}.business-problems h2,.business-areas h2,.business-flow h2{font-size:29px}.business-section-lead{font-size:14px;line-height:2;color:#839276;margin:17px 0 35px}.problem-pairs{display:grid;grid-template-columns:1fr 1fr;gap:22px}.problem-pair{border:1px solid #dce7d3;border-radius:17px;overflow:hidden;background:white}.problem-pair h3{font-size:16px;line-height:1.9;margin:0;padding:23px 25px;background:#edf2e6;color:#5d7051}.problem-pair>div{display:flex;align-items:flex-start;gap:15px;padding:23px 25px}.problem-pair>div>span{display:grid;place-items:center;flex-shrink:0;background:#68984d;border-radius:50%;width:24px;height:24px;color:white;margin-top:3px}.problem-pair p{font-size:14px;line-height:2;margin:0;color:#50694a}.business-areas{background:#edf4e6;padding:80px 0}.business-area-table{border-top:0}.business-area-head,.business-area-row{display:grid;grid-template-columns:240px 1fr;gap:30px;padding:24px 27px}.business-area-head{background:#38613b;color:white;font-size:13px;font-weight:700}.business-area-row{border-bottom:1px solid #ccdcbc}.business-area-row h3{font-size:15px;line-height:1.9;margin:0;color:#355d32}.business-area-row ul{padding-left:19px;margin:0;font-size:14px;line-height:2.1;color:#738768}.business-area-note{font-size:12px;line-height:2;color:#819174;margin:24px 0 0}.business-flow{padding-top:80px;padding-bottom:85px}.business-flow ol{list-style:none;counter-reset:flow;display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:0;margin:38px 0 0}.business-flow li{counter-increment:flow;border-top:2px solid #a6c48c;padding:22px 0 0}.business-flow li:before{content:'0' counter(flow);font-size:25px;font-weight:400;color:#94af7e}.business-flow h3{font-size:16px;line-height:1.8;margin:14px 0 10px}.business-flow li p{font-size:13px;line-height:2;color:#7c8973;margin:0}.business-detail-contact{text-align:center;padding:65px 0;background:linear-gradient(120deg,#e4efd8,#f5f9ef)}.business-detail-contact h2{font-size:27px}.business-detail-contact p:not(.detail-eyebrow){font-size:14px;line-height:2;color:#7d8e70;margin:20px 0 29px}.business-related{display:flex;align-items:center;gap:30px;padding-top:35px;padding-bottom:35px;font-size:13px;flex-wrap:wrap}.business-related>p{color:#8b9981;margin:0 auto 0 0}.business-related a{color:#537643}.business-related a:hover{text-decoration:underline}
@media(max-width:850px){.business-area-head,.business-area-row{grid-template-columns:190px 1fr;gap:22px;padding:23px 20px}.business-flow ol{grid-template-columns:1fr 1fr}.problem-pair h3,.problem-pair>div{padding:20px}.business-detail h1{font-size:30px}}
@media(max-width:650px){.business-detail-hero{padding:25px 0 45px;background-position:65% center}.business-detail .breadcrumb{font-size:10px;margin-bottom:28px}.business-detail h1{font-size:26px;overflow-wrap:anywhere}.business-detail-hero h2{font-size:16px}.business-detail-intro{font-size:14px}.business-overview,.business-flow{padding-top:50px;padding-bottom:50px}.business-overview h2,.business-problems h2,.business-areas h2,.business-flow h2{font-size:23px}.business-overview>p:last-child{font-size:14px}.business-problems,.business-areas{padding:50px 0}.problem-pairs{grid-template-columns:1fr;gap:18px}.problem-pair h3{font-size:15px}.problem-pair p{font-size:13px}.business-section-lead{font-size:13px}.business-area-head{display:none}.business-area-row{grid-template-columns:1fr;gap:12px;padding:24px 0}.business-area-row ul{font-size:13px}.business-area-table{border-top:2px solid #749959}.business-flow ol{gap:25px 20px}.business-flow h3{font-size:14px}.business-flow li p{font-size:12px}.business-detail-contact{padding:50px 0}.business-detail-contact h2{font-size:22px}.business-detail-contact p:not(.detail-eyebrow){font-size:13px}.business-related{display:grid;gap:18px;font-size:12px}}
/* Quiet, compact service tags: eight keywords with breathing room. */
.service-tags{gap:7px 8px;max-width:460px;margin-top:3px}.service-tags li{background:#f1f6ea;color:#547044;border:1px solid #dce7cf;border-radius:5px;font-size:11px;font-weight:400;letter-spacing:.025em;line-height:1.5;padding:5px 10px}
@media(max-width:650px){.service-tags{gap:7px;max-width:100%}.service-tags li{font-size:10px;padding:5px 8px}}
