:root{--forest:#053b29;--forest-deep:#062a20;--night:#0b211c;--green:#00a859;--green-bright:#10c878;--mint:#dff6e9;--paper:#f6f8f5;--white:#fff;--ink:#17231f;--muted:#607069;--line:#dce5df;--shadow:0 24px 65px rgba(5,59,41,.1)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
body,button,a{font-size:16px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
::selection{background:#a3ebbf;color:#062a20}
.container{width:min(100% - 56px,1216px);margin-inline:auto}
.skip-link{position:absolute;z-index:100;top:-80px;left:20px;background:#fff;color:#000;padding:10px 16px}.skip-link:focus{top:10px}
.site-header{height:84px;background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 rgba(7,49,32,.09)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:block;width:166px;flex:0 0 auto}.brand img{width:100%;height:auto;object-fit:contain}
.site-nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:700}
.site-nav>a:not(.nav-contact){position:relative;padding:31px 0;color:#283b31;transition:color .2s}
.site-nav>a:not(.nav-contact):hover,.site-nav>a.active{color:var(--forest)}
.site-nav>a.active:after{content:"";position:absolute;bottom:23px;left:0;width:100%;height:2px;background:var(--green)}
.nav-contact{border:1px solid var(--forest);border-radius:100px;padding:10px 21px;color:var(--forest);white-space:nowrap;transition:background .2s,color .2s}.nav-contact:hover{background:var(--forest);color:#fff}.nav-contact span{margin-left:9px}
.menu-toggle{display:none}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Arial Narrow","Helvetica Neue",Arial,sans-serif;letter-spacing:-.045em;line-height:1.06}h1{font-size:clamp(3.5rem,5.45vw,5.65rem)}h2{font-size:clamp(2.8rem,4.2vw,4.5rem)}h3{font-size:1.55rem}h1 em,h2 em{font-style:normal;color:var(--green)}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;letter-spacing:.17em;line-height:1.4;color:#18744b;margin-bottom:24px}.eyebrow.light{color:#65dda3}.eyebrow-dot,.status-dot{display:inline-block;width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--green-bright)}
.button{display:inline-flex;justify-content:center;align-items:center;gap:26px;min-height:53px;padding:0 24px;border-radius:100px;font-size:14px;font-weight:800;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(0,0,0,.15)}.button span{font-size:19px;font-weight:400}.button-green{background:var(--green-bright);color:#05281c}.button-green:hover{background:#5be49c}.button-dark{background:var(--forest);color:#fff}.button-dark:hover{background:#0a573b}
.text-link{display:inline-flex;align-items:center;gap:20px;color:var(--forest);font-weight:800;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link span{font-size:21px;font-weight:400;line-height:1}.text-link:hover{color:var(--green)}.light-link{color:#e7fff2}.light-link:hover{color:#77edb2}
.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 75% 43%,#0d5a3d 0%,#073b2c 29%,#072c23 59%,#08251f 100%);color:white}.hero:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background-image:linear-gradient(90deg,transparent 97%,rgba(255,255,255,.25) 98%),linear-gradient(0deg,transparent 97%,rgba(255,255,255,.25) 98%);background-size:70px 70px;mask-image:linear-gradient(90deg,transparent 25%,black 100%)}.hero-glow{position:absolute;width:700px;height:700px;right:-170px;top:-170px;border:1px solid rgba(102,241,160,.18);border-radius:50%;box-shadow:0 0 0 150px rgba(78,204,135,.025),0 0 0 300px rgba(78,204,135,.02);pointer-events:none}
.hero-grid{min-height:660px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:40px;padding-top:55px;padding-bottom:36px}.hero-copy{position:relative;z-index:2;padding-bottom:32px}.hero h1{max-width:710px;margin-bottom:25px;font-weight:800}.hero h1 em{color:#57dda0}.hero-lead{max-width:560px;color:#c2d9ce;font-size:18px;line-height:1.65;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.hero-bottom{height:52px;display:flex;align-items:center;justify-content:space-between;color:#a5d4b9;font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;border-top:1px solid rgba(255,255,255,.17)}.scroll-note{font-size:10px}.scroll-note span{margin-left:12px;font-size:17px}
.hero-visual{height:530px;position:relative}.visual-orbit{position:absolute;border:1px solid rgba(131,240,174,.16);border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%)}.orbit-one{width:440px;height:440px}.orbit-two{width:330px;height:330px}.flow-card{position:absolute;width:238px;min-height:160px;border-radius:18px;padding:20px 21px;background:linear-gradient(135deg,rgba(28,89,68,.96),rgba(7,53,40,.95));border:1px solid rgba(133,230,175,.33);box-shadow:0 24px 50px rgba(0,0,0,.2)}.flow-source{left:0;top:86px;transform:rotate(-4deg)}.flow-result{right:0;bottom:82px;transform:rotate(3deg);background:linear-gradient(135deg,#effff4,#c5efcf);color:#093c28;border-color:#e8fff0}.flow-kicker{font-size:9px;letter-spacing:.16em;font-weight:800;color:#70dba4}.flow-result .flow-kicker{color:#117a4a}.flow-title{font-family:"Arial Narrow",Arial,sans-serif;font-weight:800;letter-spacing:-.03em;font-size:27px;line-height:1.1;margin-top:16px}.mini-sources{display:flex;flex-wrap:wrap;gap:5px;margin-top:17px}.mini-sources span{font-size:8px;border:1px solid rgba(255,255,255,.26);border-radius:20px;padding:3px 6px;color:#c9e6d6}.flow-result p{font-size:9px;font-weight:800;letter-spacing:.03em;margin:11px 0 0}.result-lines{display:flex;align-items:end;gap:7px;height:30px;margin-top:12px}.result-lines span{width:40px;height:11px;border-radius:3px;background:#7bd4a2}.result-lines span:nth-child(2){height:20px;background:#39bd77}.result-lines span:nth-child(3){height:28px;background:#009a52}.flow-hub{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:166px;height:166px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle at 30% 25%,#22c879,#078348 59%,#055c3d);border:11px solid rgba(202,255,219,.11);box-shadow:0 0 0 1px #64eaa0,0 0 45px rgba(28,213,116,.38),0 20px 55px rgba(0,0,0,.24)}.hub-mark{font-family:"Arial Black",Arial,sans-serif;font-size:53px;font-weight:900;letter-spacing:-.15em;line-height:.9}.hub-mark span{color:#a2f6c5;font-weight:400;margin-left:4px}.flow-hub small{text-align:center;font-size:9px;line-height:1.2;letter-spacing:.16em;font-weight:800;margin-top:11px}.flow-connector{position:absolute;z-index:-1;color:#61e4a0;font-size:44px;text-shadow:0 0 20px #1ad177}.connector-one{left:40%;top:32%}.connector-two{right:31%;bottom:27%}.float-label{position:absolute;z-index:3;border:1px solid rgba(178,252,202,.28);background:rgba(4,43,31,.86);border-radius:40px;color:#e3fff0;padding:8px 13px;font-size:10px;font-weight:800;box-shadow:0 12px 30px rgba(0,0,0,.16)}.float-top{right:25px;top:63px}.float-top .status-dot{width:6px;height:6px;margin-right:5px}.float-bottom{left:24px;bottom:40px}.float-bottom span{margin-left:14px;color:#7fe8af}
.outcome-strip{background:#fff;border-bottom:1px solid var(--line)}.outcome-grid{display:grid;grid-template-columns:repeat(3,1fr)}.outcome-grid>div{padding:35px 30px 34px;border-right:1px solid var(--line)}.outcome-grid>div:first-child{padding-left:0}.outcome-grid>div:last-child{border-right:0}.outcome-number{font-size:11px;font-weight:800;color:var(--green);letter-spacing:.12em;margin-right:15px}.outcome-grid strong{font-size:16px;color:#103c2b}.outcome-grid p{font-size:13px;color:var(--muted);margin:8px 0 0 34px;max-width:275px}
.section{padding:112px 0}.section-heading{margin-bottom:43px}.split-heading{display:grid;grid-template-columns:1.15fr .65fr;align-items:end;gap:90px}.section-heading h2{margin-bottom:0}.section-heading>p{color:var(--muted);font-size:17px;line-height:1.7;max-width:390px;margin-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-card{min-height:360px;position:relative;display:flex;flex-direction:column;padding:27px 24px 25px;background:var(--paper);border:1px solid #e7eee8;border-radius:14px;transition:transform .24s,box-shadow .24s,border-color .24s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:#a9dabb}.service-index{font-size:10px;font-weight:800;letter-spacing:.14em;color:#3c865b}.service-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin:24px 0 28px;border-radius:14px;background:#d9efdf;color:#05834d}.service-card h3{margin-bottom:11px}.service-card p{font-size:13px;line-height:1.55;color:#617168;margin-bottom:33px}.card-arrow{position:absolute;right:24px;bottom:20px;font-size:22px;color:#0b6940}.featured-card{background:var(--forest);color:#fff;border-color:var(--forest)}.featured-card .service-index{color:#a5edc2}.featured-card .service-icon{background:#196c49;color:#6aefab}.featured-card p{color:#c6e1d0}.featured-card .card-arrow{color:#8aecb2}.featured-card:hover{border-color:var(--green)}.icon-process{gap:3px;flex-direction:column}.icon-process i{width:28px;height:3px;background:currentColor;border-radius:4px}.icon-process i:nth-child(2){width:17px;margin-left:11px}.icon-auto{gap:5px}.icon-auto i{width:8px;height:8px;border-radius:2px;background:currentColor}.icon-auto i:nth-child(2){width:14px;height:14px;background:none;border:3px solid currentColor}.icon-integrate{position:relative}.icon-integrate i{position:absolute;width:10px;height:10px;border-radius:50%;background:currentColor}.icon-integrate i:nth-child(1){left:13px;top:15px}.icon-integrate i:nth-child(2){right:13px;top:24px}.icon-integrate i:nth-child(3){left:18px;bottom:12px}.icon-integrate:after{content:"";width:26px;height:25px;border:2px solid currentColor;transform:rotate(30deg)}.icon-ai{font-size:40px}.section-end{text-align:right;margin-top:28px}
.ai-feature{background:#eaf7ee;padding:95px 0;overflow:hidden}.ai-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:85px}.ai-copy h2{margin-bottom:26px}.ai-copy p:not(.eyebrow){font-size:16px;line-height:1.75;color:#536a5a;max-width:520px;margin-bottom:27px}.ai-diagram{position:relative;min-height:415px;padding:35px;border:1px solid #bbe2c8;border-radius:25px;background:linear-gradient(135deg,#fafffb,#e0f5e7);box-shadow:0 28px 65px rgba(11,97,51,.12)}.ai-diagram:before{content:"";position:absolute;inset:0;border-radius:25px;opacity:.3;background-image:linear-gradient(#c8e9d4 1px,transparent 1px),linear-gradient(90deg,#c8e9d4 1px,transparent 1px);background-size:25px 25px;mask-image:linear-gradient(black,transparent 70%)}.diagram-top,.diagram-bottom,.diagram-core,.diagram-stems,.diagram-path{position:relative;z-index:1}.diagram-top{display:flex;justify-content:space-around;gap:20px}.diagram-tag{min-width:150px;background:#fff;border:1px solid #b8ddc4;border-radius:9px;padding:13px 16px;text-align:center;color:#287c4d;box-shadow:0 10px 22px rgba(4,94,47,.07);font-size:10px;font-weight:800;letter-spacing:.1em}.diagram-stems{height:72px;display:flex;justify-content:space-around}.diagram-stems span{height:100%;width:1px;background:#5dbd80;position:relative}.diagram-stems span:after{content:"";position:absolute;bottom:-3px;left:-3px;width:7px;height:7px;border-radius:50%;background:#0aa459}.diagram-core{display:flex;align-items:center;gap:18px;padding:25px;border-radius:17px;background:var(--forest);box-shadow:0 15px 30px rgba(4,83,44,.19);color:#fff}.core-symbol{display:grid;place-items:center;width:53px;height:53px;background:#177c4c;border-radius:12px;color:#8cf2b3;font-size:34px}.diagram-core strong{display:block;font-size:17px}.diagram-core small{font-size:11px;color:#b5dfc6}.core-pulse{width:8px;height:8px;border-radius:50%;background:#5ced9e;margin-left:auto;box-shadow:0 0 0 7px rgba(62,229,135,.16)}.diagram-path{height:58px;width:1px;background:#6dbf87;margin:auto}.diagram-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.diagram-bottom div{min-height:60px;display:flex;align-items:center;gap:9px;padding:10px;border-radius:9px;background:#fff;border:1px solid #c5e5cf;font-size:10px;font-weight:700;color:#246b43}.small-square{width:8px;height:8px;flex:0 0 auto;background:#13b260;border-radius:2px}
.method-preview{background:#fff}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.step{padding:26px 22px 29px;border-right:1px solid var(--line)}.step:first-child{padding-left:0}.step:last-child{border-right:0}.step>span{display:block;color:var(--green);font-size:11px;font-weight:800;margin-bottom:45px}.step h3{font-size:22px;margin-bottom:10px}.step p{font-size:13px;color:var(--muted);line-height:1.55;margin:0}
.contact-band{background:var(--forest-deep);color:#fff;padding:86px 0}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-band h2{margin:0 0 17px}.contact-band h2 em{color:#65e29e}.contact-band p:not(.eyebrow){color:#c0d9ca;margin:0}.contact-band .button{margin-top:38px}
.site-footer{background:#09261d;color:#fff}.footer-main{display:grid;grid-template-columns:1.6fr .7fr .8fr;gap:50px;padding:61px 0 58px}.footer-wordmark{font-family:"Arial Narrow",Arial,sans-serif;font-size:31px;letter-spacing:-.07em;font-weight:900;line-height:1}.footer-wordmark span{color:var(--green-bright);padding:0 2px}.footer-main p{font-size:13px;color:#a9c7b6;margin:20px 0 0}.footer-main>div:not(:first-child){display:flex;flex-direction:column;gap:9px}.footer-main strong{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#7ee4a9;margin-bottom:12px}.footer-main a:not(.footer-wordmark){font-size:13px;color:#cfdfd5}.footer-main a:hover{color:#72eaa6}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.13);padding:20px 0;color:#84aa93;font-size:11px}
.page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 43%,#0b7043,#073e2b 32%,#08271f 72%);color:#fff}.page-hero-grid{min-height:472px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:30px;padding:62px 0}.page-hero h1{font-size:clamp(3.2rem,5vw,5rem);margin-bottom:23px}.page-hero h1 em{color:#68e6a5}.page-hero p:not(.eyebrow){color:#c7ddd0;max-width:620px;font-size:17px;margin-bottom:27px}.page-hero-art{height:350px;position:relative}.art-ring{position:absolute;border:1px solid rgba(155,241,180,.25);border-radius:50%;left:48%;top:50%;transform:translate(-50%,-50%)}.ring-a{width:330px;height:330px}.ring-b{width:220px;height:220px}.art-center{position:absolute;left:48%;top:50%;transform:translate(-50%,-50%);width:126px;height:126px;display:grid;place-items:center;border-radius:50%;background:#12aa63;box-shadow:0 0 0 16px rgba(25,198,101,.13),0 0 65px rgba(37,227,129,.32);font-family:"Arial Black",Arial,sans-serif;font-size:51px;font-weight:900;letter-spacing:-.14em}.art-center span{color:#b5ffd1}.art-label{position:absolute;background:#104c36;border:1px solid #5acb89;padding:9px 16px;border-radius:50px;font-size:10px;font-weight:800;letter-spacing:.13em}.label-a{left:1%;top:24%}.label-b{right:0;top:19%}.label-c{right:4%;bottom:20%}
.detail-intro{padding-bottom:70px}.detail-intro h2{margin-bottom:18px}.detail-intro>div>p:last-child{max-width:580px;color:var(--muted);font-size:17px;line-height:1.7}
.solution-list{padding-bottom:110px}.solution-row{scroll-margin-top:110px;display:grid;grid-template-columns:170px 1fr 300px;gap:48px;align-items:center;border-top:1px solid var(--line);padding:60px 0}.solution-row:last-child{border-bottom:1px solid var(--line)}.solution-no{font-size:11px;font-weight:800;letter-spacing:.13em;color:#20844f;align-self:start;padding-top:12px}.solution-row h2{font-size:clamp(2.3rem,3.5vw,3.8rem);margin-bottom:17px}.solution-row p{max-width:555px;color:#5a6a60;line-height:1.7;margin-bottom:18px}.solution-row ul{padding-left:20px;margin:0;display:grid;gap:4px;color:#246645;font-size:14px}.solution-row li::marker{color:var(--green)}.solution-graphic{height:225px;border-radius:20px;background:#eaf6ed;position:relative;overflow:hidden}.graphic-process{display:flex;align-items:center;justify-content:center;gap:10px}.graphic-process span{display:block;width:55px;height:55px;border:2px solid #13a35f;background:#fff;border-radius:11px;transform:rotate(-8deg)}.graphic-process span:nth-child(2){background:#12a860;transform:rotate(5deg)}.graphic-process span:nth-child(3){transform:rotate(-4deg)}.graphic-process i{position:absolute;width:230px;height:2px;background:#13a35f;top:75%;left:12%}.graphic-auto{display:flex;align-items:center;justify-content:center;gap:4px}.graphic-auto span{font-size:10px;font-weight:800;color:#076439;background:#fff;border:1px solid #a9d9bb;padding:11px 10px;border-radius:7px}.graphic-auto span:last-child{background:#0b8d51;color:#fff}.graphic-auto i{font-style:normal;color:#1cac65;font-size:22px}.graphic-data span{position:absolute;width:52px;height:52px;display:grid;place-items:center;border:1px solid #83d0a3;background:#fff;border-radius:12px;font-size:11px;font-weight:800;color:#177c4a}.graphic-data span:nth-child(1){left:31px;top:38px}.graphic-data span:nth-child(2){right:34px;top:48px}.graphic-data span:nth-child(3){left:56px;bottom:31px}.graphic-data b{position:absolute;left:49%;top:49%;transform:translate(-50%,-50%);font-size:58px;color:#0aad5d}.graphic-data i{position:absolute;color:#168b50;font-size:35px;font-style:normal}.graphic-data i:nth-of-type(1){left:102px;top:59px}.graphic-data i:nth-of-type(2){right:80px;bottom:30px}.graphic-ai{display:grid;place-items:center;background:radial-gradient(circle,#c0f1d2,#eaf6ed 60%)}.graphic-ai span{font-size:92px;color:#08a65c;text-shadow:0 10px 20px rgba(0,138,67,.2)}.graphic-ai i{position:absolute;width:9px;height:9px;border-radius:50%;background:#22b96c}.graphic-ai i:nth-of-type(1){top:34px;left:76px}.graphic-ai i:nth-of-type(2){right:46px;top:48px}.graphic-ai i:nth-of-type(3){right:75px;bottom:29px}.graphic-ai i:nth-of-type(4){left:49px;bottom:49px}
.example-section{background:#e9f6ed;padding:90px 0}.example-grid{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:center}.example-grid h2{margin-bottom:20px}.example-grid p:not(.eyebrow){color:#536b5d;font-size:16px;line-height:1.75}.example-grid small{display:block;color:#427858;font-size:12px;margin-top:20px}.example-flow{display:grid;gap:9px}.example-flow div{position:relative;padding:18px 25px;border-radius:10px;border:1px solid #bae2c7;background:#fff;box-shadow:0 10px 25px rgba(8,96,52,.06);font-weight:800;color:#144c32}.example-flow div:not(:last-child):after{content:"↓";position:absolute;z-index:2;right:22px;bottom:-21px;color:#08a65c}.example-flow span{font-size:11px;color:#079a53;margin-right:19px}
.method-hero{background:radial-gradient(circle at 80% 55%,#0c6540,#073b2b 34%,#08271f 75%)}.method-hero-art{display:grid;gap:0;justify-content:center}.method-hero-art span{display:block;min-width:230px;text-align:center;padding:12px 20px;border:1px solid rgba(125,237,168,.5);border-radius:5px;background:rgba(15,117,67,.52);color:#e4ffed;font-size:12px;font-weight:800;letter-spacing:.13em}.method-hero-art span:last-child{background:#57dc95;color:#063b27}.method-hero-art i{height:22px;width:1px;background:#7ceeb0;justify-self:center}
.method-detail{background:#fff}.method-detail .section-heading{margin-bottom:60px}.method-timeline{border-top:1px solid var(--line)}.method-timeline article{display:grid;grid-template-columns:220px 1fr;gap:80px;padding:35px 0;border-bottom:1px solid var(--line)}.timeline-no{font-family:"Arial Narrow",Arial,sans-serif;font-weight:800;font-size:74px;line-height:1;color:#c7e7d2}.phase-label{font-size:10px;font-weight:800;color:#0b9f56;letter-spacing:.14em}.method-timeline h3{font-size:31px;margin:7px 0 9px}.method-timeline p{color:var(--muted);max-width:670px;margin:0;font-size:15px;line-height:1.65}.principle-section{background:#0b4731;color:#fff;padding:90px 0}.principle-grid{display:grid;grid-template-columns:1fr .75fr;gap:100px;align-items:end}.principle-grid h2{margin-bottom:0}.principle-grid h2 em{color:#77eba7}.principle-grid p{color:#cee6d7;font-size:17px;line-height:1.7}
@media(max-width:1050px){.hero-grid{grid-template-columns:1fr .85fr;gap:15px}.hero h1{font-size:clamp(3.2rem,5.6vw,4.5rem)}.flow-card{width:205px}.flow-source{left:-8px}.flow-result{right:-7px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:305px}.ai-grid{gap:45px}.solution-row{grid-template-columns:120px 1fr 230px;gap:28px}.solution-graphic{height:190px}}
@media(max-width:760px){.container{width:min(100% - 36px,600px)}.site-header{height:68px}.brand{width:139px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:none;border:0;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:#073b2a;transition:transform .2s}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:16px 18px 24px;box-shadow:0 20px 24px rgba(0,0,0,.1);flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav>a:not(.nav-contact){padding:12px 4px;border-bottom:1px solid #e5eee8}.site-nav>a.active:after{display:none}.nav-contact{margin-top:18px;text-align:center}.hero-grid{display:block;min-height:auto;padding-top:68px;padding-bottom:35px}.hero-copy{padding:0}.hero h1{font-size:clamp(3.2rem,10.4vw,5rem);line-height:1.04}.hero-lead{font-size:16px}.hero-visual{height:430px;max-width:520px;margin:30px auto 0}.flow-source{left:3%;top:48px}.flow-result{right:2%;bottom:48px}.float-top{right:4%;top:22px}.float-bottom{left:7%;bottom:13px}.hero-bottom{display:none}.outcome-grid{display:block;padding:15px 0}.outcome-grid>div,.outcome-grid>div:first-child{padding:20px 0;border-right:0;border-bottom:1px solid var(--line)}.outcome-grid>div:last-child{border-bottom:0}.outcome-grid p{margin-left:34px}.section{padding:72px 0}.split-heading{grid-template-columns:1fr;gap:20px}.section-heading{margin-bottom:30px}.section-heading>p{font-size:15px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:330px;padding:23px}.ai-feature{padding:70px 0}.ai-grid{grid-template-columns:1fr;gap:35px}.ai-diagram{min-height:385px}.steps-grid{grid-template-columns:repeat(2,1fr)}.step{border-bottom:1px solid var(--line)}.step:nth-child(2){border-right:0}.step:nth-child(3),.step:nth-child(4){border-bottom:0}.step:nth-child(3){padding-left:0}.step>span{margin-bottom:30px}.contact-band{padding:70px 0}.contact-band-inner{align-items:flex-start;flex-direction:column;gap:20px}.contact-band .button{margin-top:0}.footer-main{grid-template-columns:1fr 1fr;gap:35px;padding:50px 0}.footer-main>div:first-child{grid-column:1/-1}.page-hero-grid{grid-template-columns:1fr;min-height:auto;padding:65px 0 35px}.page-hero-art{height:250px}.ring-a{width:245px;height:245px}.ring-b{width:160px;height:160px}.art-center{width:100px;height:100px;font-size:42px}.detail-intro{padding-bottom:35px}.solution-row{grid-template-columns:1fr;gap:14px;padding:40px 0}.solution-no{padding:0}.solution-graphic{height:170px}.example-grid,.principle-grid{grid-template-columns:1fr;gap:35px}.example-section,.principle-section{padding:70px 0}.method-timeline article{grid-template-columns:100px 1fr;gap:20px}.timeline-no{font-size:58px}}
@media(max-width:520px){h2{font-size:clamp(2.6rem,10vw,3.4rem)}.hero h1{font-size:clamp(2.9rem,12vw,4.2rem)}.hero-visual{height:380px}.flow-card{width:177px;min-height:144px;padding:15px}.flow-source{top:47px}.flow-result{bottom:45px}.flow-title{font-size:22px}.flow-hub{width:128px;height:128px;top:49%}.hub-mark{font-size:43px}.flow-hub small{font-size:7px}.orbit-one{width:325px;height:325px}.orbit-two{width:230px;height:230px}.float-label{font-size:8px}.float-top{top:9px}.float-bottom{bottom:0}.hero-actions{align-items:flex-start;gap:23px;flex-direction:column}.service-grid{grid-template-columns:1fr}.service-card{min-height:265px}.service-icon{margin:15px 0 21px}.service-card p{max-width:310px}.steps-grid{grid-template-columns:1fr}.step,.step:first-child,.step:nth-child(3){padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}.step:last-child{border-bottom:0}.step>span{margin-bottom:14px}.ai-diagram{padding:22px;min-height:350px}.diagram-tag{min-width:0;font-size:8px;padding:10px}.diagram-bottom{grid-template-columns:1fr}.diagram-bottom div{min-height:35px}.diagram-stems{height:40px}.diagram-path{height:30px}.page-hero h1{font-size:clamp(2.9rem,10vw,4rem)}.method-timeline article{grid-template-columns:1fr;gap:0}.timeline-no{font-size:42px}.footer-main{grid-template-columns:1fr}.footer-main>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Keep all five nodes of the home-page AI diagram connected at every width. */
.ai-diagram{--diagram-connector:58px}
.diagram-top,.diagram-stems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.diagram-top{justify-items:center;align-items:stretch}
.diagram-tag{width:min(100%,170px);display:grid;place-items:center;min-height:46px}
.diagram-stems,.diagram-outlets{height:var(--diagram-connector)}
.diagram-stems span,.diagram-outlets span{position:relative;justify-self:center;width:2px;height:100%;background:#5dbd80}
.diagram-stems span:after,.diagram-outlets span:before{content:"";position:absolute;left:50%;width:7px;height:7px;border-radius:50%;background:#0aa459;transform:translateX(-50%)}
.diagram-stems span:after{bottom:-3px}
.diagram-outlets{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.diagram-outlets span:before{top:-3px}
.diagram-bottom{grid-template-columns:repeat(3,minmax(0,1fr))}
.diagram-bottom div{min-width:0}

/* Circular labels and a four-piece illustration on Solutions. */
.page-hero-art .art-label{display:grid;place-items:center;width:78px;height:78px;padding:0;border-radius:50%;text-align:center;background:#104c36;box-shadow:0 8px 25px rgba(0,30,19,.18);font-size:9px}
.detail-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:60px;align-items:center}
.detail-intro-copy>p:last-child{max-width:580px;color:var(--muted);font-size:17px;line-height:1.7}
.intro-puzzle{display:block;width:min(100%,320px);height:auto;justify-self:end;filter:drop-shadow(0 16px 20px rgba(5,59,41,.13))}
.intro-puzzle path{stroke:none}
.graphic-data{display:grid;place-items:center}
.graphic-data svg{display:block;width:100%;height:100%}

/* Connect each example step directly to the next one. */
.example-flow{gap:24px}
.example-flow div:not(:last-child):after{content:"";position:absolute;z-index:2;left:50%;right:auto;bottom:-17px;width:3px;height:17px;background:#0aa75e;transform:translateX(-50%)}
.example-flow div:not(:last-child):before{content:"";position:absolute;z-index:2;left:50%;bottom:-24px;width:14px;height:8px;background:#0aa75e;clip-path:polygon(0 0,100% 0,50% 100%);transform:translateX(-50%)}

/* Bring the method numbers closer to their text. */
.method-timeline article{grid-template-columns:116px minmax(0,1fr);gap:34px}
.timeline-no{font-size:86px}

@media(max-width:1050px){.detail-intro-grid{grid-template-columns:minmax(0,1fr) 280px;gap:30px}}
@media(max-width:760px){.detail-intro-grid{grid-template-columns:1fr;gap:25px}.intro-puzzle{width:min(72vw,280px);justify-self:center}.graphic-data{height:225px}.method-timeline article{grid-template-columns:88px minmax(0,1fr);gap:24px}.timeline-no{font-size:72px}}
@media(max-width:520px){.ai-diagram{--diagram-connector:40px}.diagram-top,.diagram-stems{gap:8px}.diagram-tag{min-width:0;padding:7px 4px}.diagram-bottom{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.diagram-bottom div{min-height:66px;flex-direction:column;justify-content:center;gap:5px;padding:6px 4px;text-align:center;font-size:8px}.page-hero-art .art-label{width:64px;height:64px;font-size:8px;letter-spacing:.08em}.method-timeline article{grid-template-columns:70px minmax(0,1fr);gap:14px}.timeline-no{font-size:58px}}

/* TOHOL identity: keep the supplied artwork on light surfaces for clear contrast. */
.flow-hub{background:radial-gradient(circle at 30% 25%,#fff,#dff6e9 80%)}
.hub-mark img{width:50px;height:58px;object-fit:contain}
.flow-hub small{color:var(--forest)}
.art-center{background:#eafff1}
.art-center img{width:58px;height:68px;object-fit:contain}
.footer-wordmark{display:block;width:270px;max-width:100%;padding:11px 14px;border-radius:10px;background:#fff}
.footer-wordmark img{display:block;width:100%;height:auto}
@media(max-width:520px){.hub-mark img{width:40px;height:47px}.art-center img{width:48px;height:56px}.footer-wordmark{width:240px}}
