
:root{--bg:var(--palette0, #101512);--bg2:var(--palette1, #171f19);--panel:var(--palette2, #1c2820);--panel2:var(--palette3, #233128);--lime:var(--palette4, #c8f169);--lime2:var(--palette5, #e0ff91);--white:var(--palette6, #f5f7f1);--muted:var(--palette7, #aab6aa);--line:var(--palette8, #344238);--ink:var(--palette9, #142018)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1220px,88vw);margin:auto}
header{height:84px;position:absolute;z-index:30;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid var(--palette10, #ffffff18);background:var(--palette11, #101512a8);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;gap:12px;font:800 17px Manrope;letter-spacing:-.5px}.brandmark{width:39px;height:39px;border-radius:10px;background:var(--lime);color:var(--palette12, #111a13);display:grid;place-items:center;font:900 20px Manrope;box-shadow:0 0 24px var(--palette13, #c8f16945)}.brand small{display:block;font:700 9px "DM Sans";letter-spacing:2px;color:var(--palette14, #a9b6aa);margin-top:3px}
nav{display:flex;gap:27px;align-items:center;font-size:13px;font-weight:700;color:var(--palette15, #d4ddd3)}nav a:hover{color:var(--lime)}.navcta{background:var(--lime);color:var(--palette16, #121a13);padding:13px 19px;border-radius:5px}#menu{display:none;color:white;background:none;border:0;font-size:25px}
.hero{min-height:840px;height:100svh;max-height:1050px;position:relative;overflow:hidden;display:flex;align-items:center;padding:130px 6vw 80px;background:radial-gradient(ellipse at 75% 42%,var(--palette17, #31442f) 0%,var(--palette18, #1a251c) 33%,var(--palette0, #101512) 70%)}
.hero-copy{width:53%;max-width:690px;position:relative;z-index:5}.eyebrow{display:flex;align-items:center;gap:11px;color:var(--lime);font-size:11px;font-weight:800;letter-spacing:2.2px;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:2px;background:var(--lime);box-shadow:0 0 12px var(--lime)}
h1{font:800 clamp(56px,6.4vw,91px)/.99 Manrope;letter-spacing:-5px;margin:27px 0 24px}h1 span{color:var(--lime)}.hero-copy>p{font-size:18px;line-height:1.75;color:var(--palette20, #c1cdc1);max-width:570px;margin:0}
.actions{display:flex;gap:13px;margin-top:34px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:18px;background:var(--lime);color:var(--palette12, #111a13);border:1px solid var(--lime);padding:16px 22px;border-radius:5px;font-size:12px;font-weight:900;letter-spacing:.5px;transition:.25s;box-shadow:0 8px 28px var(--palette22, #c8f16924)}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 35px var(--palette23, #c8f16942);background:var(--lime2)}.btn.outline{background:var(--palette24, #ffffff08);color:var(--white);border-color:var(--palette25, #ffffff50);box-shadow:none}.btn.outline:hover{border-color:var(--lime);color:var(--lime);background:var(--palette26, #c8f1690c)}
.hero-points{display:flex;gap:25px;margin-top:48px;flex-wrap:wrap}.hero-point{font-size:12px;color:var(--palette27, #aeb9ad)}.hero-point b{display:block;color:white;font:800 17px Manrope;margin-bottom:5px}
#hero3d{position:absolute;inset:0 0 0 40%;z-index:1}.hero-shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,var(--palette0, #101512) 0%,var(--palette29, #101512e8) 23%,var(--palette30, #10151220) 65%,var(--palette30, #10151220))}.hero-stamp{position:absolute;right:6vw;bottom:35px;z-index:5;border:1px solid var(--palette32, #ffffff35);background:var(--palette11, #101512a8);padding:13px 17px;border-radius:7px;font-size:11px;color:var(--palette34, #c3cec2);backdrop-filter:blur(12px)}.hero-stamp b{color:var(--lime)}
.ticker{overflow:hidden;border-block:1px solid var(--line);background:var(--palette35, #151d17);padding:17px 0}.ticker-track{display:flex;width:max-content;gap:42px;white-space:nowrap;animation:move 27s linear infinite;color:var(--palette36, #c4d0c2);font:800 11px Manrope;letter-spacing:2px}.ticker-track span:after{content:"✳";color:var(--lime);margin-left:42px}@keyframes move{to{transform:translateX(-50%)}}
section{padding:112px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:48px}.section-head>div{max-width:760px}.section-head h2{font:800 clamp(39px,4.7vw,64px)/1.06 Manrope;letter-spacing:-2.8px;margin:17px 0 0}.section-head h2 span{color:var(--lime)}.section-head>p{max-width:370px;margin:0;color:var(--muted);font-size:15px;line-height:1.8}
.intro{background:var(--palette37, #f1f4eb);color:var(--ink);padding:76px 0}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.intro h2{font:800 clamp(36px,4.4vw,59px)/1.08 Manrope;letter-spacing:-2.7px;margin:15px 0}.intro h2 span{color:var(--palette38, #4e791d)}.intro p{font-size:17px;line-height:1.8;color:var(--palette39, #4b5b4e);margin:0}.intro-label{font-size:11px;font-weight:900;letter-spacing:2px;color:var(--palette38, #4e791d)}.intro-tiles{display:grid;grid-template-columns:1fr 1fr;gap:12px}.intro-tile{background:white;border:1px solid var(--palette41, #dce5d8);border-radius:9px;padding:20px;min-height:115px;box-shadow:0 8px 24px var(--palette42, #1b33200b)}.intro-tile b{font:800 18px Manrope;display:block;margin-bottom:7px}.intro-tile small{font-size:12px;color:var(--palette43, #637064);line-height:1.5}
.services{background:var(--bg)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service{position:relative;min-height:290px;padding:29px 27px 26px;background:linear-gradient(145deg,var(--palette44, #202d24),var(--palette45, #19231c));border:1px solid var(--palette46, #3a4a3c);border-radius:10px;overflow:hidden;transition:.3s}.service:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-110px;bottom:-120px;background:radial-gradient(circle,var(--palette47, #c8f16930),transparent 70%);transition:.4s}.service:hover{transform:translateY(-6px);border-color:var(--palette48, #a6cf55);box-shadow:0 18px 38px var(--palette49, #0005)}.service:hover:after{right:-45px;bottom:-55px}.service-top{display:flex;justify-content:space-between;align-items:center}.service-num{font-size:11px;font-weight:900;color:var(--lime);letter-spacing:1px}.service-icon{width:47px;height:47px;border-radius:12px;background:var(--palette50, #c8f16918);border:1px solid var(--palette13, #c8f16945);color:var(--lime);display:grid;place-items:center;font-size:23px}.service h3{font:800 21px Manrope;margin:24px 0 10px}.service p{font-size:14px;line-height:1.75;color:var(--palette52, #b4c1b4);margin:0;max-width:330px}.service a{display:inline-block;margin-top:20px;color:var(--lime);font-size:11px;font-weight:900;letter-spacing:.6px}
.scroll-world{height:300vh;position:relative;background:var(--palette53, #0b1511)}.world-sticky{position:sticky;top:0;height:100svh;min-height:600px;overflow:hidden}.world-sticky canvas{position:absolute;inset:0;width:100%;height:100%}#worldCanvas{position:absolute;inset:0;width:100%;height:100%;z-index:1}.world-content{position:absolute;inset:0;z-index:3;display:flex;align-items:center;pointer-events:none}.world-copy{width:min(1220px,88vw);margin:auto;max-width:1220px}.world-copy-inner{max-width:470px;padding:27px 29px;border-radius:12px;background:linear-gradient(135deg,var(--palette54, #101a15e8),var(--palette55, #14231bd9));border:1px solid var(--palette23, #c8f16942);backdrop-filter:blur(14px);box-shadow:0 22px 70px var(--palette57, #0007);transition:transform .35s,opacity .35s}.world-copy .step-label{font-size:11px;color:var(--lime);font-weight:900;letter-spacing:2px}.world-copy h2{font:800 clamp(39px,5vw,66px)/1.03 Manrope;letter-spacing:-2.8px;margin:17px 0}.world-copy p{font-size:16px;line-height:1.75;color:var(--palette58, #c3d0c4);margin:0}.world-progress{position:absolute;bottom:28px;right:6vw;z-index:4;color:var(--palette59, #d4dfd3);font-size:11px;letter-spacing:1px}.world-progress:before{content:'SCROLL EXPERIENCE';display:block;color:var(--palette60, #91a18e);font-size:9px;letter-spacing:2px;margin-bottom:8px}.world-progress b{color:var(--lime)}.world-bar{position:absolute;left:6vw;right:6vw;bottom:0;height:3px;background:var(--palette61, #ffffff20);z-index:4}.world-bar i{display:block;width:0;height:100%;background:var(--lime);box-shadow:0 0 15px var(--lime)}
.pharma{background:var(--palette62, #eaf0e7);color:var(--ink)}.pharma-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.pharma-visual{height:450px;position:relative;border-radius:13px;overflow:hidden;background:radial-gradient(circle at 50% 45%,var(--palette63, #49634a),var(--palette64, #203528) 75%);box-shadow:0 25px 60px var(--palette65, #182e201e)}.pharma-visual canvas{width:100%;height:100%;display:block}.pharma-visual:after{content:"PHARMA TECHNOLOGY / PRECISION • CONTROL • GROWTH";position:absolute;bottom:20px;left:22px;color:var(--palette66, #d8edc7);font-size:10px;letter-spacing:1.4px;font-weight:900}.pharma-copy h2{font:800 clamp(40px,4.4vw,60px)/1.06 Manrope;letter-spacing:-2.7px;margin:18px 0}.pharma-copy h2 span{color:var(--palette67, #47752a)}.pharma-copy>p{font-size:16px;line-height:1.8;color:var(--palette68, #526254)}.pharma-list{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:27px 0 30px}.pharma-list div{font-size:13px;font-weight:800;color:var(--palette69, #283b2d)}.pharma-list div:before{content:"✓";color:var(--palette70, #4d812b);margin-right:9px}.pharma .btn{box-shadow:none}
.products{background:var(--palette71, #151e18)}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.product-card{display:grid;grid-template-columns:1fr .78fr;min-height:300px;border-radius:11px;overflow:hidden;border:1px solid var(--palette72, #405044);background:var(--palette44, #202d24)}.product-copy{padding:31px}.product-tag{font-size:10px;letter-spacing:1.6px;color:var(--lime);font-weight:900}.product h3{font:800 29px Manrope;margin:17px 0 11px}.product p{font-size:14px;line-height:1.75;color:var(--palette74, #b9c5b9)}.product-link{display:inline-block;margin-top:12px;font-size:11px;font-weight:900;color:var(--lime)}.product-art{background:linear-gradient(145deg,var(--palette75, #d2e4c5),var(--palette76, #799c70));display:grid;place-items:center;position:relative;overflow:hidden}.screen{width:175px;height:135px;border:8px solid var(--palette77, #17241a);border-radius:10px;background:var(--palette78, #f4f8ef);padding:12px;box-shadow:0 25px 40px var(--palette79, #101b1680);transform:perspective(600px) rotateY(-17deg) rotateX(8deg)}.screen i{display:block;height:8px;border-radius:5px;background:var(--palette80, #d3dfcf);margin:8px 0}.screen i:first-child{width:55%;background:var(--palette81, #8cae68)}.screen i:nth-child(2){width:80%}
.industries{background:var(--palette82, #f4f6f0);color:var(--ink)}.industries .section-head>p{color:var(--palette83, #59685d)}.industries .section-head h2 span{color:var(--palette84, #507d2c)}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.industry{display:flex;justify-content:space-between;align-items:center;padding:24px 22px;background:white;border:1px solid var(--palette85, #dce5d9);border-radius:9px;transition:.25s}.industry:hover{transform:translateY(-4px);border-color:var(--palette86, #8cab71);box-shadow:0 12px 28px var(--palette87, #20352012)}.industry strong{font:800 16px Manrope}.industry small{display:block;color:var(--palette88, #6b786d);font-size:12px;margin-top:6px}.industry span{font-size:22px;color:var(--palette84, #507d2c)}
.process{background:var(--palette90, #202c23)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.process-step{border:1px solid var(--palette91, #3c4c3e);background:var(--palette92, #1a251d);border-radius:9px;padding:24px}.process-step b{font:900 34px Manrope;color:var(--lime)}.process-step h3{font:800 18px Manrope;margin:17px 0 9px}.process-step p{font-size:13px;line-height:1.7;color:var(--palette93, #b3c0b3);margin:0}
.contact{background:radial-gradient(ellipse at 50% 0%,var(--palette94, #35492e),var(--palette95, #19251c) 62%,var(--palette0, #101512));text-align:center;padding:100px 6vw}.contact .eyebrow{justify-content:center}.contact h2{font:800 clamp(42px,5.2vw,70px)/1.04 Manrope;letter-spacing:-3px;max-width:800px;margin:22px auto}.contact p{font-size:17px;color:var(--palette97, #bdcabc);margin:0 auto 30px}
footer{background:var(--palette98, #0b100d);padding:48px 6vw 22px}.footer-top{display:flex;justify-content:space-between;gap:35px;padding-bottom:35px}.footer-top p{max-width:360px;color:var(--palette99, #9fac9f);line-height:1.75;font-size:13px}.footer-links{display:flex;gap:65px}.footer-links div{display:grid;gap:12px}.footer-links b{font-size:11px;letter-spacing:1.5px;color:var(--lime)}.footer-links a{font-size:12px;color:var(--palette100, #b7c2b6)}.copyright{border-top:1px solid var(--palette101, #ffffff1b);padding-top:18px;display:flex;justify-content:space-between;color:var(--palette102, #819083);font-size:10px}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){header{padding:0 5vw}nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--palette103, #131c16);padding:25px 6vw;flex-direction:column;align-items:flex-start}nav.open{display:flex}#menu{display:block}.hero-copy{width:70%}.hero{min-height:820px}#hero3d{inset:0 -20% 0 25%;opacity:.85}.hero-shade{background:linear-gradient(90deg,var(--palette0, #101512) 0%,var(--palette105, #101512d9) 28%,var(--palette106, #10151230) 80%)}.intro-grid,.pharma-grid{grid-template-columns:1fr}.intro-grid{gap:30px}.service-grid{grid-template-columns:repeat(2,1fr)}.section-head{display:block}.section-head>p{margin-top:20px}.industry-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){header{height:72px}.brand{font-size:14px}.brandmark{width:34px;height:34px}nav{top:72px}.hero{min-height:810px;padding:130px 6vw 70px}.hero-copy{width:100%}h1{font-size:52px;letter-spacing:-3.2px}.hero-copy>p{font-size:16px}.hero-points{gap:17px;margin-top:32px}.hero-point b{font-size:15px}#hero3d{inset:32% -55% 0 -10%;opacity:.6}.hero-shade{background:linear-gradient(180deg,var(--palette107, #10151222),var(--palette108, #10151240) 42%,var(--palette0, #101512) 91%)}.hero-stamp{right:6vw;bottom:18px;font-size:9px}.ticker-track{font-size:10px}section{padding:78px 0}.container{width:88vw}.intro{padding:65px 0}.intro h2{font-size:38px}.intro p{font-size:15px}.intro-tiles{gap:8px}.intro-tile{padding:15px}.intro-tile b{font-size:15px}.service-grid{grid-template-columns:1fr}.service{min-height:unset;padding:25px}.service h3{font-size:20px}.world-sticky{min-height:650px}.world-copy-inner{padding:20px}.world-copy h2{font-size:42px}.world-copy p{font-size:14px}.pharma-visual{height:330px}.pharma-list{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:1fr}.product-art{min-height:180px}.industry-grid{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr;gap:10px}.process-step{padding:17px}.process-step h3{font-size:16px}.footer-top{flex-direction:column}.footer-links{gap:35px}.copyright{flex-direction:column;gap:9px}.contact{padding:78px 6vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

section{padding:var(--section-space,112px) 0}.container,.world-copy{width:min(var(--content-width,1220px),88vw)}.service,.product-card,.intro-tile{border-radius:var(--card-radius,10px)}.reveal{opacity:1!important;transform:none!important}.hero-image{width:100%;height:100%;object-fit:cover}.world-progress:before{content:none}.pharma-visual:after{content:none}body.no-motion .ticker-track{animation:none}body.no-motion .scroll-world{height:100svh}a:focus-visible,button:focus-visible{outline:3px solid var(--lime);outline-offset:5px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:600px){h1{letter-spacing:-2px}.section-head h2,.world-copy h2{letter-spacing:-1px}.hero-copy{width:100%}}