:root{
  --navy:#04193a; --navy-2:#0a2c5c; --red:#ed1c24; --red-2:#ff3b43; --ink:#0f2036;
  --muted:#5b6b7f; --line:#e7ecf2; --bg:#f5f8fc; --white:#fff; --gold:#f2b705;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;font-weight:500;color:var(--ink);background:var(--white);line-height:1.65;overflow-x:hidden}
.lead{font-weight:500}.muted{font-weight:500}
h1,h2,h3,h4,.h{font-family:Poppins,system-ui,sans-serif;color:var(--navy);line-height:1.12;margin:0;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:100%;max-width:1220px;margin:0 auto;padding:0 26px}
.btn{display:inline-flex;align-items:center;gap:.55rem;font-family:Poppins;font-weight:600;font-size:.95rem;padding:.95rem 1.8rem;border-radius:8px;border:2px solid transparent;transition:.25s;cursor:pointer}
.btn svg{width:18px;height:18px}
.btn-red{background:var(--red);color:#fff;box-shadow:0 12px 30px -10px rgba(237,28,36,.6)}
.btn-red:hover{background:#c9151c;transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-navy{background:var(--navy);color:#fff}.btn-navy:hover{background:var(--navy-2);transform:translateY(-2px)}
.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:Space Grotesk;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.86rem;color:var(--red);margin-bottom:1.1rem}
.eyebrow:before{content:"";width:32px;height:3px;border-radius:2px;background:var(--red);display:inline-block}
.section{padding:104px 0}
.section h2{font-size:2.45rem;font-weight:800}
.lead{color:var(--muted);font-size:1.08rem}
.muted{color:var(--muted)}
/* reveal */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}.reveal.d4{transition-delay:.32s}

/* Header */
header{position:fixed;top:0;left:0;right:0;z-index:60;transition:.35s}
header.scrolled{background:#fff;box-shadow:0 8px 30px -18px rgba(4,25,58,.4)}
.nav{display:flex;align-items:center;justify-content:space-between;height:84px}
.nav .logo-d{height:52px}.nav .logo-l{height:52px}
.menu{display:flex;gap:2.1rem;list-style:none;margin:0;padding:0;font-family:Poppins;font-weight:500;font-size:.94rem}
.menu a{color:#fff;padding:.4rem 0;position:relative;transition:.2s}
header.scrolled .menu a{color:var(--ink)}
.menu a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:2px;background:var(--red);transition:.25s}
.menu a:hover:after{width:100%}
.menu a:hover{color:var(--red)}
header.scrolled .logo-l{display:none}.logo-d{display:none}header.scrolled .logo-d{display:block}
@media(max-width:940px){.menu{display:none}}

/* Hero */
.hero{position:relative;height:100vh;min-height:680px;max-height:920px;overflow:hidden;display:flex;align-items:center}
.hero-slides{position:absolute;inset:0;overflow:hidden}
.hslide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.6s ease;will-change:opacity,transform}
.hslide.active{opacity:1;animation:kb 7s ease-out forwards}
@keyframes kb{from{transform:scale(1.04)}to{transform:scale(1.15)}}
.hero-dots{position:absolute;right:34px;top:50%;transform:translateY(-50%);z-index:6;display:flex;flex-direction:column;gap:12px}
.hero-dots .hdot{width:4px;height:32px;border-radius:4px;background:rgba(255,255,255,.4);border:0;cursor:pointer;transition:.3s;padding:0}
.hero-dots .hdot.active{background:var(--red);height:52px}
@media(max-width:760px){.hero-dots{right:16px}}
.hero-ov{position:absolute;inset:0;background:linear-gradient(100deg,rgba(4,25,58,.72) 0%,rgba(4,25,58,.52) 38%,rgba(4,25,58,.26) 70%,rgba(4,25,58,.12) 100%)}
.hero-ov2{position:absolute;inset:0;background:radial-gradient(1200px 500px at 80% 110%,rgba(237,28,36,.22),transparent 60%)}
.hero-inner{position:relative;z-index:3;color:#fff}
.hero .eyebrow{color:#7fa8ff}.hero .eyebrow:before{background:#7fa8ff}
.hero h1{color:#fff;font-size:4rem;font-weight:800;max-width:940px;line-height:1.05;text-shadow:0 2px 24px rgba(2,12,30,.55)}
.hero p{text-shadow:0 2px 16px rgba(2,12,30,.5)}
.hero h1 .hl{color:#ff5158;position:relative;white-space:nowrap}
.hero p{max-width:600px;font-size:1.22rem;color:#cfdcf2;margin:1.5rem 0 2.2rem}
.hero .cta{display:flex;gap:1rem;flex-wrap:wrap}
.word{display:inline-block;opacity:0;transform:translateY(28px);animation:wu .7s forwards}
@keyframes wu{to{opacity:1;transform:none}}
.scrollcue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:3;color:#fff;opacity:.7;font-size:.75rem;font-family:Space Grotesk;letter-spacing:.2em;text-align:center}
.scrollcue span{display:block;width:1px;height:44px;background:linear-gradient(#fff,transparent);margin:8px auto 0;animation:cue 1.8s infinite}
@keyframes cue{0%{opacity:0;transform:scaleY(.3)}50%{opacity:1}100%{opacity:0;transform:scaleY(1) translateY(10px)}}
@media(max-width:760px){.hero h1{font-size:2.5rem}}

/* Floating facts bar */
.facts{position:relative;z-index:20;margin-top:-64px}
.facts .box{background:var(--navy);border-radius:16px;box-shadow:0 40px 80px -30px rgba(4,25,58,.55);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.fact{padding:38px 26px;text-align:center;border-left:1px solid rgba(255,255,255,.09);position:relative}
.fact:first-child{border-left:0}
.fact .num{font-family:Poppins;font-weight:800;font-size:2.8rem;color:#fff;line-height:1;letter-spacing:-.03em}
.fact .num small{color:var(--red-2);font-size:1.5rem;margin-left:2px}
.fact .lbl{color:#9fb4d6;font-size:.86rem;margin-top:.55rem;letter-spacing:.04em}
@media(max-width:800px){.facts .box{grid-template-columns:repeat(2,1fr)}.fact:nth-child(3){border-left:0}}

/* Live ticker (news + timeline + share price) */
.tickerwrap{margin-top:40px}
.ticker{display:flex;align-items:stretch;background:var(--navy);color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 22px 44px -26px rgba(4,25,58,.55)}
.ticker .price{flex:0 0 auto;display:flex;align-items:center;gap:.7rem;background:linear-gradient(135deg,var(--red),var(--red-2));padding:0 24px;font-family:Space Grotesk;font-weight:700}
.ticker .price .sym{font-size:.72rem;letter-spacing:.1em;opacity:.92;line-height:1}
.ticker .price .sym small{display:block;font-weight:500;opacity:.8;font-size:.62rem;letter-spacing:.06em}
.ticker .price .val{font-size:1.15rem}
.ticker .price .chg{font-size:.8rem;background:rgba(255,255,255,.22);padding:3px 9px;border-radius:20px;display:inline-flex;align-items:center;gap:3px}
.ticker .scroll{flex:1 1 auto;overflow:hidden;white-space:nowrap;display:flex;align-items:center;position:relative}
.ticker .scroll:after{content:"";position:absolute;right:0;top:0;bottom:0;width:60px;background:linear-gradient(90deg,transparent,var(--navy))}
.ticker .track{display:inline-flex;align-items:center;animation:mq 55s linear infinite}
.ticker:hover .track{animation-play-state:paused}
.ticker .item{display:inline-flex;align-items:center;gap:.7rem;padding:16px 28px;border-right:1px solid rgba(255,255,255,.08);font-size:.95rem;color:#dbe6f7}
.ticker .item b{color:#fff}
.ticker .tag{font-family:Space Grotesk;font-weight:700;font-size:.62rem;letter-spacing:.1em;padding:3px 8px;border-radius:4px;background:rgba(255,255,255,.14);color:#cfe0f7}
.ticker .tag.news{background:var(--red);color:#fff}
.ticker .tag.mile{background:rgba(127,168,255,.22);color:#bcd2f7}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.ticker .tlabel{flex:0 0 auto;display:flex;align-items:center;gap:.6rem;background:linear-gradient(135deg,var(--red),var(--red-2));padding:0 24px;font-family:Space Grotesk;font-weight:700;letter-spacing:.14em;font-size:.82rem;color:#fff}
.ticker .tlabel .dot{width:9px;height:9px;border-radius:50%;background:#fff;animation:pulse 1.6s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.6)}70%{box-shadow:0 0 0 10px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}

/* Investors */
.invest{background:var(--bg)}
.inv-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.inv-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.7rem}
.inv-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 22px 14px;box-shadow:0 30px 60px -34px rgba(4,25,58,.4)}
.inv-card .tradingview-widget-container{height:230px}
.inv-card .tradingview-widget-copyright{font-size:.72rem;color:var(--muted);padding-top:8px}
.inv-card .tradingview-widget-copyright a{color:var(--navy)}
@media(max-width:860px){.inv-grid{grid-template-columns:1fr;gap:36px}}

/* About */
.about{background:var(--white)}
.about .row{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}
.about .imgwrap{position:relative}
.about .imgwrap img{border-radius:14px;position:relative;z-index:2}
.about .imgwrap:before{content:"";position:absolute;inset:22px -22px -22px 22px;border:3px solid var(--red);border-radius:14px;z-index:1}
.aboutcaro{position:relative;z-index:2;border-radius:14px;overflow:hidden;aspect-ratio:7/5;box-shadow:0 24px 50px -24px rgba(4,30,66,.4)}
.acslide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.2s ease}
.acslide.active{opacity:1}
.aboutcaro:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 70%,rgba(4,25,58,.35));pointer-events:none}
.acdots{position:absolute;left:0;right:0;bottom:14px;z-index:3;display:flex;gap:8px;justify-content:center}
.acdots button{width:8px;height:8px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0;transition:.25s}
.acdots button.active{background:var(--red);width:22px;border-radius:8px}
.badge{position:absolute;right:-14px;top:-14px;z-index:3;background:var(--red);color:#fff;border-radius:14px;padding:16px 20px;text-align:center;box-shadow:0 20px 40px -16px rgba(237,28,36,.7)}
.badge b{font-family:Poppins;font-weight:800;font-size:1.7rem;display:block;line-height:1}
.badge small{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;opacity:.9}
.about h2{margin:.4rem 0 1.1rem}
.about ul{list-style:none;padding:0;margin:1.6rem 0 2rem;display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.about li{position:relative;padding-left:1.9rem;font-weight:500}
.about li:before{content:"✓";position:absolute;left:0;top:0;color:#fff;background:var(--red);width:20px;height:20px;border-radius:50%;font-size:.7rem;display:flex;align-items:center;justify-content:center;margin-top:.25rem}
@media(max-width:860px){.about .row{grid-template-columns:1fr;gap:60px}.about ul{grid-template-columns:1fr}}

/* Capabilities */
.caps{background:var(--bg);position:relative}
.caps .head{max-width:680px;margin:0 auto 54px;text-align:center}
.caps .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.card{background:#fff;border-radius:16px;padding:38px 30px;transition:.3s;border:1px solid var(--line);position:relative;overflow:hidden}
.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--red),var(--red-2));transform:scaleX(0);transform-origin:left;transition:.35s}
.card:hover{transform:translateY(-10px);box-shadow:0 34px 60px -30px rgba(4,25,58,.4);border-color:transparent}
.card:hover:before{transform:scaleX(1)}
.card .ic{width:62px;height:62px;border-radius:14px;background:linear-gradient(135deg,rgba(237,28,36,.12),rgba(237,28,36,.04));display:flex;align-items:center;justify-content:center;margin-bottom:22px;transition:.3s}
.card:hover .ic{background:var(--red)}
.card .ic svg{width:30px;height:30px;stroke:var(--red);fill:none;stroke-width:1.7;transition:.3s}
.card:hover .ic svg{stroke:#fff}
.card h3{font-size:1.18rem;margin-bottom:.6rem}
.card p{margin:0;color:var(--muted);font-size:.94rem}
@media(max-width:980px){.caps .grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.caps .grid{grid-template-columns:1fr}}

/* Products */
.prod{position:relative;background:var(--white)}
.prod .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px}
.pcard{position:relative;border-radius:16px;overflow:hidden;min-height:220px;display:flex;align-items:flex-end;padding:26px;color:#fff;background:linear-gradient(160deg,var(--navy),var(--navy-2))}
.pcard:nth-child(2){background:linear-gradient(160deg,#5a1116,var(--red))}
.pcard:nth-child(3){background:linear-gradient(160deg,#0a2c5c,#123f86)}
.pcard:nth-child(4){background:linear-gradient(160deg,#1a1d24,#3a3f4a)}
.pcard:nth-child(5){background:linear-gradient(160deg,#0e3a2f,#12715a)}
.pcard:nth-child(6){background:linear-gradient(160deg,#3a2c05,#8a6a12)}
.pcard .big{position:absolute;right:14px;top:-10px;font-family:Poppins;font-weight:900;font-size:6rem;color:rgba(255,255,255,.08);line-height:1}
.pcard h3{color:#fff;font-size:1.4rem;position:relative;z-index:2}
.pcard p{color:rgba(255,255,255,.75);font-size:.9rem;margin:.3rem 0 0;position:relative;z-index:2}
.pcard .go{position:absolute;top:22px;right:22px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;transition:.25s}
.pcard:hover .go{background:#fff;color:var(--navy)}
.pcard:hover{transform:translateY(-6px)}
.pcard{transition:.3s}
@media(max-width:900px){.prod .grid{grid-template-columns:repeat(2,1fr)}.pcard .big{display:none}}
@media(max-width:560px){.prod .grid{grid-template-columns:1fr}}

/* Stats band with image */
.band{position:relative;color:#fff;text-align:center;background:linear-gradient(rgba(4,25,58,.9),rgba(4,25,58,.92)),url('images/anuh/office-team.jpg') center/cover fixed}
.band h2{color:#fff;font-size:2.3rem;max-width:760px;margin:0 auto 1rem}
.band p{color:#c5d5ee;max-width:620px;margin:0 auto 2rem}

/* News */
.news .grid{display:grid;grid-template-columns:1.25fr 1fr;gap:38px;margin-top:52px;align-items:stretch}
.video-card{border-radius:16px;overflow:hidden;background:var(--navy);position:relative;min-height:360px;box-shadow:0 34px 60px -30px rgba(4,25,58,.45)}
.video-card video{width:100%;height:100%;object-fit:cover;display:block}
.newslist{display:flex;flex-direction:column;gap:16px}
.newsitem{border:1px solid var(--line);border-radius:12px;padding:22px 24px;background:#fff;transition:.25s;display:block}
.newsitem:hover{border-color:var(--red);transform:translateX(6px)}
.newsitem .date{font-family:Space Grotesk;font-weight:600;font-size:.76rem;color:var(--red);letter-spacing:.1em}
.newsitem h4{font-size:1.02rem;margin:.4rem 0 0}
@media(max-width:860px){.news .grid{grid-template-columns:1fr}}

/* CTA */
.cta-band{position:relative;color:#fff;text-align:center;background:linear-gradient(120deg,var(--navy) 0%,var(--navy-2) 60%,#3a1013 130%);overflow:hidden}
.cta-band:after{content:"";position:absolute;right:-100px;top:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(237,28,36,.35),transparent 65%)}
.cta-band h2{color:#fff;font-size:2.4rem;position:relative}
.cta-band p{color:#c5d5ee;max-width:640px;margin:1rem auto 2rem;position:relative}

/* Pre-footer: Downloads + Global Exhibit (CPHI) — shared bottom section */
.prefooter{background:#04193a;color:#cddcf5;padding:74px 0}
.pf-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:60px}
.prefooter .eyebrow{color:var(--red-2)}
.prefooter h3{color:#fff;font-size:1.5rem;margin:.2rem 0 1.5rem}
.dl-list{display:flex;flex-direction:column;gap:12px;max-width:440px}
.dl-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:15px 20px;color:#fff;font-family:Poppins;font-weight:500;transition:.25s}
.dl-btn:hover{background:var(--red);border-color:var(--red);transform:translateX(4px)}
.dl-btn svg{width:18px;height:18px;flex:0 0 auto;opacity:.85}
.ex-list{display:flex;flex-direction:column;gap:12px}
.ex-item{display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-left:3px solid var(--red);border-radius:10px;padding:15px 22px;color:#dbe6f7;transition:.25s}
.ex-item:hover{background:rgba(255,255,255,.1);transform:translateX(4px)}
.ex-item .loc{font-family:Poppins;font-weight:700;color:#fff;min-width:94px;line-height:1.1}
.ex-item .loc small{display:block;font-weight:500;color:var(--red-2);font-size:.66rem;letter-spacing:.08em;margin-top:3px}
.ex-item .det{font-size:.94rem}
@media(max-width:860px){.pf-grid{grid-template-columns:1fr;gap:44px}}

/* Footer */
footer{background:#02102a;color:#93a7c4;padding:76px 0 26px;font-size:.92rem}
.fgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:40px}
footer h5{font-family:Poppins;color:#fff;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;margin:0 0 1.1rem}
footer a{color:#93a7c4;transition:.2s}footer a:hover{color:#fff}
footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}
.fbot{border-top:1px solid rgba(255,255,255,.1);margin-top:48px;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#5f7593;font-size:.85rem}
@media(max-width:860px){.fgrid{grid-template-columns:1fr 1fr}}

/* ============ INNER PAGES ============ */
/* Solid sticky header for inner pages */
body.inner header{position:sticky;top:0;background:#fff;box-shadow:0 8px 30px -18px rgba(4,25,58,.35)}
body.inner .menu a{color:var(--ink)}
body.inner .logo-l{display:none}
body.inner .logo-d{display:block}

/* Page banner */
.pagehero{position:relative;padding:78px 0 66px;color:#fff;overflow:hidden;background:var(--navy)}
.pagehero .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.32}
.pagehero:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(4,25,58,.92),rgba(4,25,58,.62))}
.pagehero .container{position:relative;z-index:2}
.pagehero h1{color:#fff;font-size:2.9rem;font-weight:800}
.crumb{font-family:Space Grotesk;font-weight:500;font-size:.85rem;letter-spacing:.02em;color:#a9c0e4;margin-top:.8rem}
.crumb a{color:#a9c0e4}.crumb a:hover{color:#fff}.crumb b{color:var(--red-2);font-weight:600}
@media(max-width:640px){.pagehero h1{font-size:2rem}}

/* Split (text + image) */
.split{display:grid;grid-template-columns:1.05fr 1fr;gap:60px;align-items:center}
.split.rev{grid-template-columns:1fr 1.05fr}
.split img{border-radius:14px;width:100%}
@media(max-width:860px){.split,.split.rev{grid-template-columns:1fr;gap:36px}}

/* Value cards (vision/mission/values) */
.valuegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:44px}
.vcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:36px 30px;transition:.3s}
.vcard:hover{box-shadow:0 30px 56px -30px rgba(4,25,58,.38);transform:translateY(-6px)}
.vcard .ic{width:56px;height:56px;border-radius:12px;background:var(--navy);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.vcard .ic svg{width:28px;height:28px;stroke:#fff;fill:none;stroke-width:1.7}
.vcard h3{font-size:1.2rem;margin-bottom:.5rem}
.vcard p{margin:0;color:var(--muted);font-size:.95rem}
@media(max-width:820px){.valuegrid{grid-template-columns:1fr}}

/* Vertical timeline */
.timeline{position:relative;max-width:940px;margin:52px auto 0;padding-left:0}
.timeline:before{content:"";position:absolute;left:50%;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--red),rgba(237,28,36,.15));transform:translateX(-50%)}
.tl-item{position:relative;width:50%;padding:14px 42px 34px;box-sizing:border-box}
.tl-item:nth-child(odd){left:0;text-align:right}
.tl-item:nth-child(even){left:50%}
.tl-item .yr{display:inline-block;font-family:Poppins;font-weight:800;color:var(--red);font-size:1.05rem;letter-spacing:.02em}
.tl-item .card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin-top:6px;box-shadow:0 18px 40px -30px rgba(4,25,58,.4);display:inline-block;text-align:left}
.tl-item .card p{margin:0;color:var(--ink);font-weight:500;font-size:.96rem}
.tl-item:before{content:"";position:absolute;top:20px;width:16px;height:16px;border-radius:50%;background:var(--red);border:3px solid #fff;box-shadow:0 0 0 3px rgba(237,28,36,.25)}
.tl-item:nth-child(odd):before{right:-8px}
.tl-item:nth-child(even):before{left:-8px}
@media(max-width:760px){
 .timeline:before{left:8px}
 .tl-item,.tl-item:nth-child(even){width:100%;left:0;text-align:left;padding:6px 0 26px 40px}
 .tl-item:nth-child(odd){text-align:left}
 .tl-item:nth-child(odd):before,.tl-item:nth-child(even):before{left:1px;right:auto}
}

/* People grid (board + team) */
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.pcardx{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.3s}
.pcardx:hover{box-shadow:0 30px 56px -30px rgba(4,25,58,.4);transform:translateY(-6px)}
.pcardx .ph{aspect-ratio:1/1;overflow:hidden;background:#eef2f7}
.pcardx .ph img{width:100%;height:100%;object-fit:cover;object-position:top center}
.pcardx .in{padding:20px 22px}
.pcardx h4{font-size:1.08rem;margin:0}
.pcardx .role{color:var(--red);font-weight:600;font-size:.82rem;font-family:Poppins;margin:.3rem 0 0}
.pcardx .role.mut{color:var(--muted);font-weight:500}
.pcardx p{color:var(--muted);font-size:.9rem;margin:.7rem 0 0}
@media(max-width:980px){.people{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.people{grid-template-columns:1fr}}

/* Awards grid */
.awards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.acard{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:.3s}
.acard:hover{box-shadow:0 30px 56px -30px rgba(4,25,58,.4);transform:translateY(-6px)}
.acard .im{aspect-ratio:3/2;overflow:hidden;background:#eef2f7}
.acard .im img{width:100%;height:100%;object-fit:cover}
.acard .cap{padding:16px 18px 18px;font-family:Poppins;color:var(--navy);display:flex;flex-direction:column;gap:.28rem}
.acard .cap b{font-weight:700;font-size:.86rem;line-height:1.3;letter-spacing:-.015em;display:flex;gap:.45rem;align-items:baseline;white-space:nowrap}
.acard .cap b:before{content:"🏆";font-size:.9rem;flex:0 0 auto}
.acard .cap span{color:var(--muted);font-family:Inter;font-weight:500;font-size:.82rem;padding-left:1.35rem}
@media(max-width:860px){.awards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.awards{grid-template-columns:1fr}}

/* CSR grid */
.csrgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.csrcard{position:relative;border-radius:14px;overflow:hidden;aspect-ratio:3/2;background:#0a2c5c}
.csrcard img{width:100%;height:100%;object-fit:cover;transition:.5s}
.csrcard:hover img{transform:scale(1.06)}
.csrcard .lab{position:absolute;left:0;right:0;bottom:0;padding:26px 18px 14px;color:#fff;font-family:Poppins;font-weight:600;font-size:.95rem;background:linear-gradient(transparent,rgba(4,25,58,.9))}
@media(max-width:860px){.csrgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.csrgrid{grid-template-columns:1fr}}

/* Nav dropdown (About sub-pages) */
.menu li{position:relative}
.menu .sub{position:absolute;top:calc(100% + 11px);left:-14px;background:#fff;min-width:220px;border-radius:10px;box-shadow:0 24px 50px -20px rgba(4,25,58,.45);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.22s;list-style:none;margin:0;z-index:70}
.menu li:hover .sub{opacity:1;visibility:visible;transform:translateY(0)}
.menu .sub li{display:block}
.menu .sub a{display:block;padding:10px 14px;border-radius:7px;color:var(--ink)!important;font-size:.9rem}
.menu .sub a:after{display:none}
.menu .sub a:hover{background:var(--bg);color:var(--red)!important}
/* transparent bridge over the gap so the dropdown stays open, and keep About underlined while open */
.menu .has-sub::after{content:"";position:absolute;left:0;right:0;top:100%;height:14px}
.menu .has-sub:hover>a:after{width:100%}

/* Stats band (inner pages) */
.stats{background:var(--navy);color:#fff}
.stats .grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stats .stat{padding:46px 24px;text-align:center;border-left:1px solid rgba(255,255,255,.12)}
.stats .stat:first-child{border-left:0}
.stats .stat .num{font-family:Poppins;font-weight:800;font-size:2.7rem;color:#fff;line-height:1}
.stats .stat .num small{color:var(--red-2);font-size:1.5rem}
.stats .stat .lbl{color:#a9bcd6;font-size:.9rem;margin-top:.5rem;letter-spacing:.04em}
@media(max-width:800px){.stats .grid{grid-template-columns:repeat(2,1fr)}.stats .stat:nth-child(3){border-left:0}}

/* Board bios + committees */
.pcardx .chip{display:inline-block;margin:.55rem 0 0;font-size:.66rem;font-family:Space Grotesk;font-weight:600;letter-spacing:.04em;color:#fff;background:var(--navy);padding:3px 9px;border-radius:20px}
.pcardx .bio{color:var(--muted);font-size:.9rem;margin:.7rem 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pcardx .readbio{margin-top:.8rem;background:none;border:0;color:var(--red);font-family:Poppins;font-weight:600;font-size:.85rem;cursor:pointer;padding:0}
.pcardx .readbio:hover{text-decoration:underline}
.bmodal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:24px}
.bmodal.open{display:flex}
.bmodal .ov{position:absolute;inset:0;background:rgba(4,25,58,.6)}
.bmodal .box{position:relative;background:#fff;max-width:740px;width:100%;max-height:86vh;overflow:auto;border-radius:16px;padding:40px 44px;box-shadow:0 40px 90px -30px rgba(4,25,58,.6)}
.bmodal .box .x{position:absolute;top:14px;right:18px;background:none;border:0;font-size:1.7rem;color:var(--muted);cursor:pointer;line-height:1}
.bmodal .box h3{font-size:1.5rem}
.bmodal .box .role{color:var(--red);font-weight:600;font-family:Poppins;margin:.3rem 0 1.3rem}
.bmodal .box p{color:var(--ink);margin:0 0 1rem;line-height:1.75}
.commgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:44px}
.commcard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:30px 32px;border-top:4px solid var(--red)}
.commcard.board{grid-column:1/-1;border-top-color:var(--navy)}
.commcard h3{font-size:1.25rem}
.commcard .chair{font-family:Poppins;font-weight:600;color:var(--navy);font-size:.92rem;margin:.6rem 0 1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.commcard .chair b{color:var(--red)}
.commcard ul{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;grid-template-columns:1fr}
.commcard.board ul{grid-template-columns:1fr 1fr}
.commcard li{position:relative;padding-left:1.3rem;color:var(--ink);font-size:.94rem}
.commcard li:before{content:"";position:absolute;left:0;top:.55rem;width:7px;height:7px;border-radius:50%;background:var(--red)}
.commcard li em{color:var(--red);font-style:normal;font-weight:600;font-size:.8rem}
@media(max-width:760px){.commgrid{grid-template-columns:1fr}.commcard.board ul{grid-template-columns:1fr}}

/* Header top contact bar (all pages) */
.topbar{background:var(--navy);color:#cddcf5;font-size:.8rem}
.topbar .tb{display:flex;align-items:center;justify-content:space-between;height:40px}
.topbar .tag{font-family:Space Grotesk,sans-serif;font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;color:#8fb0dd}
.topbar .tbc{display:flex;gap:26px}
.topbar .tbc a{display:inline-flex;align-items:center;gap:.5rem;color:#cddcf5}
.topbar .tbc a:hover{color:#fff}
.topbar .tbc a b{color:#fff;font-weight:600}
.topbar .tbc svg{width:15px;height:15px;stroke:var(--red-2);fill:none;stroke-width:1.8}
@media(max-width:760px){.topbar .tag{display:none}.topbar .tbc{gap:16px}.topbar .tbc a b{display:none}.topbar .tbc a[href*="linkedin"] b{display:inline}}

/* ===== Company Overview animated collage carousel ===== */
.ov-collage{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:10px;aspect-ratio:3/2;width:100%}
.ovc-tile{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 24px 48px -30px rgba(4,25,58,.55)}
.ovc-a{grid-column:1;grid-row:1 / span 2}
.ovc-b{grid-column:2;grid-row:1}
.ovc-c{grid-column:2;grid-row:2}
.ovc-tile .acslide{border-radius:12px;transform:scale(1.05)}
.ovc-tile .acslide.active{animation:kb 9s ease-out forwards}

/* ============ Horizontal scrollable timeline (about-company) ============ */
.htl-jump{display:flex;justify-content:center;gap:14px;margin-top:36px}
.hj{display:inline-flex;align-items:center;gap:.5rem;font-family:Space Grotesk,sans-serif;font-weight:700;font-size:.88rem;letter-spacing:.01em;color:var(--navy);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:9px 20px;cursor:pointer;transition:.2s}
.hj:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(4,25,58,.55)}
.hj b{color:var(--red);font-weight:800}
.hj:hover b{color:var(--red-2)}
.hj svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.htl{position:relative;margin-top:18px}
.htl-track{display:flex;align-items:stretch;gap:0;overflow-x:auto;overflow-y:hidden;padding:20px 8px;cursor:grab;-ms-overflow-style:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.htl-track::-webkit-scrollbar{display:none}
.htl-track.grabbing{cursor:grabbing;scroll-behavior:auto}
.htl-year{position:relative;flex:0 0 316px;min-height:720px;display:flex;align-items:center;justify-content:center}
.htl-year:before{content:"";position:absolute;left:0;right:0;top:50%;height:3px;transform:translateY(-50%);background:linear-gradient(90deg,var(--line),#d7e0ec)}
.htl-year:first-child:before{left:50%}
.htl-year:last-child:before{right:50%}
.htl-dot{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;background:var(--red);border:4px solid #fff;box-shadow:0 0 0 4px rgba(237,28,36,.18);z-index:3}
.htl-card{position:absolute;left:50%;transform:translateX(-50%);width:284px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);border-radius:14px;padding:16px 18px 15px;box-shadow:0 26px 50px -30px rgba(4,25,58,.5);transition:transform .25s,box-shadow .25s}
.htl-year:hover{z-index:5}
.htl-year:hover .htl-card{transform:translateX(-50%) translateY(-4px);box-shadow:0 32px 60px -26px rgba(4,25,58,.62)}
.htl-year:hover .htl-dot{background:var(--navy);box-shadow:0 0 0 5px rgba(4,25,58,.16)}
.htl-year.up .htl-card{bottom:calc(50% + 40px)}
.htl-year.down .htl-card{top:calc(50% + 40px)}
.htl-year.up .htl-card:after{content:"";position:absolute;left:50%;bottom:-40px;width:2px;height:40px;background:linear-gradient(var(--red),var(--line));transform:translateX(-50%)}
.htl-year.down .htl-card:after{content:"";position:absolute;left:50%;top:-40px;width:2px;height:40px;background:linear-gradient(var(--line),var(--red));transform:translateX(-50%)}
.htl-yr{font-family:Poppins;font-weight:800;color:var(--red);font-size:1.5rem;display:block;margin-bottom:.5rem;letter-spacing:-.01em}
.htl-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.38rem}
.htl-card li{position:relative;padding-left:1rem;font-size:.85rem;line-height:1.34;color:var(--ink)}
.htl-card li:before{content:"";position:absolute;left:0;top:.52rem;width:5px;height:5px;border-radius:50%;background:var(--red)}
.htl-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:8;width:50px;height:50px;border-radius:50%;border:0;background:var(--navy);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;box-shadow:0 14px 32px -12px rgba(4,25,58,.6);opacity:.92;transition:.2s;display:flex;align-items:center;justify-content:center}
.htl-nav:hover{opacity:1;background:var(--red);transform:translateY(-50%) scale(1.06)}
.htl-nav.prev{left:-10px}
.htl-nav.next{right:-10px}
.htl-hint{text-align:center;color:var(--muted);font-size:.82rem;margin-top:14px;letter-spacing:.02em}
@media(max-width:640px){
  .htl-year{flex:0 0 250px;min-height:720px}
  .htl-card{width:224px}
  .htl-nav{width:42px;height:42px;font-size:1.4rem}
}

/* ================= Product cards (Products pages) ================= */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.prodcard{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}
.prodcard:hover{transform:translateY(-5px);box-shadow:0 30px 56px -30px rgba(4,25,58,.4);border-color:#d7e0ec}
.pmol{position:relative;background:linear-gradient(160deg,#f7fafd,#eaf1f8);padding:16px;height:180px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--line)}
.pmol img{max-height:150px;max-width:88%;width:auto}
.pmol .no-mol{color:#9fb0c4;font-family:Space Grotesk;font-weight:600;font-size:.8rem;letter-spacing:.04em}
.pbody{padding:16px 18px 18px;display:flex;flex-direction:column;gap:.5rem;flex:1}
.ptag{align-self:flex-start;font-family:Space Grotesk;font-weight:700;font-size:.64rem;letter-spacing:.11em;text-transform:uppercase;color:var(--red);background:rgba(237,28,36,.09);padding:4px 10px;border-radius:999px}
.prodcard h3{font-family:Poppins;font-size:1.02rem;color:var(--navy);line-height:1.24;letter-spacing:-.01em}
.pmeta{display:flex;flex-direction:column;gap:.28rem;margin-top:.05rem}
.pmeta div{font-size:.86rem;color:var(--ink);display:flex;gap:.5rem;align-items:baseline}
.pmeta div b{font-family:Space Grotesk;font-weight:600;color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;flex:0 0 58px}
.pmeta .f{font-family:'Space Grotesk',monospace;letter-spacing:.01em}
.pmeta .f sub{font-size:.72em}
.pbadges{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:.7rem}
.pbadges em{font-style:normal;font-family:Space Grotesk;font-weight:600;font-size:.64rem;letter-spacing:.02em;padding:3px 8px;border-radius:6px;white-space:nowrap}
.pbadges em.ok{color:#0a7d3c;background:#e7f6ed;border:1px solid #bfe6cd}
.pbadges em.app{color:#9a6a00;background:#fdf3df;border:1px solid #f0dca6}
@media(max-width:900px){.pgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.pgrid{grid-template-columns:1fr}}

/* Products sub-nav (switch between the 4 product pages) */
.psubnav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 48px;max-width:900px}
.psubnav a{font-family:Poppins;font-weight:600;font-size:.9rem;color:var(--navy);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:10px 20px;transition:.2s}
.psubnav a:hover{border-color:var(--navy);transform:translateY(-2px)}
.psubnav a.active{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 12px 26px -14px rgba(4,25,58,.5)}
.pcat{font-family:Poppins;font-weight:800;color:var(--navy);font-size:1.35rem;margin:0 0 22px;display:flex;align-items:center;gap:.7rem}
.pcat:before{content:"";width:26px;height:4px;border-radius:2px;background:var(--red)}
.pbadges em.mut{color:var(--muted);background:#f0f3f8;border:1px solid var(--line)}
.pbadges em.dev{color:#1d4ed8;background:#e8efff;border:1px solid #c3d5f7}

/* Product category filter */
.pfilter{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:1000px;margin:0 auto 46px}
.pf{font-family:Poppins;font-weight:600;font-size:.82rem;color:var(--navy);background:#fff;border:1.5px solid var(--line);border-radius:999px;padding:7px 16px;cursor:pointer;transition:.18s}
.pf:hover{border-color:var(--navy);transform:translateY(-1px)}
.pf.active{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 10px 22px -12px rgba(4,25,58,.5)}
.pcatblock.hide{display:none}
.pcatblock{margin-bottom:58px;scroll-margin-top:110px}
.pcatblock:last-of-type{margin-bottom:0}

/* ================= Enquiry modal + form ================= */
.enq-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .28s}
.enq-modal.open{opacity:1;visibility:visible}
.enq-ov{position:absolute;inset:0;background:rgba:4,25,58,.55;background:rgba(4,25,58,.6);backdrop-filter:blur(3px)}
.enq-box{position:relative;background:#fff;width:100%;max-width:640px;max-height:92vh;overflow-y:auto;border-radius:18px;padding:38px 40px 34px;box-shadow:0 50px 100px -30px rgba(4,25,58,.6);transform:translateY(16px);transition:transform .28s}
.enq-modal.open .enq-box{transform:none}
.enq-x{position:absolute;top:16px;right:18px;width:38px;height:38px;border:0;background:var(--bg);border-radius:50%;font-size:1.5rem;line-height:1;color:var(--navy);cursor:pointer;transition:.2s}
.enq-x:hover{background:var(--red);color:#fff}
.enq-box .eyebrow{margin-bottom:.5rem}
.enq-box h3{font-family:Poppins;font-weight:800;color:var(--navy);font-size:1.7rem;letter-spacing:-.02em}
.enq-sub{color:var(--muted);font-size:.95rem;margin:.5rem 0 1.3rem}
/* form (shared: modal + contact page) */
.enq-form{display:flex;flex-direction:column;gap:14px}
.enq-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.enq-form label{display:flex;flex-direction:column;gap:.35rem;font-family:Poppins;font-weight:600;font-size:.8rem;color:var(--navy)}
.enq-form input,.enq-form select,.enq-form textarea{font-family:Inter;font-weight:500;font-size:.95rem;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:9px;padding:11px 13px;transition:border-color .18s,box-shadow .18s;width:100%}
.enq-form textarea{resize:vertical;min-height:96px}
.enq-form input:focus,.enq-form select:focus,.enq-form textarea:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px rgba(237,28,36,.12)}
.enq-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.enq-form button[type=submit]{margin-top:6px;align-self:flex-start}
.enq-status{font-size:.9rem;font-weight:600;font-family:Poppins;padding:0;min-height:0}
.enq-status.ok{color:#0a7d3c;background:#e7f6ed;border:1px solid #bfe6cd;border-radius:8px;padding:11px 14px}
.enq-status.err{color:#c0261c;background:#fdeceb;border:1px solid #f4c7c3;border-radius:8px;padding:11px 14px}
@media(max-width:560px){.enq-row{grid-template-columns:1fr}.enq-box{padding:30px 22px}}

/* Contact & Enquiry page layout */
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.contact-info .ci{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.contact-info .ci:last-child{border-bottom:0}
.contact-info .ci .ic{flex:0 0 46px;height:46px;border-radius:12px;background:linear-gradient(135deg,rgba(237,28,36,.12),rgba(237,28,36,.04));display:flex;align-items:center;justify-content:center}
.contact-info .ci .ic svg{width:22px;height:22px;stroke:var(--red);fill:none;stroke-width:1.8}
.contact-info .ci h4{font-family:Poppins;font-size:1rem;color:var(--navy);margin:0 0 .2rem}
.contact-info .ci p,.contact-info .ci a{color:var(--muted);font-size:.94rem;margin:0;line-height:1.5}
.contact-info .ci a:hover{color:var(--red)}
.contact-formcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 34px 30px;box-shadow:0 30px 60px -40px rgba(4,25,58,.45)}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr;gap:40px}}

/* Contact page — facility cards (API / Corticosteroids / R&D) */
.facility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.facility{background:#fff;border:1px solid var(--line);border-top:3px solid var(--red);border-radius:16px;padding:26px 26px 24px;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.facility:hover{transform:translateY(-5px);box-shadow:0 30px 56px -30px rgba(4,25,58,.4)}
.facility .fic{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,rgba(237,28,36,.12),rgba(237,28,36,.04));display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.facility .fic svg{width:24px;height:24px;stroke:var(--red);fill:none;stroke-width:1.7}
.facility h3{font-family:Poppins;font-weight:800;color:var(--navy);font-size:1.3rem;line-height:1.15;letter-spacing:-.01em}
.facility .ffoot{margin:.4rem 0 0;font-family:Space Grotesk;font-weight:700;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red)}
.facility p{color:var(--muted);font-size:.9rem;line-height:1.55;margin:.75rem 0 0}
.facility .ftel{display:inline-flex;align-items:center;gap:.5rem;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);font-family:Poppins;font-weight:600;font-size:.94rem;color:var(--navy)}
.facility .ftel svg{width:16px;height:16px;stroke:var(--red);fill:none;stroke-width:1.8;flex:0 0 auto}
.facility .ftel:hover{color:var(--red)}
.facility .ftel.todo{color:#9a6a00}
/* compact contact-page form so the facilities show sooner */
.enq-form.page{gap:11px}
.enq-form.page input,.enq-form.page select,.enq-form.page textarea{padding:9px 12px}
.enq-form.page textarea{min-height:64px}
@media(max-width:820px){.facility-grid{grid-template-columns:1fr}}

/* ================= Mobile navigation (hamburger + drawer) ================= */
.navtoggle{display:none}
.mnav{display:none}
@media(max-width:940px){
  header{background:#fff;box-shadow:0 6px 24px -14px rgba(4,25,58,.3)}
  header .logo-l{display:none}
  header .logo-d{display:block}
  .nav .btn-red{display:none}
  .navtoggle{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;background:none;border:0;cursor:pointer;margin-left:auto}
  .navtoggle span{display:block;height:2px;width:100%;background:var(--navy);border-radius:2px;transition:.28s}
  .navtoggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .navtoggle.open span:nth-child(2){opacity:0}
  .navtoggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mnav{display:block;position:fixed;inset:0;z-index:210;background:#fff;padding:18px 24px 44px;overflow-y:auto;transform:translateX(100%);transition:transform .32s ease;visibility:hidden}
  .mnav.open{transform:none;visibility:visible}
  .mnav-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
  .mnav-top img{height:46px;width:auto}
  .mnav-x{width:42px;height:42px;border:0;background:var(--bg);border-radius:50%;font-size:1.6rem;line-height:1;color:var(--navy);cursor:pointer}
  .mnav .menu{display:block!important;flex-direction:column;gap:0;list-style:none;margin:0;padding:0;font-family:Poppins}
  .mnav .menu>li{border-bottom:1px solid var(--line)}
  .mnav .menu a{display:block;padding:14px 2px;font-weight:600;font-size:1.06rem;color:var(--navy)!important}
  .mnav .menu a:after{display:none!important}
  /* collapsible submenus (accordion) — collapsed by default, expand on tap */
  .mnav .has-sub>a{display:flex;align-items:center;justify-content:space-between}
  .mnav .msub-caret{flex:0 0 auto;width:9px;height:9px;margin-right:4px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .25s ease}
  .mnav .has-sub.open>a .msub-caret{transform:rotate(-135deg)}
  .mnav .sub{position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;box-shadow:none!important;min-width:0!important;background:none!important;max-height:0;overflow:hidden;padding:0!important;transition:max-height .3s ease}
  .mnav .has-sub.open>.sub{max-height:520px;padding:0 0 8px!important}
  .mnav .sub a{padding:8px 2px 8px 16px!important;font-weight:500!important;font-size:.95rem!important;color:var(--muted)!important}
  .mnav .has-sub::after{display:none!important}
  .mnav .mcta{display:inline-flex!important;margin-top:26px;width:100%;justify-content:center}
}

/* CDMO stats — 6 tiles in a 3x2 grid */
.stats.grid6 .grid{grid-template-columns:repeat(3,1fr)}
.stats.grid6 .stat:nth-child(3n+1){border-left:0}
.stats.grid6 .stat:nth-child(n+4){border-top:1px solid rgba(255,255,255,.12)}
@media(max-width:800px){
  .stats.grid6 .grid{grid-template-columns:repeat(2,1fr)}
  .stats.grid6 .stat{border-left:1px solid rgba(255,255,255,.12);border-top:1px solid rgba(255,255,255,.12)}
  .stats.grid6 .stat:nth-child(odd){border-left:0}
  .stats.grid6 .stat:nth-child(-n+2){border-top:0}
}

/* Timeline — vertical layout on mobile (scroll up/down); desktop stays horizontal */
@media(max-width:760px){
  .htl-jump,.htl-nav,.htl-hint{display:none}
  .htl{margin-top:6px}
  .htl-track{flex-direction:column;overflow:visible;padding:6px 0 6px 4px;cursor:default}
  .htl-year{flex:none;width:100%;min-height:0;display:block;position:relative;padding:0 0 24px 32px}
  .htl-year:before{left:7px;right:auto;top:0;bottom:0;width:2px;height:auto;transform:none;background:linear-gradient(180deg,var(--line),#d7e0ec)}
  .htl-year:first-child:before{left:7px;top:16px}
  .htl-year:last-child:before{left:7px;height:18px}
  .htl-dot{left:7px;top:16px;transform:translate(-50%,-50%);width:16px;height:16px}
  .htl-card{position:static;transform:none;width:100%;box-shadow:0 14px 34px -22px rgba(4,25,58,.4)}
  .htl-year.up .htl-card,.htl-year.down .htl-card{bottom:auto;top:auto}
  .htl-year.up .htl-card:after,.htl-year.down .htl-card:after{display:none}
  .htl-year:hover .htl-card{transform:none}
  .htl-year:hover .htl-dot{background:var(--red);box-shadow:0 0 0 4px rgba(237,28,36,.18)}
}

/* ===== Products toolbar: search + view toggle + compact list ===== */
.ptoolbar{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center;max-width:800px;margin:0 auto 22px}
.psearch{position:relative;flex:1 1 320px;max-width:440px}
.psearch input{width:100%;font-family:Inter;font-size:.95rem;padding:12px 16px 12px 44px;border:1.5px solid var(--line);border-radius:999px;background:#fff;transition:border-color .18s,box-shadow .18s}
.psearch input:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px rgba(237,28,36,.1)}
.psearch svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;stroke:var(--muted);fill:none;stroke-width:2}
.pview{display:inline-flex;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:#fff;flex:0 0 auto}
.pview button{border:0;background:none;padding:9px 15px;font-family:Poppins;font-weight:600;font-size:.82rem;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}
.pview button svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}
.pview button.active{background:var(--navy);color:#fff}
.pnoresults{display:none;text-align:center;color:var(--muted);padding:36px 0;font-size:1.02rem}
.pnoresults.show{display:block}
/* Compact list view */
body.list-view .pgrid{grid-template-columns:1fr;gap:10px}
body.list-view .prodcard{flex-direction:row;align-items:stretch}
body.list-view .prodcard .pmol{flex:0 0 88px;width:88px;height:auto;padding:8px;border-bottom:0;border-right:1px solid var(--line)}
body.list-view .prodcard .pmol img{max-height:66px}
body.list-view .prodcard .pmol .no-mol{font-size:.58rem;text-align:center;line-height:1.3}
body.list-view .prodcard .pbody{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 22px;padding:12px 20px}
body.list-view .prodcard .ptag{display:none}
body.list-view .prodcard h3{font-size:1rem;flex:0 0 auto;min-width:200px}
body.list-view .prodcard .pmeta{flex-direction:row;gap:22px;margin:0}
body.list-view .prodcard .pbadges{margin:0;padding:0}
@media(max-width:640px){
  body.list-view .prodcard .pbody{gap:5px 12px;padding:10px 14px}
  body.list-view .prodcard h3{min-width:0;flex:1 1 100%}
  body.list-view .prodcard .pmeta{flex:1 1 100%}
}
.prodcard.hide{display:none}
.pf .pfc{opacity:.55;font-weight:600;margin-left:3px;font-size:.9em}
.pf.active .pfc{opacity:.8}

/* ===== Manufacturing page ===== */
.mfg-intro .lead{color:var(--muted)}
.mfg-section{padding-top:56px;padding-bottom:20px}
.mfg-site{display:grid;grid-template-columns:1.05fr 1fr;gap:52px;align-items:center;margin:0 0 20px}
.mfg-site.reverse .mfg-media{order:2}
.mfg-media{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 40px 80px -38px rgba(4,25,58,.55)}
.mfg-media img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.mfg-media .mfg-tag{position:absolute;left:16px;bottom:16px;background:rgba(4,16,36,.72);backdrop-filter:blur(4px);color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.8rem;padding:8px 14px;border-radius:9px}
.mfg-body .eyebrow{margin-bottom:12px}
.mfg-body h2{margin:0 0 8px}
.mfg-loc{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:600;font-size:.92rem;margin:0 0 16px}
.mfg-loc svg{width:17px;height:17px;fill:none;stroke:var(--red);stroke-width:2;flex:0 0 auto}
.mfg-body>p{color:var(--muted);line-height:1.72;margin:0 0 6px}
.mfg-caps{list-style:none;padding:0;margin:20px 0 22px;display:grid;grid-template-columns:1fr 1fr;gap:11px 22px}
.mfg-caps li{position:relative;padding-left:26px;font-size:.93rem;color:var(--ink);line-height:1.45}
.mfg-caps li:before{content:"✓";position:absolute;left:0;top:-1px;color:var(--red);font-weight:800}
.certrow{border-top:1px solid var(--line);padding-top:16px}
.certrow .certlabel{display:block;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:11px}
.certchips{display:flex;flex-wrap:wrap;gap:8px}
.certchip{display:inline-flex;align-items:center;background:var(--navy);color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.79rem;padding:7px 13px;border-radius:8px;letter-spacing:.01em}
.certchip.alt{background:#eaf1fb;color:var(--navy)}
.mfg-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0 6px}
.mfg-gallery figure{margin:0;border-radius:14px;overflow:hidden;position:relative;aspect-ratio:3/2;box-shadow:0 22px 46px -30px rgba(4,25,58,.5)}
.mfg-gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease}
.mfg-gallery figure:hover img{transform:scale(1.06)}
.mfg-gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 14px 11px;color:#fff;font-size:.82rem;font-weight:600;letter-spacing:.01em;background:linear-gradient(to top,rgba(4,16,36,.85),rgba(4,16,36,0))}
.mfg-divider{height:1px;background:var(--line);margin:44px 0 4px}
/* quality band */
.mfg-quality{background:var(--navy);color:#fff;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:1.1fr 1fr;align-items:stretch}
.mfg-quality .mq-body{padding:48px 44px}
.mfg-quality .eyebrow{color:#7fa8ff}
.mfg-quality h2{color:#fff;margin:0 0 12px}
.mfg-quality p{color:#cfdcf2;line-height:1.7;margin:0 0 18px;max-width:520px}
.mfg-quality .mq-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.mfg-quality .mq-list li{position:relative;padding-left:24px;color:#e5edf9;font-size:.92rem;line-height:1.4}
.mfg-quality .mq-list li:before{content:"";position:absolute;left:0;top:6px;width:9px;height:9px;border-radius:50%;background:var(--red-2)}
.mfg-quality .mq-photo{background-size:cover;background-position:center;min-height:320px}
@media(max-width:860px){
  .mfg-site{grid-template-columns:1fr;gap:26px}
  .mfg-site.reverse .mfg-media{order:0}
  .mfg-caps{grid-template-columns:1fr}
  .mfg-gallery{grid-template-columns:repeat(2,1fr)}
  .mfg-quality{grid-template-columns:1fr}
  .mfg-quality .mq-list{grid-template-columns:1fr}
  .mfg-quality .mq-photo{min-height:220px;order:-1}
}
@media(max-width:520px){.mfg-gallery{grid-template-columns:1fr}}

/* ===== Manufacturing — site "view facility" button + certificates ===== */
.mfg-more{margin-top:8px}
.mfg-more .btn{margin-top:6px}
.certs-sec{background:var(--bg)}
.certgroups{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;align-items:start}
.certgroup{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 22px 14px;box-shadow:0 24px 50px -38px rgba(4,25,58,.45)}
.certgroup h4{margin:0 0 6px;font-family:'Space Grotesk',sans-serif;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red);font-weight:700}
.certdl{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid var(--line);color:var(--ink);font-size:.92rem;font-weight:500;transition:color .18s}
.certgroup h4+.certdl{border-top:0}
.certdl svg{width:19px;height:19px;flex:0 0 auto;fill:none;stroke:var(--red);stroke-width:1.7}
.certdl span{flex:1;line-height:1.3}
.certdl .dl{font-style:normal;font-size:.66rem;font-weight:700;letter-spacing:.07em;color:var(--muted);background:var(--bg);padding:4px 8px;border-radius:6px;transition:.18s}
.certdl:hover{color:var(--red)}
.certdl:hover .dl{color:#fff;background:var(--red)}
.certnote{margin:10px 0 2px;font-size:.82rem;color:var(--muted);border-top:1px dashed var(--line);padding-top:12px}
.certnote b{color:var(--ink)}

/* ===== Manufacturing certificates — tiered organisation ===== */
.certtier{font-family:'Space Grotesk',sans-serif;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);font-weight:700;display:flex;align-items:center;gap:12px;margin:36px 0 16px}
.certtier:first-child{margin-top:0}
.certtier:before{content:"";width:22px;height:2px;background:var(--red);flex:0 0 auto}
.certgroup h4{display:flex;align-items:center;gap:8px}
.certgroup h4 .cc{margin-left:auto;font-size:.68rem;color:var(--muted);background:var(--bg);border-radius:20px;padding:3px 10px;letter-spacing:.03em;font-weight:700}

/* ===== Certificate view-only viewer (no download) ===== */
.certdl{cursor:pointer}
.certview{position:fixed;inset:0;z-index:320;display:none;overflow:auto;padding:28px 16px 44px}
.certview.open{display:block}
.cv-ov{position:fixed;inset:0;background:rgba(4,10,25,.9);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.cv-box{position:relative;z-index:1;width:min(880px,96vw);margin:0 auto}
.cv-x{position:fixed;top:18px;right:20px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:var(--navy);font-size:1.7rem;line-height:1;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.35);z-index:3}
.cv-pages{display:flex;flex-direction:column;gap:14px}
.cv-pg{width:100%;height:auto;display:block;border-radius:8px;box-shadow:0 24px 60px -20px rgba(0,0,0,.6);user-select:none;-webkit-user-select:none;-webkit-user-drag:none;background:#fff}
.cv-hint{color:#9fb4d6;text-align:center;font-size:.8rem;margin:2px 0 0;letter-spacing:.02em}
.cv-msg{color:#fff;text-align:center;padding:60px 20px}

/* ===== Careers / Work With Us ===== */
.joblist{display:flex;flex-direction:column;gap:14px;max-width:860px;margin:0 auto}
.job{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 24px;display:flex;align-items:center;gap:22px;box-shadow:0 20px 44px -34px rgba(4,25,58,.4)}
.job-main{flex:1}
.job-main h3{margin:0 0 8px;font-size:1.15rem}
.job-meta{display:flex;flex-wrap:wrap;gap:8px 10px;margin-bottom:8px}
.job-meta span{font-family:'Space Grotesk',sans-serif;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--bg);border-radius:20px;padding:4px 11px;font-weight:600}
.job-main p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.6}
.job-apply{flex:0 0 auto;white-space:nowrap}
.apply-wrap{max-width:760px;margin:0 auto}
.filelbl{display:block}
.filelbl .filehint{color:var(--muted);font-weight:500;font-size:.82rem;margin-left:6px}
.enq-form input[type=file]{display:block;width:100%;margin-top:8px;padding:12px;border:1px dashed #c7d4e6;border-radius:10px;background:var(--bg);font:inherit;font-size:.9rem;color:var(--ink);cursor:pointer}
.enq-form input[type=file]::file-selector-button{font:inherit;font-weight:600;margin-right:12px;padding:8px 14px;border:0;border-radius:8px;background:var(--navy);color:#fff;cursor:pointer}
@media(max-width:620px){.job{flex-direction:column;align-items:flex-start;gap:14px}.job-apply{width:100%;justify-content:center}}

/* ===== Contact — facility maps ===== */
.fmap{margin-top:14px;border-radius:12px;overflow:hidden;border:1px solid var(--line);line-height:0;background:#eef2f7}
.fmap iframe{width:100%;height:180px;border:0;display:block}
.fmap-link{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.8rem;color:var(--red);letter-spacing:.02em}
.fmap-link svg{width:14px;height:14px}
.fmap-link:hover{text-decoration:underline}

/* ===== R&D page ===== */
.rxn-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:920px;margin:0 auto}
.rxn{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 16px;font-weight:600;font-size:.9rem;color:var(--ink);box-shadow:0 16px 34px -30px rgba(4,25,58,.4)}
.rxn:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--red);flex:0 0 auto}
.eqtags{display:flex;flex-wrap:wrap;gap:7px;margin-top:2px}
.eqtag{background:#eef2f8;color:var(--navy);font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.76rem;padding:6px 11px;border-radius:7px;letter-spacing:.01em}
@media(max-width:820px){.rxn-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== R&D — labwise capabilities tabs ===== */
.labtabs{max-width:1000px;margin:0 auto}
.labtab-nav{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:30px}
.labtab-btn{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:.92rem;padding:11px 22px;border-radius:30px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer;transition:.2s}
.labtab-btn:hover{border-color:var(--red);color:var(--red)}
.labtab-btn.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.labtab-panel{display:none}
.labtab-panel.active{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.capcol h4{font-family:'Space Grotesk',sans-serif;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--red);font-weight:700;margin:0 0 14px;padding-bottom:11px;border-bottom:1px solid var(--line)}
.capcol ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.capcol li{position:relative;padding-left:20px;font-size:.92rem;color:var(--ink);line-height:1.45}
.capcol li:before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:50%;background:var(--red)}
@media(max-width:820px){.labtab-panel.active{grid-template-columns:1fr;gap:26px}}

/* ================= ESG page ================= */
.pillar-head{display:flex;align-items:center;gap:20px;margin-bottom:10px}
.pillar-head .pl{font-family:Poppins;font-weight:900;font-size:3.2rem;line-height:1;color:#fff;background:var(--navy);width:78px;height:78px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 18px 40px -18px rgba(4,25,58,.5)}
.pillar-head.env .pl{background:linear-gradient(150deg,#1f9d55,#0c7a3f)}
.pillar-head.soc .pl{background:linear-gradient(150deg,var(--red),var(--red-2))}
.pillar-head.gov .pl{background:linear-gradient(150deg,var(--navy),var(--navy-2))}
.pillar-head h2{font-size:2.15rem;font-weight:800}
.pillar-head .sub{color:var(--muted);font-size:1.02rem;margin-top:2px}
.esg-metrics{list-style:none;padding:0;margin:1.2rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.7rem 1.6rem}
.esg-metrics li{position:relative;padding-left:26px;font-size:.96rem;line-height:1.5;color:var(--ink)}
.esg-metrics li:before{content:"";position:absolute;left:0;top:3px;width:16px;height:16px;border-radius:50%;background:rgba(31,157,85,.15);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231f9d55' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 6'/%3E%3C/svg%3E");background-size:11px;background-repeat:no-repeat;background-position:center}
.esg-metrics.soc li:before{background:rgba(237,28,36,.12);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ed1c24' stroke-width='3'%3E%3Cpath d='M5 12l5 5L20 6'/%3E%3C/svg%3E");background-size:11px;background-repeat:no-repeat;background-position:center}
@media(max-width:700px){.esg-metrics{grid-template-columns:1fr}}
.esg-media{border-radius:16px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(4,25,58,.45)}
.esg-media img{width:100%;height:100%;object-fit:cover;display:block}
.esg-duo{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:620px){.esg-duo{grid-template-columns:1fr}}
/* CSR cards */
.esg-csr{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:8px}
.esg-ccard{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 20px 46px -30px rgba(4,25,58,.4);transition:.28s}
.esg-ccard:hover{transform:translateY(-4px);box-shadow:0 30px 60px -28px rgba(4,25,58,.5)}
.esg-ccard .ph{aspect-ratio:4/3;overflow:hidden;background:var(--bg)}
.esg-ccard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.esg-ccard .cap{padding:16px 18px}
.esg-ccard .cap b{display:block;font-family:Poppins;font-weight:700;color:var(--navy);font-size:1rem;margin-bottom:4px}
.esg-ccard .cap span{color:var(--muted);font-size:.9rem;line-height:1.5}
@media(max-width:900px){.esg-csr{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.esg-csr{grid-template-columns:1fr}}
/* EcoVadis callout */
.ecovadis{display:flex;align-items:center;gap:22px;background:linear-gradient(120deg,#fff,#f5f8fc);border:1px solid var(--line);border-left:5px solid #cd7f32;border-radius:14px;padding:22px 26px;margin-top:26px}
.ecovadis .medal{flex:0 0 auto;width:66px;height:66px;border-radius:50%;background:linear-gradient(150deg,#e8b06b,#cd7f32);display:flex;align-items:center;justify-content:center;color:#fff;font-family:Poppins;font-weight:800;font-size:.8rem;text-align:center;line-height:1.05;box-shadow:0 14px 30px -12px rgba(205,127,50,.6)}
.ecovadis .txt b{font-family:Poppins;font-weight:700;color:var(--navy);font-size:1.05rem}
.ecovadis .txt p{color:var(--muted);font-size:.94rem;margin:.25rem 0 0}
/* old CSR gallery strip */
.esg-oldcsr{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:22px}
.esg-oldcsr img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px;display:block}
@media(max-width:820px){.esg-oldcsr{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.esg-oldcsr{grid-template-columns:repeat(2,1fr)}}
/* governance grid */
.gov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
.gov-grid .card h4{font-family:Poppins;font-weight:700;color:var(--navy);font-size:1.05rem;margin:0 0 8px}
.gov-grid .card p,.gov-grid .card li{color:var(--muted);font-size:.92rem;line-height:1.55}
@media(max-width:860px){.gov-grid{grid-template-columns:1fr}}

/* ===== ESG v2 — infographic, medal callout, mini-stats ===== */
/* EcoVadis medal callout */
.esg-medal{display:flex;align-items:center;gap:26px;background:linear-gradient(120deg,#fff,#faf6f1);border:1px solid var(--line);border-radius:16px;padding:22px 28px;box-shadow:0 24px 50px -34px rgba(4,25,58,.4)}
.esg-medal img{width:132px;height:auto;flex:0 0 auto}
.esg-medal .txt b{font-family:Poppins;font-weight:700;color:var(--navy);font-size:1.15rem;display:block}
.esg-medal .txt p{color:var(--muted);font-size:.95rem;margin:.4rem 0 0;line-height:1.55}
.esg-medal .chips{margin-top:.8rem;display:flex;gap:8px;flex-wrap:wrap}
.esg-medal .chips span{font-family:Space Grotesk;font-weight:600;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#8a5a34;background:rgba(205,127,50,.12);border:1px solid rgba(205,127,50,.3);padding:5px 11px;border-radius:20px}
@media(max-width:600px){.esg-medal{flex-direction:column;text-align:center}.esg-medal .chips{justify-content:center}}
/* ESG pillar infographic */
.esg-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.esg-pcard{border-radius:16px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 24px 54px -34px rgba(4,25,58,.4);display:flex;flex-direction:column}
.esg-pcard .top{padding:22px 24px;color:#fff;display:flex;align-items:center;gap:14px}
.esg-pcard.env .top{background:linear-gradient(140deg,#1f9d55,#0c7a3f)}
.esg-pcard.soc .top{background:linear-gradient(140deg,var(--red),var(--red-2))}
.esg-pcard.gov .top{background:linear-gradient(140deg,var(--navy),var(--navy-2))}
.esg-pcard .top svg{width:30px;height:30px;flex:0 0 auto;stroke:#fff;fill:none;stroke-width:1.8}
.esg-pcard .top .h b{font-family:Poppins;font-weight:800;font-size:1.25rem;display:block;line-height:1}
.esg-pcard .top .h span{font-size:.82rem;opacity:.9}
.esg-pcard ul{list-style:none;margin:0;padding:18px 24px 22px;display:flex;flex-direction:column;gap:12px}
.esg-pcard li{position:relative;padding-left:20px;font-size:.94rem;line-height:1.45;color:var(--ink)}
.esg-pcard li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;border-radius:2px}
.esg-pcard.env li:before{background:#1f9d55}.esg-pcard.soc li:before{background:var(--red)}.esg-pcard.gov li:before{background:var(--navy)}
.esg-pcard li b{color:var(--navy);font-weight:700}
@media(max-width:860px){.esg-pillars{grid-template-columns:1fr}}
/* mini-stat inline row */
.minstat{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 4px}
.minstat .m{background:var(--bg);border-radius:12px;padding:16px 14px;text-align:center}
.minstat .m b{display:block;font-family:Poppins;font-weight:800;color:var(--navy);font-size:1.35rem;line-height:1}
.minstat .m span{display:block;color:var(--muted);font-size:.78rem;margin-top:5px;line-height:1.3}
@media(max-width:620px){.minstat{grid-template-columns:1fr 1fr}}
/* subsection heading */
.esg-sub{font-family:Space Grotesk;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;color:var(--red);margin:0 0 6px}

/* fix: ESG pillar-card header text must stay white (global .h{color:navy} collision) */
.esg-pcard .top .h,.esg-pcard .top .h b,.esg-pcard .top .h span{color:#fff !important}

/* ===== ESG medal callout v2 — clean award layout ===== */
.esg-medal .txt .eco-eyebrow{display:block;font-family:Space Grotesk,sans-serif;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;color:#a86a34;margin-bottom:6px}
.esg-medal .txt b{font-family:Poppins,sans-serif;font-weight:800;color:var(--navy);font-size:1.2rem;display:block;line-height:1.2}
.esg-medal .txt p{color:var(--muted);font-size:.9rem;margin:.45rem 0 0;line-height:1.5}
.eco-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:16px}
.eco-stats > div{background:#fff;padding:11px 16px;text-align:center}
.eco-stats b{display:block;font-family:Poppins,sans-serif;font-weight:800;color:var(--navy);font-size:1.05rem;line-height:1}
.eco-stats span{display:block;font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:5px}

/* ESG water & effluent — larger paired photos */
.esg-duo{gap:16px}
.esg-duo .esg-media{min-height:340px}
.esg-duo .esg-media img{height:100%;min-height:340px;object-fit:cover}
@media(max-width:620px){.esg-duo .esg-media,.esg-duo .esg-media img{min-height:240px}}

/* ESG full-width infographic figure */
.esg-infographic{margin:44px 0 0}
.esg-infographic img{width:100%;height:auto;display:block;border-radius:16px;box-shadow:0 30px 60px -34px rgba(4,25,58,.45);border:1px solid var(--line)}
.esg-infographic figcaption{color:var(--muted);font-size:.82rem;text-align:center;margin-top:10px}

/* ESG — impact-flow infographic inside the navy Lighter-Footprint band */
.mfg-quality .mq-info{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:40px 40px}
.mq-info .mqf{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:14px;padding:16px 20px}
.mq-info .mqf-ic{flex:0 0 auto;width:50px;height:50px;border-radius:50%;background:linear-gradient(150deg,#25a95e,#0c7a3f);display:flex;align-items:center;justify-content:center}
.mq-info .mqf-ic svg{width:26px;height:26px;stroke:#fff;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mq-info .mqf b{display:block;font-family:Poppins,sans-serif;font-weight:800;font-size:1.5rem;color:#fff;line-height:1}
.mq-info .mqf em{display:block;font-style:normal;color:#c2d4ee;font-size:.86rem;margin-top:5px;line-height:1.35}
.mq-info .mqf-arrow{display:flex;justify-content:center;margin:-2px 0}
.mq-info .mqf-arrow svg{width:24px;height:24px;stroke:#57c483;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:820px){.mfg-quality .mq-info{order:-1;padding:32px}}

/* ===== ESG impact-flow v2 — polished timeline ===== */
.mfg-quality .mq-info{display:flex;flex-direction:column;justify-content:center;gap:0;padding:46px 48px}
.mq-info .mqi-title{font-family:Space Grotesk,sans-serif;font-weight:700;letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;color:#7ed3a0;margin-bottom:24px}
.mqi-flow{position:relative;display:flex;flex-direction:column;gap:26px}
.mqi-flow:before{content:"";position:absolute;left:29px;top:32px;bottom:32px;width:2px;background:linear-gradient(180deg,#2bb267,#7ed3a0);opacity:.45}
.mqi-step{position:relative;display:flex;align-items:center;gap:20px}
.mqi-icon{flex:0 0 auto;width:60px;height:60px;border-radius:17px;background:linear-gradient(150deg,#2bb267,#0c7a3f);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 28px -10px rgba(20,150,80,.7);z-index:1}
.mqi-icon svg{width:31px;height:31px;stroke:#fff;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.mqi-txt b{display:block;font-family:Poppins,sans-serif;font-weight:800;font-size:1.8rem;color:#fff;line-height:1}
.mqi-txt b span{color:#7ed3a0;font-size:1.05rem;font-weight:700}
.mqi-txt em{display:block;font-style:normal;color:#c6d7ef;font-size:.87rem;margin-top:6px;line-height:1.35}
@media(max-width:820px){.mfg-quality .mq-info{padding:34px}}

/* ESG — clickable pillar cards (jump to sections) */
.esg-pcard{text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}
.esg-pcard:hover{transform:translateY(-5px);box-shadow:0 34px 64px -30px rgba(4,25,58,.55)}
.esg-pcard-go{margin:auto 24px 20px;display:inline-flex;align-items:center;gap:6px;font-family:Poppins,sans-serif;font-weight:700;font-size:.85rem}
.esg-pcard-go svg{width:16px;height:16px;transition:transform .25s}
.esg-pcard:hover .esg-pcard-go svg{transform:translateX(4px)}
.esg-pcard.env .esg-pcard-go{color:#1f9d55}
.esg-pcard.soc .esg-pcard-go{color:var(--red)}
.esg-pcard.gov .esg-pcard-go{color:var(--navy)}
/* smooth-scroll offset for the sticky header */
#environmental,#social,#governance{scroll-margin-top:110px}
