@charset "UTF-8";
:root{--ink:#102e2e;--forest:#173f39;--mint:#c3efb2;--paper:#fafbf8;--muted:#576965;--line:#d7dfd9;--sand:#efe8db;--gutter:clamp(22px,4.7vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}body.dialog-active{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}p,h1,h2,h3,figure{margin:0}a:focus-visible,button:focus-visible{outline:3px solid #9b6223;outline-offset:5px}a:hover{text-decoration:none}::selection{background:var(--mint);color:var(--ink)}.skip-link{position:fixed;top:-80px;left:20px;padding:12px 20px;background:var(--mint);z-index:100}.skip-link:focus{top:12px}.section{padding:110px var(--gutter);max-width:1680px;margin:auto}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.15em;line-height:1.5}.fine-line{display:inline-block;width:26px;height:1px;vertical-align:middle;background:currentColor;margin-right:12px}h1,h2{font-weight:400;letter-spacing:-.055em;line-height:1.05}h1 em,h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}h2{font-size:clamp(42px,4.7vw,76px)}h3{letter-spacing:-.035em;font-weight:400}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:59px;padding:15px 23px;font-size:15px;line-height:1.35;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:24px;line-height:1}.button-light{color:var(--ink);background:var(--mint)}.button-light:hover{background:#dbffce}.text-link{font-size:15px;display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid currentColor;padding-bottom:7px}.text-link span{font-size:22px}.text-link:hover{opacity:.7}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:101px;padding:20px var(--gutter);background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:17px;flex-shrink:0}.brand-mark{font-size:38px;line-height:1;letter-spacing:-.1em;padding-right:13px;border-right:1px solid #849590;font-weight:500}.brand-mark>span{font-family:Georgia,serif;font-style:italic;font-size:41px}.brand-name{font-size:14px;line-height:1.2;font-weight:600;letter-spacing:-.02em}.site-header nav{display:flex;align-items:center;gap:clamp(20px,3vw,49px);font-size:14px}.site-header nav>a:hover{color:#6d7f51}.site-header .nav-contact{padding:10px 0 10px 24px;border-left:1px solid var(--line)}.nav-contact span{margin-left:16px;font-size:20px}.menu-toggle{display:none}
.hero{min-height:700px;display:grid;grid-template-columns:1.06fr 1fr;background:var(--ink);color:#fff;position:relative;overflow:hidden}.hero-copy{padding:63px 42px 0 var(--gutter);position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{color:var(--mint);font-size:12px;letter-spacing:.13em}h1{font-size:clamp(57px,6.25vw,103px);margin:34px 0 25px;line-height:1.02}h1 em{color:var(--mint)}.hero-intro{max-width:465px;color:#c6d4cf;font-size:16px;line-height:1.65;margin-bottom:28px}.hero-bottom{margin-top:auto;padding:32px 0 25px;border-top:1px solid #ffffff26;display:flex;gap:25px;justify-content:space-between;width:100%;font-size:12px;letter-spacing:.07em;align-items:center}.hero-bottom a{font-size:13px;letter-spacing:0}.hero-bottom a span{margin-left:8px}.hero .button{margin-bottom:42px}.hero-image{position:relative;overflow:hidden;min-height:700px;background:#33473b}.hero-image>img{position:absolute;width:100%;max-width:none;height:260%;object-fit:cover;object-position:center;top:-132%}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#09252344 0%,transparent 32%,#061b1866 62%,#061b18ce 100%);pointer-events:none}.hero-image-top,.hero-image-bottom{position:absolute;z-index:1;left:35px;right:35px}.hero-image-top{top:28px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.13em}.hero-image-bottom{bottom:28px}.hero-image-bottom p{font-size:clamp(25px,2.9vw,44px);line-height:1.16;letter-spacing:-.035em;margin-bottom:24px}.hero-image-bottom>span{font-size:12px;letter-spacing:.13em;color:#e1e6da}.audience-band{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px var(--gutter);border-bottom:1px solid var(--line)}.audience-band>span{font-size:12px;letter-spacing:.12em;color:var(--muted)}.audience-band p{display:flex;align-items:center;gap:26px;font-size:14px}.audience-band i{display:inline-block;height:3px;width:3px;border-radius:50%;background:#819189}
.approach{display:grid;grid-template-columns:1fr 1fr;column-gap:8vw}.section-heading .eyebrow{margin-bottom:24px}.approach-copy{padding-top:38px;max-width:560px}.approach-copy p{font-size:16px;color:var(--muted);margin-bottom:19px}.approach-copy .lead{font-size:27px;line-height:1.3;letter-spacing:-.03em;color:var(--ink);margin-bottom:24px}.process{grid-column:1/-1;margin:70px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.process li{border-top:1px solid #81938a;padding-top:22px;display:flex;flex-direction:column}.step-number{font-size:13px;color:#536d5d;margin-bottom:28px}.process h3{font-size:24px;line-height:1.15;margin-bottom:13px}.process p{font-size:15px;line-height:1.6;color:var(--muted);max-width:245px;margin-bottom:25px}.step-tag{font-size:12px;letter-spacing:.08em;margin-top:auto;font-weight:600}
.analysis-section{background:#e9eee7}.analysis-inner{padding-bottom:83px}.analysis-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:end;margin-bottom:52px}.analysis-heading .eyebrow{margin-bottom:24px}.analysis-intro{padding-bottom:5px;max-width:490px}.analysis-intro p{font-size:16px;color:var(--muted);margin-bottom:25px}.map-figure{background:#f7f6f0;border:1px solid #c7d1c9}.figure-toolbar{padding:17px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d1d9cd;background:var(--ink);color:#e6eee8;font-size:12px;letter-spacing:.09em}.figure-toolbar i{font-size:12px;font-style:normal;color:#a7bdb1;margin-left:25px}.image-open{display:block;border:0;padding:0;width:100%;position:relative;background:none}.image-open img{width:100%;height:auto}.zoom-label{position:absolute;bottom:20px;right:20px;color:white;background:var(--ink);padding:9px 15px;font-size:13px;box-shadow:0 2px 12px #0002}.zoom-label span{font-size:20px;margin-left:14px}.image-open:hover .zoom-label{background:#34583e}.map-figure figcaption{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;padding:22px 28px;border-top:1px solid #d1d9cd;align-items:start}.map-figure figcaption>span{font-size:12px;letter-spacing:.08em;padding-top:3px}.map-figure figcaption p{font-size:14px;color:var(--muted);line-height:1.55}.analysis-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;padding:32px 0;border-bottom:1px solid #cbd3c9}.analysis-notes p{font-size:14px;color:var(--muted)}.analysis-notes strong{display:block;font-size:20px;font-weight:400;color:var(--ink);margin-bottom:6px;letter-spacing:-.02em}.method-note{font-size:12px;color:#5d7067;margin-top:20px;max-width:900px}
.solutions-heading{max-width:910px}.solutions-heading .eyebrow{margin-bottom:25px}.solutions-heading>p:last-child{font-size:17px;color:var(--muted);max-width:680px;margin-top:27px}.solution-pair{display:grid;grid-template-columns:1fr 1fr;margin-top:52px;gap:25px}.solution-card{padding:34px 38px 38px;display:flex;flex-direction:column}.herbafertil{background:#dfebdf}.aquavault{background:var(--sand)}.solution-top{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px;letter-spacing:.09em;margin-bottom:27px}.solution-index{border:1px solid #809185;border-radius:100%;display:flex;align-items:center;justify-content:center;width:35px;height:35px;flex-shrink:0;font-size:12px}.solution-card h3{font-size:48px;line-height:1.05;margin-bottom:17px}.solution-card h3>span{font-family:Arial,sans-serif;font-size:18px;vertical-align:top;margin-left:4px}.solution-subtitle{font-size:23px;line-height:1.35;letter-spacing:-.02em;margin-bottom:20px}.solution-card>p:not(.solution-subtitle){color:#4d635a;font-size:16px;max-width:540px}.solution-card ul{list-style:none;padding:0;margin:26px 0 32px}.solution-card li{border-top:1px solid #102e2e26;padding:9px 0;font-size:14px}.solution-card .text-link{align-self:flex-start;margin-top:auto}.root-figure{margin-top:65px}.root-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:25px}.root-heading>p:last-child{font-size:23px;line-height:1.25;letter-spacing:-.03em}.root-figure .image-open{border:1px solid var(--line)}.root-figure figcaption{font-size:12px;color:var(--muted);margin-top:16px;max-width:700px}
.applications-section{background:var(--ink);color:#f3f6ef}.applications-inner{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.applications-inner .eyebrow{color:#c3d3bc;margin-bottom:25px}.applications-inner h2{font-size:clamp(40px,4.2vw,64px)}.applications-inner em{color:var(--mint)}.applications-intro{color:#b4c7bf;font-size:16px;max-width:430px;margin-top:28px}.applications-list article{display:flex;gap:25px;padding:27px 0;border-top:1px solid #ffffff33}.applications-list article:first-child{padding-top:10px;border:0}.applications-list article>span{font-size:12px;color:#a9c0aa;padding-top:4px}.applications-list h3{font-size:26px;line-height:1.2;margin-bottom:13px}.applications-list p{font-size:15px;color:#b4c7bf;max-width:435px}.people{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.people .eyebrow{margin-bottom:25px}.people h2{font-size:clamp(35px,3.5vw,55px)}.people-list article{padding:0 0 29px;border-bottom:1px solid var(--line);margin-bottom:28px}.people-list article:last-child{padding-bottom:0;border:0;margin:0}.person-role{font-size:12px;letter-spacing:.09em;color:#597364}.people-list h3{font-size:31px;margin:7px 0 10px}.people-list p:not(.person-role){font-size:15px;color:var(--muted);max-width:500px}.people-list article>span{display:block;margin-top:16px;font-size:12px;color:#657f70}.contact-section{background:#dbe7d6}.contact-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;align-items:center;padding-top:90px;padding-bottom:90px}.contact-inner .eyebrow{margin-bottom:25px}.contact-inner h2{font-size:clamp(44px,4.9vw,75px)}.contact-inner>div>p:last-child{font-size:16px;color:#4b6356;max-width:490px;margin-top:27px}.contact-details{padding-left:35px}.contact-details .button{background:var(--ink);color:#f5fff0;min-width:310px;max-width:100%;margin-bottom:39px}.contact-details .button:hover{background:#315844}.contact-details>p{margin-bottom:25px}.contact-details>p>span{display:block;font-size:12px;letter-spacing:.08em;margin-bottom:7px}.contact-details>p>a{font-size:16px;overflow-wrap:anywhere;border-bottom:1px solid #81967e}.contact-details>p>a:hover{color:#50823c}.site-footer{padding:40px var(--gutter) 21px;background:var(--paper)}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:36px}.footer-top>p{font-family:Georgia,serif;font-style:italic;font-size:24px;letter-spacing:-.025em}.footer-top>div{display:flex;gap:25px;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#65756d;border-top:1px solid var(--line);padding-top:21px}
.image-dialog{width:calc(100% - 36px);max-width:1500px;max-height:94dvh;padding:20px;border:1px solid #ccd4cd;background:#fafbf8;color:var(--ink)}.image-dialog::backdrop{background:#071a18df;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:12px;letter-spacing:.08em;margin-bottom:18px}.dialog-close{border:1px solid #98a99d;padding:7px 14px;background:none;font-size:14px}.dialog-close span{font-size:24px;vertical-align:middle;margin-left:14px}.dialog-image-wrap{max-height:68dvh;overflow:auto}.dialog-image-wrap img{margin:auto;max-height:68dvh;object-fit:contain;width:100%}#image-caption{margin:18px 0 7px;font-size:14px;max-width:1000px}#original-image{font-size:13px;text-decoration:underline}
@media(min-width:1700px){.hero{min-height:810px}.hero-image{min-height:810px}.hero-copy{padding-top:85px}.hero-intro{max-width:540px;font-size:18px}.hero-bottom{padding-top:42px;padding-bottom:32px}.hero{grid-template-columns:1.1fr 1fr}}
@media(max-width:1100px){.site-header nav{gap:20px}.hero{min-height:650px;grid-template-columns:1.13fr 1fr}.hero-image{min-height:650px}.hero-copy{padding-top:45px;padding-right:28px}h1{font-size:6.45vw}.hero-bottom{align-items:flex-start;gap:12px;flex-direction:column}.audience-band{flex-direction:column;align-items:flex-start;gap:12px;padding-top:23px;padding-bottom:23px}.process{gap:23px}.process h3{font-size:22px}.analysis-heading{gap:35px}.solution-card{padding:27px}.solution-card h3{font-size:43px}.solution-subtitle{font-size:20px}.contact-details{padding-left:0}.contact-details .button{min-width:0;width:100%}}
@media(max-width:820px){html{scroll-padding-top:24px}.site-header{min-height:84px;padding-top:18px;padding-bottom:18px;position:relative;z-index:10}.brand-mark{font-size:32px}.brand-mark>span{font-size:34px}.brand-name{font-size:13px}.menu-toggle{display:flex;align-items:center;gap:15px;background:none;border:1px solid #bec9c0;padding:8px 12px;font-size:13px;min-height:44px}.menu-toggle span{font-size:17px}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px var(--gutter) 26px;box-shadow:0 15px 20px #001d2018;border-top:1px solid var(--line);font-size:16px}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav>a{padding:13px 0}.site-header .nav-contact{padding:13px 0;border-left:0;border-top:1px solid var(--line)}.hero{grid-template-columns:1fr}.hero-copy{padding:42px var(--gutter) 0}.hero h1{font-size:clamp(57px,9.5vw,81px);margin-top:29px}.hero-intro{max-width:540px;font-size:16px}.hero-bottom{flex-direction:row;align-items:center;padding-top:22px;padding-bottom:24px}.hero .button{margin-bottom:30px}.hero-image{min-height:480px;height:480px}.hero-image>img{height:260%;top:-132%;object-fit:cover}.hero-image-top{left:var(--gutter);right:var(--gutter);top:22px}.hero-image-bottom{left:var(--gutter);bottom:22px}.hero-image-bottom p{font-size:34px}.hero-image-bottom>span{font-size:12px}.section{padding-top:75px;padding-bottom:75px}.approach{gap:32px;grid-template-columns:1fr}.approach-copy{padding:0;max-width:none}.approach-copy .lead{font-size:25px}.process{grid-template-columns:1fr 1fr;margin-top:5px;row-gap:30px}.step-number{margin-bottom:18px}.process h3{font-size:24px}.process p{max-width:none}.analysis-heading{grid-template-columns:1fr;gap:30px;margin-bottom:35px}.analysis-intro{max-width:600px}.analysis-notes{gap:25px}.map-figure figcaption{grid-template-columns:1fr;gap:11px;padding:21px}.solution-pair{gap:18px}.solution-card{padding:25px 22px}.solution-card h3{font-size:36px}.solution-card>p:not(.solution-subtitle){font-size:15px}.solution-top{font-size:12px;gap:7px;line-height:1.5;min-height:34px}.solution-index{width:30px;height:30px}.solution-subtitle{font-size:20px}.solution-card ul{margin-bottom:25px}.solution-card .text-link{font-size:13px;gap:15px}.root-heading>p:last-child{font-size:20px}.applications-inner{grid-template-columns:1fr;gap:40px}.applications-intro{max-width:600px}.applications-list p{max-width:none}.applications-list article:first-child{border-top:1px solid #ffffff33;padding-top:26px}.people{grid-template-columns:1fr;gap:39px}.people-list{display:grid;grid-template-columns:1fr 1fr;gap:30px}.people-list article{border:0;margin:0;padding:0}.people h2{font-size:45px}.contact-inner{grid-template-columns:1fr;gap:38px}.contact-details .button{width:auto;min-width:310px}.contact-details{display:flex;flex-direction:column;align-items:flex-start}.contact-details>p{margin-bottom:23px}.footer-top{flex-wrap:wrap}.footer-top>p{display:none}.footer-top>div{gap:22px}}
@media(max-width:540px){body{font-size:16px}.hero .eyebrow{font-size:12px;letter-spacing:.10em}.fine-line{width:15px;margin-right:7px}.hero h1{font-size:clamp(48px,12.3vw,67px);line-height:1.05;letter-spacing:-.052em}.hero-copy{padding-top:35px}.hero-intro{font-size:15px;line-height:1.65}.hero .button{font-size:14px;min-height:55px}.hero-bottom>span{font-size:12px;letter-spacing:.02em}.hero-bottom a{font-size:12px}.hero-image{min-height:370px;height:370px}.hero-image-top{font-size:12px}.hero-image-bottom p{font-size:32px;margin-bottom:18px}.hero-image-bottom>span{font-size:12px}.audience-band>span{font-size:12px}.audience-band p{flex-wrap:wrap;gap:8px 13px;font-size:12px}.section{padding-top:61px;padding-bottom:61px}.eyebrow{font-size:12px}h2{font-size:43px}.approach-copy .lead{font-size:24px}.approach-copy p{font-size:15px}.process{gap:28px 21px}.process h3{font-size:22px}.process p{font-size:14px}.step-tag{font-size:12px;letter-spacing:.04em;line-height:1.5}.analysis-heading .eyebrow,.section-heading .eyebrow{margin-bottom:20px}.analysis-intro p{font-size:15px}.figure-toolbar{padding:13px 12px;font-size:12px;letter-spacing:.02em;gap:8px}.figure-toolbar i{margin-left:10px;font-size:12px}.map-open .zoom-label{bottom:9px;right:9px;font-size:12px;padding:5px 9px}.map-open .zoom-label span{font-size:15px;margin-left:6px}.map-figure figcaption{padding:16px;gap:10px}.map-figure figcaption>span{font-size:12px}.map-figure figcaption p{font-size:13px}.analysis-notes{grid-template-columns:1fr;gap:17px;padding:25px 0}.analysis-notes p{font-size:14px}.analysis-notes strong{font-size:19px;margin-bottom:2px}.method-note{font-size:12px}.solution-pair{grid-template-columns:1fr;margin-top:32px;gap:20px}.solution-card{padding:28px}.solution-card h3{font-size:44px}.solution-top{font-size:12px;margin-bottom:21px}.solution-subtitle{font-size:22px}.solution-card>p:not(.solution-subtitle){font-size:15px}.solution-card .text-link{font-size:14px}.solutions-heading>p:last-child{font-size:15px}.root-figure{margin-top:41px}.root-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:20px}.root-heading>p:last-child{font-size:23px}.root-figure .zoom-label{font-size:12px;bottom:8px;right:8px;padding:4px 10px}.root-figure .zoom-label span{font-size:17px;margin-left:9px}.root-figure figcaption{font-size:12px}.applications-inner h2{font-size:41px}.applications-list article{gap:18px}.applications-list h3{font-size:24px}.applications-list p{font-size:15px}.people-list{grid-template-columns:1fr;gap:31px}.people h2{font-size:38px}.people-list article:first-child{border-bottom:1px solid var(--line);padding-bottom:30px}.people-list h3{font-size:30px}.contact-inner h2{font-size:49px}.contact-inner>div>p:last-child{font-size:15px}.contact-details .button{min-width:0;width:100%;font-size:14px;gap:25px}.contact-details>p>a{font-size:15px}.footer-top{align-items:flex-start;gap:28px;padding-bottom:29px}.footer-top>div{font-size:13px}.footer-bottom{flex-wrap:wrap;font-size:12px;gap:10px 20px}.footer-bottom span:first-child{flex-basis:100%}.footer-bottom a{margin-left:auto}.image-dialog{width:calc(100% - 16px);padding:12px}.dialog-top{font-size:12px;gap:10px}.dialog-close{padding:5px 9px;font-size:12px}.dialog-close span{font-size:21px;margin-left:7px}.dialog-image-wrap{max-height:none}.dialog-image-wrap img{max-height:none}#image-caption{font-size:13px}#original-image{font-size:12px}}
.hero-intro,.approach-copy p,.process p,.analysis-intro p,.solutions-heading>p:last-child,.solution-card>p:not(.solution-subtitle),.applications-intro,.applications-list p,.people-list p:not(.person-role),.contact-inner>div>p:last-child{font-size:1rem}.hero-bottom{flex-wrap:wrap}
.methodology{margin-top:22px;border-top:1px solid #cbd3c9;border-bottom:1px solid #cbd3c9}
.methodology summary{cursor:pointer;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;list-style:none}
.methodology summary::-webkit-details-marker{display:none}.methodology summary>span{font-size:22px;line-height:1;transition:transform .2s}.methodology[open] summary>span{transform:rotate(45deg)}
.methodology summary:focus-visible,.dialog-image-wrap:focus-visible{outline:3px solid #9b6223;outline-offset:4px}
.methodology-body{padding:4px 0 23px}.methodology dl{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:30px;margin:0 0 22px}.methodology dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;color:#42634d}.methodology dd{margin:0;font-size:14px;line-height:1.7;color:#4c6256}.methodology-body>p{font-size:14px;max-width:970px;color:#4c6256}
.applications-heading{align-self:start}.scope-note{font-size:14px;color:#b4c7bf;border-top:1px solid #ffffff2e;padding-top:22px;margin-top:30px;max-width:430px}.deliverables{list-style:none;padding:0;margin:20px 0 0}.deliverables li{font-size:14px;line-height:1.6;padding:8px 0 8px 17px;position:relative;color:#e7eee6}.deliverables li:before{content:"";height:1px;width:6px;position:absolute;left:0;top:19px;background:var(--mint)}
.dialog-tools{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:13px}.detail-toggle{background:var(--ink);border:1px solid var(--ink);color:var(--paper);padding:9px 16px;font-size:14px;min-height:44px;flex-shrink:0}.detail-toggle[aria-pressed=true]{background:#dbe7d6;color:var(--ink)}.dialog-tools p{font-size:13px;color:var(--muted);line-height:1.35}.dialog-close{min-height:44px;font-size:14px}.dialog-image-wrap{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:60dvh}.dialog-image-wrap img{max-height:60dvh}.dialog-image-wrap.is-detail{height:60dvh;max-height:60dvh}.dialog-image-wrap.is-detail img{width:200%;min-width:1500px;max-width:none;max-height:none;height:auto;margin:0;object-fit:fill}
.approach>*,.analysis-heading>*,.applications-inner>*,.people>*,.contact-inner>*,.solution-pair>*{min-width:0}
.figure-toolbar{flex-wrap:wrap}.image-open .zoom-label{font-size:14px;min-height:44px;display:inline-flex;align-items:center;gap:10px}.zoom-label span{margin-left:0}.site-footer a{display:inline-block;min-height:36px}.image-dialog #original-image{display:inline-block;min-height:44px;padding-top:9px;font-size:14px}
@media(max-width:820px){.methodology dl{grid-template-columns:1fr 1fr}.methodology dl>div:last-child{grid-column:1/-1}.applications-heading .scope-note{max-width:600px}.hero .eyebrow{max-width:100%;line-height:1.8}.audience-band p{font-size:14px}.menu-toggle{font-size:14px}.brand-name{font-size:14px}}
@media(max-width:540px){.process{grid-template-columns:1fr;gap:26px}.process li{display:grid;grid-template-columns:34px 1fr;gap:0 10px;padding-top:17px}.step-number{grid-column:1;grid-row:1/4;padding-top:3px;margin:0}.process h3,.process p,.process .step-tag{grid-column:2}.process p{margin-bottom:15px}.process h3{margin-bottom:10px}.step-tag{font-size:12px}.methodology dl{grid-template-columns:1fr;gap:21px}.methodology dl>div:last-child{grid-column:auto}.methodology summary{font-size:14px}.dialog-tools{align-items:flex-start;gap:12px}.dialog-tools p{font-size:12px}.detail-toggle{font-size:14px;max-width:63%;white-space:normal;flex-shrink:1}.dialog-top>span{font-size:12px;line-height:1.4;max-width:160px}.map-open .zoom-label,.root-figure .zoom-label{position:static;display:flex;justify-content:space-between;box-shadow:none;width:100%;font-size:14px;padding:11px 15px}.map-open .zoom-label span,.root-figure .zoom-label span{font-size:20px}.figure-toolbar>span:last-child{white-space:nowrap}.contact-details>p>a{font-size:16px}.footer-top>div{font-size:14px}}
.header-tools{order:2;display:flex;align-items:center;gap:16px;flex-shrink:0}.site-header nav{order:1;margin-left:auto;gap:clamp(18px,2vw,33px)}.site-header{gap:25px}.language-switch{display:flex;align-items:center;border:1px solid #c2cfc3;padding:3px;gap:2px}.language-switch a{display:flex;align-items:center;justify-content:center;min-width:34px;min-height:36px;font-size:13px;line-height:1;font-weight:600}.language-switch a[aria-current=page]{color:var(--paper);background:var(--ink)}.language-switch a:not([aria-current]):hover{background:#e1ebdc}.language-switch a:focus-visible{outline-offset:1px}.site-header .nav-contact{padding-left:18px}
@media(min-width:821px) and (max-width:1080px){.site-header{gap:18px}.site-header nav{gap:18px;font-size:13px}.site-header nav .nav-contact{padding-left:15px}.nav-contact span{margin-left:7px}.brand{gap:12px}.brand-mark{font-size:33px;padding-right:10px}.brand-mark>span{font-size:35px}}
@media(max-width:820px){.header-tools{margin-left:auto;gap:12px}.site-header nav{margin-left:0}.site-header nav>a{font-size:16px}.site-header .nav-contact{padding-left:0}.site-header{gap:14px}.language-switch a{min-width:31px;min-height:36px}}
@media(max-width:540px){.menu-label{display:none}.menu-toggle{padding:0;min-width:42px;min-height:42px;justify-content:center}.header-tools{gap:9px}.language-switch{padding:2px;gap:0}.language-switch a{min-width:28px;min-height:36px;font-size:12px}.site-header{gap:10px}.brand{gap:10px}.brand-mark{font-size:29px;padding-right:10px}.brand-mark>span{font-size:31px}.brand-name{font-size:13px}.hero .eyebrow{letter-spacing:.07em}html[lang=en] .hero h1{font-size:clamp(45px,11.8vw,65px)}html[lang=en] .contact-inner h2{font-size:clamp(40px,11vw,49px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.methodology summary>span{transition:none}}
