:root{--ink:#183e34;--green:#2d6450;--cream:#f7f8f2;--line:#d8ded5;--muted:#657269}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bd943e;outline-offset:6px}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--cream)}.logo{width:174px;height:auto;display:block}nav{display:flex;gap:38px;font-size:14px}nav a:hover,.text-link:hover{color:#8b702b}.button{display:inline-flex;gap:28px;align-items:center;justify-content:space-between;padding:19px 24px;background:var(--ink);color:white;border:0;border-radius:3px;cursor:pointer;font-size:14px}.button:hover{background:#35725c}.button span{font-size:22px;line-height:1}.small{padding:13px 19px}.menu{display:none}.hero{display:grid;grid-template-columns:1.06fr 1fr;min-height:650px;padding:28px 28px 28px 5%;gap:36px}.hero-copy{padding:54px 0 0}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:600;display:flex;align-items:center;gap:10px}.dot{height:7px;width:7px;background:#65844a;border-radius:50%}h1,h2,h3,p{margin-top:0}h1{font-family:'Manrope',sans-serif;font-weight:500;font-size:clamp(48px,4.8vw,76px);letter-spacing:-3.9px;line-height:1.1;margin:28px 0}em{font-style:normal;color:#7a8f5e}p{line-height:1.75;color:var(--muted)}.hero-copy>p{max-width:470px;font-size:16px}.actions{display:flex;align-items:center;gap:24px;margin-top:30px;flex-wrap:wrap}.text-link{font-size:13px;font-weight:500;border-bottom:1px solid #96a695;padding-bottom:5px}.hero-note{display:flex;justify-content:space-between;max-width:500px;margin:58px 0 8px;padding-top:20px;border-top:1px solid var(--line);font-size:10px;letter-spacing:1px}.hero-note span+span{letter-spacing:0;color:var(--muted)}.hero-visual{position:relative;border-radius:5px;overflow:hidden;min-height:620px;background:#9aa99b}.hero-visual>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:48% center;filter:saturate(.48)}.image-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,48,36,.75),transparent 60%)}.vertical-label{position:absolute;right:23px;top:28px;writing-mode:vertical-rl;color:white;font-size:9px;letter-spacing:2px}.visual-caption{position:absolute;bottom:70px;left:35px;display:flex;gap:19px;align-items:center;color:#fff;font-size:20px;line-height:1.5;font-weight:400}.visual-caption strong{font-weight:400;color:#d5e0c8}.orbit{font-size:70px;font-weight:400}.image-index{position:absolute;bottom:25px;left:35px;color:#d6dfd4;font-size:9px;letter-spacing:2px}.sector-strip{display:flex;align-items:center;justify-content:space-between;padding:32px 5%;border-block:1px solid var(--line);gap:18px;font-size:15px}.sector-strip>span{font-size:9px;letter-spacing:1px;max-width:140px;color:var(--muted)}.sector-strip i{font-size:19px;font-style:normal;color:#8ca072}.section{padding:100px 7%}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px;gap:30px}h2{font-family:Manrope,sans-serif;letter-spacing:-2px;font-size:46px;line-height:1.2;font-weight:500;margin:23px 0 0}.section-head p{font-size:14px;max-width:340px;margin-bottom:3px}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:35px;padding:26px 0;cursor:pointer}summary::-webkit-details-marker{display:none}.num{font-size:11px;color:#86957d}h3{font-size:23px;font-weight:500;margin:0}.plus{margin-left:auto;font-size:25px;font-weight:400}details[open] .plus{transform:rotate(45deg)}.detail{padding:0 7% 30px;max-width:750px}.detail p{font-size:15px}.industries{background:#e9ede3}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid #c7d0c0}.industry-grid article{padding:30px 25px 0;border-right:1px solid #c7d0c0}.industry-grid article:first-child{padding-left:0}.industry-grid article:last-child{border:0}.industry-grid article>span{font-size:9px;letter-spacing:1px}.symbol{font-size:64px;color:#7e9467;margin:28px 0}.industry-grid h3{font-size:20px;min-height:52px}.industry-grid p{font-size:14px;margin:13px 0 0}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%}.about-copy{padding-top:42px}.about-copy p{font-size:15px}.about-copy .large{font-size:24px;color:var(--ink);line-height:1.5}.process{background:var(--ink);color:#fff}.process .eyebrow{color:#bdcba8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:60px}.steps article{border-top:1px solid #507163;padding-top:20px}.steps span{font-size:11px;color:#b1c598}.steps h3{margin:25px 0 13px}.steps p{color:#c2cfc7;font-size:14px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:10px}.contact h2{margin-bottom:25px}.contact p{font-size:14px}.email{display:block;font-size:25px;margin-top:40px}.phone{display:block;font-size:15px;margin-top:15px}form{padding-top:23px}label{display:block;font-size:12px;margin-bottom:22px}input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid #aab9a8;background:transparent;border-radius:0;padding:12px 0;color:var(--ink);outline-offset:4px;font-size:14px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#7c877c}.form-note{font-size:11px!important;line-height:1.6}footer{border-top:1px solid var(--line);padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:12px;margin:0}footer>div{display:flex;flex-direction:column;gap:15px;font-size:11px}footer span{color:var(--muted)}#form-status{margin-top:15px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){nav{gap:20px}.hero{gap:20px}.hero-copy{padding-top:35px}h1{font-size:55px}.hero-visual{min-height:600px}.actions{gap:20px}.hero-note{margin-top:35px}.industry-grid{grid-template-columns:1fr 1fr;gap:35px}.industry-grid article:nth-child(3){padding-left:0}.industry-grid article:nth-child(2){border:0}.section{padding:75px 6%}h2{font-size:39px}.contact-grid{gap:6%}}@media(max-width:700px){header{height:80px;padding:0 6%;position:relative}.logo{width:140px}header>.button{margin-left:auto;margin-right:16px;font-size:11px;padding:11px}.menu{display:block;border:0;background:none;font-size:24px;color:var(--ink)}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);padding:30px;z-index:10;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column}.hero{display:flex;flex-direction:column;padding:15px 6% 22px;gap:25px}.hero-copy{padding-top:28px}.eyebrow{font-size:9px;letter-spacing:1.2px}h1{font-size:52px;letter-spacing:-2.8px;margin:25px 0}.hero-copy>p{font-size:15px}.hero-note{margin:35px 0 0}.hero-visual{min-height:380px}.visual-caption{left:25px;bottom:60px;font-size:18px}.orbit{font-size:55px}.sector-strip{padding:25px 6%;justify-content:flex-start;flex-wrap:wrap;font-size:12px;gap:14px}.sector-strip>span{max-width:none;width:100%;font-size:9px}.sector-strip i{font-size:12px}.section{padding:65px 6%}.section-head{display:block;margin-bottom:30px}.section-head p{margin-top:22px}h2{font-size:36px;letter-spacing:-1.5px}.service-list h3{font-size:18px}summary{gap:20px;padding:24px 0}.detail{padding-left:35px}.industry-grid{gap:25px;margin-top:35px}.industry-grid article{padding:25px 10px 0 0}.industry-grid h3{font-size:18px;min-height:47px}.industry-grid p{font-size:13px}.symbol{font-size:50px}.about,.contact-grid{grid-template-columns:1fr;gap:25px}.about-copy{padding-top:8px}.steps{grid-template-columns:1fr;gap:20px;margin-top:35px}.steps article{display:grid;grid-template-columns:30px 1fr;column-gap:10px}.steps h3{margin:0}.steps p{grid-column:2;margin-top:12px}.contact-grid{margin-top:0}.email{margin-top:25px}form{margin-top:15px}footer{padding:35px 6%;align-items:flex-start;flex-direction:column}.hero .button{font-size:12px}.contact .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Language navigation and centred footer address. */
.language-switch{display:flex;align-items:center;gap:8px;font-size:12px;margin-left:auto;margin-right:32px}.language-switch a{padding:7px 2px;color:var(--muted)}.language-switch a[aria-current="page"]{color:var(--ink);font-weight:700;border-bottom:1px solid var(--ink)}header nav{margin-right:auto}.footer-address{text-align:center;justify-self:center}footer{display:grid;grid-template-columns:1fr 2fr 1fr}footer>div{justify-self:end}.image-index{letter-spacing:.7px;right:20px;line-height:1.6}.legal-content{max-width:850px;margin:auto;min-height:65vh}.legal-content h1{font-size:48px}.legal-content h2{font-size:24px;margin:35px 0 18px}.legal-note{background:#e9ede3;border-left:3px solid #7a8f5e;padding:20px}.legal-content address{font-style:normal;line-height:1.8}.legal-content .text-link{display:inline-block;margin-bottom:20px}@media(max-width:1000px){.language-switch{margin-right:20px}nav{gap:18px}header{padding-inline:4%}}@media(max-width:700px){header{flex-wrap:wrap;height:auto;min-height:90px;gap:8px;padding:15px 6%}.language-switch{order:2;margin:0 12px 0 auto}.menu{order:3}header>.button{order:4;margin:0 0 0 auto;font-size:11px}header>.logo{order:1}header nav{top:100%;margin:0}header>.button{display:none}.hero-visual>img{object-position:45% center}footer{grid-template-columns:1fr;justify-items:center;text-align:center}.footer-address{width:100%}footer>div{justify-self:center}.legal-content h1{font-size:38px}}
/* Original abstract capsule composition, drawn entirely with CSS. */
.hero-visual{background:#dfe7d7}.capsule-art{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 65% 20%,#f0f3e9 0,transparent 55%),linear-gradient(140deg,#c8d8bd,#829e7d)}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff18 1px,transparent 1px),linear-gradient(90deg,#ffffff18 1px,transparent 1px);background-size:55px 55px;transform:rotate(-20deg) scale(1.5)}.capsule{position:absolute;border-radius:110px;overflow:hidden;box-shadow:22px 30px 35px #254c3940,inset -13px -8px 23px #00000018,inset 10px 8px 16px #ffffff55;background:linear-gradient(90deg,#436b4a,#9ab385 45%,#507a53);width:130px;height:320px;transform:rotate(34deg)}.capsule span{position:absolute;inset:50% 0 0;background:linear-gradient(90deg,#d9e4ca,#fbf9e8 46%,#c6d6b6);border-top:2px solid #56785460;box-shadow:inset -10px -5px 18px #00000013}.capsule-a{top:17%;left:36%;z-index:2}.capsule-b{width:83px;height:205px;left:10%;top:13%;transform:rotate(-24deg);opacity:.85}.capsule-c{width:95px;height:235px;right:5%;top:48%;transform:rotate(34deg);z-index:1}.art-ring{width:390px;height:390px;border:1px solid #ffffff50;border-radius:50%;position:absolute;top:14%;left:15%}.hero-visual .image-shade{background:linear-gradient(0deg,#143a2be6,transparent 62%)}@media(max-width:700px){.capsule-a{width:95px;height:240px;top:8%;left:43%;transform:rotate(42deg)}.capsule-b{width:65px;height:165px;top:8%;left:13%}.capsule-c{width:65px;height:165px;right:9%;top:35%}.art-ring{width:280px;height:280px;top:5%;left:20%}}
.hero-slider{isolation:isolate;outline-offset:4px}.hero-slide{position:absolute;inset:0}.hero-slide[hidden]{display:none}.hero-slide .visual-caption{bottom:95px;right:20px}.slider-controls{position:absolute;z-index:3;bottom:22px;left:28px;right:28px;display:flex;align-items:center;gap:16px;color:#fff}.slider-controls>button{width:42px;height:42px;border:1px solid #ffffff70;border-radius:50%;background:#173e3455;color:#fff;font-size:21px;cursor:pointer}.slider-controls>button:hover{background:#ffffff30}.slider-dots{display:flex;gap:3px;align-items:center}.slider-dots button{position:relative;width:30px;height:40px;padding:0;border:0;background:transparent;cursor:pointer}.slider-dots button:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:#ffffff60;left:11px;top:16px}.slider-dots button[aria-pressed=true]:after{background:white;width:9px;height:9px;left:10px;top:15px}.slider-counter{margin-left:auto;font-size:10px;letter-spacing:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.slide-2 .capsule-art{background:radial-gradient(circle at 65% 30%,#d6dfb5,transparent 65%),#738b70}.slide-2 .capsule-a{left:38%;top:20%;transform:rotate(-32deg)}.formula-circle{position:absolute;border:1px solid #f3f4d88c;border-radius:50%;background:#f2f5d51c;box-shadow:inset 0 0 40px #fff2}.circle-one{width:180px;height:180px;left:8%;top:9%}.circle-two{width:120px;height:120px;right:8%;top:38%}.circle-three{width:55px;height:55px;right:15%;top:13%}.formula-line{position:absolute;left:10%;top:12%;width:80%;height:60%;border:1px solid #eff3d650;border-radius:50%;transform:rotate(-40deg)}.slide-3 .capsule-art{background:radial-gradient(ellipse at 30% 15%,#faf4de,transparent 75%),#bdcbb0}.product-pedestal{position:absolute;top:60%;left:12%;width:76%;height:30%;border-radius:50%;background:linear-gradient(#c8d5bb,#8da281);box-shadow:0 30px 40px #173e3433}.product-bottle{position:absolute;top:17%;left:35%;width:31%;height:47%;border-radius:30px 30px 24px 24px;background:linear-gradient(90deg,#d1d9c5,#fcfbec 40%,#c3d0b7);box-shadow:20px 20px 35px #2b483c38}.bottle-cap{position:absolute;top:-7%;left:0;width:100%;height:18%;background:repeating-linear-gradient(90deg,#204c39 0 3px,#39634d 3px 5px);border-radius:8px 8px 3px 3px}.bottle-label{position:absolute;top:30%;width:100%;height:50%;display:flex;align-items:center;justify-content:space-evenly;flex-direction:column;background:#f8f7e9;color:#254b39;padding:10px 3px}.bottle-label span{font-size:12px;letter-spacing:2px}.bottle-label b{font-size:45px;font-weight:400;color:#829565}.bottle-label small{font-size:6px;letter-spacing:1px}.slide-3 .capsule-c{width:48px;height:120px;top:53%;right:15%;transform:rotate(64deg)}@media(max-width:700px){.hero-slide .visual-caption{bottom:90px;font-size:16px}.slider-controls{left:22px;right:22px;bottom:18px}.product-bottle{height:45%;top:14%;width:25%;left:38%;border-radius:20px}.bottle-label b{font-size:30px}.bottle-label span{font-size:9px}.circle-one{width:120px;height:120px}.circle-two{width:80px;height:80px}.slide-2 .capsule-a{top:7%;left:40%}}
.slider-controls{gap:10px}.slider-controls>.slider-play{font-size:14px}.slider-dots button{width:24px}.slider-dots button:after{left:8px}.slider-dots button[aria-pressed=true]:after{left:7px}@media(max-width:380px){.slider-controls{left:15px;right:15px;gap:7px}.slider-counter{letter-spacing:1px}.slider-controls>button{width:38px;height:38px}}
/* Crossfade the complete composition, including its caption. */
.hero-slide{opacity:0;pointer-events:none;z-index:0;transition:opacity 850ms cubic-bezier(.4,0,.2,1);will-change:opacity}.hero-slide.is-active{opacity:1;pointer-events:auto;z-index:1}.hero-slider>.slider-controls{z-index:3}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;will-change:auto}}
/* Shared page gutters align the slider with the header action. */
.hero{padding-right:5%;padding-left:5%}.photo-slider{min-height:0;aspect-ratio:25/24;width:100%;align-self:start;border-radius:24px;overflow:hidden}.slide-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block}.photo-slide-2 .slide-photo{object-position:65% center}.photo-slide-3 .slide-photo{object-position:58% center}.photo-slide-5 .slide-photo{object-position:70% center}.photo-slider .image-shade{background:linear-gradient(0deg,#12362be6 0%,#12362b70 25%,transparent 62%)}.photo-slider .slider-controls{gap:8px}.photo-slider .slider-dots{gap:0}.photo-slider .slider-dots button{width:22px}.photo-slider .slider-dots button:after{left:7px}.photo-slider .slider-dots button[aria-pressed=true]:after{left:6px}@media(max-width:1000px){.hero{padding-inline:4%}.photo-slider .slider-controls{left:18px;right:18px;gap:5px}.photo-slider .slider-controls>button{width:34px;height:34px;flex-shrink:0}.photo-slider .slider-dots button{width:17px}.photo-slider .slider-dots button:after{left:5px}.photo-slider .slider-dots button[aria-pressed=true]:after{left:4px}.photo-slider .slider-counter{font-size:9px;letter-spacing:1px}}@media(min-width:701px) and (max-width:850px){.photo-slider .slider-counter{display:none}.photo-slider .slider-next{margin-left:auto}.photo-slider .visual-caption{font-size:16px;left:22px;gap:12px}.photo-slider .orbit{font-size:48px}}@media(max-width:700px){.hero{padding-inline:6%}.photo-slider{aspect-ratio:25/24;min-height:0;border-radius:22px}.photo-slider .slider-counter{display:none}.photo-slider .slider-controls{left:22px;right:22px;gap:7px}.photo-slider .slider-next{margin-left:auto}.photo-slider .visual-caption{bottom:90px}.photo-slider .slider-dots button{width:20px}.photo-slider .slider-dots button:after{left:6px}.photo-slider .slider-dots button[aria-pressed=true]:after{left:5px}}@media(max-width:360px){.photo-slider .slider-controls{left:14px;right:14px;gap:4px}.photo-slider .slider-dots button{width:17px}}

/* Focal points keep the subjects visible in the shorter frame. */
.photo-slide-1 .slide-photo{object-position:55% 45%}.photo-slide-2 .slide-photo{object-position:65% 58%}.photo-slide-3 .slide-photo{object-position:58% 50%}.photo-slide-4 .slide-photo{object-position:50% 50%}.photo-slide-5 .slide-photo{object-position:70% 52%}.photo-slide-6 .slide-photo{object-position:50% 55%}.photo-slide-7 .slide-photo{object-position:48% 62%}

.food-icon{display:block;width:64px;height:64px}@media(max-width:700px){.food-icon{width:50px;height:50px}}
/* Allow room for the third language and longer French labels. */
.language-switch{flex-shrink:0;gap:6px;margin-right:24px}html[lang=fr] header nav{gap:24px}html[lang=fr] header>.button{gap:14px}html[lang=fr] .hero h1{font-size:clamp(43px,4.2vw,67px);letter-spacing:-3px}html[lang=fr] .industry-grid h3{font-size:19px}@media(max-width:1100px) and (min-width:701px){header nav{gap:16px}html[lang=fr] header nav{gap:14px;font-size:12px}header>.button{gap:12px;font-size:12px}.language-switch{margin-right:16px;gap:5px}header .logo{width:145px}}@media(max-width:700px){.language-switch{margin:0 10px 0 auto}html[lang=fr] .hero h1{font-size:46px;letter-spacing:-2.4px}}
.trade-fairs{padding-top:55px;border-top:1px solid var(--line);background:#e9ede3}.trade-fairs-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:8px}.trade-fairs h2{font-size:36px;margin-bottom:22px}.trade-fairs p{font-size:14px;max-width:480px}.trade-fairs-list{border-top:1px solid #bac9b4;margin-top:28px;padding-top:24px}.fair-status{display:flex;gap:12px;align-items:center;color:var(--ink);font-weight:500}.trade-fairs-list .text-link{display:inline-block;margin-top:4px}@media(max-width:700px){.trade-fairs-grid{grid-template-columns:1fr;gap:5px}.trade-fairs h2{font-size:31px}.trade-fairs-list{margin-top:12px}}
/* Compact language selector, with native keyboard and mobile support. */
.language-switch{min-width:112px;max-width:132px}.language-switch select{width:100%;padding:8px 22px 8px 9px;margin:0;border:1px solid var(--line);border-radius:5px;background:var(--cream);font-size:12px;cursor:pointer;color:var(--ink)}.language-switch select:focus-visible{outline:2px solid #bd943e}html[lang=es] header nav{gap:22px}html[lang=es] header>.button{gap:12px;font-size:12px}html[lang=es] h1{font-size:clamp(42px,4.2vw,67px)}html[lang=zh-CN] body{font-family:'DM Sans','PingFang SC','Microsoft YaHei',sans-serif}html[lang=zh-CN] h1,html[lang=zh-CN] h2{letter-spacing:0;line-height:1.3}html[lang=zh-CN] h1{font-size:clamp(43px,4.4vw,68px)}html[dir=rtl] body{font-family:'DM Sans','Noto Sans Arabic',Tahoma,Arial,sans-serif}html[dir=rtl] h1,html[dir=rtl] h2{font-family:Tahoma,Arial,sans-serif;letter-spacing:0;line-height:1.5}html[dir=rtl] h1{font-size:clamp(40px,4.1vw,62px)}html[dir=rtl] h2{font-size:39px}html[dir=rtl] .eyebrow{letter-spacing:0}html[dir=rtl] .language-switch{margin-left:24px;margin-right:auto}html[dir=rtl] header nav{margin-left:auto;margin-right:0;gap:25px}html[dir=rtl] .plus{margin-left:0;margin-right:auto}html[dir=rtl] .industry-grid article{border-right:0;border-left:1px solid #c7d0c0}html[dir=rtl] .industry-grid article:first-child{padding-left:25px;padding-right:0}html[dir=rtl] .industry-grid article:last-child{border:0}html[dir=rtl] .slider-controls{direction:ltr}html[dir=rtl] .hero-slide .visual-caption{left:20px;right:35px}html[dir=rtl] .vertical-label{left:23px;right:auto}html[dir=rtl] input[type=email],html[dir=rtl] .email,html[dir=rtl] .phone{direction:ltr;text-align:right}html[dir=rtl] .legal-note{border-left:0;border-right:3px solid #7a8f5e}html[dir=rtl] .legal-content address{direction:ltr;text-align:right}html[dir=rtl] .slider-counter{direction:ltr}@media(max-width:1100px) and (min-width:701px){header nav,html[lang=es] header nav,html[dir=rtl] header nav{gap:14px;font-size:12px}.language-switch{min-width:102px;margin-right:14px}html[dir=rtl] .language-switch{margin-left:14px;margin-right:auto}html[lang=es] header>.button{padding:12px}header .logo{width:135px}}@media(max-width:700px){.language-switch{min-width:110px;max-width:128px;margin:0 10px 0 auto}html[dir=rtl] .language-switch{margin:0 auto 0 10px}html[lang=es] h1{font-size:44px}html[dir=rtl] h1{font-size:42px}html[dir=rtl] h2{font-size:32px}html[dir=rtl] .industry-grid article:nth-child(2){border:0}html[dir=rtl] .industry-grid article:nth-child(3){padding-right:0}html[dir=rtl] .hero-slide .visual-caption{right:25px;left:20px}html[dir=rtl] .steps p{grid-column:2}}
/* Shared rows align labels, icons, headings and descriptions across each row of cards. */
.industry-grid{grid-template-rows:auto 112px auto auto;row-gap:0;align-items:stretch}.industry-grid article{display:grid;grid-template-rows:subgrid;grid-row:span 4;align-items:start;min-width:0}.industry-grid article>span{align-self:start;line-height:1.6;min-height:0;overflow-wrap:anywhere}.industry-grid .symbol{display:flex;align-items:center;justify-content:flex-start;width:64px;height:64px;min-height:64px;margin:24px 0;line-height:1;font-size:64px}.industry-grid .symbol svg{display:block;flex-shrink:0;width:64px;height:64px}.industry-grid h3,html[lang=fr] .industry-grid h3,html[lang=zh-CN] .industry-grid h3{margin:0;min-height:0;font-size:20px;line-height:1.45;font-weight:500;overflow-wrap:normal}.industry-grid p{margin:14px 0 0;line-height:1.75;min-width:0}.sector-strip{flex-wrap:wrap}.sector-strip a{line-height:1.5}@media(max-width:1000px){.industry-grid{grid-template-rows:auto 112px auto auto;grid-auto-rows:auto;row-gap:0;column-gap:35px}.industry-grid article:nth-child(n+3){margin-top:30px}}@media(max-width:700px){.industry-grid{grid-template-rows:auto 98px auto auto;column-gap:25px}.industry-grid .symbol{width:50px;height:50px;min-height:50px;margin:24px 0}.industry-grid .symbol svg{width:50px;height:50px}.industry-grid h3,html[lang=fr] .industry-grid h3,html[lang=zh-CN] .industry-grid h3{font-size:18px;line-height:1.45}.industry-grid article:nth-child(n+3){margin-top:25px}}
/* Main navigation, followed by language choice and the project action. */
header:has(#navigation){gap:24px}header:has(#navigation)>a:first-child{flex-shrink:0}header:has(#navigation) nav{margin-inline-start:auto;margin-inline-end:0}header:has(#navigation) .language-switch{margin:0;min-width:112px}html[dir=rtl] header:has(#navigation) nav{margin-inline-start:auto;margin-inline-end:0}html[dir=rtl] header:has(#navigation) .language-switch{margin:0}@media(max-width:1100px) and (min-width:701px){header:has(#navigation){gap:15px}header:has(#navigation) .language-switch{min-width:102px}}@media(max-width:700px){header:has(#navigation){gap:8px}header:has(#navigation) .language-switch{order:2;margin-inline-start:auto;margin-inline-end:10px}header:has(#navigation) nav{margin:0}html[dir=rtl] header:has(#navigation) .language-switch{margin-inline-start:auto;margin-inline-end:10px}}
/* Equal side columns keep the menu centred in the full header. */
@media(min-width:701px){header:has(#navigation){display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:24px}header:has(#navigation)>a:first-child{grid-column:1;grid-row:1;justify-self:start}header:has(#navigation) nav,html[dir=rtl] header:has(#navigation) nav{grid-column:2;grid-row:1;justify-self:center;margin:0}.header-actions{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:16px}header:has(#navigation) .header-actions .language-switch,html[dir=rtl] header:has(#navigation) .header-actions .language-switch{margin:0;min-width:112px}.header-actions .button{white-space:nowrap}}
@media(min-width:701px) and (max-width:1200px){header:has(#navigation){column-gap:14px}header:has(#navigation) nav{gap:18px;font-size:13px}header:has(#navigation) .logo{width:135px}.header-actions{gap:10px}header:has(#navigation) .header-actions .language-switch{min-width:98px;max-width:110px}.header-actions .button{padding-inline:12px;gap:10px;font-size:12px}}
@media(min-width:701px) and (max-width:1050px){.header-actions .button{display:none}}
@media(max-width:700px){.header-actions{order:2;margin-inline-start:auto;margin-inline-end:10px;display:flex;align-items:center}.header-actions .button{display:none}header:has(#navigation) .header-actions .language-switch,html[dir=rtl] header:has(#navigation) .header-actions .language-switch{margin:0}.menu{order:3}}
.contact-fairs{margin-top:40px;padding-top:27px;border-top:1px solid var(--line)}.contact-fairs h3{font-size:12px;letter-spacing:1.5px;font-weight:600;line-height:1.6;margin:0 0 18px}.contact-fairs .fair-status{font-size:14px;margin-bottom:12px}.contact-fairs>p{margin-bottom:14px;max-width:440px}.contact-fairs .text-link{display:inline-block}html[dir=rtl] .contact-fairs h3{letter-spacing:0}@media(max-width:700px){.contact-fairs{margin-top:30px;padding-top:23px}}
.contact .email,.contact .phone{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:400;line-height:1.5;width:fit-content;max-width:100%;letter-spacing:0}.contact .email{margin-top:35px}.contact .phone{margin-top:14px}.contact-icon{flex-shrink:0;width:22px;height:22px}.contact .email span,.contact .phone span{unicode-bidi:isolate;overflow-wrap:anywhere}.contact .email:hover,.contact .phone:hover{color:#7a8f5e}html[dir=rtl] .contact .email,html[dir=rtl] .contact .phone{direction:rtl;text-align:right}@media(max-width:700px){.contact .email,.contact .phone{font-size:18px;gap:11px}.contact-icon{width:21px;height:21px}}
.fair-event[hidden],.fair-empty[hidden]{display:none}.fair-event{padding:0 0 5px}.fair-event h4{font-size:21px;line-height:1.4;font-weight:500;margin:0 0 12px}.contact-fairs .fair-event p{margin:0 0 10px;font-size:14px}.contact-fairs .fair-date{color:var(--ink);font-weight:500}.contact-fairs .fair-venue{font-size:13px}.fair-date time{unicode-bidi:isolate}
.country-flag{display:inline-block;width:20px;height:14px;vertical-align:-2px;border-radius:2px;box-shadow:0 0 0 1px #183e3420;margin-inline:3px}
.fair-event .fair-heading{font-size:21px;font-weight:500;line-height:1.5}.fair-heading a,.fair-heading time{font-size:inherit;font-weight:inherit}.fair-heading time{display:inline;unicode-bidi:isolate}.fair-heading-separator{margin-inline:4px;color:var(--muted)}
.fair-event+.fair-event{margin-top:19px;padding-top:19px;border-top:1px solid var(--line)}
/* Physical contact-column positions stay consistent across language directions. */
.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.contact-grid>#inquiry{grid-column:1;grid-row:1;min-width:0}.contact-grid>.contact-info{grid-column:2;grid-row:1;min-width:0}html[dir=rtl] .contact-grid{direction:ltr}html[dir=rtl] .contact-grid>#inquiry,html[dir=rtl] .contact-grid>.contact-info{direction:rtl}@media(max-width:700px){.contact-grid{grid-template-columns:minmax(0,1fr)}.contact-grid>#inquiry{grid-column:1;grid-row:1}.contact-grid>.contact-info{grid-column:1;grid-row:2;margin-top:20px}}
.contact-grid>.contact-left{grid-column:1;grid-row:1;min-width:0}.contact-grid>.contact-right{grid-column:2;grid-row:1;min-width:0}.contact-left>#inquiry{margin-top:28px;padding-top:0}.contact-right>.contact-fairs{margin-top:23px;padding-top:0;border-top:0}.contact-right .contact-fairs>h3{margin-bottom:25px}html[dir=rtl] .contact-grid>.contact-left,html[dir=rtl] .contact-grid>.contact-right{direction:rtl}@media(max-width:700px){.contact-grid>.contact-left{grid-column:1;grid-row:1}.contact-grid>.contact-right{grid-column:1;grid-row:2;margin-top:20px}.contact-right>.contact-fairs{margin-top:0;padding-top:26px;border-top:1px solid var(--line)}}
footer .footer-legal-links{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px 18px;justify-self:unset}.form-privacy{font-size:11px!important;line-height:1.6!important;margin-top:15px}.form-privacy a{text-decoration:underline;text-underline-offset:3px}.privacy-content{max-width:960px}.privacy-content h1{overflow-wrap:anywhere}.privacy-updated{font-size:12px}.privacy-toc{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;position:static;background:transparent;padding:25px 0;margin:25px 0;border-block:1px solid var(--line);font-size:13px}.privacy-toc a{line-height:1.6}.privacy-content .privacy-section h2{margin-bottom:14px;line-height:1.4;letter-spacing:-.4px}.privacy-section p{overflow-wrap:anywhere}.privacy-references a{text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.privacy-toc{display:grid;grid-template-columns:1fr;position:static;inset:auto}.privacy-content .privacy-section h2{font-size:23px}.privacy-content h1{font-size:36px}footer .footer-legal-links{justify-content:center}}html[dir=rtl] .privacy-content h2{letter-spacing:0}
/* Short, one-time animations introduce the two sections without ongoing motion. */
.industry-intro{display:flex;justify-content:space-between;align-items:center;gap:35px}.industry-intro>div:first-child{min-width:0}.industry-molecule{width:220px;flex-shrink:0;color:#718b5b;opacity:.85}.industry-molecule svg{display:block;width:100%;height:auto;overflow:visible}.industries.is-visible .molecule-float{transform-origin:120px 90px;animation:molecule-drift 4.8s ease-in-out both}.industries.motion-ready.is-visible .molecule-bonds path{stroke-dasharray:1;stroke-dashoffset:1;animation:molecule-connect 1.8s ease-out .2s forwards}.industries.motion-ready.is-visible .molecule-nodes{animation:molecule-appear 1.4s ease-out both}.industries.motion-ready.is-visible .molecule-core{transform-origin:154px 92px;animation:molecule-pulse 3.8s ease-in-out both}@keyframes molecule-drift{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-6px) rotate(3deg)}}@keyframes molecule-connect{to{stroke-dashoffset:0}}@keyframes molecule-appear{from{opacity:.25}to{opacity:1}}@keyframes molecule-pulse{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}
.process .steps{position:relative;isolation:isolate}.process .steps:before,.process .steps:after{content:'';position:absolute;inset-inline:0;top:0;height:1px;background:#507163;z-index:-1}.process .steps:after{background:#c0d1a6;transform:scaleX(1);transform-origin:left center}.process .steps article{position:relative;border-top:0;padding-top:25px}.process .steps article:before{content:'';position:absolute;inset-inline-start:0;top:-4px;width:9px;height:9px;border-radius:50%;background:#c0d1a6;box-shadow:0 0 0 5px var(--ink)}.process.motion-ready:not(.is-visible) .steps:after{transform:scaleX(0)}.process.motion-ready:not(.is-visible) .steps article{opacity:0;transform:translateY(12px)}.process.motion-ready.is-visible .steps:after{animation:process-connect 1.5s ease-in-out both}.process.motion-ready.is-visible .steps article{animation:process-enter .7s ease-out both}.process.motion-ready.is-visible .steps article:nth-child(2){animation-delay:.35s}.process.motion-ready.is-visible .steps article:nth-child(3){animation-delay:.7s}@keyframes process-connect{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes process-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}html[dir=rtl] .process .steps:after{transform-origin:right center}@media(max-width:700px){.industry-intro{gap:12px;align-items:flex-start}.industry-molecule{width:100px;margin-top:30px}.industry-intro h2{font-size:31px}.process .steps{row-gap:26px;padding-inline-start:24px}.process .steps:before,.process .steps:after{inset-inline-start:0;inset-inline-end:auto;top:0;bottom:0;width:1px;height:auto}.process .steps:after{transform-origin:center top}.process .steps article{padding-top:0}.process .steps article:before{inset-inline-start:-28px;top:6px}.process.motion-ready:not(.is-visible) .steps:after{transform:scaleY(0)}.process.motion-ready.is-visible .steps:after{animation-name:process-connect-vertical}@keyframes process-connect-vertical{from{transform:scaleY(0)}to{transform:scaleY(1)}}html[dir=rtl] .process .steps:after{transform-origin:center top}}@media(max-width:380px){.industry-molecule{width:77px}.industry-intro h2{font-size:28px}}@media(prefers-reduced-motion:reduce){.industries .industry-molecule *, .process .steps:after,.process .steps article{animation:none!important}.industries .molecule-bonds path{stroke-dashoffset:0!important}.process.motion-ready .steps article{opacity:1!important;transform:none!important}.process.motion-ready .steps:after{transform:none!important}}
/* Continuous molecule float with bounded pointer response and a pause control. */
.industry-molecule{position:relative;padding-bottom:25px;touch-action:pan-y}.molecule-interactive{transform:translate(var(--molecule-x,0px),var(--molecule-y,0px)) rotate(var(--molecule-angle,0deg));transform-origin:center;transition:transform .45s ease-out,filter .4s ease-out}.industries.is-visible .molecule-float{animation:molecule-drift 8s ease-in-out infinite both}.industry-molecule:hover{opacity:1}.industry-molecule:hover .molecule-interactive{filter:drop-shadow(0 3px 7px #718b5b20)}.molecule-toggle{position:absolute;inset-inline-end:8px;bottom:0;width:32px;height:32px;display:grid;place-items:center;background:#e9ede3;border:1px solid #718b5b66;border-radius:50%;color:var(--ink);font-size:12px;cursor:pointer;line-height:1}.molecule-toggle:hover{background:#dde5d4}.industry-molecule.motion-stopped *{animation-play-state:paused!important}.industry-molecule.motion-reduced .molecule-toggle{display:none}@media(prefers-reduced-motion:reduce){.industries .molecule-float{animation:none!important}.molecule-interactive{transform:none!important;transition:none!important}.molecule-toggle{display:none}}
/* Long translated headings must wrap inside their own grid column. */
.industry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.industry-grid article>*{min-width:0;max-width:100%}html[lang] .industry-grid h3,.industry-grid p,.industry-intro h2,.sector-strip a{white-space:normal;word-break:normal;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}html[lang] .industry-grid h3{height:auto;min-height:0;overflow-wrap:anywhere}.industry-intro>div:first-child{flex:1 1 0;min-width:0}.industry-intro h2{max-width:100%;overflow-wrap:anywhere}html[lang=zh-CN] .industry-grid h3,html[lang=zh-CN] .industry-grid p,html[lang=zh-CN] .industry-intro h2,html[lang=zh-CN] .sector-strip a{hyphens:none;-webkit-hyphens:none;line-break:strict;word-break:normal}html[lang=ar] .industry-grid h3,html[lang=ar] .industry-grid p,html[lang=ar] .industry-intro h2{hyphens:none;-webkit-hyphens:none;letter-spacing:0}@media(max-width:1000px){.industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.industry-grid{column-gap:20px}.industry-intro h2{line-height:1.25}}@supports not (grid-template-rows:subgrid){.industry-grid article{grid-template-rows:auto 112px auto auto;grid-row:auto}@media(max-width:700px){.industry-grid article{grid-template-rows:auto 98px auto auto}}}

.industry-molecule{padding-bottom:0}

@media (hover: hover) and (pointer: fine) {
  body {
    cursor: url("assets/capsule-cursor.svg") 5 5, auto;
  }

  a[href], button, summary, select {
    cursor: pointer;
  }

  input:not([type]), input[type="text"], input[type="email"], textarea {
    cursor: text;
  }
}

.project-bounce {
  position: fixed;
  inset: 0;
  z-index: 9;
  overflow: hidden;
  pointer-events: none;
}

.project-bounce img {
  position: absolute;
  top: 0;
  left: 0;
  width: 44px;
  height: 44px;
  filter: drop-shadow(0 2px 2px #173e3433);
}

@media (max-width: 599px), (prefers-reduced-motion: reduce) {
  .project-bounce {
    display: none;
  }
}

.project-bounce img.is-resting {
  top: auto;
  bottom: -2px;
}

.project-bounce.is-pouring {
  z-index: 11;
}

.project-bounce .pouring-pieces {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.project-bounce.is-pouring .pouring-pieces {
  clip-path: var(--opening-clip);
}

.project-bounce img.pouring-jar-rim {
  z-index: 2;
  filter: none;
}

.contact-copy-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
}

.contact-copy-row:first-of-type {
  margin-top: 35px;
}

.contact .contact-copy-row .email,
.contact .contact-copy-row .phone {
  margin-top: 0;
  min-width: 0;
}

.contact-copy {
  display: inline-grid;
  place-items: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 5px;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
}

.contact-copy[hidden] {
  display: none;
}

.contact-copy:hover,
.contact-copy:focus-visible {
  background: var(--line);
}

.contact-copy-status {
  margin: 6px 0 0;
}

.contact-copy-status:empty {
  margin: 0;
}

.ui-icon {
  display: inline-block;
  flex: none;
  vertical-align: -.16em;
}

.visual-caption .orbit {
  display: grid;
  place-items: center;
  min-height: 1.5em;
}

.button .ui-icon,
.menu .ui-icon,
.plus .ui-icon {
  width: 20px;
  height: 20px;
}

.slider-controls > button {
  display: grid;
  place-items: center;
}

.slider-play .icon-play,
.slider-play.is-paused .icon-pause {
  display: none;
}

.slider-play.is-paused .icon-play {
  display: inline-block;
}

/* The main site header scrolls away, so its anchors align with the viewport top. */
html:has(#navigation) {
  scroll-padding-top: 0;
}

@media (max-width: 700px) {
  html {
    scroll-padding-top: 0;
  }
}
