:root{
  --blue:#2f66c8;
  --blue-dark:#234f9c;
  --navy:#14263b;
  --ink:#273746;
  --muted:#6d7b88;
  --line:#e3e8ed;
  --soft:#f6f8fa;
  --white:#fff;
  --radius:10px;
  --shadow:0 10px 28px rgba(27,50,72,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.65}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1160px,calc(100% - 40px));margin:0 auto}

.topbar{background:#f5f7f9;border-bottom:1px solid var(--line);font-size:11px;color:#667583}
.topbar-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topbar-right{display:flex;gap:10px;align-items:center}.topbar a{color:#496174}.top-divider{color:#b2bdc6}

.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}
.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand-logo{display:flex;align-items:center;gap:15px}.logo-wrap{width:62px;height:62px;border:1px solid #e0e5ea;border-radius:8px;overflow:hidden;background:#fff}.brand-logo img{width:100%;height:100%;object-fit:cover}
.brand-wordmark{display:flex;flex-direction:column;line-height:1}.brand-wordmark strong{font-size:18px;font-weight:800;letter-spacing:.16em}.brand-wordmark small{font-size:12px;font-weight:700;letter-spacing:.22em;color:#647587;margin-top:6px}
.nav{display:flex;align-items:center;gap:9px;padding:0;border:0;background:transparent;color:#29445f;font-size:16px;font-weight:700}.nav a:not(.nav-cta){display:inline-flex;align-items:center;padding:10px 13px;border:1px solid #d8e4f0;border-radius:7px;background:#eef4fb;color:#2f66c8;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease;transform-origin:center}.nav a:not(.nav-cta):hover,.nav a:not(.nav-cta):focus-visible{color:#fff;background:var(--blue);border-color:var(--blue);transform:scale(1.06)}.nav-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--blue);border:1px solid var(--blue);color:#fff;padding:12px 18px;border-radius:7px;font-size:16px;font-weight:700;transition:transform .18s ease,background .18s ease,border-color .18s ease}.nav-cta:hover{background:var(--blue-dark);border-color:var(--blue-dark);transform:scale(1.06)}
.menu-btn{display:none;background:none;border:0;font-size:24px;color:var(--navy)}

.hero{background:#fff;border-bottom:1px solid var(--line)}
.hero-grid{min-height:610px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:60px;padding:72px 0}
.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:#668198}.eyebrow.dark{color:#5e7690}.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#50a38b;margin-right:8px}
.hero h1{margin:16px 0 22px;font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:clamp(44px,5.2vw,68px);line-height:1.08;letter-spacing:-.03em;color:var(--navy)}
.hero h1 em{font-style:normal;color:var(--blue)}
.hero-text{max-width:650px;color:#637381;font-size:16px;margin:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 34px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 17px;border-radius:6px;border:1px solid transparent;font-size:13px;font-weight:700;box-shadow:none;transition:.2s ease}.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-dark);border-color:var(--blue-dark)}
.btn-ghost{background:#fff;color:#36577c;border-color:#b9c7d4}.btn-ghost:hover{border-color:#8fa8be}
.trust-row{display:flex;gap:30px;border-top:1px solid var(--line);padding-top:19px}.trust-row>div{display:flex;flex-direction:column}.trust-row strong{font-size:20px;color:var(--navy)}.trust-row span{font-size:10px;color:#7c8994}

.hero-visual{min-height:420px;display:flex;align-items:center;justify-content:center}.focus-panel{width:100%;max-width:560px;border:1px solid #dce4ea;border-radius:10px;background:#f8fafb;padding:30px 30px 20px}.focus-kicker{font-size:10px;letter-spacing:.18em;font-weight:700;color:#64809a}.focus-panel h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,3.1vw,42px);line-height:1.08;font-weight:500;color:var(--navy);margin:12px 0 10px}.focus-intro{font-size:13px;color:#6a7985;line-height:1.6;max-width:500px;margin:0 0 18px}.focus-list{border-top:1px solid #dce4ea}.focus-item{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #e1e7eb}.focus-item>span{font-size:10px;color:#7890a5;padding-top:2px}.focus-item b{display:block;font-size:12px;color:#2e4252}.focus-item small{display:block;font-size:10px;color:#778590;margin-top:2px}.focus-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:16px}.focus-footer span{font-size:9px;color:#83909a}.focus-footer a{font-size:11px;color:#2f66c8;font-weight:700}.hero-line{height:1px;background:var(--line)}


.section{padding:84px 0}.section-light{background:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:34px}.section-head>div{max-width:650px}.section-head h2,.about-copy h2,.enquiry-copy h2,.faq-grid h2{margin:10px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4vw,50px);font-weight:500;line-height:1.12;letter-spacing:-.02em;color:var(--navy)}.section-head>p{max-width:470px;margin:0;color:var(--muted);font-size:14px}

.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{background:#fff;border:1px solid #dde4ea;border-radius:9px;padding:24px;min-height:300px;box-shadow:none}.service-card:hover{box-shadow:var(--shadow);border-color:#ced8e1}.service-no{font-size:12px;color:#8593a0}.icon{width:42px;height:42px;border-radius:7px;display:grid;place-items:center;background:#f1f5f8;border:1px solid #dce4ea;color:#2f6fa2;font-size:18px;margin:19px 0 14px}.service-card h3{font-family:Georgia,'Times New Roman',serif;font-size:22px;font-weight:500;color:var(--navy);margin:0 0 10px}.service-card p{font-size:13px;color:#687783;min-height:68px;margin:0}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0 18px}.chips span{font-size:9px;background:#f8fafb;border:1px solid #dce4e9;color:#6d7b86;padding:5px 7px;border-radius:4px}.service-card a{font-size:12px;color:#2c5e94;font-weight:700}

.pharma-section{background:#f5f7f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pharma-layout{display:grid;grid-template-columns:1fr .9fr;gap:55px;align-items:center}.pharma-copy h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:clamp(36px,4vw,52px);line-height:1.12;color:var(--navy);margin:10px 0 18px}.pharma-copy h2 span{color:var(--blue)}.pharma-copy p{color:#667683;max-width:650px}.pharma-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.pharma-pills span{background:#fff;border:1px solid #d7e0e7;border-radius:5px;padding:7px 10px;font-size:10px;color:#587083}.pharma-card{background:#fff;border:1px solid #dbe3e9;border-radius:9px;padding:24px;box-shadow:none}.pharma-card-top{display:flex;justify-content:space-between;color:#6b7e8e;font-size:9px;letter-spacing:.13em;padding-bottom:12px;border-bottom:1px solid #e2e7eb}.pharma-lines>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #edf0f3}.pharma-lines b{font-size:13px;color:#2c3c49}.pharma-lines span{font-size:11px;color:#798793;text-align:right}.pharma-card .btn{margin-top:20px}

.lab-gallery{background:#fff}.gallery-grid.gallery-equipment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dde4ea;border-radius:10px;background:#fff}.gallery-card.gallery-large{min-height:0}.gallery-card img{display:block;width:100%;height:360px;object-fit:contain;background:#f8fafb;padding:12px}.gallery-card figcaption{position:static;padding:14px 16px 16px;background:#fff;color:#243746;border-top:1px solid #edf1f3}.gallery-card figcaption strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:19px;font-weight:500}.gallery-card figcaption span{display:block;font-size:12px;color:#71808b;margin-top:4px;line-height:1.45}

.dark-section{background:#17324e;color:#fff}.hplc-layout{display:grid;grid-template-columns:1fr .95fr;gap:65px;align-items:center}.hplc-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.3vw,54px);font-weight:500;line-height:1.08;margin:10px 0 17px}.hplc-copy h2 span{color:#9bc8e2}.hplc-copy>p{color:#c3d0da;max-width:650px}.cap-list{margin-top:26px}.cap-list>div{display:grid;grid-template-columns:44px 1fr;column-gap:12px;padding:13px 0;border-top:1px solid rgba(255,255,255,.13)}.cap-list>div>span{color:#98b8cf;font-size:11px}.cap-list b{font-size:13px}.cap-list p{grid-column:2;margin:2px 0 0;color:#9fb1bf;font-size:11px}.hplc-art{display:flex;justify-content:center;align-items:center;position:relative;min-height:380px}.art-ring{position:absolute;border:1px solid rgba(194,221,236,.2);border-radius:50%}.ring-a{width:300px;height:300px}.ring-b{width:220px;height:220px}.art-core{width:135px;height:135px;border-radius:50%;display:grid;place-items:center;background:#0e2439;border:1px solid rgba(177,214,236,.28)}.core-label{text-align:center;font-size:20px;font-weight:700}.core-label small{font-size:8px;letter-spacing:.18em;color:#9db4c7}.core-line,.core-dot{display:none}.orbit-note{position:absolute;background:#17324e;border:1px solid rgba(188,215,230,.2);padding:8px 10px;border-radius:5px;font-size:10px;color:#c9d6df}.note-a{top:18%;left:4%}.note-b{right:1%;top:38%}.note-c{bottom:17%;left:12%}

.workflow{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr;align-items:start;gap:12px}.step{border-top:2px solid #2e67a7;padding-top:14px}.step-num{font-size:11px;color:#607a91;margin-bottom:9px}.step h3{font-family:Georgia,'Times New Roman',serif;font-size:22px;font-weight:500;color:var(--navy);margin:0 0 7px}.step p{font-size:12px;color:#6b7984;margin:0}.step-arrow{color:#8ea0ae;text-align:center;font-size:18px;padding-top:8px}
.metrics-section{background:#f5f7f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.metrics>div{padding-top:10px}.metric-big{display:block;color:#2f6bb2;font-size:11px;font-weight:700;margin-bottom:8px}.metrics b{display:block;color:var(--navy);font-family:Georgia,'Times New Roman',serif;font-size:22px;font-weight:500}.metrics p{font-size:12px;color:#71808b;margin:6px 0 0}

.about-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:60px;align-items:center}.about-photo{width:100%;height:500px;object-fit:cover;border-radius:10px;border:1px solid #dce4ea;box-shadow:none}.about-copy>p{color:#687782;max-width:650px}.about-points{margin-top:24px}.about-points>div{display:flex;gap:12px;margin:14px 0}.about-points span{color:#4f8ab0;font-size:10px;margin-top:5px}.about-points b{font-size:13px;color:#2c3d4b}.about-points p{margin:2px 0 0;color:#73818b;font-size:11px}

.cta-section{background:#1a3a5d}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-inner h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4vw,50px);font-weight:500;line-height:1.12;margin:8px 0 0;max-width:760px}.btn.light{background:#fff;color:var(--blue);border-color:#fff;flex:none}

.location-section{background:#f5f7f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.location-grid{display:block}.location-card{background:#fff;border:1px solid #dce4ea;border-radius:9px;padding:36px;box-shadow:none}.location-card h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4vw,52px);font-weight:500;line-height:1.1;color:var(--navy);margin:10px 0 8px}.location-card .location-label{color:#2f628a;font-size:18px;font-weight:700;margin:0 0 7px}.location-note{color:#70808c;max-width:700px}.location-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.light-ghost{color:#31577c;border-color:#aabaca;background:#fff}

.enquiry-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:60px;align-items:start}.enquiry-copy>p{color:#6b7984;max-width:560px}.contact-cards{margin-top:26px;border-top:1px solid var(--line)}.contact-cards>div{padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.contact-cards span{font-size:9px;letter-spacing:.12em;color:#74828d}.contact-cards b{font-size:12px;color:#314657}.enquiry-form{background:#fff;border:1px solid #dbe3e8;border-radius:9px;padding:26px;box-shadow:var(--shadow)}label{display:block;font-size:11px;font-weight:700;color:#485a68;margin-bottom:15px}input,textarea,select{width:100%;margin-top:6px;padding:11px 12px;border:1px solid #cfd9e0;border-radius:6px!important;background:#fff!important;color:#2d3e4b;font:inherit;font-size:12px}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:5px}.form-foot small{font-size:9px;color:#81909a;max-width:380px}

.faq-section{border-top:1px solid var(--line)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.faq-grid>div>p{color:#6f7d88;font-size:13px}.faq-list details{border-top:1px solid var(--line);padding:15px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;font-size:14px;font-weight:700;color:#304453}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';float:right;color:#748694;font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:12px;color:#71808b;margin:10px 0 0}

.footer{background:#18304a;color:#c8d3dc;padding:60px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.25fr;gap:45px}.footer-brand{margin-bottom:15px}.footer-brand .logo-wrap{border-color:#dce3e8}.footer p{font-size:11px;color:#9fb0bd;max-width:330px}.footer h4{font-size:11px;color:#fff;letter-spacing:.08em;text-transform:uppercase;margin:0 0 15px}.footer a{display:block;font-size:11px;margin:8px 0;color:#c8d3dc}.footer a:hover{color:#fff}.contact-placeholder{display:block;color:#7f95a6;font-size:9px;margin-top:10px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:18px;color:#8599aa;font-size:9px}

.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;align-items:center;gap:8px;background:#1fa66d;color:#fff;padding:11px 14px;border-radius:999px;box-shadow:0 8px 22px rgba(31,166,109,.22)}.whatsapp-float svg{width:18px;height:18px;fill:currentColor}.whatsapp-float span{font-size:11px;font-weight:700}
.chatbot-launcher{position:fixed;right:22px;bottom:76px;z-index:60;width:46px;height:46px;border-radius:50%;border:1px solid #8ea8be;background:#1b4770;color:#fff;display:grid;place-items:center;box-shadow:0 8px 18px rgba(26,55,84,.18);cursor:pointer}.chatbot-launcher small{font-size:7px;display:block}.chatbot{position:fixed;right:22px;bottom:132px;z-index:61;width:min(360px,calc(100vw - 30px));background:#fff;border:1px solid #d6e0e6;border-radius:10px;box-shadow:0 20px 45px rgba(24,47,68,.16);overflow:hidden;display:none}.chatbot.open{display:block}.chat-head{background:#1b3f61;color:#fff;padding:13px 14px;display:flex;justify-content:space-between;align-items:center}.chat-head>div{display:flex;gap:8px;align-items:center}.bot-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#2f6ab0;font-size:12px}.chat-head b{display:block;font-size:11px}.chat-head small{display:block;color:#adc0cf;font-size:9px}.chat-head button{border:0;background:none;color:#fff;font-size:20px;cursor:pointer}.chat-body{padding:14px;background:#fafbfc;max-height:290px;overflow:auto}.msg{font-size:11px;line-height:1.55;padding:9px 11px;border-radius:8px;max-width:88%;margin:0 0 9px}.msg.bot{background:#fff;border:1px solid #dce4e9;color:#526575}.msg.user{background:#e9f1fb;color:#2d557b;margin-left:auto}.quick-options{display:flex;flex-wrap:wrap;gap:6px}.quick-options button{border:1px solid #d4dee5;background:#fff;color:#3b5b76;padding:7px 9px;border-radius:5px;font-size:9px;cursor:pointer}.chat-input{display:flex;border-top:1px solid #e0e6eb;background:#fff}.chat-input input{border:0!important;margin:0;padding:11px 12px;border-radius:0!important}.chat-input button{width:44px;border:0;background:#eef3f7;color:#315c82;cursor:pointer}

@media(max-width:980px){
  .nav{gap:6px;font-size:15px}.nav a:not(.nav-cta){padding:9px 10px}.nav-cta{padding:11px 15px;font-size:15px}.hero-grid,.pharma-layout,.hplc-layout,.about-grid,.enquiry-grid,.faq-grid{grid-template-columns:1fr}.hero-grid{padding:58px 0;gap:40px}.hero-visual{min-height:360px}.service-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid.gallery-equipment{grid-template-columns:1fr}.workflow{grid-template-columns:1fr 1fr;gap:22px}.step-arrow{display:none}.metrics{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.about-photo{height:420px}.section-head{align-items:flex-start;flex-direction:column;gap:18px}
}
@media(max-width:760px){
  .container{width:calc(100% - 28px)}.topbar-right{display:none}.nav{display:none;position:absolute;left:0;right:0;top:76px;background:#fff;border-bottom:1px solid var(--line);padding:14px;flex-direction:column;align-items:stretch;gap:8px}.nav.open{display:flex}.nav a:not(.nav-cta),.nav-cta{width:100%;justify-content:flex-start}.menu-btn{display:block}.nav-wrap{height:76px}.hero h1{font-size:46px}.hero-text{font-size:15px}.trust-row{gap:18px;flex-wrap:wrap}.service-grid{grid-template-columns:1fr}.workflow{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.form-row{grid-template-columns:1fr}.form-foot{align-items:flex-start;flex-direction:column}.whatsapp-float{right:14px;bottom:14px}.chatbot-launcher{right:14px;bottom:68px}.chatbot{right:14px;bottom:122px}.location-card,.enquiry-form{padding:23px}
}

/* v23: slightly more readable type throughout the site */
.topbar{font-size:12px}
.eyebrow,.focus-kicker{font-size:11px}
.brand-wordmark small{font-size:13px}
.hero-text{font-size:17px}
.btn{font-size:14px}
.trust-row span{font-size:11px}
.focus-intro{font-size:14px}
.focus-item>span{font-size:11px}
.focus-item b{font-size:13px}
.focus-item small{font-size:11px}
.focus-footer span{font-size:10px}
.focus-footer a{font-size:12px}
.section-head>p{font-size:15px}
.service-no{font-size:13px}
.service-card p{font-size:14px}
.chips span{font-size:10px}
.service-card a{font-size:13px}
.pharma-copy p{font-size:15px}
.pharma-pills span{font-size:11px}
.pharma-card-top{font-size:10px}
.pharma-lines b{font-size:14px}
.pharma-lines span{font-size:12px}
.gallery-card figcaption span{font-size:12px}
.hplc-copy>p{font-size:15px}
.cap-list>div>span{font-size:12px}
.cap-list b{font-size:14px}
.cap-list p{font-size:12px}
.core-label small{font-size:9px}
.orbit-note{font-size:11px}
.step-num{font-size:12px}
.step p{font-size:13px}
.metric-big{font-size:12px}
.metrics p{font-size:13px}
.about-copy>p{font-size:15px}
.about-points b{font-size:14px}
.about-points p{font-size:12px}
.location-note{font-size:15px}
.contact-cards span{font-size:10px}
.contact-cards b{font-size:13px}
.enquiry-copy>p{font-size:15px}
label{font-size:12px}
input,textarea,select{font-size:13px}
.form-foot small{font-size:10px}
.faq-grid>div>p{font-size:14px}
.faq-list summary{font-size:15px}
.faq-list p{font-size:13px}
.footer p{font-size:12px}
.footer h4{font-size:12px}
.footer a{font-size:12px}
.contact-placeholder{font-size:10px}
.footer-bottom{font-size:10px}
.whatsapp-float span{font-size:12px}
.chat-head b{font-size:12px}
.chat-head small{font-size:10px}
.msg{font-size:12px}
.quick-options button{font-size:10px}

@media(max-width:760px){
  .topbar{font-size:11px}
  .hero-text{font-size:16px}
  .section-head>p,.pharma-copy p,.hplc-copy>p,.about-copy>p,.enquiry-copy>p{font-size:14px}
  .service-card p{font-size:13px}
  .step p,.metrics p,.faq-list p{font-size:12px}
}

/* v24: footer brand alignment cleanup */
.footer-brand{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  width:max-content;
  max-width:100%;
  margin-bottom:15px;
  user-select:none;
  caret-color:transparent;
}
.footer-brand .logo-wrap{
  width:82px;
  height:82px;
  min-width:82px;
  flex:0 0 82px;
  border-radius:8px;
  overflow:hidden;
}
.footer-brand .logo-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.footer-brand .brand-wordmark{
  flex:0 0 auto;
  align-items:flex-start;
}
.footer-brand .brand-wordmark strong{
  font-size:21px;
  line-height:1;
  letter-spacing:.18em;
}
.footer-brand .brand-wordmark small{
  font-size:13px;
  margin-top:7px;
  letter-spacing:.24em;
}
.footer-brand + p{
  margin-top:0;
}
.footer-brand,
.footer-brand *{
  caret-color:transparent;
}
@media(max-width:760px){
  .footer-brand{gap:14px;width:auto;}
  .footer-brand .logo-wrap{width:72px;height:72px;min-width:72px;flex-basis:72px}
  .footer-brand .brand-wordmark strong{font-size:19px}
  .footer-brand .brand-wordmark small{font-size:12px}
}


/* v28: restrained, human-made motion system inspired by the reference site */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: no-preference){
  .js .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
  .js .reveal.is-visible{opacity:1;transform:none}
  .js .reveal.reveal-left{transform:translateX(-26px)}
  .js .reveal.reveal-left.is-visible{transform:none}
  .js .reveal.reveal-right{transform:translateX(26px)}
  .js .reveal.reveal-right.is-visible{transform:none}
  .js .reveal.reveal-scale{transform:scale(.985);}
  .js .reveal.reveal-scale.is-visible{transform:scale(1)}
  .reveal.stagger-1{transition-delay:.04s}.reveal.stagger-2{transition-delay:.08s}.reveal.stagger-3{transition-delay:.12s}
  .reveal.stagger-4{transition-delay:.16s}.reveal.stagger-5{transition-delay:.20s}.reveal.stagger-6{transition-delay:.24s}

  .site-header{transition:box-shadow .25s ease,background .25s ease}
  .site-header.scrolled{box-shadow:0 5px 18px rgba(20,38,59,.08)}

  .hero h1{animation:heroIn .7s ease both}
  .hero-text{animation:heroIn .7s .08s ease both}
  .hero-actions{animation:heroIn .7s .14s ease both}
  .trust-row{animation:heroIn .7s .20s ease both}
  .focus-panel{animation:heroPanel .8s .08s ease both}

  .service-card,.gallery-card,.pharma-card,.location-card,.enquiry-form,.step{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
  .service-card:hover,.gallery-card:hover,.pharma-card:hover,.location-card:hover,.step:hover{transform:translateY(-4px)}
  .gallery-card img{transition:transform .35s ease}
  .gallery-card:hover img{transform:scale(1.015)}

  .btn,.nav a{will-change:transform}
  .btn{transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
  .btn:hover{transform:translateY(-2px)}

  .chatbot{animation:chatOpen .22s ease both}
  .chatbot-launcher{transition:transform .2s ease,box-shadow .2s ease}
  .chatbot-launcher:hover{transform:scale(1.06);box-shadow:0 8px 20px rgba(26,72,122,.18)}
  .whatsapp-float{transition:transform .2s ease,box-shadow .2s ease}
  .whatsapp-float:hover{transform:translateY(-3px)}
}
@keyframes heroIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes heroPanel{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@keyframes chatOpen{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

/* Keep motion quiet and professional on touch screens. */
@media (max-width:760px){
  .js .reveal{transform:translateY(16px)}
  .service-card:hover,.gallery-card:hover,.pharma-card:hover,.location-card:hover,.step:hover{transform:none}
}
