:root{
  --navy:#081d68;
  --navy-2:#123082;
  --navy-deep:#041446;
  --orange:#ff681c;
  --orange-dark:#e95b14;
  --blue:var(--navy-2);
  --teal:var(--orange-dark);
  --ink:#111c43;
  --text:#4f5974;
  --muted:#7d86a0;
  --line:#dfe4f1;
  --soft:#f6f8fd;
  --white:#fff;
  --shadow:0 18px 46px rgba(12,31,87,.10);
  --radius:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Roboto",Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.skip-link{position:fixed;top:-60px;left:16px;background:#fff;color:var(--navy);z-index:9999;padding:10px 14px;border-radius:6px;box-shadow:var(--shadow)}
.skip-link:focus{top:12px}

.utility-bar{background:var(--navy-deep);color:#d7def2;font-size:12px}
.utility-inner{height:34px;display:flex;align-items:center;justify-content:space-between}
.utility-links{display:flex;gap:10px;align-items:center}
.utility-links a:hover{color:#fff}

.site-header{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 4px 18px rgba(7,24,68,.08)}
.nav-wrap{height:80px;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;min-width:194px}
.brand img{width:174px;height:auto}
.main-nav{display:flex;align-items:center;justify-content:flex-end;gap:25px;margin-left:auto}
.main-nav a{position:relative;font-size:13px;font-weight:700;color:var(--navy);padding:30px 0}
.main-nav a:after{content:"";position:absolute;left:0;right:0;bottom:22px;height:2px;background:var(--orange);transform:scaleX(0);transition:.25s}
.main-nav a:hover:after,.main-nav a.active:after{transform:scaleX(1)}
.main-nav a:hover,.main-nav a.active{color:var(--navy)}
.header-cta{white-space:nowrap}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;margin-left:auto}
.menu-toggle span{display:block;width:26px;height:2px;background:var(--navy);margin:5px 0}

.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;border-radius:7px;font-size:13px;font-weight:800;border:1px solid transparent;transition:transform .28s cubic-bezier(.2,.8,.25,1),box-shadow .28s,background .28s;cursor:pointer}
.btn:before{content:"";position:absolute;z-index:0;pointer-events:none;top:-40%;bottom:-40%;left:-38%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .65s cubic-bezier(.2,.75,.25,1)}
.btn:hover:before{left:112%}
.btn:active{transform:translateY(0) scale(.97);transition-duration:.08s}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(4,20,70,.2)}
.btn span{display:inline-block;transition:transform .22s ease}.btn:hover span{transform:translateX(4px)}
.btn-orange{background:var(--orange);color:#fff;box-shadow:0 8px 20px rgba(255,104,28,.22)}
.btn-orange:hover{background:var(--orange-dark)}
.btn-outline-light{color:#fff;border-color:rgba(255,255,255,.72);background:rgba(6,20,64,.18);backdrop-filter:blur(4px)}
.btn-outline-light:hover{background:rgba(255,255,255,.10)}

.hero{height:640px;position:relative;overflow:hidden;background:var(--navy-deep)}
.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;overflow:hidden;transition:opacity .7s ease}
.hero-slide:before{content:"";position:absolute;inset:-3%;background-image:var(--hero);background-size:cover;background-position:center;will-change:transform}
.hero-slide.active{opacity:1;visibility:visible}
.hero-slide.active[data-slide="0"]:before{animation:hero-pan-right 9.5s cubic-bezier(.2,.7,.2,1) both}
.hero-slide.active[data-slide="1"]:before{animation:hero-zoom-in 9.5s cubic-bezier(.2,.7,.2,1) both}
.hero-slide.active[data-slide="2"]:before{animation:hero-pan-up 9.5s cubic-bezier(.2,.7,.2,1) both}
@keyframes hero-pan-right{from{transform:scale(1.07) translateX(-1.2%)}to{transform:scale(1.02) translateX(1.2%)}}
@keyframes hero-zoom-in{from{transform:scale(1.01)}to{transform:scale(1.075)}}
@keyframes hero-pan-up{from{transform:scale(1.07) translateY(1.3%)}to{transform:scale(1.025) translateY(-1.3%)}}
.hero-motion{position:absolute;z-index:1;right:4%;top:7%;width:45%;height:86%;pointer-events:none;overflow:hidden;opacity:.72}
.hero-motion span,.hero-motion i{position:absolute;display:block}

.tech-motion span{left:50%;top:50%;border:1px solid rgba(107,179,255,.38);border-radius:50%;transform:translate(-50%,-50%)}
.tech-motion span:nth-child(1){width:360px;height:360px;border-color:rgba(255,104,28,.38)}
.tech-motion span:nth-child(2){width:265px;height:265px;border-style:dashed}
.tech-motion span:nth-child(3){width:175px;height:175px;border-color:rgba(255,255,255,.35)}
.tech-motion span:nth-child(4),.tech-motion span:nth-child(5){width:13px;height:13px;background:var(--orange);border:3px solid rgba(255,255,255,.7);box-shadow:0 0 24px var(--orange)}
.tech-motion span:nth-child(4){left:20%;top:24%}.tech-motion span:nth-child(5){left:77%;top:68%}
.hero-slide.active .tech-motion span:nth-child(1){animation:orbit-clockwise 12s linear infinite}
.hero-slide.active .tech-motion span:nth-child(2){animation:orbit-counter 9s linear infinite}
.hero-slide.active .tech-motion span:nth-child(3){animation:motion-breathe 3s ease-in-out infinite}
.hero-slide.active .tech-motion span:nth-child(4){animation:node-float 3.8s ease-in-out infinite}
.hero-slide.active .tech-motion span:nth-child(5){animation:node-float 3.8s ease-in-out 1.4s infinite}

.talent-motion:before,.talent-motion:after{content:"";position:absolute;left:18%;right:12%;top:49%;height:2px;background:linear-gradient(90deg,transparent,rgba(255,104,28,.8),rgba(111,182,255,.7),transparent);transform:rotate(-12deg);transform-origin:center}
.talent-motion:after{transform:rotate(18deg);opacity:.58}
.talent-motion span{width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.48);background:rgba(8,29,104,.58);box-shadow:0 0 0 7px rgba(75,145,255,.08),0 8px 25px rgba(0,0,0,.25)}
.talent-motion span:after{content:"";position:absolute;inset:17px;border:2px solid #fff;border-radius:50%;opacity:.75}
.talent-motion span:nth-child(1){left:15%;top:24%}.talent-motion span:nth-child(2){left:48%;top:12%}.talent-motion span:nth-child(3){left:73%;top:39%}.talent-motion span:nth-child(4){left:39%;top:65%}.talent-motion span:nth-child(5){left:9%;top:70%}
.hero-slide.active .talent-motion span{animation:talent-pulse 3.2s ease-in-out infinite}
.hero-slide.active .talent-motion span:nth-child(2){animation-delay:.5s}.hero-slide.active .talent-motion span:nth-child(3){animation-delay:1s}.hero-slide.active .talent-motion span:nth-child(4){animation-delay:1.5s}.hero-slide.active .talent-motion span:nth-child(5){animation-delay:2s}
.hero-slide.active .talent-motion:before{animation:connector-flow 3s ease-in-out infinite}.hero-slide.active .talent-motion:after{animation:connector-flow 3s ease-in-out 1.2s infinite}

.pharma-motion span{width:24px;height:24px;border-radius:50%;background:rgba(85,165,255,.8);border:2px solid rgba(255,255,255,.7);box-shadow:0 0 24px rgba(76,155,255,.7)}
.pharma-motion span:after{content:"";position:absolute;left:20px;top:10px;width:105px;height:2px;background:linear-gradient(90deg,rgba(255,255,255,.7),transparent);transform-origin:left}
.pharma-motion span:nth-child(1){left:17%;top:22%}.pharma-motion span:nth-child(2){left:58%;top:13%;background:var(--orange)}.pharma-motion span:nth-child(3){left:72%;top:48%}.pharma-motion span:nth-child(4){left:43%;top:68%;background:var(--orange)}.pharma-motion span:nth-child(5){left:12%;top:74%}
.pharma-motion span:nth-child(2):after{transform:rotate(62deg)}.pharma-motion span:nth-child(3):after{transform:rotate(130deg)}.pharma-motion span:nth-child(4):after{transform:rotate(205deg)}.pharma-motion span:nth-child(5):after{transform:rotate(300deg)}
.pharma-motion i{left:5%;right:5%;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--orange),transparent);box-shadow:0 0 18px rgba(255,104,28,.8)}
.hero-slide.active .pharma-motion span{animation:molecule-float 4.4s ease-in-out infinite}.hero-slide.active .pharma-motion span:nth-child(even){animation-delay:1.1s}.hero-slide.active .pharma-motion i{animation:lab-scan 4.8s ease-in-out infinite}

