/* Shared site typography: four font families.
   Preload critical heading/body fonts in HTML; briefly block their fallback
   to avoid the unstyled-font flash. Decorative fonts keep swap. */
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-latin-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-latin-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-latin-800-normal.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-latin-ext-600-normal.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-latin-ext-700-normal.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-latin-ext-800-normal.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:Manrope;src:url('../fonts/manrope-latin-wght-normal.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/manrope-latin-ext-wght-normal.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0100-02FF,U+1E00-1EFF}
@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-display-normal-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-display-italic-400.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Playfair Display';src:url('../fonts/playfair-display-italic-600.woff2') format('woff2');font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:'Take Easy TR';src:url('../fonts/take-easy-tr.woff2') format('woff2');font-weight:400;font-style:normal;font-display:optional}
:root{--paper:#f2f0e8;--ink:#242820;--green:#31792d;--bright:#3eab37;--line:#d3d4c7;--muted:#66695e;--dark:#20281e;--white:#fff;--pad:clamp(22px,4.4vw,86px);--body:Manrope,Arial,Helvetica,sans-serif;--heading:'Barlow Condensed'}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.65}body:has(dialog[open]),body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button[hidden],[hidden]{display:none!important}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}p{max-width:65ch}button{border:0;background:none}::selection{background:var(--bright);color:white}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--ink);color:white;padding:10px 20px}.skip:focus{top:12px}.site-header{height:104px;padding:12px var(--pad);display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--paper)}.brand{width:144px;flex-shrink:0}.brand img{height:72px;object-fit:contain}.desktop-nav{display:flex;gap:clamp(13px,1.6vw,30px);justify-content:center;align-items:center;flex:1}.desktop-nav a{font-size:14px;font-weight:650;line-height:1.3;position:relative;white-space:nowrap}.desktop-nav a:after{content:'';height:1px;background:var(--green);position:absolute;bottom:-8px;left:0;width:0;transition:width .3s}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{width:100%}.header-actions{display:flex;align-items:center;gap:18px}.icon-button{width:30px;height:38px;display:grid;place-items:center;padding:3px}.icon-button svg{width:19px;height:19px}.language{font-size:14px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:var(--green);color:white;border:1px solid var(--green);padding:17px 23px;font-size:15px;font-weight:600;line-height:1.3;transition:background .25s,transform .25s}.button span{font-size:21px;font-weight:400;line-height:1}.button:hover{background:#205a1c;transform:translateY(-2px)}.button.small{padding:14px 16px;gap:20px;font-size:14px}.button.dark{background:var(--ink);border-color:var(--ink)}.button.dark:hover{background:var(--green)}.text-link{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;border-bottom:1px solid currentColor;padding:10px 0;font-size:15px;font-weight:650}.text-link span{font-size:22px;font-weight:400;transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.menu-toggle{display:none}.eyebrow{font-size:12.5px;letter-spacing:.11em;font-weight:650;display:flex;align-items:center;gap:9px;line-height:1.5;text-transform:uppercase}.dot{width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block}.display{font-family:var(--heading);font-weight:600;font-size:clamp(58px,6.6vw,112px);letter-spacing:-.024em;line-height:.98;text-transform:uppercase}.display em{font:inherit;color:var(--green)}.hero{min-height:680px;height:calc(100svh - 104px);max-height:1000px;position:relative;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;inset:0 0 55px 32%;z-index:-2;overflow:hidden}.hero-photo img{width:100%;height:100%;object-position:48% center}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--paper) 0%,rgba(242,240,232,.88) 6%,rgba(242,240,232,.12) 40%,transparent 70%),linear-gradient(0deg,var(--paper) 0%,transparent 17%)}.hero-content{padding:53px var(--pad) 74px;position:relative;display:flex;height:100%;flex-direction:column}.hero h1{font-size:clamp(100px,10.5vw,177px);line-height:.89;margin-top:36px;letter-spacing:-.035em}.hero h1>span{display:block}.hero-bottom{margin-top:34px;display:flex;align-items:center;gap:42px}.hero-bottom p{font-size:15px;line-height:1.8}.hero-bottom .button{min-width:206px}.hero-foot{position:absolute;bottom:0;left:var(--pad);right:var(--pad);height:55px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:11.5px;font-weight:650;letter-spacing:.09em}.hero-foot a{display:flex;align-items:center;gap:28px}.hero-foot a span{font-size:21px}.section{padding:105px var(--pad)}.intro{padding-top:123px}.intro>.eyebrow{justify-content:center}.statement{font-size:clamp(40px,5.4vw,86px);font-weight:500;letter-spacing:-.045em;text-align:center;line-height:1.2;margin:45px auto 55px}.serif{font-family:'Playfair Display';font-weight:400;font-style:italic}.green{color:var(--green)}.intro-bottom{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:60px;align-items:center;max-width:1040px;margin:auto}.asterisk{font-size:106px;color:var(--green);line-height:1;justify-self:center}.intro-bottom p{font-size:18px}.intro-bottom .text-link{justify-self:end}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:85px;padding-top:35px;border-top:1px solid var(--line)}.stats>div{padding:0 45px;border-right:1px solid var(--line)}.stats>div:first-child{padding-left:0}.stats>div:last-child{border:0}.stats strong{font-family:var(--heading);font-weight:600;font-size:clamp(64px,7vw,112px);line-height:1.1;letter-spacing:-.025em}.stats strong span{color:var(--green);font-size:.6em;vertical-align:top;display:inline-block;margin:8px}.stats p{font-size:14px;margin-top:12px}.create-section{background:#e8e9de}.section-head{display:grid;grid-template-columns:1fr 2.15fr;gap:40px;margin-bottom:62px}.section-head>.eyebrow{align-self:start;padding-top:9px}.section-head .display{font-size:clamp(56px,6.5vw,104px)}.section-description{font-size:16.5px;max-width:410px;margin-top:25px;line-height:1.9}.solutions-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:7vw}.feature-photo{position:relative;display:block;min-height:520px;overflow:hidden}.feature-photo>img{height:100%;transition:transform .8s}.feature-photo:hover>img{transform:scale(1.04)}.feature-photo:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(15,21,13,.76))}.feature-photo>div{position:absolute;bottom:30px;left:30px;right:30px;color:white;z-index:1}.feature-photo h3{font-family:var(--heading);font-size:62px;line-height:1.05;font-weight:600;margin-top:18px;text-transform:uppercase}.feature-photo .eyebrow{font-size:10px}.photo-arrow{position:absolute;bottom:0;right:0;font-size:45px}.solution-row{display:flex;align-items:center;gap:24px;border-top:1px solid #c7cbbb;min-height:78px;padding:18px 0;transition:color .25s,padding .25s}.solution-row:last-of-type{border-bottom:1px solid #c7cbbb}.solution-row:hover{color:var(--green);padding-left:10px}.row-number{font-size:12.5px;color:var(--muted)}.solution-row h3{font-size:clamp(18px,1.8vw,28px);font-weight:500;letter-spacing:-.04em;line-height:1.35}.row-arrow{margin-left:auto;font-size:25px}.all-solutions{display:flex;justify-content:space-between;align-items:center;margin-top:28px;font-size:15px;font-weight:600}.all-solutions span{font-size:24px}.motion-story{background:var(--dark);color:var(--paper);padding:90px var(--pad);overflow:hidden}.motion-story-inner{position:relative;max-width:1600px;margin:auto;min-height:720px}.motion-story h2{font-size:clamp(84px,12.5vw,210px);position:relative;z-index:2;margin-top:40px;line-height:.88;pointer-events:none}.motion-story h2 em{color:#8cb774}.motion-word{color:#d4d8c4}.story-visual{position:absolute;right:3%;top:10%;width:42%;height:70%;transform:rotate(6deg)}.story-visual img{height:100%;object-position:center}.story-visual span{display:block;font-size:11.5px;letter-spacing:.1em;margin-top:16px}.story-bottom{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:60px}.story-bottom p{font-size:15px;color:#c9cfbf}.story-bottom .text-link{min-width:220px}.process-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:7vw}.process-image{position:relative;min-height:460px}.process-image img{height:100%;object-position:62% center}.image-caption{display:block;font-size:10px;letter-spacing:.1em;margin-top:13px}.process-panel{display:flex;flex-direction:column}.process-tabs{display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-tabs button{font-size:12.5px;padding:15px 8px 17px;position:relative}.process-tabs button small{font-size:10px;display:block;text-align:left;margin-bottom:8px}.process-tabs button[aria-selected=true]{color:var(--green)}.process-tabs button[aria-selected=true]:after{position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--green);content:''}#process-content{padding:42px 0 30px}#process-content h3{font-size:38px;font-weight:500;letter-spacing:-.04em;line-height:1.2;margin:18px 0}#process-content p{font-size:16.5px;max-width:400px}.process-panel>.text-link{margin-top:auto;align-self:start}.partners{background:#e5e7dc}.partners>h2{margin:28px 0 60px}.partner-list>a{display:grid;grid-template-columns:45px 1fr 1fr 24px;gap:20px;border-top:1px solid #c6cabb;align-items:center;padding:25px 0}.partner-list>a:last-child{border-bottom:1px solid #c6cabb}.partner-list>a>span:first-child{font-size:12.5px}.partner-list h3{font-size:24px;font-weight:500;letter-spacing:-.035em}.partner-list p{font-size:15px;color:var(--muted)}.partner-list>a>span:last-child{font-size:27px;transition:transform .3s}.partner-list>a:hover>span:last-child{transform:translate(4px,-4px)}.editorial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.editorial-card{position:relative}.editorial-card img{height:365px;transition:filter .4s;object-position:center}.editorial-card:hover img{filter:brightness(.93)}.editorial-card:nth-child(2){padding-top:90px}.editorial-card:nth-child(3){padding-top:40px}.editorial-card .eyebrow{margin:21px 0 15px;font-size:10px}.editorial-card h3{font-size:26px;font-weight:500;letter-spacing:-.03em;line-height:1.3}.editorial-arrow{position:absolute;right:0;bottom:0;font-size:26px}.editorial-bottom{margin-top:55px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px}.editorial-bottom>span{font-size:11.5px;letter-spacing:.08em}.together{position:relative;text-align:center;padding-top:115px;padding-bottom:115px;min-height:700px;isolation:isolate;background:#eae7db;overflow:hidden}.together>.eyebrow{justify-content:center}.together h2{font-size:clamp(105px,16vw,250px);line-height:.82;margin:45px 0 30px}.together p{margin:auto;font-size:15px}.together .text-link{margin-top:20px}.together-images{position:absolute;inset:0;pointer-events:none;z-index:-1}.together-images img{position:absolute;width:17%;height:260px;object-fit:cover}.together-images img:nth-child(1){top:90px;left:-3%;transform:rotate(-12deg)}.together-images img:nth-child(2){bottom:40px;right:-3%;transform:rotate(12deg)}.together-images img:nth-child(3){top:15px;right:7%;width:10%;height:155px;transform:rotate(-10deg)}.project-cta{padding-top:95px;padding-bottom:75px}.cta-row{display:flex;justify-content:space-between;align-items:center;gap:40px;margin:32px 0}.cta-row h2{font-size:clamp(78px,10vw,164px)}.circle-link{flex-shrink:0;width:145px;height:145px;border:1px solid var(--green);color:var(--green);border-radius:50%;display:grid;place-items:center;font-size:86px;line-height:1;transition:background .3s,color .3s}.circle-link:hover{background:var(--green);color:var(--paper)}.cta-bottom{display:flex;justify-content:space-between;align-items:end}.cta-bottom p{font-size:16.5px}.cta-bottom .text-link{width:245px}.footer{background:var(--dark);color:var(--paper);padding:65px var(--pad) 0}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:70px}.footer-top img{width:180px;object-fit:contain}.footer-top p{font-size:15px;color:#b8c0b0;margin-top:24px}.footer-nav{display:grid;gap:12px;align-content:start;font-size:15px;padding-top:16px}.footer-contact{display:grid;gap:10px;align-content:start;font-size:15px;padding-top:16px}.footer-contact>.eyebrow{font-size:10px;margin-bottom:9px;color:#b8c0b0}.footer-contact .text-link{font-size:14px;justify-self:start}.footer-wordmark{font-family:var(--heading);font-weight:600;font-size:clamp(62px,12.4vw,220px);letter-spacing:-.035em;line-height:1.1;margin:64px 0 24px;text-align:center;white-space:nowrap}.footer-bottom{display:flex;gap:30px;padding:24px 0;border-top:1px solid #515847;font-size:11.5px;color:#bdc5b4}.footer-bottom>span:first-child{margin-right:auto}.motion-toggle{font-size:11.5px;padding:0}.page-hero{padding-top:55px;padding-bottom:65px;border-bottom:1px solid var(--line)}.page-hero>.eyebrow{margin-bottom:50px}.page-hero-row{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:6vw}.page-hero-row:has(>div:only-child){grid-template-columns:1fr}.page-hero h1{font-size:clamp(66px,7.6vw,124px)}.page-hero p{font-size:18px;line-height:1.9;margin-top:30px;max-width:470px}.page-hero-image{height:420px}.directory{padding-top:45px}.directory-toolbar{display:flex;align-items:center;gap:30px;margin-bottom:50px;flex-wrap:wrap}.directory-toolbar label{font-size:12.5px;letter-spacing:.09em}.directory-toolbar input{max-width:430px;flex:1}.directory-toolbar>span{font-size:14px;margin-left:auto}.directory .solution-row{min-height:100px}.directory .solution-row h3{font-size:clamp(24px,3vw,46px)}input,select,textarea{width:100%;min-width:0;border:1px solid #bfc3b4;border-radius:0;background:transparent;padding:14px 15px;color:var(--ink);font-size:18px}input[type=search]{appearance:none}input::placeholder,textarea::placeholder{color:#757969}.catalogue-links{display:flex;justify-content:space-between;gap:25px;margin-top:50px}.family-list{margin-left:32%}details{border-top:1px solid var(--line);padding:23px 0}details:last-child{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;gap:20px;list-style:none;font-size:23px;letter-spacing:-.035em;cursor:pointer;line-height:1.4}summary::-webkit-details-marker{display:none}summary>span:first-child{font-size:12.5px;letter-spacing:0;color:var(--muted)}summary .plus{margin-left:auto;font-size:26px;font-weight:300}details[open] .plus{transform:rotate(45deg)}details p{font-size:16.5px;color:var(--muted);line-height:2;padding:20px 30px 5px}.product-approach{background:#e5e7dc;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:center}.product-approach p+p{margin-top:20px}.product-approach .button,.product-approach .text-link{margin-top:25px}.product-approach p{font-size:18px}.product-approach .display{font-size:clamp(64px,6vw,100px)}.development-list article{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:start;gap:40px;padding:36px 0;border-top:1px solid var(--line)}.development-list article h2{font-size:34px;line-height:1.2;font-weight:500;letter-spacing:-.04em}.development-list article p{font-size:16.5px}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:#e5e7dc}.split-feature>img{height:560px}.split-feature .display{font-size:clamp(60px,6vw,95px);margin:28px 0}.split-feature p{font-size:18px;margin-bottom:22px}.three-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.three-columns article{border-top:1px solid var(--line);padding-top:25px}.three-columns article>span{font-size:11.5px;letter-spacing:.09em}.three-columns h3{font-size:31px;line-height:1.2;letter-spacing:-.04em;font-weight:500;margin:25px 0}.three-columns p{font-size:16.5px}.three-columns .text-link{margin-top:20px}.note{font-size:14px;color:var(--muted);margin-top:45px}.segments .segment{display:grid;grid-template-columns:1fr 2fr;padding:65px 0;border-top:1px solid var(--line);scroll-margin-top:40px;gap:40px}.segments .display{font-size:clamp(60px,6vw,100px)}.segment p{margin:25px 0;font-size:18px;max-width:520px}.prose{margin-left:32%;font-size:17px;line-height:1.9;max-width:700px}.prose p+p{margin-top:25px}.signature{font-family:'Playfair Display';font-style:italic;font-size:40px;color:var(--green)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-grid h2{margin:25px 0 30px}.contact-router{border-top:1px solid var(--line);margin-top:65px;padding-top:30px}.contact-router label{display:block;margin-bottom:15px}.contact-router .text-link{margin-top:15px}.locations article+article{border-top:1px solid var(--line);margin-top:35px;padding-top:35px}.locations h3{font-size:50px;letter-spacing:-.06em;font-weight:500;margin:15px 0}.locations p{font-size:16.5px;margin-bottom:15px}.locations a{display:block;font-size:16.5px;margin:5px 0}.sensory>.display{margin:25px 0}.sensory>p{font-size:16.5px;margin-bottom:55px}.sensory label{font-size:15px}.sensory input{padding:0;accent-color:var(--green);margin:30px 0}.sensory-labels{display:flex;justify-content:space-between;font-size:11.5px;letter-spacing:.08em}.sensory-result{display:flex;gap:65px;align-items:center;border-top:1px solid var(--line);margin-top:50px;padding-top:35px;min-height:200px}.sensory-result>span{font-family:var(--heading);font-size:110px;color:var(--green);line-height:1}.sensory-result h3{font-size:40px;font-weight:500;letter-spacing:-.04em}.sensory-result p{font-size:18px;margin-top:10px}.project-builder{display:grid;grid-template-columns:1fr 2fr;gap:8vw}.builder-steps{list-style:none;padding:0;counter-reset:step;margin:35px 0}.builder-steps li{counter-increment:step;color:#777c6f;padding:15px 0;border-bottom:1px solid var(--line);font-size:18px}.builder-steps li:before{content:'0' counter(step);margin-right:23px;font-size:12.5px}.builder-steps li.active{color:var(--green);font-weight:700}.project-builder aside>p{font-size:14px;color:var(--muted);max-width:250px}.project-builder fieldset{border:0;padding:0;margin:0}.project-builder legend{font-size:32px;line-height:1.3;font-weight:500;letter-spacing:-.035em;margin-bottom:30px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice{position:relative;cursor:pointer}.choice input{position:absolute;opacity:0;width:1px;height:1px;top:50%;left:12px}.choice span{display:flex;justify-content:space-between;gap:15px;border:1px solid var(--line);padding:20px;font-size:15px;transition:background .25s,border .25s}.choice b{font-size:17px;font-weight:400}.choice input:checked+span{border-color:var(--green);background:#e0e7d7;color:#255d22}.choice input:focus-visible+span{outline:2px solid var(--green);outline-offset:3px}.project-builder label:not(.choice){display:block;font-size:15px;margin-bottom:24px}.project-builder label>input,.project-builder label>select,.project-builder label>textarea{margin-top:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-actions{display:flex;align-items:center;gap:25px;margin-top:30px;border-top:1px solid var(--line);padding-top:25px}#step-count{font-size:12.5px;color:var(--muted);margin-left:auto}.form-note{font-size:14px;color:var(--muted)}.form-error{color:#943c25;font-size:15px;margin-top:20px}.brief-actions{display:flex;gap:14px;flex-wrap:wrap}#brief-summary{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.8 var(--body);padding:25px;background:#e5e7dc;margin:25px 0}#brief-result .display{margin-top:20px}#brief-result>p{font-size:14px;margin-top:20px}.search-dialog{border:0;background:var(--paper);color:var(--ink);padding:40px;width:min(800px,90vw);max-height:85svh}.search-dialog::backdrop{background:#152010ad;backdrop-filter:blur(6px)}.dialog-top{display:flex;align-items:start;gap:25px;justify-content:space-between}.dialog-top h2{font-size:35px;font-weight:500;letter-spacing:-.04em;line-height:1.2;margin-bottom:35px}.dialog-close{font-size:33px}.search-dialog label{font-size:14px;display:block;margin-bottom:12px}#search-results>a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0;font-size:18px}#search-results>p{font-size:15px;margin-top:25px}.mobile-menu{display:none}
@media(min-width:1600px){.site-header{height:120px}.desktop-nav a{font-size:15px}.hero{height:calc(100svh - 120px);min-height:790px}.hero-content{padding-top:65px}.hero h1{margin-top:45px}.hero-bottom{margin-top:40px}.hero-bottom p{font-size:18px}}
@media(max-width:1200px){.desktop-nav{gap:14px}.desktop-nav a{font-size:11.5px}.site-header{gap:20px}.header-actions{gap:12px}.brand{width:125px}.hero h1{font-size:12vw}.hero{min-height:640px}.hero-photo{left:25%}.hero-bottom{gap:25px}.intro-bottom{gap:30px}.solutions-layout{gap:40px}.solution-row{min-height:80px}.feature-photo{min-height:520px}.process-layout{gap:40px}.footer-top{gap:40px}.footer-bottom{gap:20px}}
@media(max-width:1050px){.desktop-nav{display:none}.header-actions{margin-left:auto}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;margin-left:7px}.menu-toggle span{height:1px;background:var(--ink);width:22px;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu:not([hidden]){display:flex;position:fixed;inset:104px 0 0;z-index:19;background:var(--paper);padding:24px var(--pad);flex-direction:column;overflow:auto}.mobile-menu>a:not(.button){font-size:clamp(22px,4vw,38px);font-weight:500;border-bottom:1px solid var(--line);padding:18px 0;display:flex;align-items:center;gap:20px;letter-spacing:-.035em}.mobile-menu small{font-size:12.5px;color:var(--muted)}.mobile-menu>a>span{margin-left:auto}.mobile-menu .button{margin-top:25px;align-self:start}.hero-foot>span:nth-child(2){display:none}.hero{max-height:820px}.hero h1{font-size:14vw}.hero-bottom{align-items:start;flex-direction:column;gap:20px}.hero-photo{left:30%;bottom:50px}.hero-photo:after{background:linear-gradient(90deg,var(--paper),rgba(242,240,232,.6) 20%,transparent 80%),linear-gradient(0deg,var(--paper),transparent 30%)}.section{padding-top:80px;padding-bottom:80px}.section-head{grid-template-columns:1fr 2.7fr}.partners .partner-list>a{grid-template-columns:30px 1.3fr 1fr 24px}.partner-list h3{font-size:20px}.editorial-card img{height:300px}.page-hero h1{font-size:8vw}.page-hero-image{height:360px}.process-tabs button{font-size:11.5px}.three-columns{gap:25px}.project-builder{gap:40px;grid-template-columns:1fr 2.5fr}.choice span{padding:17px}.footer-wordmark{font-size:12vw}}
@media(max-width:700px){:root{--pad:23px}.site-header{height:85px;padding-top:6px;padding-bottom:6px}.brand{width:113px}.brand img{height:65px}.header-actions{gap:10px}.header-actions>.button{display:none}.language{font-size:12.5px}.mobile-menu:not([hidden]){top:85px}.hero{height:auto;min-height:780px;max-height:none}.hero-content{padding-top:28px;padding-bottom:330px}.hero-content>.eyebrow{font-size:10px}.hero h1{font-size:20.5vw;line-height:.92;margin-top:27px;letter-spacing:-.03em}.hero-photo{inset:auto 0 45px 0;height:395px}.hero-photo img{object-position:center}.hero-photo:after{background:linear-gradient(180deg,var(--paper) 0%,rgba(242,240,232,.3) 25%,transparent 45%),linear-gradient(0deg,var(--paper),transparent 18%)}.hero-bottom{margin-top:25px;flex-direction:row;gap:15px;align-items:center;justify-content:space-between}.hero-bottom p{font-size:12.5px;line-height:1.65}.hero-bottom .button{min-width:0;max-width:160px;font-size:11.5px;padding:12px;gap:14px}.hero-foot{height:45px;font-size:9px;letter-spacing:.04em}.hero-foot a{gap:16px}.hero-foot a span{font-size:18px}.section{padding-top:65px;padding-bottom:65px}.intro{padding-top:70px}.statement{font-size:9vw;letter-spacing:-.055em;line-height:1.23;margin:32px 0}.intro-bottom{grid-template-columns:60px 1fr;gap:22px}.asterisk{font-size:68px}.intro-bottom p{font-size:15px}.intro-bottom .text-link{grid-column:2;justify-self:start}.stats{margin-top:48px;padding-top:26px}.stats>div{padding:0 12px}.stats strong{font-size:11.5vw;white-space:nowrap}.stats strong span{margin:3px;font-size:.5em}.stats p{font-size:10px;margin-top:7px;line-height:1.6}.section-head{display:block;margin-bottom:32px}.section-head>.eyebrow{padding:0;margin-bottom:25px}.section-head .display{font-size:13vw}.section-description{font-size:15px;margin-top:20px}.solutions-layout{grid-template-columns:1fr;gap:35px}.feature-photo{min-height:0;height:420px}.feature-photo h3{font-size:56px}.feature-photo>div{left:25px;bottom:25px;right:25px}.solution-row{min-height:71px;gap:18px;padding:18px 0}.solution-row h3{font-size:21px}.all-solutions{margin-top:20px}.motion-story{padding:60px var(--pad)}.motion-story-inner{min-height:600px}.motion-story h2{font-size:24vw;margin-top:30px}.story-visual{right:-3%;top:19%;width:52%;height:47%;opacity:.85}.story-visual span{font-size:7.5px}.story-bottom{margin-top:42px;display:block;position:relative;z-index:3}.story-bottom p{font-size:14px;max-width:270px}.story-bottom .text-link{margin-top:25px;min-width:195px}.process-layout{display:flex;flex-direction:column;gap:35px}.process-image{min-height:0;height:320px}.process-tabs button{font-size:14px;padding:14px 8px}.process-tabs button small{font-size:11.5px}#process-content{padding:32px 0 25px;min-height:268px}#process-content h3{font-size:34px}#process-content p{font-size:15px}.process-panel>.text-link{margin-top:15px}.partners>h2{font-size:13vw;margin:25px 0 40px}.partners .partner-list>a{grid-template-columns:20px 1fr 24px;gap:14px;padding:22px 0}.partner-list h3{font-size:22px}.partner-list p{grid-column:2;grid-row:2;font-size:12.5px}.partner-list>a>span:last-child{grid-column:3;grid-row:1/3}.editorial-grid{grid-template-columns:1fr;gap:40px}.editorial-card:nth-child(n){padding-top:0;display:grid;grid-template-columns:40% 1fr;gap:10px 22px}.editorial-card img{grid-row:1/4;height:220px}.editorial-card .eyebrow{margin:15px 0 0;font-size:9px;align-self:end}.editorial-card h3{font-size:23px;line-height:1.2;align-self:start}.editorial-arrow{bottom:15px;font-size:24px}.editorial-bottom{display:block;margin-top:35px}.editorial-bottom .text-link{display:flex;margin-top:12px}.together{min-height:530px;padding-top:90px;padding-bottom:80px}.together h2{font-size:23vw;margin-top:36px;margin-bottom:26px}.together-images img:nth-child(1){width:21%;height:150px;left:-7%;top:90px}.together-images img:nth-child(2){width:22%;height:180px;right:-9%;bottom:38px}.together-images img:nth-child(3){width:15%;height:90px;right:10%;top:-12px}.together p{font-size:14px}.together .eyebrow{font-size:10px}.together .text-link{font-size:12.5px}.project-cta>.eyebrow{font-size:10px}.cta-row{gap:15px;margin:25px 0}.cta-row h2{font-size:14.5vw}.circle-link{width:70px;height:70px;font-size:42px}.cta-bottom{gap:25px;align-items:center}.cta-bottom p{font-size:12.5px}.cta-bottom .text-link{width:auto;gap:25px;font-size:14px}.footer{padding-top:42px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 25px}.footer-top img{width:132px}.footer-top p{font-size:12.5px;margin-top:17px}.footer-nav{font-size:12.5px;gap:10px;padding-top:10px}.footer-contact{grid-column:1/-1;grid-template-columns:1fr 1fr;font-size:12.5px;padding-top:0;gap:12px}.footer-contact>.eyebrow{grid-column:1/-1;margin:0}.footer-contact .text-link{font-size:12.5px;padding:0}.footer-wordmark{font-size:11.9vw;margin:40px 0 18px}.footer-bottom{flex-wrap:wrap;gap:13px 20px;font-size:10px;padding:20px 0}.footer-bottom>span:first-child{margin:0}.footer-bottom>span:nth-child(2){flex-basis:50%}.motion-toggle{font-size:10px}.page-hero{padding-top:32px}.page-hero>.eyebrow{font-size:10px;margin-bottom:35px}.page-hero-row{grid-template-columns:1fr;gap:32px}.page-hero h1{font-size:16vw}.page-hero p{font-size:16.5px;margin-top:25px}.page-hero-image{height:330px}.directory{padding-top:35px}.directory-toolbar{gap:14px;margin-bottom:30px}.directory-toolbar label{width:100%;font-size:11.5px}.directory-toolbar input{flex-basis:100%;max-width:none;font-size:15px}.directory-toolbar>span{margin:0}.directory .solution-row{min-height:85px}.directory .solution-row h3{font-size:24px}.catalogue-links{flex-direction:column;gap:17px}.family-list{margin-left:0}summary{font-size:23px;gap:16px}details p{padding:17px 0 0 30px;font-size:15px}.product-approach{grid-template-columns:1fr;gap:30px}.product-approach p{font-size:16.5px}.product-approach .display{font-size:14vw}.development-list article{grid-template-columns:1fr;gap:16px;padding:30px 0}.development-list article h2{font-size:32px}.development-list article p{font-size:15px}.split-feature{grid-template-columns:1fr;gap:40px}.split-feature>img{height:390px}.split-feature .display{font-size:14vw}.three-columns{grid-template-columns:1fr;gap:35px}.three-columns h3{font-size:30px;margin:20px 0}.three-columns p{font-size:16.5px}.segments .segment{grid-template-columns:1fr;gap:20px;padding:40px 0}.segments .display{font-size:14vw}.segment p{font-size:16.5px}.prose{margin-left:0;font-size:18px}.signature{font-size:35px}.contact-grid{grid-template-columns:1fr;gap:65px}.contact-grid .display{font-size:16vw}.contact-router{margin-top:40px}.sensory>.display{font-size:14vw}.sensory-labels{font-size:9px;gap:15px}.sensory-result{gap:25px}.sensory-result h3{font-size:32px}.sensory-result p{font-size:15px}.sensory-result>span{font-size:80px}.project-builder{grid-template-columns:1fr;gap:35px}.builder-steps{display:flex;gap:20px;margin:20px 0}.builder-steps li{font-size:12.5px;flex:1;padding:12px 0}.builder-steps li:before{display:block;margin-right:0;margin-bottom:5px}.project-builder aside>p{max-width:none;font-size:12.5px}.project-builder legend{font-size:28px}.choice-grid{gap:10px}.choice span{padding:14px 12px;font-size:14px;min-height:71px;align-items:center}.form-grid{grid-template-columns:1fr;gap:0}.form-actions{gap:15px}.form-actions .button{padding:15px;font-size:14px}.search-dialog{padding:25px}.dialog-top h2{font-size:28px;margin-bottom:25px}.search-dialog label{font-size:12.5px}#site-search{font-size:15px}#search-results>a{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}html.reduced-motion{scroll-behavior:auto}html.reduced-motion *,html.reduced-motion *:before,html.reduced-motion *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}

/* Keep customer artwork and its embedded labels visible on the home page. */
.story-visual img.customer-image,.process-image img.customer-image,.editorial-card img.customer-image,.together-images img.customer-image{object-fit:contain}
.process-image:has(.customer-image){display:flex;flex-direction:column;justify-content:center}
.process-image img.customer-image{height:auto;width:100%}
.process-image:has(.customer-image) .image-caption{position:static;display:block;margin-top:12px}


/* Dropdown navigation: desktop mega panel + mobile accordion (site map sub-pages). */
.desktop-nav{align-self:stretch}
.nav-item{display:flex;align-items:center;align-self:stretch}
.desktop-nav .nav-link{display:inline-flex;align-items:center;gap:5px}
.desktop-nav .nav-link:after{bottom:-8px}
.nav-link .chevron{width:10px;height:10px;transition:transform .3s}
.nav-panel{position:absolute;left:0;right:0;top:100%;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 30px 60px -30px rgba(32,40,30,.28);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .25s,visibility 0s .25s;z-index:30}
.nav-item:hover .nav-panel,.nav-item:focus-within .nav-panel{opacity:1;visibility:visible;transform:none;transition:opacity .25s,transform .25s}
.nav-item.is-closed .nav-panel{opacity:0;visibility:hidden}
.nav-item:hover .chevron,.nav-item:focus-within .chevron{transform:rotate(180deg)}
.nav-item.is-closed .chevron{transform:none}
.nav-item:hover .nav-link:after,.nav-item:focus-within .nav-link:after{width:100%}
.nav-panel-inner{display:grid;grid-template-columns:minmax(220px,1fr) 2.4fr;gap:clamp(30px,5vw,90px);padding:38px var(--pad) 44px;max-width:1600px;margin:0 auto}
.nav-panel-intro{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.nav-panel-intro .eyebrow{color:var(--green)}
.nav-panel-intro p{font-family:var(--heading);font-size:clamp(22px,2vw,30px);line-height:1.1;text-transform:uppercase;font-weight:600;letter-spacing:-.01em}
.desktop-nav .nav-panel-intro .text-link{font-size:15px;margin-top:6px}
.nav-panel-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);column-gap:36px;align-content:start}
.nav-panel-links.wide{grid-template-columns:repeat(3,1fr)}
.desktop-nav .nav-panel a{display:flex;align-items:baseline;gap:14px;font-size:15px;font-weight:500;white-space:normal;padding:13px 0;border-bottom:1px solid var(--line);transition:color .2s,padding .25s}
.desktop-nav .nav-panel a:after{display:none}
.nav-panel a small{font-size:12.5px;color:var(--muted);font-weight:650;min-width:18px}
.nav-panel a>span:last-child{margin-left:auto;opacity:0;transform:translateX(-6px);transition:opacity .2s,transform .2s;color:var(--green)}
.desktop-nav .nav-panel a:hover,.desktop-nav .nav-panel a:focus-visible,.desktop-nav .nav-panel a[aria-current=page]{color:var(--green);padding-left:6px}
.nav-panel a:hover>span:last-child,.nav-panel a:focus-visible>span:last-child{opacity:1;transform:none}
@media(max-width:1200px){.desktop-nav .nav-link{font-size:11.5px}.desktop-nav .nav-panel a{font-size:18px}.nav-panel-links.wide{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.nav-panel{transform:none}}
.mobile-group{border-bottom:1px solid var(--line)}
.mobile-group summary{list-style:none;cursor:pointer;font-size:clamp(22px,4vw,38px);font-weight:500;padding:18px 0;display:flex;align-items:center;gap:20px;letter-spacing:-.035em}
.mobile-group summary::-webkit-details-marker{display:none}
.mobile-group .plus{margin-left:auto;width:16px;height:16px;position:relative;flex-shrink:0}
.mobile-group .plus:before,.mobile-group .plus:after{content:'';position:absolute;left:0;top:50%;width:100%;height:1.5px;background:currentColor;transition:transform .3s}
.mobile-group .plus:after{transform:rotate(90deg)}
.mobile-group[open] .plus:after{transform:rotate(0)}
.mobile-group[open] summary{color:var(--green)}
.mobile-sub{display:flex;flex-direction:column;padding:0 0 18px 34px}
.mobile-sub a{font-size:16px;padding:9px 0;color:var(--muted)}
.mobile-sub a:first-child{color:var(--ink);font-weight:650}
.mobile-sub a[aria-current=page],.mobile-sub a:hover{color:var(--green)}
#certifications.anchor{display:block;position:relative;top:-100px}
.mobile-menu details.mobile-group{border-top:0;padding:0}
.mobile-menu details.mobile-group:last-of-type{border-bottom:1px solid var(--line)}
.mobile-menu details.mobile-group[open] .plus{transform:none}
.mobile-group summary small{font-size:12.5px;letter-spacing:0;color:var(--muted)}
