:root{--navy:#0b2630;--deep:#071e25;--forest:#0e453b;--green:#76a93b;--mint:#d4e7bb;--cream:#f7f6ef;--paper:#f1f3ea;--ink:#152e2e;--muted:#617371;--logo-limit:255px;--logo-limit-mobile:190px;--shell:1300px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}body.mh-nav-open{overflow:hidden}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}::selection{background:#a4d66d;color:#112b28}.mh-shell{width:min(var(--shell),calc(100% - 104px));margin-inline:auto}.mh-eyebrow{display:flex;align-items:center;gap:13px;font-size:11px;letter-spacing:.23em;font-weight:800;color:#5b8c65}.mh-eyebrow i{display:block;width:24px;height:1px;background:#649e72}.mh-eyebrow-light{color:#b9e5b9}.mh-eyebrow-light i{background:#a3d57c}.mh-reveal{transition:opacity .9s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1)}body.mh-js .mh-reveal:not(.mh-visible){opacity:0;transform:translateY(42px)}.mh-text-link{display:inline-flex;align-items:center;gap:23px;font-weight:750;font-size:14px;position:relative;padding-bottom:12px;border-bottom:1px solid #86a88a;transition:gap .35s,color .3s}.mh-text-link:hover{gap:35px;color:#428047}.mh-text-link span{font-size:23px;font-weight:400}.mh-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:18px 24px;border-radius:2px;min-width:205px;font-size:12px;font-weight:800;letter-spacing:.02em;transition:transform .3s,box-shadow .3s,background .3s}.mh-button:hover{transform:translateY(-4px);box-shadow:0 13px 35px #031f1b38}.mh-button span{font-size:20px;line-height:1}.mh-button-light{background:#f4f5e9;color:#153b2f}.mh-button-ghost{border:1px solid #c3dac470;color:#f2f5e7;background:#eaf1e10e}.mh-button-ghost:hover{background:#dcedd81a}
/* Header: glass effect becomes solid on scroll */
.mh-reading-progress{position:fixed;z-index:200;top:0;left:0;height:3px;width:100%;background:#aade6f;transform:scaleX(0);transform-origin:left;pointer-events:none}.mh-header{position:fixed;z-index:110;top:0;left:0;width:100%;transition:background .4s,box-shadow .4s}.mh-header:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#081d23ae,#0e2d2900);pointer-events:none;opacity:1;transition:opacity .3s}.mh-header.mh-scrolled{background:#f8f9f4f5;box-shadow:0 2px 25px #12281c15;backdrop-filter:blur(20px)}.mh-header.mh-scrolled:before{opacity:0}.mh-header-inner{height:95px;display:flex;align-items:center;justify-content:space-between;position:relative;gap:30px}.mh-brand{flex:none;position:relative;z-index:3}.mh-wordmark{display:inline-flex;align-items:center;gap:13px;line-height:1;max-width:var(--logo-limit)}.mh-monogram{font-family:Georgia,serif;letter-spacing:-.08em;font-weight:750;font-size:38px;color:#fff;white-space:nowrap}.mh-monogram span{color:#b8e87c;font-size:.65em;padding-inline:1px}.mh-wordmark-type strong{display:block;color:#fff;font-size:13px;font-weight:850;letter-spacing:.045em;white-space:nowrap}.mh-wordmark-type small{display:block;color:#d0dfd1;font-size:7.2px;letter-spacing:.17em;padding-top:8px;white-space:nowrap}.mh-header.mh-scrolled .mh-wordmark-type strong,.mh-header.mh-scrolled .mh-monogram{color:#173b34}.mh-header.mh-scrolled .mh-wordmark-type small{color:#637d70}.mh-header.mh-scrolled .mh-monogram span{color:#72a84b}.mh-brand img,.mh-footer img,.mh-brand .custom-logo-link,.mh-footer .custom-logo-link{max-width:var(--logo-limit);width:auto;max-height:65px;height:auto;object-fit:contain;object-position:left center}.mh-navigation{display:flex;align-items:center;gap:44px}.mh-nav-links{padding:0;margin:0;list-style:none;display:flex;align-items:center;gap:32px}.mh-nav-links a{font-size:12px;color:#fff;font-weight:700;position:relative;opacity:.92;transition:opacity .2s}.mh-nav-links a:after{content:'';position:absolute;bottom:-8px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.mh-nav-links a:hover:after,.mh-nav-links .current-menu-item a:after{transform:scaleX(1)}.mh-nav-links a:hover{opacity:1}.mh-nav-cta{display:flex;align-items:center;gap:18px;padding:15px 20px;background:#d6eca9;color:#15372e;font-size:11px;font-weight:800;white-space:nowrap}.mh-nav-cta span{font-size:18px}.mh-header.mh-scrolled .mh-nav-links a{color:#1d4035}.mh-header.mh-scrolled .mh-nav-cta{background:#144d3b;color:#fff}.mh-menu-button{display:none}
/* Cinematic hero with original local illustrated scenery, depth, glow, drifting mist */
.mh-hero{height:max(750px,100svh);min-height:695px;position:relative;isolation:isolate;overflow:hidden;background:#0b312e;color:#fff}.mh-hero-landscape{position:absolute;inset:-4%;z-index:-3;background-image:linear-gradient(90deg,#001f24a1,#04251d22 68%,#0a2a2355),var(--scene-image);background-position:center,center 52%;background-size:cover;transform:scale(1.065);animation:mh-hero-pan 24s ease-in-out infinite alternate;will-change:transform}.mh-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#09242b38 0%,transparent 28%,#092a2c30 63%,#061f20e0 100%)}.mh-hero-haze{pointer-events:none;position:absolute;left:-22%;bottom:5%;width:165%;height:200px;background:radial-gradient(ellipse at center,#e4eee38f 0,#bddec44a 39%,transparent 73%);filter:blur(32px);opacity:.45;z-index:-2;will-change:transform}.mh-haze-1{animation:mh-mist-drift 19s ease-in-out infinite alternate}.mh-haze-2{bottom:18%;left:10%;height:100px;opacity:.26;animation:mh-mist-drift 15s ease-in-out infinite alternate-reverse}.mh-hero-lines{position:absolute;inset:0;pointer-events:none;z-index:-2;display:flex;justify-content:space-around;opacity:.1}.mh-hero-lines span{width:1px;height:100%;background:#fff}.mh-hero-content{min-height:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:70px;padding-bottom:115px}.mh-hero-kicker{font-size:10px;font-weight:700;letter-spacing:.28em;color:#dcebc9;margin-bottom:30px}.mh-hero-title{font-size:clamp(57px,7.25vw,114px);line-height:1.08;font-weight:750;letter-spacing:-.065em;margin:0;max-width:1220px}.mh-title-row{display:block;overflow:hidden;padding:0 15px 10px}.mh-title-row>span{display:block;animation:mh-rise 1.3s cubic-bezier(.18,.86,.34,1) both}.mh-title-accent>span{color:#d4edbd;animation-delay:.22s}.mh-hero-description{max-width:680px;font-size:15px;line-height:1.9;color:#eef0dd;margin:22px auto 30px}.mh-hero-buttons{display:flex;align-items:center;gap:14px}.mh-hero-footer{position:absolute;z-index:2;left:50%;bottom:30px;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-between;color:#f2f3e5}.mh-hero-sector-caption{display:flex;gap:21px;align-items:center;font-size:11px;color:#d6e2d7}.mh-hero-sector-caption span{white-space:nowrap}.mh-hero-sector-caption span b{font-weight:750;margin-left:7px}.mh-hero-sector-caption i{display:block;width:4px;height:4px;border-radius:50%;background:#bbd5a0}.mh-scroll-cue{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.18em;font-weight:800;white-space:nowrap}.mh-scroll-cue span{display:block;width:29px;height:44px;border:1px solid #ffffff80;border-radius:25px;position:relative}.mh-scroll-cue span:after{content:'';display:block;position:absolute;top:9px;left:13px;width:2px;height:10px;background:#fff;animation:mh-scroll 2.3s infinite}
/* Intro artistic mask from video, space & airy editorial layout */
.mh-intro{background:var(--cream);padding:145px 0 150px;overflow:hidden}.mh-intro-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:11%}.mh-intro-art{position:relative;min-height:545px;display:flex;align-items:center;justify-content:center}.mh-intro-blob{width:100%;height:490px;overflow:hidden;border-radius:53% 47% 49% 51% / 37% 45% 55% 63%;filter:drop-shadow(0 15px 20px #17352130)}.mh-intro-blob img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1s}.mh-intro-art:hover img{transform:scale(1.16)}.mh-intro-ring{position:absolute;width:86%;height:88%;border-radius:50%;border:1px solid #89aa8960;transform:rotate(24deg) translateX(17px);z-index:-1}.mh-intro-float{position:absolute;right:-12px;bottom:32px;padding:25px 27px;background:#185440;color:#fff;display:flex;gap:16px;align-items:center;box-shadow:0 25px 50px #102b2540}.mh-intro-float strong{font-size:55px;font-weight:400;font-family:Georgia,serif}.mh-intro-float small{font-size:9px;letter-spacing:.18em;line-height:1.7}.mh-intro-text h2,.mh-section-header h2,.mh-sectors-lead h2,.mh-energy-copy h2{font-size:clamp(43px,4.4vw,69px);line-height:1.13;font-weight:700;letter-spacing:-.06em;margin:28px 0}.mh-intro-text>p{font-size:16px;line-height:2;color:var(--muted);max-width:510px}.mh-intro-traits{margin:27px 0 35px;border-top:1px solid #d5dcd1}.mh-intro-traits div{display:flex;gap:23px;align-items:center;border-bottom:1px solid #d5dcd1;padding:12px 0}.mh-intro-traits div span{font-size:10px;color:#6e9e6f}.mh-intro-traits div strong{font-size:13px;font-weight:650}.mh-slider-plugin{overflow:hidden}
/* sectors */
.mh-sectors{background:#eff1e8;overflow:hidden;padding:112px 0 65px}.mh-sectors-lead,.mh-section-header{display:flex;align-items:end;justify-content:space-between;gap:90px;margin-bottom:95px}.mh-sectors-lead h2,.mh-section-header h2{margin:22px 0 0}.mh-sectors-lead h2 em,.mh-section-header em,.mh-energy h2 em,.mh-manifesto h2 em,.mh-contact h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;color:#639663}.mh-sectors-lead>p,.mh-section-header>p{max-width:330px;font-size:14px;color:#71827b;line-height:1.9}.mh-sector-panel{padding:45px 0 155px;scroll-margin-top:86px}.mh-sector-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:10%;align-items:center;min-height:500px}.mh-sector-panel:nth-of-type(even) .mh-sector-visual{order:2}.mh-sector-panel:nth-of-type(even) .mh-sector-copy{order:1}.mh-sector-visual{position:relative;padding:15px 26px 25px 0}.mh-sector-art{position:relative;width:100%;aspect-ratio:1.22;overflow:hidden;border-radius:46% 54% 43% 57% / 53% 44% 56% 47%;isolation:isolate;box-shadow:0 32px 65px #1b443226}.mh-sector-art img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform .9s cubic-bezier(.18,.67,.17,1)}.mh-sector-art:hover img{transform:scale(1.10)}.mh-orbit-ring{position:absolute;inset:14px;border:1px solid #f5fff27c;border-radius:inherit;pointer-events:none}.mh-photo-badge{position:absolute;left:34px;bottom:32px;background:#f7f9ee;display:flex;align-items:center;gap:13px;padding:11px 15px;color:#275447;font-size:9px;font-weight:800;letter-spacing:.09em}.mh-photo-badge span{font-size:20px;font-family:Georgia,serif}.mh-sector-visual-caption{position:absolute;bottom:-14px;right:34px;color:#80968b;font-size:10px;letter-spacing:.18em;font-weight:750}.mh-sector-counter{display:flex;align-items:center;gap:16px;color:#788c7f;font-size:11px;font-weight:800;letter-spacing:.17em}.mh-sector-counter span{color:#4d8d54;font-size:43px;letter-spacing:-.05em;font-family:Georgia,serif;font-weight:400}.mh-sector-counter i{height:1px;width:45px;background:#80a786}.mh-sector-tag{font-size:10px;font-weight:800;letter-spacing:.20em;color:#80a078;margin:28px 0 9px}.mh-sector-copy h3{font-size:clamp(54px,5.8vw,88px);line-height:1.04;font-weight:750;margin:0 0 20px;max-width:530px}.mh-sector-copy h3 span{color:#8eb866}.mh-sector-description{font-size:16px;line-height:1.9;color:#61766a;max-width:480px;margin:0 0 23px}.mh-sector-keywords{color:#7c947f;font-size:12px;letter-spacing:.03em;padding:16px 0 27px;border-top:1px solid #d3ded0}.mh-sector-02{background:#e7eee6}.mh-sector-02 .mh-sector-art{border-radius:54% 46% 58% 42% / 38% 52% 48% 62%}.mh-sector-03{background:#f0f2e9}
/* landscape statement */
.mh-manifesto{height:650px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;color:#fff;text-align:center;background:#0d302e}.mh-manifesto-land{position:absolute;inset:-9%;z-index:-2;background-image:linear-gradient(#093528c4,#092a2fca),url('../img/forest-landscape.svg');background-position:center;background-size:cover;transform:scale(1.1)}.mh-manifesto:after{content:'';inset:0;position:absolute;z-index:-1;background:radial-gradient(circle at center,#6d99712f,transparent 57%)}.mh-manifesto-center{display:flex;flex-direction:column;align-items:center}.mh-manifesto h2{font-size:clamp(42px,5vw,79px);font-weight:680;letter-spacing:-.06em;line-height:1.17;margin:27px 0 35px}.mh-manifesto h2 em{color:#c9eaae}
/* Hybrid technology showcase */
.mh-energy{background:#0b2932;color:white;padding:125px 0}.mh-energy-layout{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:65px}.mh-energy .mh-eyebrow{color:#add8bb}.mh-energy h2{font-size:clamp(38px,4.3vw,66px);line-height:1.13;color:#fff;margin:24px 0}.mh-energy h2 em{color:#afd883}.mh-energy-copy>p{font-size:15px;line-height:1.85;color:#acc4bc;max-width:445px}.mh-info-note{display:flex;gap:14px;padding:17px;border:1px solid #96bcb845;background:#163a4280;margin-top:35px;max-width:420px;font-size:11px;line-height:1.65;color:#aac7bd}.mh-info-note>span:first-child{font-size:19px;color:#bcdf8f}.mh-info-note b{color:#d9f5de;font-size:10px;letter-spacing:.06em}.mh-energy .mh-hybrid{box-shadow:0 28px 70px #011c2055}
/* portfolio */
.mh-projects{padding:135px 0 150px;background:#f9f9f5}.mh-projects .mh-section-header{margin-bottom:55px}.mh-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-bottom:35px}.mh-project-card{min-width:0}.mh-project-image{position:relative;display:block;aspect-ratio:1.4;overflow:hidden;background:#c7d8c7}.mh-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.mh-project-image:hover img{transform:scale(1.065)}.mh-empty-project-img{width:100%;height:100%;background:linear-gradient(135deg,#59887b,#1b4946);display:flex;align-items:center;justify-content:center;color:#ebf8e9;font-family:Georgia,serif;font-size:70px}.mh-project-open{position:absolute;right:12px;bottom:12px;width:40px;height:40px;display:grid;place-items:center;background:#e5ecd8;color:#0f4134;font-size:25px}.mh-project-data{padding:22px 0}.mh-project-data>span{font-size:10px;font-weight:800;color:#7ba46b;letter-spacing:.12em}.mh-project-data h3{font-size:22px;margin:9px 0}.mh-project-data p{font-size:13px;color:#6a7b73;line-height:1.7}.mh-empty-projects{display:grid;grid-template-columns:.55fr 1fr;align-items:center;gap:35px;min-height:255px;border:1px solid #cfdbce;background:#edf3e9}.mh-empty-decor{font-family:Georgia,serif;font-size:clamp(50px,9vw,122px);letter-spacing:-.12em;color:#3e7757;text-align:center}.mh-empty-decor span{font-size:.42em;color:#7fb657;vertical-align:top}.mh-empty-projects>div:last-child{padding:30px 35px 30px 0}.mh-empty-projects>div:last-child>span{color:#7b9f72;font-size:9px;font-weight:800;letter-spacing:.2em}.mh-empty-projects h3{margin:13px 0;font-size:clamp(28px,3vw,42px);line-height:1.2;font-weight:600}.mh-empty-projects p{font-size:13px;line-height:1.8;color:#667f74;max-width:540px}
/* Contact dark */
.mh-contact{padding:120px 0 130px;color:#fff;background:radial-gradient(ellipse 60% 120% at 5% 90%,#1c654a,#0b2b31 73%)}.mh-contact-grid{display:grid;grid-template-columns:1fr .75fr;gap:18%;align-items:center}.mh-contact h2{font-size:clamp(52px,5.6vw,90px);font-weight:680;line-height:1.1;margin:25px 0}.mh-contact h2 em{color:#c2e6aa}.mh-contact p{font-size:15px;line-height:1.85;color:#aec8bd;max-width:450px;margin-bottom:30px}.mh-contact-panel{background:#f0f4e9;color:#173a32;padding:40px 45px;box-shadow:0 30px 50px #001b223b}.mh-contact-panel>small{font-size:9px;letter-spacing:.15em;color:#698f75;font-weight:800}.mh-contact-panel h3{font-family:Georgia,serif;font-size:52px;font-weight:400;letter-spacing:-.06em;margin:16px 0 32px}.mh-contact-panel>div{border-top:1px solid #c9dacf;display:flex;flex-direction:column;gap:7px;padding:15px 0}.mh-contact-panel>div span{font-size:9px;color:#80a283;font-weight:800;letter-spacing:.16em}.mh-contact-panel>div strong{font-size:14px;font-weight:650;overflow-wrap:anywhere}
/* Footer */
.mh-footer{background:#071d23;color:#d7e2d6}.mh-footer-grid{padding:77px 0;display:grid;grid-template-columns:1.7fr .7fr 1fr;gap:8%}.mh-footer .mh-monogram,.mh-footer .mh-wordmark-type strong{color:#f0f5e9}.mh-footer-about p{font-size:12px;line-height:2.1;color:#8eaaa0;margin-top:28px}.mh-footer-menu,.mh-footer-contact{display:flex;flex-direction:column;gap:14px}.mh-footer-menu strong,.mh-footer-contact strong{font-size:10px;color:#c8e5c0;letter-spacing:.17em;margin-bottom:13px}.mh-footer-menu a,.mh-footer-contact a,.mh-footer-contact span{font-size:12px;color:#91aba1;line-height:1.6}.mh-footer-menu a:hover,.mh-footer-contact a:hover{color:#d5f0b2}.mh-footer-base{border-top:1px solid #ffffff20;display:flex;justify-content:space-between;padding:22px 0 30px;color:#739089;font-size:10px;letter-spacing:.12em}
/* Generic WordPress pages */
.mh-inner-page{padding:170px 0 130px;min-height:75vh}.mh-inner-page h1{font-size:clamp(42px,5vw,75px);line-height:1.16}.mh-inner-page .entry-content{max-width:950px;font-size:16px;line-height:1.9}.mh-inner-page .wp-post-image{max-width:950px;height:auto;margin:35px 0}.mh-archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.mh-archive-card{border:1px solid #d0ddd0;padding:19px}.mh-archive-card h2{font-size:23px}.mh-archive-card p{font-size:13px;line-height:1.7}.mh-archive-card img{width:100%;aspect-ratio:1.5;object-fit:cover;margin-bottom:20px}
@keyframes mh-rise{from{opacity:0;transform:translateY(110%) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes mh-hero-pan{from{transform:scale(1.065) translate3d(-1%,0,0)}to{transform:scale(1.12) translate3d(1%,1.6%,0)}}@keyframes mh-mist-drift{from{transform:translate3d(-4%,0,0)}to{transform:translate3d(9%,-19%,0)}}@keyframes mh-scroll{0%{opacity:0;transform:translateY(-5px)}45%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media(max-width:1200px){.mh-shell{width:min(var(--shell),calc(100% - 70px))}.mh-navigation{gap:18px}.mh-nav-links{gap:20px}.mh-sector-grid{gap:6%}.mh-hero-title{font-size:clamp(52px,7.25vw,90px)}.mh-energy-layout{gap:35px}}
@media(max-width:1020px){.mh-header-inner{height:78px}.mh-nav-links{gap:15px}.mh-nav-links a{font-size:11px}.mh-nav-cta{padding:12px 13px;font-size:10px}.mh-intro-grid,.mh-sector-grid,.mh-energy-layout,.mh-contact-grid{gap:6%}.mh-intro-art{min-height:440px}.mh-intro-blob{height:390px}.mh-sector-visual{padding-right:0}.mh-sector-copy h3{font-size:59px}.mh-sector-description{font-size:14px}.mh-energy-layout{grid-template-columns:1fr}.mh-energy-copy{max-width:740px}.mh-energy-sim{width:100%}}
@media(max-width:780px){.mh-shell{width:calc(100% - 42px)}.mh-header-inner{height:72px}.mh-brand img,.mh-footer img,.mh-brand .custom-logo-link,.mh-footer .custom-logo-link{max-width:var(--logo-limit-mobile);max-height:56px}.mh-wordmark{max-width:var(--logo-limit-mobile);gap:7px}.mh-monogram{font-size:28px}.mh-wordmark-type strong{font-size:10.4px}.mh-wordmark-type small{font-size:6.3px;letter-spacing:.08em}.mh-menu-button{display:flex;position:relative;z-index:4;border:1px solid #ffffff8a;background:#0a2c2f55;width:42px;height:42px;padding:12px 9px;flex-direction:column;justify-content:space-between}.mh-menu-button span{background:white;height:1.6px;width:100%;transition:transform .3s,opacity .3s}.mh-header.mh-scrolled .mh-menu-button{background:#104e3a}.mh-menu-button[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}.mh-menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.mh-menu-button[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}.mh-navigation{position:fixed;inset:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding:110px 8% 60px;background:#082a2c;gap:40px;opacity:0;visibility:hidden;transform:translateX(20px);transition:opacity .3s,visibility .3s,transform .3s}.mh-navigation.mh-open{opacity:1;visibility:visible;transform:none}.mh-nav-links{flex-direction:column;align-items:flex-start;gap:26px}.mh-nav-links a,.mh-header.mh-scrolled .mh-nav-links a{color:white;font-size:25px}.mh-nav-cta{align-self:flex-start;font-size:12px}.mh-hero{height:94svh;min-height:690px}.mh-hero-content{padding-top:70px;padding-bottom:95px}.mh-hero-title{font-size:clamp(44px,8.3vw,76px)}.mh-hero-description{font-size:13px;line-height:1.8}.mh-hero-kicker{font-size:9px;letter-spacing:.12em}.mh-hero-footer{bottom:24px}.mh-hero-sector-caption{gap:9px;font-size:8px}.mh-hero-sector-caption span b{margin-left:2px}.mh-scroll-cue{font-size:0}.mh-intro{padding:95px 0}.mh-intro-grid{grid-template-columns:1fr;gap:55px}.mh-intro-art{width:min(100%,600px);margin:auto}.mh-intro-blob{height:470px}.mh-intro-text h2{font-size:clamp(42px,8vw,65px)}.mh-sectors{padding:95px 0 20px}.mh-sectors-lead,.mh-section-header{margin-bottom:55px;display:block}.mh-sectors-lead>p,.mh-section-header>p{max-width:540px}.mh-sectors-lead h2{font-size:clamp(38px,7vw,62px)}.mh-sector-panel{padding:25px 0 110px}.mh-sector-grid{grid-template-columns:1fr;gap:38px}.mh-sector-panel:nth-of-type(even) .mh-sector-visual,.mh-sector-panel:nth-of-type(even) .mh-sector-copy{order:initial}.mh-sector-visual{max-width:680px}.mh-sector-art{aspect-ratio:1.5}.mh-sector-copy{padding-left:4px}.mh-sector-copy h3{font-size:clamp(50px,9vw,76px)}.mh-sector-counter span{font-size:35px}.mh-manifesto{height:540px}.mh-manifesto h2{font-size:clamp(38px,6.3vw,60px)}.mh-energy{padding:100px 0}.mh-projects{padding:100px 0}.mh-project-grid{grid-template-columns:repeat(2,1fr)}.mh-contact{padding:100px 0}.mh-contact-grid{grid-template-columns:1fr;gap:45px}.mh-contact-panel{max-width:620px}.mh-footer-grid{grid-template-columns:1fr 1fr;gap:50px}.mh-footer-about{grid-column:1/-1}.mh-archive-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.mh-shell{width:calc(100% - 34px)}.mh-header-inner{height:70px}.mh-hero{height:92svh;min-height:630px}.mh-hero-title{font-size:clamp(37px,9.2vw,53px);line-height:1.1}.mh-hero-kicker{font-size:8px;line-height:2}.mh-hero-description{font-size:12px;max-width:360px}.mh-hero-content{padding-bottom:120px}.mh-hero-buttons{flex-direction:column;align-items:stretch;width:min(100%,270px)}.mh-button{padding:14px 17px;min-height:45px;font-size:11px}.mh-hero-sector-caption{display:flex;gap:6px;font-size:8px}.mh-hero-sector-caption span{white-space:normal}.mh-hero-sector-caption i{display:none}.mh-hero-sector-caption span b{display:block;margin-top:3px}.mh-hero-footer{bottom:19px}.mh-scroll-cue{display:none}.mh-intro{padding:85px 0}.mh-intro-art{min-height:325px}.mh-intro-blob{height:315px}.mh-intro-float{right:0;bottom:-7px;padding:15px}.mh-intro-float strong{font-size:35px}.mh-intro-float small{font-size:8px}.mh-intro-text h2,.mh-sectors-lead h2,.mh-energy h2{font-size:clamp(37px,10vw,50px)}.mh-intro-text>p{font-size:14px}.mh-sector-art{aspect-ratio:1.12}.mh-sector-copy h3{font-size:clamp(49px,14vw,68px)}.mh-sector-description{font-size:14px}.mh-sector-panel{padding-bottom:95px}.mh-photo-badge{bottom:20px;left:15px;font-size:8px;padding:9px}.mh-sector-visual-caption{font-size:8px}.mh-manifesto{height:470px}.mh-manifesto h2{font-size:clamp(35px,9vw,48px)}.mh-energy-copy p{font-size:13px}.mh-project-grid{grid-template-columns:1fr}.mh-empty-projects{grid-template-columns:1fr;gap:0}.mh-empty-decor{padding:22px 0 0;font-size:68px}.mh-empty-projects>div:last-child{padding:0 25px 30px}.mh-contact h2{font-size:clamp(47px,13vw,65px)}.mh-contact-panel{padding:30px}.mh-footer-grid{grid-template-columns:1fr;gap:35px}.mh-footer-about{grid-column:auto}.mh-footer-base{flex-direction:column;gap:12px}.mh-archive-grid{grid-template-columns:1fr}.mh-inner-page{padding-top:125px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body.mh-js .mh-reveal:not(.mh-visible){opacity:1;transform:none}.mh-hero-landscape{transform:none!important}}

/* v4.7 — visible, multi-depth animated mist/clouds + real in-hero SVG wave.
 * Prior build drew the wave in the clipped next section and inherited reduced-motion
 * animation:none rules, making both effects effectively invisible.
 */
.mh-hero { isolation:isolate; overflow:hidden; }
.mh-hero-landscape { z-index:0; }
.mh-hero::after { z-index:1; pointer-events:none; }
.mh-hero-haze { z-index:2; }
.mh-hero-lines { z-index:2; }
.mh-hero-clouds { position:absolute; inset:0; z-index:3; overflow:hidden; pointer-events:none; }
.mh-cloud { position:absolute; display:block; background:url('../img/cloud-soft.svg') center/100% 100% no-repeat; opacity:.9; filter:drop-shadow(0 2px 12px rgba(235,250,232,.12)); transform:translate3d(0,0,0); will-change:transform; animation:mh-v47-cloud-glide var(--mh-cloud-duration,22s) ease-in-out infinite alternate; }
.mh-cloud-1 { width:min(68vw,890px);height:clamp(150px,19vw,310px);left:-8%;top:8%;--mh-cloud-duration:18s;--mh-cloud-travel:24vw;opacity:.76; }
.mh-cloud-2 { width:min(54vw,700px);height:clamp(120px,15vw,250px);right:-10%;top:24%;--mh-cloud-duration:24s;--mh-cloud-travel:-21vw;opacity:.57;animation-delay:-9s; }
.mh-cloud-3 { width:min(65vw,870px);height:clamp(130px,17vw,285px);left:3%;top:50%;--mh-cloud-duration:29s;--mh-cloud-travel:15vw;opacity:.33;animation-delay:-11s; }
.mh-cloud-4 { width:min(44vw,610px);height:clamp(115px,13vw,225px);right:-9%;top:9%;--mh-cloud-duration:34s;--mh-cloud-travel:-17vw;opacity:.48;animation-delay:-18s; }
@keyframes mh-v47-cloud-glide { from {transform:translate3d(0,-6px,0)} to {transform:translate3d(var(--mh-cloud-travel),15px,0)} }
.mh-hero-content { z-index:5; }
.mh-hero-footer { z-index:7; bottom:105px; }
.mh-hero-wave { position:absolute;z-index:6;bottom:-1px;left:0;width:100%;height:clamp(94px,12vw,155px);display:block;color:var(--cream);pointer-events:none; }
/* The next section now begins immediately beneath the SVG, instead of
 * attempting a pseudo-wave that was clipped by its overflow:hidden. */
.mh-intro { position:relative;margin-top:0;padding-top:125px; }
.mh-intro::before,.mh-intro::after { content:none !important; }
@media(max-width:780px){
 .mh-hero-footer{bottom:95px}
 .mh-hero-wave{height:105px}
 .mh-intro{padding-top:100px}
 .mh-cloud-1{width:90vw;height:230px;left:-20%;top:13%}
 .mh-cloud-2{width:92vw;height:245px;right:-34%;top:29%}
 .mh-cloud-3{width:96vw;height:230px;left:-13%;top:54%}
 .mh-cloud-4{width:66vw;height:185px;top:5%}
}
@media(max-width:520px){
 .mh-hero-footer{bottom:84px}
 .mh-hero-wave{height:90px}
 .mh-intro{padding-top:85px}
}
/* Owner explicitly requests always-on ambient motion, even on their Chrome
 * configuration which reports prefers-reduced-motion:reduce. The override is
 * narrowly scoped to the clouds; it does not alter site-wide preferences.
 */
@media (prefers-reduced-motion:reduce) {
 .mh-hero .mh-cloud { animation:mh-v47-cloud-glide var(--mh-cloud-duration,22s) ease-in-out infinite alternate !important; }
}


/* v4.9 — refined cinematic hero buttons */
.mh-hero-buttons{gap:18px;flex-wrap:wrap;justify-content:center}
.mh-hero-buttons .mh-button{position:relative;isolation:isolate;min-width:224px;min-height:60px;padding:12px 14px 12px 24px;border-radius:18px;font-size:13px;font-weight:800;letter-spacing:.01em;line-height:1;border:1px solid transparent;overflow:hidden;box-shadow:0 14px 38px rgba(4,24,22,.18), inset 0 1px 0 rgba(255,255,255,.09);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s cubic-bezier(.22,1,.36,1),border-color .28s ease,background .28s ease,color .28s ease}
.mh-hero-buttons .mh-button::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,0) 42%);pointer-events:none;opacity:.8}
.mh-hero-buttons .mh-button::after{content:'';position:absolute;inset:auto auto 0 0;width:100%;height:100%;background:radial-gradient(circle at 15% 25%,rgba(255,255,255,.16),transparent 34%);opacity:.55;pointer-events:none}
.mh-hero-buttons .mh-button:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(3,22,21,.28), inset 0 1px 0 rgba(255,255,255,.12)}
.mh-hero-buttons .mh-button:active{transform:translateY(-2px) scale(.995)}
.mh-hero-buttons .mh-button span{position:relative;z-index:1;flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;font-size:17px;line-height:1;margin-left:12px;transition:transform .28s ease,background .28s ease,color .28s ease,border-color .28s ease}
.mh-hero-buttons .mh-button:hover span{transform:translateX(3px) rotate(-7deg)}
.mh-hero-buttons .mh-button-light{background:linear-gradient(180deg,rgba(245,247,234,.98),rgba(236,240,224,.92));color:#12362e;border-color:rgba(232,241,220,.88)}
.mh-hero-buttons .mh-button-light span{background:#1f4d3a;color:#eff7e8;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 6px 16px rgba(12,49,40,.2)}
.mh-hero-buttons .mh-button-light:hover{background:linear-gradient(180deg,#f8faef,#eef3df);border-color:#f8fbf2;color:#0d3129}
.mh-hero-buttons .mh-button-ghost{background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05));border-color:rgba(224,237,225,.28);color:#f4f7ec;box-shadow:0 14px 38px rgba(2,18,16,.12), inset 0 1px 0 rgba(255,255,255,.08)}
.mh-hero-buttons .mh-button-ghost span{background:rgba(255,255,255,.08);border:1px solid rgba(237,247,238,.24);color:#ffffff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.mh-hero-buttons .mh-button-ghost:hover{background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.09));border-color:rgba(231,243,229,.42)}
.mh-hero-buttons .mh-button-ghost:hover span{background:rgba(255,255,255,.14);border-color:rgba(244,252,242,.42)}
@media(max-width:780px){.mh-hero-buttons{gap:12px}.mh-hero-buttons .mh-button{min-width:210px;border-radius:16px;padding:12px 14px 12px 18px}}
@media(max-width:520px){.mh-hero-buttons{width:min(100%,296px)}.mh-hero-buttons .mh-button{width:100%;min-width:0;min-height:54px;padding:11px 12px 11px 17px;font-size:12px}.mh-hero-buttons .mh-button span{width:34px;height:34px;font-size:16px;margin-left:10px}}


/* v5.0 — premium CTA system across manifesto, contact, links, and project cards */
.mh-button{position:relative;isolation:isolate;overflow:hidden;border:1px solid transparent;border-radius:18px;box-shadow:0 16px 34px rgba(7,31,27,.14), inset 0 1px 0 rgba(255,255,255,.08);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s cubic-bezier(.22,1,.36,1),border-color .28s ease,background .28s ease,color .28s ease}
.mh-button::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,0) 46%);pointer-events:none;opacity:.82}
.mh-button::after{content:'';position:absolute;inset:-35% auto auto -12%;width:64%;height:180%;background:linear-gradient(115deg,rgba(255,255,255,.17),rgba(255,255,255,0) 62%);transform:translateX(-135%) rotate(12deg);transition:transform .58s cubic-bezier(.22,1,.36,1);pointer-events:none}
.mh-button:hover{transform:translateY(-5px);box-shadow:0 24px 42px rgba(4,23,20,.2), inset 0 1px 0 rgba(255,255,255,.1)}
.mh-button:hover::after{transform:translateX(195%) rotate(12deg)}
.mh-button span{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;font-size:18px;line-height:1;flex:none;margin-left:10px;transition:transform .28s ease,background .28s ease,border-color .28s ease,color .28s ease,box-shadow .28s ease}
.mh-button:hover span{transform:translateX(3px) rotate(-7deg)}
.mh-button-light{background:linear-gradient(180deg,#f7f8ee,#edf1df);color:#16392f;border-color:#e8eedf}
.mh-button-light span{background:#174537;color:#eff7e7;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 7px 18px rgba(7,41,32,.18)}
.mh-button-light:hover{background:linear-gradient(180deg,#fcfdf4,#f0f4e4);border-color:#f2f6ea;color:#102e26}
.mh-button-ghost{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));border-color:rgba(231,241,231,.25);color:#f4f7ea;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.mh-button-ghost span{background:rgba(255,255,255,.09);color:#fff;border:1px solid rgba(244,252,246,.24)}
.mh-button-ghost:hover{background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.09));border-color:rgba(237,245,234,.42)}
.mh-button-ghost:hover span{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.38)}
.mh-manifesto .mh-button,.mh-contact .mh-button{min-width:248px;padding:14px 16px 14px 24px;font-size:13px;font-weight:800;letter-spacing:.015em}
.mh-contact .mh-button{box-shadow:0 18px 36px rgba(4,18,18,.18), inset 0 1px 0 rgba(255,255,255,.08)}
.mh-text-link{display:inline-flex;align-items:center;gap:16px;padding:12px 4px 14px 0;border-bottom:none;color:#18372e;font-size:14px;font-weight:800;letter-spacing:.005em;transition:color .28s ease,transform .28s ease}
.mh-text-link::before{content:'';position:absolute;left:0;right:54px;bottom:0;height:1px;background:linear-gradient(90deg,#7fa176,#bfd0bc);transform-origin:left;transition:transform .3s ease,opacity .3s ease}
.mh-text-link::after{content:'';position:absolute;left:0;bottom:-1px;width:0;height:2px;background:linear-gradient(90deg,#3a7b4b,#8dc060);transition:width .3s cubic-bezier(.22,1,.36,1)}
.mh-text-link:hover{color:#2f7740;transform:translateX(2px)}
.mh-text-link:hover::before{opacity:.45;transform:scaleX(.88)}
.mh-text-link:hover::after{width:calc(100% - 54px)}
.mh-text-link span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:999px;background:linear-gradient(180deg,#f8fbf3,#ebf1e3);border:1px solid #d6dfcf;color:#184133;font-size:17px;font-weight:600;box-shadow:0 8px 18px rgba(9,36,29,.08);transition:transform .28s ease,box-shadow .28s ease,background .28s ease,color .28s ease}
.mh-text-link:hover span{transform:translateX(3px) rotate(-10deg);box-shadow:0 12px 24px rgba(12,47,37,.14);background:linear-gradient(180deg,#ffffff,#eef5e7)}
.mh-project-card{border-radius:26px;transition:transform .32s cubic-bezier(.22,1,.36,1),box-shadow .32s cubic-bezier(.22,1,.36,1)}
.mh-project-card:hover{transform:translateY(-6px)}
.mh-project-image{border-radius:26px;box-shadow:0 16px 34px rgba(8,31,28,.08)}
.mh-project-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(9,33,27,.14) 100%);pointer-events:none;opacity:0;transition:opacity .28s ease}
.mh-project-image:hover::after{opacity:1}
.mh-project-open{right:16px;bottom:16px;width:52px;height:52px;border-radius:16px;background:linear-gradient(180deg,#f6faef,#e9f1de);border:1px solid #dce7d3;color:#174637;font-size:24px;box-shadow:0 14px 28px rgba(7,33,26,.16), inset 0 1px 0 rgba(255,255,255,.5);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease,background .28s ease,color .28s ease}
.mh-project-image:hover .mh-project-open{transform:translateY(-3px) rotate(-8deg);box-shadow:0 20px 34px rgba(6,28,22,.22), inset 0 1px 0 rgba(255,255,255,.5);background:linear-gradient(180deg,#ffffff,#eef5e6)}
.mh-project-data h3 a{transition:color .24s ease}
.mh-project-card:hover .mh-project-data h3 a{color:#2b6d40}
@media(max-width:780px){.mh-manifesto .mh-button,.mh-contact .mh-button{min-width:228px;padding:13px 14px 13px 20px}.mh-project-open{width:48px;height:48px;border-radius:14px}}
@media(max-width:520px){.mh-button{border-radius:16px}.mh-button span{width:34px;height:34px;font-size:16px}.mh-manifesto .mh-button,.mh-contact .mh-button{min-width:0;width:100%;max-width:288px;padding:12px 13px 12px 18px;font-size:12px}.mh-text-link{gap:12px;font-size:13px}.mh-text-link span{width:32px;height:32px;font-size:16px}.mh-project-open{right:12px;bottom:12px;width:44px;height:44px;border-radius:13px;font-size:22px}}


/* v5.1 — refine header CTA and round contact card */
.mh-nav-cta{position:relative;isolation:isolate;gap:14px;padding:11px 14px 11px 18px;min-height:52px;border-radius:999px;background:linear-gradient(180deg,#e3f1bd,#d2e79a);border:1px solid rgba(227,242,184,.72);box-shadow:0 14px 30px rgba(5,24,19,.16),inset 0 1px 0 rgba(255,255,255,.35);font-size:11px;font-weight:850;letter-spacing:.02em;color:#12382d;overflow:hidden;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s cubic-bezier(.22,1,.36,1),background .28s ease,color .28s ease,border-color .28s ease}
.mh-nav-cta::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,0) 48%);pointer-events:none}
.mh-nav-cta::after{content:'';position:absolute;top:-24%;left:-22%;width:42%;height:160%;background:linear-gradient(120deg,rgba(255,255,255,.26),rgba(255,255,255,0));transform:translateX(-165%) rotate(14deg);transition:transform .58s cubic-bezier(.22,1,.36,1);pointer-events:none}
.mh-nav-cta span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#1c4d3b;color:#eef8df;font-size:15px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 6px 14px rgba(9,38,30,.18);margin-left:2px;transition:transform .28s ease,background .28s ease,color .28s ease}
.mh-nav-cta:hover{transform:translateY(-3px);box-shadow:0 20px 34px rgba(5,25,19,.22),inset 0 1px 0 rgba(255,255,255,.35);background:linear-gradient(180deg,#ebf6c9,#d8eda7);border-color:rgba(239,248,212,.95)}
.mh-nav-cta:hover::after{transform:translateX(285%) rotate(14deg)}
.mh-nav-cta:hover span{transform:translateX(2px) rotate(-10deg);background:#173f32}
.mh-header.mh-scrolled .mh-nav-cta{background:linear-gradient(180deg,#1e5a44,#123d31);border-color:#2a6850;color:#f6ffed;box-shadow:0 14px 28px rgba(7,28,24,.18),inset 0 1px 0 rgba(255,255,255,.08)}
.mh-header.mh-scrolled .mh-nav-cta span{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:none}
.mh-header.mh-scrolled .mh-nav-cta:hover{background:linear-gradient(180deg,#24644c,#154536);border-color:#36795d}
.mh-contact-panel{border-radius:30px;border:1px solid rgba(175,193,180,.35);box-shadow:0 30px 52px rgba(0,27,34,.24),inset 0 1px 0 rgba(255,255,255,.55);overflow:hidden}
.mh-contact-panel>div:first-of-type{margin-top:4px}
.mh-contact-panel h3{line-height:1.02}
@media(max-width:780px){.mh-nav-cta{padding:10px 14px 10px 16px;min-height:49px}.mh-contact-panel{border-radius:24px}}
@media(max-width:520px){.mh-nav-cta{padding:9px 12px 9px 15px;min-height:46px;font-size:10px}.mh-nav-cta span{width:26px;height:26px;font-size:14px}.mh-contact-panel{border-radius:22px}}


/* v5.2: contact CTA scroll target and legible business-sector brand badges. */
#lien-he { scroll-margin-top: 105px; }
/* Positioned outside .mh-sector-art so its organic overflow mask cannot crop text. */
.mh-sector-visual > .mh-photo-badge {
  position: absolute;
  z-index: 4;
  left: clamp(10px,3vw,32px);
  bottom: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  max-width: calc(100% - 44px);
  padding: 12px 18px;
  border: 1px solid rgba(208,224,203,.95);
  border-radius: 999px;
  background: linear-gradient(135deg,#ffffff 0%,#f1f6e9 100%);
  box-shadow: 0 12px 28px rgba(8,45,36,.16);
  color: #24503e;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.4;
  letter-spacing: .08em;
  white-space: nowrap;
}
.mh-sector-visual > .mh-photo-badge span {
  font-size: 19px;
  font-weight: 600;
  line-height: 1;
  color: #528456;
}
@media (max-width: 780px) {
  #lien-he { scroll-margin-top: 88px; }
  .mh-sector-visual > .mh-photo-badge {
    left: 16px;
    bottom: 4px;
    max-width: calc(100% - 36px);
    font-size: 9px;
    padding: 10px 14px;
  }
  .mh-sector-visual > .mh-photo-badge span {font-size: 17px;}
}
@media (max-width: 520px) {
  #lien-he { scroll-margin-top: 82px; }
  .mh-sector-visual > .mh-photo-badge {
    left: 12px;
    bottom: 0;
    gap: 9px;
    font-size: 8px;
    padding: 9px 12px;
  }
}


/* v5.3 — repeatable scroll titles, bilingual contact info, and clearer hero clouds */
.mh-scroll-title{overflow:visible}
.mh-scroll-title .mh-flow-line{display:block;overflow:hidden;padding-block:0 .06em}
.mh-scroll-title .mh-flow-inner{display:inline-block;transform:translate3d(0,110%,0);opacity:0;filter:blur(9px);will-change:transform,opacity,filter;transition:transform .92s cubic-bezier(.22,1,.36,1),opacity .72s ease,filter .72s ease;transition-delay:calc(var(--mh-line,0) * .12s)}
.mh-scroll-title.mh-inview .mh-flow-inner{transform:translate3d(0,0,0);opacity:1;filter:blur(0)}
.mh-contact p{display:grid;gap:9px}
.mh-contact-copy-en{display:block;color:#d3e7db;font-size:14px;line-height:1.8}
.mh-contact-panel h3{margin-bottom:24px}
.mh-contact-panel>div em{display:block;margin-top:5px;font-style:normal;font-size:12px;line-height:1.7;color:#6b877d}
.mh-contact-panel>div strong a{color:inherit;text-decoration:none}
.mh-contact-panel>div strong a:hover{text-decoration:underline}
.mh-footer-contact>span{display:block;color:#d7e7dd;line-height:1.7}
.mh-cloud{background:url('../img/cloud-premium.svg') center/100% 100% no-repeat;opacity:.95;filter:drop-shadow(0 10px 22px rgba(255,255,255,.16));mix-blend-mode:screen}
.mh-cloud-1{width:min(62vw,920px);height:clamp(170px,20vw,330px);left:-10%;top:7%;--mh-cloud-duration:20s;--mh-cloud-travel:19vw;opacity:.93}
.mh-cloud-2{width:min(48vw,690px);height:clamp(115px,14vw,220px);right:-8%;top:14%;--mh-cloud-duration:24s;--mh-cloud-travel:-16vw;opacity:.82;animation-delay:-7s}
.mh-cloud-3{width:min(58vw,810px);height:clamp(135px,16vw,250px);left:-3%;top:58%;--mh-cloud-duration:28s;--mh-cloud-travel:13vw;opacity:.68;animation-delay:-12s}
.mh-cloud-4{width:min(39vw,560px);height:clamp(95px,12vw,170px);right:-4%;top:32%;--mh-cloud-duration:22s;--mh-cloud-travel:-12vw;opacity:.72;animation-delay:-15s}
.mh-cloud-5{width:min(46vw,690px);height:clamp(110px,13vw,205px);left:31%;top:16%;--mh-cloud-duration:26s;--mh-cloud-travel:9vw;opacity:.70;animation-delay:-5s}
.mh-cloud-6{width:min(52vw,760px);height:clamp(120px,14vw,220px);right:8%;bottom:2%;--mh-cloud-duration:30s;--mh-cloud-travel:-10vw;opacity:.78;animation-delay:-17s}
@media(max-width:780px){
 .mh-scroll-title .mh-flow-line{padding-block:0 .03em}
 .mh-contact-copy-en{font-size:13px}
 .mh-cloud-1{width:92vw;height:250px;left:-24%;top:9%}
 .mh-cloud-2{width:82vw;height:210px;right:-22%;top:22%}
 .mh-cloud-3{width:95vw;height:235px;left:-18%;top:60%}
 .mh-cloud-4{width:72vw;height:180px;right:-18%;top:6%}
 .mh-cloud-5{width:86vw;height:205px;left:18%;top:16%}
 .mh-cloud-6{width:84vw;height:205px;right:-10%;bottom:3%}
}
@media(max-width:520px){
 .mh-contact-panel>div em{font-size:11px}
 .mh-contact-copy-en{font-size:12px}
}

/* v5.4 — language switch + WAAPI scroll typography (not CSS motion) */
.mh-navigation{gap:19px}
.mh-nav-links{gap:22px}
.mh-language-switch{display:inline-flex;flex:none;align-items:center;gap:3px;padding:3px;border:1px solid rgba(215,240,219,.5);border-radius:999px;background:rgba(13,48,38,.33);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.mh-language-switch button{appearance:none;border:0;cursor:pointer;min-width:36px;min-height:30px;padding:6px 9px;border-radius:999px;color:#f4f9ef;font-size:11px;font-weight:850;letter-spacing:.04em;background:transparent;transition:background .2s,color .2s}
.mh-language-switch button[aria-pressed=true]{color:#143a30;background:#d8eebc;box-shadow:0 2px 7px rgba(0,0,0,.12)}
.mh-header.mh-scrolled .mh-language-switch{background:rgba(28,76,57,.06);border-color:rgba(25,78,51,.2)}
.mh-header.mh-scrolled .mh-language-switch button{color:#2b5341}
.mh-header.mh-scrolled .mh-language-switch button[aria-pressed=true]{color:#fff;background:#235b42}
.mh-motion-word{display:inline-block;white-space:nowrap}
.mh-motion-char{display:inline-block;position:relative;transform-origin:50% 85%;backface-visibility:hidden}
.mh-scroll-title{overflow:visible!important}
.mh-scroll-title [hidden]{display:none!important}
.mh-scroll-title .mh-motion-word{line-height:inherit}
.mh-scroll-title em{display:inline}
.mh-contact-panel [hidden]{display:none!important}
.mh-contact-copy-en{display:none!important}
.mh-nav-cta{gap:11px}
.mh-nav-cta-label{white-space:nowrap}
.mh-mode-row button b{font-weight:inherit}
@media(max-width:1200px){.mh-navigation{gap:12px}.mh-nav-links{gap:14px}.mh-nav-links a{font-size:11px}.mh-nav-cta{padding-inline:11px;font-size:10px}}
@media(max-width:780px){.mh-navigation{gap:28px}.mh-language-switch{align-self:flex-start}.mh-language-switch button{min-width:44px;min-height:36px}.mh-nav-links{gap:26px}}
@media(max-width:520px){.mh-nav-cta{font-size:10px}.mh-language-switch button{font-size:12px}}

.mh-nav-cta-label,.mh-hero-buttons .mh-button>b[data-mh-i18n],.mh-button>b[data-mh-i18n]{display:inline!important;width:auto!important;height:auto!important;min-width:0;font:inherit;font-weight:800;letter-spacing:inherit;line-height:1.4;color:inherit;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;white-space:normal}
.mh-nav-cta:hover .mh-nav-cta-label,.mh-button:hover>b[data-mh-i18n]{transform:none!important}


/* v5.5 — filled M&H company info, footer social icons, and centered designer info */
.mh-contact-panel>div strong,.mh-contact-panel>div em{overflow-wrap:anywhere}
.mh-footer-social{display:flex;align-items:center;gap:12px;padding-top:6px}
.mh-footer-social a{width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(214,236,169,.12),rgba(214,236,169,.05));border:1px solid rgba(200,229,192,.18);color:#d9efbc;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:transform .26s ease,background .26s ease,border-color .26s ease,color .26s ease,box-shadow .26s ease}
.mh-footer-social a svg{width:18px;height:18px;display:block}
.mh-footer-social a:hover{transform:translateY(-4px);background:linear-gradient(180deg,rgba(214,236,169,.22),rgba(214,236,169,.1));border-color:rgba(214,236,169,.35);color:#f3fee3;box-shadow:0 12px 22px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.1)}
.mh-footer-base{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}
.mh-footer-base-left{justify-self:start}
.mh-footer-base-center{justify-self:center;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;max-width:420px;padding-inline:10px}
.mh-footer-base-center strong{font-size:10px;letter-spacing:.18em;color:#c9e4c0;font-weight:800}
.mh-footer-base-center em{font-style:normal;color:#dbe9df;font-size:12px;line-height:1.5}
.mh-footer-base-center small{font-size:10px;letter-spacing:.06em;color:#86a097;line-height:1.5}
.mh-footer-base-right{justify-self:end;text-align:right}
@media(max-width:780px){
 .mh-footer-base{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px}
 .mh-footer-base-left,.mh-footer-base-right{justify-self:center;text-align:center}
 .mh-footer-social a{width:38px;height:38px}
}

/* v5.6 — simplify footer designer text */
.mh-footer-base-center{font-size:11px;letter-spacing:.18em;color:#cfe4c3;font-weight:800;text-transform:uppercase;display:block}


/* v5.7 — water-ripple hover effect for sector visuals */
.mh-sector-art{cursor:pointer;--mh-rx:50%;--mh-ry:50%}
.mh-sector-art::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s ease;background:radial-gradient(circle at var(--mh-rx) var(--mh-ry),rgba(255,255,255,.24) 0%,rgba(255,255,255,.12) 10%,rgba(255,255,255,.05) 18%,rgba(255,255,255,0) 33%)}
.mh-sector-art:hover::after{opacity:1}
.mh-water-ripple-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:inherit;z-index:2}
.mh-water-ripple-layer::before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .35s ease;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,0) 45%,rgba(131,194,186,.08) 100%)}
.mh-sector-art:hover .mh-water-ripple-layer::before{opacity:1}
.mh-water-ripple{position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;transform:translate(-50%,-50%) scale(.3);border:1.6px solid rgba(255,255,255,.52);box-shadow:0 0 0 1px rgba(136,214,202,.22) inset,0 0 18px rgba(255,255,255,.10);background:radial-gradient(circle,rgba(255,255,255,.22) 0%,rgba(255,255,255,.08) 36%,rgba(255,255,255,0) 70%);animation:mh-water-ripple 1200ms cubic-bezier(.12,.7,.19,1) forwards}
.mh-water-ripple.mh-ripple-lg{animation-duration:1450ms;border-width:1.2px}
@keyframes mh-water-ripple{0%{opacity:.78;transform:translate(-50%,-50%) scale(.25)}55%{opacity:.4}100%{opacity:0;transform:translate(-50%,-50%) scale(10.5)}}
@media (prefers-reduced-motion: reduce){
 .mh-sector-art::after,.mh-water-ripple-layer::before{transition:none}
 .mh-water-ripple{animation-duration:.01ms;opacity:0}
}


/* v6.6 — restore missing top organic wave before manifesto */
.mh-manifesto{position:relative}
.mh-manifesto::before{content:'';position:absolute;left:0;right:0;top:clamp(-92px,-7vw,-58px);height:clamp(66px,8.5vw,100px);pointer-events:none;z-index:4;background-repeat:no-repeat;background-size:100% 100%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 160' preserveAspectRatio='none'%3E%3Cpath fill='%230d302e' d='M0 77 C237 124 389 109 562 65 C775 11 894 99 1080 104 C1244 111 1332 65 1440 83 L1440 160 L0 160 Z'/%3E%3C/svg%3E")}
@media (max-width:780px){.mh-manifesto::before{top:-56px;height:60px}}


/* v7.0: all text animations disabled; static readable headings throughout the site. */
.mh-scroll-title .mh-flow-inner,
.mh-scroll-title.mh-inview .mh-flow-inner,
.mh-scroll-title .mh-motion-word,
.mh-scroll-title .mh-motion-char,
.mh-kinetic-title .mh-kinetic-letter,
.mh-kinetic-title .mh-user-motion-letter,
.mh-kinetic-title .mh-kinetic-line,
.mh-kinetic-title .mh-kinetic-word {
  animation:none !important;transition:none !important;transform:none !important;
  filter:none !important;opacity:1 !important;visibility:visible !important;
}
.mh-scroll-title .mh-flow-line,.mh-scroll-title .mh-flow-inner {overflow:visible !important}
body.mh-js .mh-reveal:not(.mh-visible),
body.mh-js .mh-reveal,.mh-reveal {opacity:1 !important;transform:none !important;filter:none !important;transition:none !important}
.mh-kinetic-replay{display:none !important}

/* v7.1 — rebalance two featured sector panels after removing water panel */
.mh-sectors{padding-bottom:80px}
.mh-sectors .mh-sector-panel{padding-top:32px;padding-bottom:92px}
.mh-sectors .mh-sector-grid{min-height:420px;gap:7%}
.mh-sectors .mh-sector-art{max-width:640px}
.mh-sectors .mh-sector-panel:last-of-type{padding-bottom:140px}
@media(max-width:780px){.mh-sectors .mh-sector-grid{min-height:0;gap:28px}.mh-sectors .mh-sector-panel{padding-bottom:84px}.mh-sectors .mh-sector-panel:last-of-type{padding-bottom:112px}}
