@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');

:root{
  --yellow:#F5B800;
  --yellow-2:#FFD55A;
  --green:#0F3B2C;
  --green-2:#1B5A42;
  --green-3:#2A7655;
  --ink:#102018;
  --muted:#66736C;
  --paper:#F4F6F2;
  --paper-2:#E9EEE9;
  --white:#fff;
  --line:#D7E0D9;
  --dark:#07130E;
  --radius:8px;
  --shadow:0 18px 50px rgba(6,25,16,.10);
  --max:1240px;
  --scroll-progress:0%;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--yellow) var(--dark)}
body{margin:0;background:#fff;color:var(--ink);font-family:Poppins,system-ui,sans-serif;line-height:1.7;font-size:15px;overflow-x:hidden}
body:before{content:"";position:fixed;left:0;top:0;width:var(--scroll-progress);height:3px;background:var(--yellow);z-index:9999;transition:width .08s linear}
a{color:inherit;text-decoration:none} img{display:block;max-width:100%}
.container{width:min(var(--max),calc(100% - 64px));margin:0 auto}
section{position:relative;padding:108px 0;overflow:hidden}
section.bg-soft{background:var(--paper)}
section.bg-dark{background:var(--dark);color:#fff}
.section-tight{padding:72px 0}

/* Header */
.site-header{position:absolute;left:0;right:0;top:0;z-index:100;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.12);transition:.35s ease}
.site-header.is-solid{position:fixed;background:rgba(7,19,14,.94);backdrop-filter:blur(16px);padding:14px 0;box-shadow:0 12px 35px rgba(0,0,0,.16)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;width:168px;height:54px;overflow:hidden}
.brand-logo-chip{display:block;width:168px;height:54px;background:#fff;border-radius:6px;padding:5px 10px;overflow:hidden}
.brand-logo-chip img{width:100%;height:100%;object-fit:contain;object-position:center}
.main-nav>ul{display:flex;align-items:center;gap:7px;margin:0;padding:0;list-style:none}
.nav-link{display:inline-flex;align-items:center;gap:7px;padding:11px 15px;color:#fff;font-weight:600;font-size:13px;letter-spacing:.01em;position:relative}
.nav-link:not(.btn):after{content:"";position:absolute;left:15px;right:15px;bottom:5px;height:2px;background:var(--yellow);transform:scaleX(0);transform-origin:right;transition:transform .35s ease}
.nav-link:not(.btn):hover:after,.nav-link.is-active:not(.btn):after{transform:scaleX(1);transform-origin:left}
.nav-contact-btn{margin-left:10px;padding:11px 18px!important}.caret{width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.has-dropdown{position:relative}.dropdown{position:absolute;top:calc(100% + 14px);right:0;width:310px;padding:10px;margin:0;list-style:none;background:#0b1b13;border:1px solid rgba(255,255,255,.12);border-radius:8px;box-shadow:0 25px 60px rgba(0,0,0,.28);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s ease}
.has-dropdown:hover .dropdown{opacity:1;visibility:visible;transform:none}.dropdown a{display:flex;align-items:center;gap:13px;padding:13px 14px;color:#fff;border-radius:5px;font-size:13px}.dropdown a:hover{background:rgba(245,184,0,.12);color:var(--yellow-2)}.dropdown .num{color:var(--yellow);font-size:11px;letter-spacing:.12em}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border-radius:5px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;color:var(--ink);position:relative;overflow:hidden}
.btn:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.34) 48%,transparent 68%);transform:translateX(-120%);transition:transform .65s ease}.btn:hover:before{transform:translateX(120%)}
.btn:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.16)}.btn-primary{background:var(--yellow);color:#111}.btn-outline{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.04)}.btn-outline:hover{background:#fff;color:var(--ink)}.btn-outline-dark{border:1px solid var(--ink);color:var(--ink)}.btn-outline-dark:hover{background:var(--ink);color:#fff}.btn-block{width:100%}
.hamburger{display:none;border:0;background:none;width:44px;height:44px;padding:10px}.hamburger span{display:block;height:2px;background:#fff;margin:5px 0;transition:.3s}.hamburger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav{display:none}

/* Hero */
.hero{min-height:760px;padding:190px 0 115px;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff;position:relative}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,15,10,.88) 0%,rgba(4,15,10,.66) 43%,rgba(4,15,10,.18) 100%),linear-gradient(0deg,rgba(4,15,10,.75),transparent 50%)}
.hero:after{content:"";position:absolute;right:7%;top:23%;width:190px;height:190px;border:1px solid rgba(245,184,0,.35);border-radius:50%;box-shadow:0 0 0 24px rgba(245,184,0,.025),0 0 0 48px rgba(245,184,0,.015);animation:orbitPulse 5s ease-in-out infinite}
.hero-inner{position:relative;z-index:2;max-width:980px;margin-left:max(32px,calc((100% - var(--max))/2));padding-right:60px}
.hero h1{font-size:clamp(48px,6.3vw,88px);line-height:.99;letter-spacing:-.055em;max-width:940px;margin:12px 0 24px;font-weight:700}
.hero .lead{max-width:720px;color:rgba(255,255,255,.82);font-size:18px;line-height:1.65;margin:0 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-corner{position:absolute;left:0;bottom:0;width:32%;height:4px;background:var(--yellow);z-index:3}.hero-eyebrow{color:var(--yellow-2)}
.page-hero{min-height:520px;padding:170px 0 85px}.page-hero h1{font-size:clamp(48px,6vw,76px);max-width:800px}.kicker-num{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--yellow);font-weight:700}.breadcrumb{display:flex;gap:8px;color:rgba(255,255,255,.64);font-size:12px}.breadcrumb a:hover{color:var(--yellow)}