@keyframes orbit-clockwise{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes orbit-counter{from{transform:translate(-50%,-50%) rotate(360deg)}to{transform:translate(-50%,-50%) rotate(0)}}
@keyframes motion-breathe{50%{transform:translate(-50%,-50%) scale(1.12);opacity:.45}}
@keyframes node-float{50%{transform:translateY(-18px);filter:brightness(1.3)}}
@keyframes talent-pulse{50%{transform:translateY(-10px) scale(1.08);border-color:var(--orange)}}
@keyframes connector-flow{50%{opacity:.35;filter:brightness(1.8)}}
@keyframes molecule-float{50%{transform:translate(10px,-16px);filter:brightness(1.25)}}
@keyframes lab-scan{0%,100%{top:4%;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:94%}}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,64,.97) 0%,rgba(8,25,73,.89) 31%,rgba(8,25,73,.34) 60%,rgba(8,25,73,.06) 100%)}
.hero-inner{height:100%;display:flex;align-items:center;position:relative;z-index:2}
.hero-copy{max-width:610px;color:#fff;padding-left:4px}
.eyebrow{display:inline-block;color:var(--orange);font-size:11px;line-height:1;font-weight:900;letter-spacing:1.65px;margin-bottom:17px}
.eyebrow.light{color:#ffb079}
.hero-copy h1{font-size:52px;line-height:1.03;letter-spacing:-2px;margin:0 0 18px;font-weight:900}
.hero-copy h1 em{font-style:normal;color:var(--orange)}
.hero-copy p{max-width:585px;color:#dce3f4;font-size:17px;line-height:1.68;margin:0}
.hero-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.hero-keywords span{padding:7px 10px;border-radius:4px;border:1px solid rgba(255,255,255,.24);background:rgba(7,24,68,.38);color:#f1f5ff;font-size:10px;font-weight:800;letter-spacing:.45px;backdrop-filter:blur(4px)}
.hero-actions{display:flex;gap:13px;margin-top:31px}
.hero-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.32);background:rgba(7,24,68,.34);color:#fff;font-size:30px;cursor:pointer;transition:.2s}
.hero-arrow:hover{background:var(--orange);border-color:var(--orange);transform:translateY(-50%) scale(1.1);box-shadow:0 0 0 7px rgba(255,104,28,.14),0 10px 30px rgba(4,20,70,.3)}
.hero-arrow:active{transform:translateY(-50%) scale(.94)}
.hero-prev{left:24px}.hero-next{right:24px}
.hero-dots{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:9px}
.hero-dots button{width:9px;height:9px;border:0;border-radius:50%;padding:0;background:rgba(255,255,255,.62);cursor:pointer}
.client-trust{padding:42px 0;background:#fff;border-bottom:1px solid var(--line)}
.client-trust-heading{text-align:center;max-width:760px;margin:0 auto 22px}
.client-trust-heading .eyebrow{margin-bottom:9px}
.client-trust-heading p{margin:0;color:var(--text);font-size:13px;line-height:1.55}
.industry-clients{margin-top:42px;padding-top:36px;border-top:1px solid rgba(255,255,255,.16)}
.industry-clients .client-trust-heading p{color:#c9d2e8}
.client-logo-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.client-logo-grid span{height:82px;display:grid;place-items:center;padding:13px 16px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.12)}
.client-logo-grid img{display:block;max-width:100%;width:auto;max-height:52px;height:auto;object-fit:contain}
.proof-strip{padding:36px 0 40px!important;border-top:1px solid var(--line)}
.proof-strip-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 auto 23px;max-width:100%}
.proof-strip-heading .eyebrow{margin-bottom:8px}
.proof-strip-heading h2{margin:0;color:var(--navy);font-size:28px;line-height:1.18;letter-spacing:-.55px}
.proof-strip-link{color:var(--navy);font-size:13px;font-weight:900;white-space:nowrap}.proof-strip-link span{color:var(--orange)}
.hero-dots button.active{width:27px;border-radius:10px;background:var(--orange)}
.hero-dots button{transition:width .28s ease,background .28s ease,transform .28s ease}

.primary-services{position:relative;z-index:10;background:var(--soft);padding:54px 0 60px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.primary-card{border:1px solid #e7ebf3;background:#fff;border-radius:12px;padding:26px 24px 23px;box-shadow:0 10px 28px rgba(18,34,87,.07);transition:.25s}
.primary-card:hover{transform:translateY(-6px);box-shadow:0 18px 42px rgba(18,34,87,.13);border-color:#d9dfeb}
.service-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:900;border:1px solid currentColor;margin-bottom:18px;transition:transform .45s cubic-bezier(.16,.8,.24,1),box-shadow .35s,background .35s}
.service-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.icon-blue{color:var(--navy);background:#eef1fb}.icon-orange{color:var(--orange);background:#fff3ec}.icon-teal{color:var(--orange-dark);background:#fff3ec}
.primary-card h2{font-size:20px;color:var(--navy);margin:0 0 12px}
.primary-card p{font-size:14px;line-height:1.62;color:var(--text);min-height:112px;margin:0 0 18px}
.primary-card a{font-size:12px;font-weight:900;color:var(--navy)}
.primary-card a span{color:var(--orange);margin-left:4px}
.primary-card a:hover{color:var(--orange)}
.primary-card a span{display:inline-block;transition:transform .25s ease}.primary-card a:hover span{transform:translateX(6px)}
.primary-card:hover .service-icon{transform:translateY(-4px) rotate(-7deg) scale(1.1);box-shadow:0 10px 24px rgba(8,29,104,.16)}

.section{padding:68px 0}
.about{background:#fff}
.about-grid,.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.about-copy h2,.split-copy h2,.section-heading h2,.contact-copy h2{font-size:41px;line-height:1.12;letter-spacing:-1.1px;color:var(--navy);margin:0 0 20px}
.about-copy h2 span,.section-heading h2 span{color:var(--orange)}
.lead{font-size:18px!important;color:#303c62!important;line-height:1.65!important}
.about-copy p,.split-copy p,.contact-copy p{font-size:15px;line-height:1.72;color:var(--text)}
.about-values{display:grid;gap:0;margin-top:28px;border-top:1px solid var(--line)}
.about-values>div{display:grid;grid-template-columns:170px 1fr;gap:22px;padding:17px 0;border-bottom:1px solid var(--line)}
.about-values strong{font-size:14px;color:var(--navy)}
.about-values span{font-size:13px;line-height:1.5;color:var(--text)}
.about-visual{position:relative}
.about-visual img{height:500px;width:100%;object-fit:cover;object-position:67% center;border-radius:14px;box-shadow:var(--shadow)}
.about-badge{position:absolute;left:0;bottom:34px;width:275px;background:#fff;padding:20px 23px;border-left:4px solid var(--orange);box-shadow:0 16px 38px rgba(7,24,68,.18)}
.about-badge small{display:block;color:var(--orange);font-size:9px;font-weight:900;letter-spacing:1.5px;margin-bottom:7px}
.about-badge strong{font-size:16px;line-height:1.35;color:var(--navy)}
.ai-showcase{background:linear-gradient(135deg,#fafbff 0%,#eef1fa 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ai-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center}
.ai-copy h2{font-size:42px;line-height:1.12;letter-spacing:-1.1px;color:var(--navy);margin:0 0 20px}.ai-copy h2 span{color:var(--orange)}
.ai-copy p{font-size:15px;line-height:1.72;color:var(--text)}
.ai-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:25px 0 30px}.ai-capabilities span{position:relative;padding:11px 12px 11px 29px;border-radius:8px;background:#fff;border:1px solid #dce2ed;color:var(--navy);font-size:12px;font-weight:700}.ai-capabilities span:before{content:"";position:absolute;left:12px;top:15px;width:7px;height:7px;border-radius:50%;background:var(--orange)}
.ai-panel{background:linear-gradient(145deg,#071844,#102b76);color:#fff;padding:30px;border-radius:14px;box-shadow:0 24px 55px rgba(7,24,68,.2)}.ai-panel-label{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#ffb079;margin-bottom:15px}.ai-panel article{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:19px 0;border-top:1px solid rgba(255,255,255,.13)}.ai-panel strong{color:var(--orange);font-size:11px}.ai-panel h3{font-size:17px;margin:0 0 6px}.ai-panel p{font-size:12.5px;line-height:1.55;color:#cbd5ec;margin:0}
.ai-panel-image{width:calc(100% + 60px);height:170px;object-fit:cover;margin:-30px -30px 25px;border-radius:14px 14px 0 0;opacity:.8;mix-blend-mode:screen}
.ai-mobile-feature{display:none}

.feature-band{padding:68px 0;background:var(--navy-deep);color:#fff;overflow:hidden}
.feature-consulting{background:linear-gradient(135deg,#071844,#102b76)}
.pharma-band{background:linear-gradient(135deg,var(--navy),var(--navy-2))}
.feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.feature-grid.reverse{grid-template-columns:1.1fr .9fr}
.feature-content h2{font-size:40px;line-height:1.12;letter-spacing:-1px;margin:0 0 18px}
.feature-content p{font-size:15px;line-height:1.72;color:#cdd6ec;max-width:600px}
.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;margin:25px 0 30px}
.feature-list span{position:relative;padding-left:16px;font-size:13px;color:#ecf1ff}
.feature-list span:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border-radius:50%;background:var(--orange)}
.feature-image img{width:100%;height:420px;object-fit:cover;object-position:73% center;border-radius:13px;box-shadow:0 24px 55px rgba(0,0,0,.25)}

.staffing-detail{background:var(--soft)}
.split-image img{width:100%;height:445px;object-fit:cover;object-position:70% center;border-radius:14px;box-shadow:var(--shadow)}
.split-copy h2{margin-bottom:20px}
.pill-list{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}
.pill-list span{padding:9px 12px;border-radius:30px;background:#fff;border:1px solid #dce2ed;color:var(--navy);font-size:12px;font-weight:700}
.text-link{display:inline-flex;gap:7px;color:var(--navy);font-size:13px;font-weight:900;margin-top:8px}
.text-link span{color:var(--orange)}

.life-grid{grid-template-columns:1.08fr .92fr}
.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:27px}
.role-grid>div{padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff}
.role-grid strong{display:block;color:var(--navy);font-size:13px;margin-bottom:6px}
.role-grid span{font-size:12.5px;line-height:1.45;color:var(--text)}

.why{background:var(--soft)}
.section-heading{max-width:760px;margin-bottom:30px}
.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}
.section-heading h2{margin-bottom:15px}
.section-heading p{font-size:15px;line-height:1.65;color:var(--text);margin:0}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.why-card{background:#fff;border:1px solid #e3e8f0;border-radius:12px;padding:28px 24px;box-shadow:0 10px 28px rgba(16,33,90,.05)}
.why-number{color:var(--orange);font-size:11px;font-weight:900;letter-spacing:1.3px;margin-bottom:25px}
.why-card h3{font-size:18px;color:var(--navy);margin:0 0 12px}
.why-card p{font-size:13.5px;line-height:1.62;color:var(--text);margin:0}

.industries{padding:64px 0;background:var(--navy);color:#fff}
.industries .section-heading h2{color:#fff}
.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.industry-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:28px 22px;transition:.25s}
.industry-card:hover{background:rgba(255,255,255,.10);transform:translateY(-5px)}
.industry-icon{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#ffb17b;font-size:20px;margin-bottom:18px;transition:transform .42s cubic-bezier(.16,.8,.24,1),background .3s,box-shadow .3s}
.industry-card:hover .industry-icon{transform:rotate(8deg) scale(1.12);background:rgba(255,104,28,.18);box-shadow:0 0 0 7px rgba(255,104,28,.08)}
.industry-card h3{font-size:17px;margin:0 0 10px}
.industry-card p{color:#c9d2e8;font-size:13.5px;line-height:1.55;margin:0}
.home-industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.home-industry-card{position:relative;min-height:275px;border-radius:12px;overflow:hidden;background:var(--industry-image) center/cover;display:flex;align-items:flex-end;box-shadow:0 16px 35px rgba(0,0,0,.18);transition:.25s}.home-industry-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,64,.08),rgba(6,20,64,.94))}.home-industry-card:hover{transform:translateY(-5px)}.home-industry-card>div{position:relative;padding:24px}.home-industry-card span{font-size:9px;font-weight:900;letter-spacing:1.25px;color:#ffb079}.home-industry-card h3{font-size:18px;margin:9px 0}.home-industry-card p{font-size:12.5px;line-height:1.52;color:#d5dded;margin:0}.industry-action{text-align:center;margin:30px 0 0}

.career-cta{padding:42px 0;background:
  radial-gradient(circle at 85% 30%,rgba(255,104,28,.18),transparent 26%),
  linear-gradient(100deg,var(--navy-deep),var(--navy-2));color:#fff}
.career-inner{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}
.career-inner h2{font-size:34px;line-height:1.14;margin:0 0 12px}
.career-inner p{font-size:14px;line-height:1.62;color:#cbd5ec;margin:0;max-width:700px}
.career-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap}

.contact{background:#fff}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:start}
.contact-items{margin-top:31px;border-top:1px solid var(--line)}
.contact-items>a,.contact-items>div{display:grid;grid-template-columns:90px 1fr;padding:15px 0;border-bottom:1px solid var(--line)}
.contact-items strong{color:var(--navy);font-size:12px}
.contact-items span{color:var(--text);font-size:13px;line-height:1.45}
.contact-form{background:var(--soft);border:1px solid #e4e8f0;border-radius:13px;padding:28px;box-shadow:0 12px 32px rgba(16,33,90,.06)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.contact-form label{display:block;font-size:12px;font-weight:800;color:var(--navy);margin-bottom:14px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:7px;border:1px solid #d8dee9;background:#fff;border-radius:7px;padding:12px 13px;color:var(--ink);outline:none}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,104,28,.12)}
.form-note{display:block;margin-top:10px;color:var(--muted);font-size:10.5px;line-height:1.4}

.site-footer{background:var(--navy-deep);color:#c8d0e7;padding:55px 0 0}
.footer-grid{display:grid;grid-template-columns:1.5fr .8fr .8fr 1fr;gap:50px}
.footer-brand img{width:340px;max-width:100%;height:auto;background:#fff;padding:10px 12px;border-radius:8px;margin-bottom:18px}
.footer-brand p{max-width:320px;font-size:13px;line-height:1.6}
.footer-grid h3{color:#fff;font-size:12px;margin:3px 0 16px}
.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column}
.footer-grid a,.footer-grid p{font-size:12px;line-height:1.6;margin:4px 0}
.footer-grid a:hover{color:#fff}
.footer-bottom{margin-top:38px;border-top:1px solid rgba(255,255,255,.10);padding:18px 0;display:flex;justify-content:space-between;gap:20px;color:#8491b3;font-size:10px}
.footer-bottom div{display:flex;gap:22px}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease var(--reveal-delay,0ms),transform .6s ease var(--reveal-delay,0ms)}
.reveal.visible{opacity:1;transform:none}
.scroll-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:2000;background:linear-gradient(90deg,var(--orange),#ff9a55);transform:scaleX(0);transform-origin:left center;will-change:transform}
.home-page .hero-slide.active .hero-copy>*{animation:hero-content-in 1.15s cubic-bezier(.16,.78,.22,1) both}
.home-page .hero-slide.active[data-slide="1"] .hero-copy>*{animation-name:hero-content-right}
.home-page .hero-slide.active[data-slide="2"] .hero-copy>*{animation-name:hero-content-scale}
.home-page .hero-slide.active .hero-copy h1{position:relative;animation-name:headline-render;animation-duration:1.7s;animation-timing-function:cubic-bezier(.16,.8,.24,1)}
.home-page .hero-copy>*{transition:opacity .55s ease,transform .55s cubic-bezier(.4,0,.2,1)}
.home-page .hero-slide:not(.active) .hero-copy>*{opacity:0;transform:translateY(-14px)}
.hero-line{display:block;overflow:hidden}
.home-page .hero-slide.active .hero-line{animation:hero-line-render 1.05s cubic-bezier(.16,.8,.24,1) both}
.home-page .hero-slide.active .hero-line:nth-child(1){animation-delay:.28s}
.home-page .hero-slide.active .hero-line:nth-child(2){animation-delay:.58s}
.home-page .hero-slide.active .hero-copy h1:after{content:"";position:absolute;left:0;bottom:-10px;width:88px;height:3px;border-radius:4px;background:linear-gradient(90deg,var(--orange),rgba(255,104,28,0));transform-origin:left;animation:headline-rule 1.4s cubic-bezier(.16,.8,.24,1) .85s both}
.home-page .hero-slide.active .hero-copy h1 em{animation:headline-emphasis 2.1s ease .9s both}
.home-page .hero-slide.active .hero-copy p{animation-duration:1.35s;filter:none}
.home-page .hero-slide.active .hero-keywords span{animation:keyword-render .85s cubic-bezier(.16,.8,.24,1) both}
.home-page .hero-slide.active .hero-keywords span:nth-child(1){animation-delay:1.02s}.home-page .hero-slide.active .hero-keywords span:nth-child(2){animation-delay:1.16s}.home-page .hero-slide.active .hero-keywords span:nth-child(3){animation-delay:1.30s}.home-page .hero-slide.active .hero-keywords span:nth-child(4){animation-delay:1.44s}
.home-page .hero-slide.active .hero-copy>*:nth-child(2){animation-delay:.18s}
.home-page .hero-slide.active .hero-copy>*:nth-child(3){animation-delay:.58s}
.home-page .hero-slide.active .hero-copy>*:nth-child(4){animation-delay:.86s}
.home-page .hero-slide.active .hero-copy>*:nth-child(5){animation-delay:1.34s}
.home-page .hero-slide.active .hero-actions .btn{animation:action-render .9s cubic-bezier(.16,.8,.24,1) both}
.home-page .hero-slide.active .hero-actions .btn:nth-child(1){animation-delay:1.55s}.home-page .hero-slide.active .hero-actions .btn:nth-child(2){animation-delay:1.72s}
@keyframes hero-content-in{from{opacity:0;transform:translateY(26px);filter:blur(5px)}60%{filter:blur(1px)}to{opacity:1;transform:none;filter:none}}
@keyframes hero-content-right{from{opacity:0;transform:translateX(-32px);filter:blur(5px)}60%{filter:blur(1px)}to{opacity:1;transform:none;filter:none}}
@keyframes hero-content-scale{from{opacity:0;transform:translateY(18px) scale(.965);filter:blur(5px)}60%{filter:blur(1px)}to{opacity:1;transform:none;filter:none}}
@keyframes headline-render{0%{opacity:0;clip-path:inset(0 100% 0 0);filter:blur(10px);transform:translateY(28px)}45%{opacity:.72;filter:blur(4px)}75%{opacity:1;filter:blur(1px)}100%{opacity:1;clip-path:inset(0);filter:none;transform:none}}
@keyframes headline-emphasis{0%{color:#fff;text-shadow:none}55%{color:#ff8b4d;text-shadow:0 0 24px rgba(255,104,28,.55)}100%{color:var(--orange);text-shadow:none}}
@keyframes keyword-render{from{opacity:0;transform:translateY(10px) scale(.92);border-color:rgba(255,104,28,.8)}to{opacity:1;transform:none}}
@keyframes headline-rule{from{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}
@keyframes action-render{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
@keyframes hero-line-render{0%{opacity:0;clip-path:inset(0 100% 0 0);transform:translateY(22px);filter:blur(6px)}65%{filter:blur(1px)}100%{opacity:1;clip-path:inset(0);transform:none;filter:none}}
.home-page .primary-card,.home-page .why-card,.home-page .role-grid>div{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.home-page .primary-card:hover,.home-page .why-card:hover,.home-page .role-grid>div:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(8,29,104,.13);border-color:rgba(255,104,28,.45)}
.home-page .about-visual img,.home-page .split-image img,.home-page .feature-image img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s ease}
.home-page .about-visual:hover img,.home-page .split-image:hover img,.home-page .feature-image:hover img{transform:scale(1.025);filter:saturate(1.06)}
.home-page .about-visual,.home-page .split-image,.home-page .feature-image{overflow:hidden;border-radius:14px}
.home-page .client-logo-grid img{filter:grayscale(.2);transition:transform .35s cubic-bezier(.16,.8,.24,1),filter .35s,opacity .35s}
.home-page .client-logo-grid span:hover img{transform:scale(1.08);filter:grayscale(0) saturate(1.08)}
.home-page .client-logo-grid span{transition:transform .3s ease,border-color .3s,box-shadow .3s}
.home-page .client-logo-grid span:hover{transform:translateY(-4px);border-color:rgba(255,104,28,.35);box-shadow:0 14px 30px rgba(8,29,104,.12)}
.home-page .contact-form input,.home-page .contact-form select,.home-page .contact-form textarea{transition:border-color .25s,box-shadow .25s,transform .25s}
.home-page .contact-form input:focus,.home-page .contact-form select:focus,.home-page .contact-form textarea:focus{transform:translateY(-1px)}
.home-page .text-link span{display:inline-block;transition:transform .25s}.home-page .text-link:hover span{transform:translateX(6px)}

@media(max-width:1080px){
  .main-nav{gap:17px}
  .main-nav a{font-size:12px}
  .header-cta{display:none}
  .service-grid,.why-grid,.industry-grid,.home-industry-grid{grid-template-columns:repeat(2,1fr)}
  .client-logo-grid{grid-template-columns:repeat(4,1fr)}
  .primary-card p{min-height:88px}
  .footer-grid{grid-template-columns:1.3fr 1fr 1fr}
  .footer-grid>div:last-child{grid-column:2/4}
}
@media(max-width:860px){
  .utility-bar{display:none}
  .nav-wrap{height:70px}
  .brand img{width:160px}
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;box-shadow:0 18px 30px rgba(7,24,68,.12);padding:12px 24px;flex-direction:column;align-items:stretch;gap:0}
  .main-nav.open{display:flex}
  .main-nav a{padding:13px 0}
  .main-nav a:after{bottom:6px}
  .hero{height:640px}
  .hero-slide[data-slide="0"]{background-position:66% center}
  .hero-slide[data-slide="2"]{background-position:68% center}
  .hero-overlay{background:linear-gradient(90deg,rgba(6,20,64,.98) 0%,rgba(8,25,73,.91) 52%,rgba(8,25,73,.58) 100%)}
  .hero-copy h1{font-size:44px}
  .hero-arrow{display:none}
  .about-grid,.split-grid,.feature-grid,.feature-grid.reverse,.career-inner,.contact-grid,.ai-grid{grid-template-columns:1fr}
  .feature-grid,.feature-grid.reverse{gap:38px}
  .feature-image{order:-1}
  .pharma-band .feature-image{order:0}
  .career-actions{justify-content:flex-start}
  .about-badge{left:18px}
  .section{padding:58px 0}
  .feature-band{padding:58px 0}
}
@media(max-width:620px){
  .container{width:min(100% - 28px,1180px)}
  .hero{height:680px}
  .hero-slide[data-slide="0"]{background-position:70% center}
  .hero-slide[data-slide="2"]{background-position:72% center}
  .hero-overlay{background:linear-gradient(180deg,rgba(6,20,64,.94) 0%,rgba(6,20,64,.90) 60%,rgba(6,20,64,.98) 100%)}
  .hero-copy{max-width:100%;padding:26px 2px 38px}
  .hero-copy h1{font-size:clamp(35px,10vw,40px);letter-spacing:-1.3px}
  .hero-copy p{font-size:15px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:24px}
  .hero-actions .btn{width:100%;padding:13px 10px;text-align:center}
  .hero-keywords{max-width:100%;gap:6px;margin-top:16px}
  .hero-keywords span{font-size:9px;padding:6px 8px}
  .hero-motion{display:none}
  .client-trust{padding:27px 0 30px}
  .client-logo-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .client-logo-grid span{height:72px;padding:11px 12px}
  .client-logo-grid img{max-height:46px}
  .proof-strip{padding:29px 0 33px!important}.proof-strip-heading{display:block;margin-bottom:18px}.proof-strip-heading h2{font-size:24px}.proof-strip-link{display:inline-block;margin-top:12px}
  .service-grid,.why-grid,.industry-grid,.home-industry-grid,.role-grid,.field-row{grid-template-columns:1fr}
  .primary-services{padding:46px 0 52px}
  .primary-card p{min-height:auto}
  .primary-card{position:relative;padding:24px 22px 22px;border-radius:14px}
  .service-icon{width:56px;height:56px;margin-bottom:16px;border-width:1.5px;box-shadow:0 9px 22px rgba(8,29,104,.12)}
  .service-icon svg{width:29px;height:29px;stroke-width:1.65}
  .primary-card:nth-child(even) .service-icon{border-radius:17px}
  .ai-mobile-feature{display:block;width:100%;height:145px;object-fit:cover;object-position:center;border-radius:12px;margin:18px 0 20px;box-shadow:0 12px 28px rgba(7,24,68,.16)}
  .ai-panel-image{display:none}
  .about-copy h2,.split-copy h2,.section-heading h2,.contact-copy h2,.feature-content h2{font-size:31px}
  .about-values>div{grid-template-columns:1fr;gap:6px}
  .about-visual img,.split-image img,.feature-image img{height:330px}
  .about-badge{position:static;width:100%;margin-top:-1px}
  .feature-list{grid-template-columns:1fr}
  .ai-capabilities{grid-template-columns:1fr}
  .career-inner h2{font-size:28px}
  .career-actions{flex-direction:column;align-items:flex-start}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:last-child{grid-column:auto}
  .footer-bottom{flex-direction:column}
  .footer-bottom div{flex-wrap:wrap;gap:14px}
}
@media(max-width:390px){
  .hero{height:720px}
  .hero-actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .home-page *{scroll-behavior:auto!important}
  .hero-slide,.hero-slide:before,.hero-motion,.hero-motion span,.hero-motion i,.reveal,.home-page .hero-copy>*,.home-page .hero-line,.home-page .hero-copy h1:after,.home-page .hero-keywords span,.home-page .hero-actions .btn,.btn:before,.hero-arrow,.service-icon,.industry-icon,.primary-card a span,.home-page .client-logo-grid span,.home-page .client-logo-grid img,.home-page .text-link span,.home-page .primary-card,.home-page .why-card,.home-page .role-grid>div,.home-page .about-visual img,.home-page .split-image img,.home-page .feature-image img{animation:none!important;transition:none!important;transform:none!important}
}