/* Typography */
.eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 14px;color:var(--green-3);font-size:11px;font-weight:800;letter-spacing:.19em;text-transform:uppercase}.eyebrow:before{content:"";width:28px;height:2px;background:var(--yellow);display:inline-block}.on-dark .eyebrow{color:var(--yellow-2)}
h2{font-size:clamp(34px,4vw,58px);line-height:1.06;letter-spacing:-.045em;margin:0 0 22px;font-weight:700;max-width:880px}h3,h4{line-height:1.2}p{margin:0 0 18px;color:var(--muted)}.on-dark p,.bg-dark p{color:rgba(255,255,255,.68)}
.section-head{margin-bottom:52px;position:relative}.section-head:after{content:"";position:absolute;left:0;bottom:-23px;width:58px;height:2px;background:var(--yellow);transform-origin:left;animation:lineGrow 1s ease both}.section-head.center{text-align:center}.section-head.center:after{left:50%;transform:translateX(-50%)}

/* Media system */
.media{position:relative;min-height:430px;overflow:visible}.media img{width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center;border-radius:7px;box-shadow:var(--shadow)}.media-frame{position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(15,59,44,.28);border-radius:7px;z-index:-1}.media:after{content:"";position:absolute;right:0;top:0;width:52px;height:52px;border-top:3px solid var(--yellow);border-right:3px solid var(--yellow);border-radius:0 7px 0 0;pointer-events:none}.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:88px;align-items:center}.two-col>.reveal:first-child{padding-right:15px}

/* Home */
.home-page section.bg-soft:first-of-type{padding-top:116px}.checklist{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:12px}.checklist li{display:flex;gap:12px;align-items:flex-start;color:var(--muted);font-size:14px}.tick{width:24px;height:24px;min-width:24px;border-radius:50%;background:var(--green);display:grid;place-items:center;margin-top:1px}.tick svg{width:11px}
.industry-chip{position:absolute;left:-36px;bottom:-35px;width:350px;background:var(--dark);color:#fff;border-radius:7px;padding:20px;box-shadow:0 25px 55px rgba(0,0,0,.22);z-index:2}.industry-chip-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:12px;margin-bottom:5px}.industry-chip-head .n{font-size:24px;font-weight:700;color:var(--yellow)}.industry-chip-head .l{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.62)}.industry-chip-list a{display:grid;grid-template-columns:30px 1fr 20px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px}.industry-chip-list a:last-child{border-bottom:0}.industry-chip-list a:hover{color:var(--yellow-2);transform:translateX(5px)}.industry-no{font-size:10px;color:var(--yellow)}.industry-chip i{font-style:normal;text-align:right}
.card-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.service-card{grid-column:span 4;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;min-width:0;box-shadow:0 10px 30px rgba(8,31,20,.04);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.service-card:nth-child(-n+2){grid-column:span 6}.service-card:hover{transform:translateY(-9px);box-shadow:0 24px 50px rgba(8,31,20,.13);border-color:#b8c7bd}.service-card .thumb{height:250px;position:relative;overflow:hidden}.service-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1);filter:saturate(.88)}.service-card:hover .thumb img{transform:scale(1.07)}.service-card .thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.42))}.service-card .thumb .num{position:absolute;z-index:2;left:18px;top:16px;background:var(--yellow);color:#101713;border-radius:4px;padding:5px 9px;font-size:10px;font-weight:800}.service-card .body{padding:26px 27px 25px;min-height:205px;display:flex;flex-direction:column}.service-card h3{font-size:25px;margin:0 0 10px;letter-spacing:-.03em}.service-card p{font-size:13px;line-height:1.7;margin-bottom:22px}.card-link{margin-top:auto;display:inline-flex;align-items:center;gap:10px;color:var(--green);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.11em}.arrow{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;transition:.25s}.card-link:hover .arrow{background:var(--yellow);border-color:var(--yellow);transform:translateX(4px)}

.product-block{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:18px;box-shadow:0 8px 24px rgba(7,30,18,.035)}.product-block-head{padding:16px 22px;background:var(--dark);color:var(--yellow-2);font-size:10px;letter-spacing:.16em;font-weight:800}.product-grid{display:grid;grid-template-columns:1fr 1fr}.product-card{padding:28px 30px;min-height:210px;position:relative}.product-card+ .product-card{border-left:1px solid var(--line)}.product-card h4{font-size:20px;margin:0 0 16px;letter-spacing:-.02em}.product-card ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.product-card li{font-size:12px;color:var(--muted);position:relative;padding-left:14px}.product-card li:before{content:"";width:4px;height:4px;background:var(--yellow);position:absolute;left:0;top:9px;border-radius:50%}
.cta-band{background:linear-gradient(120deg,var(--green) 0%,var(--dark) 72%);color:#fff;border-radius:8px;position:relative;overflow:hidden;padding:48px}.cta-band:before{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(245,184,0,.15);border-radius:50%;right:-180px;top:-200px}.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative}.cta-band h2{max-width:760px;margin-bottom:12px}.cta-band p{max-width:760px}.cta-corner{position:absolute;left:0;bottom:0;width:100px;height:4px;background:var(--yellow)}

/* About */
.company-overview{background:#fff}.company-overview .two-col{grid-template-columns:1.02fr .98fr}.company-overview .media{min-height:420px}.company-overview .media img{min-height:420px}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.why-card{border-radius:7px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);padding:25px;min-height:180px;transition:.3s;position:relative;overflow:hidden}.why-card:after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;right:-65px;bottom:-65px;background:rgba(245,184,0,.08)}.why-card:hover{transform:translateY(-6px);border-color:rgba(245,184,0,.45)}.why-card .idx{display:block;color:var(--yellow);font-size:11px;letter-spacing:.15em;margin-bottom:26px}.why-card h3{font-size:20px;margin:0 0 8px}.why-card p{font-size:12px}.vision-mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.vision-card{padding:38px;border:1px solid var(--line);background:#fff;border-radius:8px;min-height:260px;position:relative;overflow:hidden}.vision-card-dark{background:var(--green);color:#fff;border-color:var(--green)}.vision-card-dark p{color:rgba(255,255,255,.8)}.vision-card .vm-index{font-size:44px;font-weight:700;line-height:1;color:var(--yellow);display:block;margin-bottom:35px}.vm-label{font-size:11px!important;letter-spacing:.16em;text-transform:uppercase;font-weight:800!important;color:var(--green-3)!important}.vision-card-dark .vm-label{color:var(--yellow-2)!important}.vision-card>p:last-child{font-size:14px;max-width:700px}.mission-copy{color:#fff!important}.values-section{background:var(--paper);padding-bottom:100px}.values-heading{display:flex;align-items:center;gap:18px;margin:55px 0 20px}.values-rule{height:1px;background:var(--line);flex:1}.core-values-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.core-value{background:#fff;border:1px solid var(--line);border-radius:7px;padding:22px;min-height:210px;transition:.3s}.core-value:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:#bdcbbf}.value-num{display:block;color:var(--yellow);font-weight:800;font-size:11px;letter-spacing:.1em;margin-bottom:36px}.core-value h4{font-size:17px;margin:0 0 8px}.core-value p{font-size:11px;line-height:1.65}

/* Service pages */
.service-page section:not(.hero){padding:90px 0}.intro-block{max-width:980px;margin:0 auto 54px}.intro-block-wide{max-width:1120px}.intro-block h2{max-width:1000px}.capability-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center;background:var(--dark);color:#fff;border-radius:8px;padding:40px 42px;position:relative;overflow:visible}.capability-split:before{content:"01";position:absolute;right:30px;top:-34px;font-size:120px;line-height:1;color:rgba(245,184,0,.08);font-weight:800}.capability-split .media{min-height:400px}.capability-split .media img{min-height:400px}.capability-split .checklist li{color:rgba(255,255,255,.72)}.capability-split h3{color:#fff}.service-page .media-frame{border-color:rgba(245,184,0,.35)}
.deliverable-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.deliverable-card{border:1px solid var(--line);border-radius:7px;background:#fff;padding:25px;min-height:220px;transition:.3s}.deliverable-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#b8c8bb}.deliverable-card h4{font-size:18px;margin:0 0 14px}.deliverable-card ul{padding:0 0 0 17px;margin:0}.deliverable-card li{font-size:12px;color:var(--muted);margin:6px 0}.divider-num{display:flex;align-items:center;gap:16px;margin:35px 0 18px}.divider-num .n{width:34px;height:34px;display:grid;place-items:center;background:var(--yellow);border-radius:50%;font-weight:800;font-size:12px;flex:0 0 auto}.divider-num h3{margin:0;font-size:22px;letter-spacing:-.025em}.tab-strip{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px;gap:5px;margin-bottom:30px;position:sticky;top:90px;z-index:20;box-shadow:0 12px 30px rgba(7,30,18,.06)}.tab-btn{border:0;background:transparent;padding:14px 10px;border-radius:5px;font-family:inherit;font-weight:700;font-size:10px;line-height:1.35;color:var(--muted);cursor:pointer;transition:.25s}.tab-btn:hover{background:var(--paper);color:var(--green)}.tab-btn.is-active{background:var(--green);color:#fff;box-shadow:0 8px 18px rgba(15,59,44,.2)}.tab-panel{display:none}.tab-panel.is-active{display:block;animation:panelIn .45s ease}.tab-panel>.two-col{align-items:start}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:18px;align-items:stretch}.contact-info-card,.form-card{border-radius:8px;border:1px solid var(--line);background:#fff;padding:36px;box-shadow:0 12px 35px rgba(7,30,18,.05)}.contact-info-card{background:var(--dark);color:#fff;border-color:var(--dark);position:relative;overflow:hidden}.contact-info-card:before{content:"";position:absolute;right:-100px;top:-100px;width:280px;height:280px;border:1px solid rgba(245,184,0,.18);border-radius:50%}.contact-info-card h2{font-size:40px;color:#fff}.contact-line{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.1);position:relative}.contact-line:last-child{border-bottom:0}.contact-line .ic{width:34px;height:34px;border-radius:5px;background:rgba(245,184,0,.13);color:var(--yellow);display:grid;place-items:center;flex:0 0 auto}.contact-line .k{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5)}.contact-line .v{font-size:13px;color:#fff}.form-card h2{font-size:40px}.enquiry-form{display:grid;gap:16px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-bottom:7px;color:var(--muted)}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:5px;background:#fbfcfa;padding:13px 14px;font:inherit;font-size:13px;outline:none;transition:.2s}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(27,90,66,.08)}

/* Footer */
.site-footer{background:#06100B;color:#fff;padding:74px 0 25px;border-top:1px solid rgba(255,255,255,.06)}.footer-grid{display:grid;grid-template-columns:1.7fr .8fr 1fr 1fr;gap:45px}.footer-brand p{max-width:360px;color:rgba(255,255,255,.52);font-size:12px;margin-top:20px}.footer-col h4{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);margin:0 0 18px}.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.footer-col li,.footer-col a{font-size:12px;color:rgba(255,255,255,.62)}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:18px;display:flex;justify-content:space-between;color:rgba(255,255,255,.38);font-size:10px;letter-spacing:.04em}

/* Animation */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 60ms)}.reveal.is-visible{opacity:1;transform:none}.service-card,.product-card,.deliverable-card,.vision-card,.core-value{transform:perspective(800px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateZ(0)}
@keyframes lineGrow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes panelIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes orbitPulse{0%,100%{transform:scale(.96);opacity:.55}50%{transform:scale(1.03);opacity:1}}

@media(max-width:1050px){
  .container{width:min(var(--max),calc(100% - 44px))}.hero-inner{margin-left:22px;padding-right:30px}.hero{min-height:700px}.hero h1{font-size:clamp(46px,7vw,72px)}
  .two-col{gap:50px}.industry-chip{left:-20px;width:330px}.card-grid{gap:13px}.service-card:nth-child(-n+2),.service-card{grid-column:span 6}.core-values-grid{grid-template-columns:repeat(3,1fr)}.tab-strip{grid-template-columns:repeat(3,1fr);position:static}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}
}
@media(max-width:760px){
  body{font-size:14px}.container{width:min(100% - 32px,var(--max))}section{padding:76px 0}.section-tight{padding:52px 0}
  .site-header{position:fixed;padding:13px 0;background:rgba(7,19,14,.93);backdrop-filter:blur(14px)}.brand{width:142px;height:46px}.brand-logo-chip{width:142px;height:46px}.main-nav{display:none}.hamburger{display:block}.mobile-nav{display:block;position:fixed;z-index:90;inset:72px 0 0;background:#06100B;padding:26px 22px;transform:translateX(100%);transition:.35s ease;overflow:auto}.mobile-nav.is-open{transform:none}.mobile-nav ul{list-style:none;margin:0;padding:0}.mobile-nav>ul>li{border-bottom:1px solid rgba(255,255,255,.1)}.mobile-nav .nav-link{display:flex;justify-content:space-between;padding:17px 2px}.mobile-nav .mobile-sub{display:none;padding:0 0 10px 14px}.mobile-nav .mobile-sub.is-open{display:block}.mobile-nav .mobile-sub a{font-size:12px;color:rgba(255,255,255,.7);padding:11px 0}.mobile-nav>.btn{margin-top:24px}.mobile-toggle-icon{width:8px;height:8px;border-right:1px solid #fff;border-bottom:1px solid #fff;transform:rotate(45deg);transition:.25s}.mobile-toggle-icon.is-open{transform:rotate(225deg)}
  .hero,.page-hero{min-height:620px;padding:150px 0 75px}.page-hero{min-height:430px;padding-top:140px}.hero:after{right:-55px;top:35%;width:150px;height:150px}.hero-inner{margin-left:16px;padding-right:16px}.hero h1{font-size:clamp(42px,13vw,62px)}.hero .lead{font-size:15px}.hero-actions .btn{width:100%}
  .two-col,.vision-mission-grid,.contact-grid,.deliverable-grid{grid-template-columns:1fr}.two-col{gap:52px}.media,.media img{min-height:310px}.media-frame{inset:12px -10px -12px 10px}.industry-chip{position:relative;left:auto;bottom:auto;width:calc(100% - 10px);margin:-45px 0 0 10px}.section-head{margin-bottom:42px}h2{font-size:clamp(31px,9vw,46px)}
  .card-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(-n+2){grid-column:span 1}.service-card .thumb{height:220px}.service-card .body{min-height:190px;padding:23px}.product-grid{grid-template-columns:1fr}.product-card+ .product-card{border-left:0;border-top:1px solid var(--line)}.product-card ul{grid-template-columns:1fr}.product-card{min-height:0;padding:25px}
  .cta-band{padding:30px 24px}.cta-band-inner{flex-direction:column;align-items:flex-start}.cta-band .btn{width:100%}
  .why-grid,.core-values-grid{grid-template-columns:1fr}.vision-card{padding:27px;min-height:0}.vision-card .vm-index{margin-bottom:24px}.values-heading{margin-top:40px}.core-value{min-height:0}.core-value .value-num{margin-bottom:18px}
  .capability-split{grid-template-columns:1fr;padding:25px 20px;gap:28px}.capability-split .media,.capability-split .media img{min-height:280px}.service-page section:not(.hero){padding:68px 0}.intro-block{margin-bottom:38px}.tab-strip{grid-template-columns:1fr 1fr}.tab-btn{min-height:54px}.divider-num h3{font-size:18px}.field-row{grid-template-columns:1fr}.contact-info-card,.form-card{padding:26px}.form-card h2,.contact-info-card h2{font-size:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:7px}
}
@media(max-width:430px){.container{width:calc(100% - 24px)}.hero{min-height:600px}.page-hero{min-height:400px}.brand{width:130px}.brand-logo-chip{width:130px}.service-card .thumb{height:200px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.tab-strip{grid-template-columns:1fr}.industry-chip{width:calc(100% - 4px);margin-left:4px}.product-block-head{font-size:9px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1!important;transform:none!important}}


/* =========================================================
   iGent V9 — Production Layout Layer
   Purpose: stable desktop/tablet/mobile geometry in static hosting.
   ========================================================= */

:root{
  --container-width:1240px;
  --section-space:86px;
  --page-hero-height:410px;
}

/* Stable container and section rhythm */
.container{
  width:min(var(--container-width), calc(100% - 56px));
}
section{
  padding:var(--section-space) 0;
}
.home-page section.bg-soft:first-of-type{
  padding-top:82px;
}

/* HERO — compact, controlled, consistent */
.hero{
  min-height:680px;
}
.page-hero{
  min-height:var(--page-hero-height);
  height:var(--page-hero-height);
  padding:132px 0 54px;
}
.page-hero .hero-inner{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
}
.page-hero h1{
  max-width:900px;
}

/* HOME WHO WE ARE — balanced 50/50 */
.two-col{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:64px;
}
.two-col > *{
  min-width:0;
}
.media{
  width:100%;
  min-width:0;
  min-height:0;
  aspect-ratio:1.12 / 1;
}
.media img{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:auto;
  object-fit:cover;
}
.industry-chip{
  max-width:350px;
}

/* PRODUCT PORTFOLIO — always use full container width */
.product-block{
  width:100%;
  max-width:none;
}
.product-grid,
.product-grid-wide{
  width:100%;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.product-card{
  min-width:0;
}

/* SERVICE CAPABILITY — real two-column layout */
.service-page .capability-split{
  width:100%;
  display:grid !important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr) !important;
  gap:44px !important;
  align-items:stretch !important;
  padding:34px !important;
  background:var(--dark) !important;
  color:#fff !important;
}
.service-page .capability-split > *{
  min-width:0;
}
.service-page .capability-split .media{
  min-height:0 !important;
  height:100% !important;
  aspect-ratio:1.32 / 1;
}
.service-page .capability-split .media img{
  min-height:0 !important;
  height:100% !important;
  width:100% !important;
  object-fit:cover !important;
}
.service-page .capability-split .media-frame{
  inset:12px -12px -12px 12px;
}
.service-page .capability-split .checklist{
  margin-top:20px;
}
.service-page .capability-split h3{
  margin-top:0;
}

/* INTRO — stop oversized empty areas */
.service-page section:not(.hero){
  padding:76px 0;
}
.service-page .intro-block{
  max-width:1080px;
  margin:0 auto 40px;
}
.service-page .intro-block h2{
  max-width:920px;
}
.service-page .capability-split{
  margin-bottom:0 !important;
}

/* ENGINEERING DELIVERABLES */
.deliverable-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.deliverable-card{
  min-width:0;
}

/* ABOUT — tighter company overview */
.company-overview .two-col{
  grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
  gap:58px;
}
.company-overview .media{
  aspect-ratio:1.18 / 1;
  min-height:0;
}
.company-overview .media img{
  min-height:0;
}

/* VISION / MISSION */
.vision-mission-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.vision-card{
  min-width:0;
}
.vision-card.mission,
.vision-card:nth-child(2){
  background:var(--green) !important;
  color:#fff !important;
}
.vision-card.mission p,
.vision-card:nth-child(2) p{
  color:rgba(255,255,255,.88) !important;
}

/* Contact */
.contact-grid{
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);
}
.contact-grid > *{
  min-width:0;
}

/* Subtle premium motion — transform-safe */
@media (hover:hover) and (pointer:fine){
  .media img{
    transition:transform .8s cubic-bezier(.2,.7,.2,1), filter .5s ease;
  }
  .media:hover img{
    transform:scale(1.025);
    filter:saturate(1.03) contrast(1.01);
  }
  .product-card,
  .vision-card,
  .deliverable-card{
    transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
  }
  .product-card:hover,
  .vision-card:hover,
  .deliverable-card:hover{
    transform:translateY(-4px);
  }
}

/* IMPORTANT: do not collapse layouts prematurely at 1050px.
   This prevents the deployed site from turning desktop sections
   into stacked layouts when the browser/hosting viewport is narrower. */
@media (min-width:821px) and (max-width:1100px){
  .container{
    width:calc(100% - 44px);
  }
  .two-col{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:38px;
  }
  .service-page .capability-split{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) !important;
    gap:28px !important;
  }
  .service-page .capability-split .media{
    aspect-ratio:1.15 / 1;
  }
  .product-grid,
  .product-grid-wide{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .company-overview .two-col{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  }
}

/* Tablet */
@media (max-width:820px){
  .container{
    width:calc(100% - 36px);
  }
  section{
    padding:68px 0;
  }
  .page-hero{
    height:380px;
    min-height:380px;
    padding:118px 0 42px;
  }
  .two-col,
  .company-overview .two-col,
  .vision-mission-grid,
  .contact-grid{
    grid-template-columns:1fr !important;
  }
  .service-page .capability-split{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .service-page .capability-split .media{
    aspect-ratio:16 / 9;
  }
  .product-grid,
  .product-grid-wide,
  .deliverable-grid{
    grid-template-columns:1fr !important;
  }
  .product-card + .product-card{
    border-left:0;
    border-top:1px solid var(--line);
  }
}

/* Mobile */
@media (max-width:560px){
  .container{
    width:calc(100% - 28px);
  }
  section{
    padding:56px 0;
  }
  .home-page section.bg-soft:first-of-type{
    padding-top:58px;
  }
  .hero{
    min-height:600px;
  }
  .page-hero{
    height:330px;
    min-height:330px;
    padding:104px 0 30px;
  }
  .page-hero h1{
    font-size:clamp(38px,11vw,54px);
    line-height:1.02;
  }
  .page-hero .breadcrumb{
    flex-wrap:wrap;
  }
  .media{
    aspect-ratio:1 / .92;
  }
  .industry-chip{
    position:relative;
    left:8px;
    bottom:auto;
    width:calc(100% - 8px);
    max-width:none;
    margin:-38px 0 0 0;
  }
  .service-page .capability-split{
    padding:24px 20px !important;
  }
  .service-page .capability-split .media{
    aspect-ratio:4 / 3;
  }
  .service-page .capability-split .media-frame{
    inset:10px -8px -8px 8px;
  }
  .product-card{
    padding:24px 22px;
  }
}

/* Prevent accidental horizontal overflow from decorative layers */
html,body{
  max-width:100%;
  overflow-x:hidden;
}


/* =========================================================
   iGent V10 — Client Revision / Final Production Layer
   ========================================================= */

/* New supplied logo: dark presentation so the white mark remains legible. */
.brand{width:108px;height:72px;overflow:visible}
.brand-logo-chip{width:108px;height:72px;padding:2px;background:var(--dark);border:1px solid rgba(255,255,255,.14);border-radius:7px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(0,0,0,.14)}
.brand-logo-chip img{width:100%;height:100%;object-fit:contain;object-position:center}
.site-header.is-solid .brand-logo-chip{background:#0b2118}

/* Client requested wording and horizontal one-row services scroller. */
#services .card-grid{
  display:flex;
  flex-wrap:nowrap;
  gap:18px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:5px 4px 20px;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:var(--yellow) rgba(15,59,44,.10);
}
#services .card-grid::-webkit-scrollbar{height:6px}
#services .card-grid::-webkit-scrollbar-track{background:rgba(15,59,44,.08);border-radius:999px}
#services .card-grid::-webkit-scrollbar-thumb{background:var(--yellow);border-radius:999px}
#services .service-card,
#services .service-card:nth-child(-n+2){
  flex:0 0 clamp(320px,31vw,390px);
  width:auto;
  grid-column:auto;
  scroll-snap-align:start;
}
#services .service-card .body{min-height:190px}

/* Oil & Gas / service capability content remains clean with the added client bullets. */
.service-page .capability-split .checklist{gap:11px}
.service-page .capability-split .checklist li{line-height:1.55}

/* Process Engineering: keep the new capability card balanced. */
.process-page .deliverable-card ul,
.deliverable-card ul{margin-bottom:0}

/* Plant Engineering tabs and added content. */
.tab-btn{transition:background .25s ease,color .25s ease,transform .25s ease,border-color .25s ease}
.tab-btn:hover{transform:translateY(-2px)}

/* Mobile header for the supplied stacked logo. */
@media(max-width:760px){
  .brand{width:92px;height:62px}
  .brand-logo-chip{width:92px;height:62px}
  #services .card-grid{gap:14px;padding-left:2px;padding-right:2px}
  #services .service-card,
  #services .service-card:nth-child(-n+2){flex-basis:82vw}
}
@media(max-width:430px){
  .brand{width:84px;height:58px}
  .brand-logo-chip{width:84px;height:58px}
  #services .service-card,
  #services .service-card:nth-child(-n+2){flex-basis:84vw}
}

/* =========================================================
   iGent V11 — Contact delivery + WhatsApp
   ========================================================= */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.form-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.whatsapp-btn{background:#1f9d55;color:#fff!important;border:1px solid #1f9d55}
.whatsapp-btn:hover{background:#167a41;color:#fff!important;border-color:#167a41}
.form-status{min-height:20px;margin-top:12px;font-size:12px;line-height:1.6}
.form-status.is-success{color:#1b6b43}
.form-status.is-error{color:#a13b2f}
.enquiry-form button:disabled{opacity:.65;cursor:wait;transform:none!important;box-shadow:none!important}
@media(max-width:560px){.form-actions{grid-template-columns:1fr}.form-actions .btn{width:100%}}
