:root{--navy:#06131f;--navy2:#0a2234;--blue:#0b4a72;--gold:#d8a13a;--paper:#f4f6f7;--ink:#10202b;--muted:#6c7a84;--line:rgba(255,255,255,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}a{text-decoration:none;color:inherit}.loader{position:fixed;inset:0;background:#06131f;z-index:99;display:grid;place-items:center;transition:.7s}.loader img{width:96px;animation:pulse 1.3s infinite}.loader span{position:absolute;width:160px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:translateY(90px);animation:scan 1.5s infinite}@keyframes pulse{50%{transform:scale(1.06)}}@keyframes scan{from{opacity:.2;transform:translate(-70px,90px)}to{opacity:1;transform:translate(70px,90px)}}.site-header{position:fixed;top:0;left:0;right:0;height:82px;display:flex;align-items:center;padding:0 5vw;z-index:20;border-bottom:1px solid var(--line);transition:.3s}.site-header.scrolled{background:rgba(6,19,31,.94);backdrop-filter:blur(14px)}.brand img{width:300px;display:block}.site-header nav{margin-left:auto;display:flex;gap:30px}.site-header nav a{color:#dce6ec;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.header-cta{margin-left:30px;border:1px solid var(--gold);color:#fff;padding:13px 18px;font-size:12px;font-weight:800;text-transform:uppercase}.menu-btn{display:none}.hero{min-height:100vh;background:var(--navy);position:relative;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;padding:130px 5vw 70px;color:#fff}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,#000,transparent 65%)}.hero-glow{position:absolute;width:540px;height:540px;border-radius:50%;background:rgba(21,116,168,.25);filter:blur(100px);left:-180px;top:160px}.hero-copy{position:relative;z-index:2;align-self:center;max-width:760px}.eyebrow{color:var(--gold);text-transform:uppercase;font-weight:800;letter-spacing:.18em;font-size:12px}.hero h1{font-size:clamp(56px,6vw,94px);line-height:.95;letter-spacing:-.055em;margin:22px 0 28px;text-transform:uppercase}.hero h1 span{color:var(--gold)}.lead{max-width:650px;color:#c1d0da;font-size:18px;line-height:1.7}.actions{display:flex;gap:14px;margin:34px 0 52px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 22px;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.08em;border:1px solid transparent;cursor:pointer}.primary{background:var(--gold);color:#07131d}.ghost{border-color:rgba(255,255,255,.4);color:#fff}.hero-meta{display:flex;gap:42px}.hero-meta div{padding-left:16px;border-left:1px solid var(--gold)}.hero-meta strong{display:block;font-size:28px}.hero-meta span{font-size:11px;color:#9cb0bd;text-transform:uppercase;letter-spacing:.1em}.hero-visual{position:relative;align-self:stretch;min-height:650px;clip-path:polygon(13% 0,100% 0,100% 100%,0 100%)}.hero-visual img{width:100%;height:100%;object-fit:cover}.visual-overlay{position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,transparent 30%),linear-gradient(0deg,rgba(6,19,31,.45),transparent)}.stamp{position:absolute;right:30px;bottom:30px;width:150px;height:150px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-content:center;text-align:center;background:rgba(6,19,31,.58);backdrop-filter:blur(8px)}.stamp strong{font-size:38px;color:var(--gold)}.stamp span,.stamp small{letter-spacing:.18em;font-size:10px}.client-strip{background:#071b2a;color:#fff;padding:24px 0 18px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);overflow:hidden}.client-strip>p{text-align:center;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 20px}.marquee{overflow:hidden}.track{display:flex;width:max-content;gap:50px;animation:marquee 35s linear infinite}.track span{white-space:nowrap;color:#fff;font-weight:900;font-size:18px;opacity:.88}.track span:nth-child(3n){font-family:Georgia,serif}.marquee:hover .track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:105px 5vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.intro h2,.section h2{font-size:clamp(38px,4vw,64px);line-height:1.06;letter-spacing:-.04em;margin:12px 0}.intro p{font-size:18px;line-height:1.8;color:var(--muted)}.dark{background:var(--navy);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}.section-head>p{color:#91a7b5;max-width:420px}.solution-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:320px;gap:14px}.service-card{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.18);padding:24px;display:flex;flex-direction:column;justify-content:space-between;background-image:linear-gradient(0deg,rgba(4,14,22,.95),rgba(4,14,22,.05)),var(--bg);background-size:cover;background-position:center;transition:.35s}.service-card.featured{grid-column:span 2;grid-row:span 2}.service-card:hover{transform:translateY(-6px);border-color:var(--gold)}.service-card span{font-size:12px;color:var(--gold);font-weight:900}.service-card h3{font-size:26px;margin:0 0 10px}.service-card p{color:#c6d2da;line-height:1.55;max-width:420px}.industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cdd4d8}.industry-grid div{background:#fff;padding:42px 30px;font-size:24px;font-weight:800;min-height:150px;display:flex;align-items:end;position:relative}.industry-grid div:before{content:"";position:absolute;left:30px;top:30px;width:34px;height:2px;background:var(--gold)}.project-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.project-grid article{background:#fff;border:1px solid #dce2e5;transition:.3s}.project-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(7,24,35,.12)}.project-grid img{width:100%;aspect-ratio:1.45;object-fit:cover;display:block}.project-grid article div{padding:18px}.project-grid span{color:var(--gold);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.project-grid h3{font-size:18px;margin:8px 0}.heritage{display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden}.heritage>div:first-child{max-width:650px}.heritage p:not(.eyebrow){color:#a9bbc6;font-size:18px;line-height:1.7}.year{font-size:clamp(130px,20vw,300px);font-weight:900;letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px rgba(216,161,58,.5);text-align:right}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#eef2f4}.contact>div>p:not(.eyebrow){font-size:18px;line-height:1.7;color:var(--muted)}.contact-links{display:grid;gap:10px;margin-top:28px;font-weight:700}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact input,.contact textarea{border:0;border-bottom:1px solid #aab6bd;background:transparent;padding:16px 4px;font:inherit;outline:none}.contact textarea{grid-column:1/-1;min-height:120px}.contact button{grid-column:1/-1;justify-self:start}.whatsapp{position:fixed;right:24px;bottom:24px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-weight:900;z-index:30;box-shadow:0 12px 30px rgba(0,0,0,.3)}footer{background:#04101a;color:#9fb0bc;padding:55px 5vw 30px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:30px}footer img{width:280px}footer p{color:#fff;font-weight:700}footer span{font-size:12px}.reveal{opacity:0;transform:translateY(20px);transition:.8s}.reveal.show{opacity:1;transform:none}@media(max-width:1000px){.site-header nav,.header-cta{display:none}.menu-btn{display:block;margin-left:auto;background:none;border:0}.menu-btn span{display:block;width:26px;height:2px;background:#fff;margin:6px}.site-header nav.open{display:flex;position:absolute;top:82px;left:0;right:0;background:#06131f;padding:30px;flex-direction:column;margin:0}.brand img{width:245px}.hero{grid-template-columns:1fr;padding-top:120px}.hero-visual{min-height:480px;margin-top:45px;clip-path:none}.solution-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:repeat(2,1fr)}.industry-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.site-header{height:70px;padding:0 20px}.brand img{width:210px}.hero{padding:110px 20px 50px}.hero h1{font-size:47px}.hero-meta{gap:18px;flex-wrap:wrap}.hero-visual{min-height:380px}.section{padding:75px 20px}.intro,.contact,.heritage{grid-template-columns:1fr}.solution-grid{grid-template-columns:1fr;grid-auto-rows:300px}.service-card.featured{grid-column:auto;grid-row:auto}.project-grid,.industry-grid{grid-template-columns:1fr}.section-head{display:block}.contact form{grid-template-columns:1fr}.contact input,.contact textarea,.contact button{grid-column:1}.year{text-align:left;font-size:120px}footer{grid-template-columns:1fr}footer img{width:235px}}

/* V9 client logo carousel and hero cleanup */
.stamp{display:none!important}
.client-strip{background:#f7f8fa;color:#071b2a;padding:28px 0 24px;border-top:1px solid #dbe1e5;border-bottom:1px solid #dbe1e5}
.client-strip>p{color:#0a2234;font-size:12px;margin-bottom:22px}
.logo-track{gap:0;animation-duration:38s}
.logo-card{width:190px;height:118px;flex:0 0 190px;background:#fff;border-right:1px solid #dfe4e7;border-top:1px solid #dfe4e7;border-bottom:1px solid #dfe4e7;display:grid;place-items:center;padding:16px 20px;overflow:hidden}
.logo-card:first-child{border-left:1px solid #dfe4e7}
.logo-card img{width:100%;height:100%;object-fit:contain;filter:saturate(.88);transition:transform .28s ease,filter .28s ease}
.logo-card.tall img{max-height:96px;width:auto}
.logo-card.wide{width:225px;flex-basis:225px}
.logo-card:hover img{transform:scale(1.06);filter:saturate(1)}
@media(max-width:650px){.logo-card{width:150px;height:96px;flex-basis:150px;padding:12px}.logo-card.wide{width:180px;flex-basis:180px}.logo-card.tall img{max-height:74px}}


/* V10 — preferred header and optically normalized client carousel */
.site-header{
  height:104px;
  padding:0 3.2vw;
  background:rgba(5,23,39,.96);
}
.site-header.scrolled{background:rgba(5,23,39,.985)}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{
  width:365px;
  height:82px;
  object-fit:contain;
  object-position:left center;
}
.site-header nav{gap:27px}
.site-header nav a{font-size:12px;letter-spacing:.055em}
.header-cta{
  margin-left:28px;
  padding:15px 22px;
  background:linear-gradient(135deg,#c78a24,#dfa940);
  border-color:#dfa940;
  color:#fff;
}
.hero{padding-top:154px}
.client-strip{
  padding:30px 0 22px;
  background:#fff;
}
.client-strip>p{
  margin-bottom:20px;
  font-size:13px;
  letter-spacing:.12em;
}
.logo-track{
  gap:0;
  animation-duration:44s;
  will-change:transform;
}
.logo-card{
  width:224px;
  height:138px;
  flex:0 0 224px;
  padding:0;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border-right:1px solid #e0e5e8;
  border-top:1px solid #e0e5e8;
  border-bottom:1px solid #e0e5e8;
}
.logo-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  max-width:none;
  max-height:none;
  transform:none;
  filter:none;
}
.logo-card:hover img{
  transform:scale(1.035);
  filter:none;
}
@media(max-width:1100px){
  .site-header{height:92px}
  .brand img{width:310px;height:72px}
  .hero{padding-top:138px}
}
@media(max-width:650px){
  .site-header{height:76px;padding:0 16px}
  .brand img{width:245px;height:60px}
  .hero{padding-top:112px}
  .logo-card{width:178px;height:112px;flex-basis:178px}
}


/* V11 — corrected heritage numerals and products page */
.year{display:flex;justify-content:flex-end;gap:.015em;font-family:Arial,"Helvetica Neue",sans-serif;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.095em}
.year span{display:inline-block;line-height:.82}
.site-header nav a.active{color:var(--gold)}
.products-page{background:#f4f6f7}
.products-hero{min-height:78vh;padding:175px 5vw 85px;background:linear-gradient(110deg,rgba(4,18,31,.98) 0%,rgba(4,18,31,.9) 52%,rgba(4,18,31,.45) 100%),url('assets/images/industrial-supplies.webp') center/cover;color:#fff;display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:center}
.products-hero-copy{max-width:850px}.products-hero h1{font-size:clamp(52px,6vw,92px);line-height:.98;letter-spacing:-.055em;text-transform:uppercase;margin:20px 0 28px}.products-hero-copy>p:not(.eyebrow){max-width:720px;font-size:18px;line-height:1.7;color:#c3d1da}
.products-hero-panel{border:1px solid rgba(255,255,255,.2);background:rgba(5,25,40,.72);backdrop-filter:blur(12px);padding:38px}.products-hero-panel span{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:800}.products-hero-panel strong{display:block;font-size:34px;margin:12px 0 22px}.products-hero-panel ul{list-style:none;padding:0;margin:0;display:grid;gap:13px;color:#cfdae1}.products-hero-panel li{border-top:1px solid rgba(255,255,255,.13);padding-top:13px}
.product-intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:end}.product-intro>p{font-size:18px;line-height:1.8;color:var(--muted)}
.product-range{padding-top:85px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.15)}.product-card{min-height:510px;padding:38px;background:#081b2a;display:flex;flex-direction:column;transition:.3s}.product-card:hover{background:#0c2639;transform:translateY(-4px)}.product-index{color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.18em}.product-type{text-transform:uppercase;color:#8fa6b5;font-size:11px;font-weight:800;letter-spacing:.15em;margin:34px 0 8px}.product-card h2{font-size:34px!important;letter-spacing:-.035em;margin:0 0 20px!important}.product-card>p:not(.product-type){color:#b9c8d1;line-height:1.7}.product-card ul{padding-left:18px;color:#d8e0e5;line-height:1.9;margin:18px 0 28px}.product-card a{margin-top:auto;color:var(--gold);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.service-product{background:#0b2233}
.product-process h2{max-width:900px}.process-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d4dade;margin-top:45px}.process-row>div{background:#fff;padding:38px;min-height:240px}.process-row span{color:var(--gold);font-weight:900}.process-row h3{font-size:27px;margin:34px 0 12px}.process-row p{color:var(--muted);line-height:1.7}
.product-cta{display:flex;align-items:end;justify-content:space-between;gap:50px}.product-cta h2{max-width:900px}.product-cta .btn{flex:0 0 auto}
@media(max-width:1000px){.products-hero{grid-template-columns:1fr;padding-top:145px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-intro{grid-template-columns:1fr}.product-cta{display:block}.product-cta .btn{margin-top:25px}}
@media(max-width:650px){.year{justify-content:flex-start;font-size:115px}.products-hero{padding:125px 20px 65px}.products-hero h1{font-size:45px}.product-grid,.process-row{grid-template-columns:1fr}.product-card{min-height:auto}.product-cta{padding-bottom:75px}}


/* V12 — refined Industries and Projects */
.refined-head{
  align-items:flex-end;
  gap:60px;
}
.refined-head > div{max-width:760px}
.refined-head > p{
  max-width:500px;
  margin:0 0 8px;
  line-height:1.7;
  color:var(--muted);
}
.refined-industries{
  background:#f7f8f8;
}
.industry-showcase{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:310px;
  gap:14px;
}
.industry-card{
  position:relative;
  overflow:hidden;
  background:#071824;
  min-width:0;
}
.industry-card-wide{grid-column:span 2}
.industry-card img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .45s;
}
.industry-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(4,15,24,.02) 20%,rgba(4,15,24,.88) 100%);
}
.industry-card-overlay{
  position:absolute;
  inset:auto 0 0;
  z-index:2;
  padding:28px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  color:#fff;
}
.industry-card-overlay>span{
  align-self:flex-start;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
}
.industry-card-overlay p{
  margin:0 0 7px;
  color:#b9c8d1;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.15em;
}
.industry-card-overlay h3{
  margin:0;
  max-width:360px;
  font-size:23px;
  line-height:1.16;
  letter-spacing:-.025em;
}
.industry-card:hover img{
  transform:scale(1.045);
  filter:saturate(1.08) contrast(1.05);
}
.refined-projects{
  background:#fff;
}
.project-feature-grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  grid-template-rows:repeat(2,330px);
  gap:18px;
}
.project-feature{
  position:relative;
  overflow:hidden;
  background:var(--navy);
  color:#fff;
}
.project-feature-primary{
  grid-row:1 / span 2;
}
.project-feature img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .65s cubic-bezier(.2,.7,.2,1);
}
.project-feature::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(4,15,24,.03) 22%,rgba(4,15,24,.92) 100%);
}
.project-feature-content{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  padding:30px;
}
.project-feature-primary .project-feature-content{
  padding:42px;
}
.project-kicker{
  display:flex;
  justify-content:space-between;
  margin-bottom:14px;
  color:var(--gold);
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.project-feature h3{
  margin:0 0 12px;
  max-width:680px;
  font-size:clamp(22px,2.4vw,40px);
  line-height:1.08;
  letter-spacing:-.03em;
}
.project-feature:not(.project-feature-primary) h3{
  font-size:24px;
}
.project-feature p{
  margin:0;
  max-width:620px;
  color:#c6d2da;
  line-height:1.55;
  font-size:14px;
}
.project-feature:hover img{
  transform:scale(1.04);
}
@media(max-width:1000px){
  .industry-showcase{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:290px}
  .industry-card-wide{grid-column:span 1}
  .project-feature-grid{grid-template-columns:1fr;grid-template-rows:460px 320px 320px}
  .project-feature-primary{grid-row:auto}
}
@media(max-width:650px){
  .refined-head{display:block}
  .industry-showcase{grid-template-columns:1fr;grid-auto-rows:250px}
  .industry-card-wide{grid-column:auto}
  .industry-card-overlay{padding:22px}
  .industry-card-overlay h3{font-size:20px}
  .project-feature-grid{grid-template-rows:390px 310px 310px}
  .project-feature-primary .project-feature-content,
  .project-feature-content{padding:24px}
  .project-feature h3,
  .project-feature:not(.project-feature-primary) h3{font-size:22px}
}


/* V13 — supplied imagery refinement */
.industry-card img,
.project-feature img{
  image-rendering:auto;
}
.industry-card:nth-child(2) img{
  object-position:center 52%;
}
.industry-card:nth-child(5) img{
  object-position:center 44%;
}
.project-feature-primary img{
  object-position:center 48%;
}
.project-feature:nth-child(3) img{
  object-position:center 46%;
}
.industry-card::before,
.project-feature::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(120deg,rgba(2,14,25,.05),rgba(6,23,37,.18));
  mix-blend-mode:multiply;
}


/* V14 — premium Complete Engineering Solutions */
.premium-solutions{
  background:#071927;
  color:#fff;
}
.premium-solutions .section-head h2{color:#fff}
.premium-solutions .section-head>p{color:#aebfca}
.solutions-editorial-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:370px;
  gap:16px;
}
.solution-editorial{
  position:relative;
  overflow:hidden;
  min-width:0;
  background:#06131e;
  border:1px solid rgba(255,255,255,.08);
}
.solution-editorial-featured{
  grid-column:span 2;
  grid-row:span 2;
}
.solution-editorial-wide{
  grid-column:span 2;
}
.solution-editorial img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .5s;
}
.solution-editorial-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(2,12,19,.04) 20%,rgba(2,12,19,.92) 100%),
    linear-gradient(90deg,rgba(3,16,26,.38),transparent 60%);
}
.solution-editorial-content{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  padding:30px;
}
.solution-editorial-featured .solution-editorial-content{
  padding:44px;
  max-width:760px;
}
.solution-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
  color:var(--gold);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.16em;
}
.solution-editorial h3{
  margin:0 0 12px;
  color:#fff;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-.03em;
}
.solution-editorial-featured h3{
  font-size:clamp(38px,4.2vw,62px);
}
.solution-editorial p{
  margin:0 0 18px;
  max-width:620px;
  color:#c5d1d9;
  font-size:14px;
  line-height:1.6;
}
.solution-editorial a{
  color:#fff;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.11em;
  text-decoration:none;
}
.solution-editorial a:hover{color:var(--gold)}
.solution-editorial:hover img{
  transform:scale(1.045);
  filter:saturate(1.08) contrast(1.04);
}
@media(max-width:1100px){
  .solutions-editorial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:350px;
  }
  .solution-editorial-featured{
    grid-column:span 2;
    grid-row:span 1;
    min-height:500px;
  }
  .solution-editorial-wide{grid-column:span 2}
}
@media(max-width:700px){
  .solutions-editorial-grid{
    grid-template-columns:1fr;
    grid-auto-rows:330px;
  }
  .solution-editorial-featured,
  .solution-editorial-wide{
    grid-column:auto;
    grid-row:auto;
  }
  .solution-editorial-featured{min-height:430px}
  .solution-editorial-content,
  .solution-editorial-featured .solution-editorial-content{
    padding:24px;
  }
  .solution-editorial-featured h3,
  .solution-editorial h3{
    font-size:28px;
  }
}


/* V16 — balanced Engineering Solutions grid */
.solutions-editorial-grid{
  align-items:stretch;
}
.solution-editorial{
  min-height:370px;
}
@media(min-width:1101px){
  .solution-editorial-featured{
    grid-column:1 / span 2;
    grid-row:1 / span 2;
  }
  .solution-editorial:nth-child(2){
    grid-column:3;
    grid-row:1;
  }
  .solution-editorial:nth-child(3){
    grid-column:3;
    grid-row:2;
  }
  .solution-editorial:nth-child(4){
    grid-column:1;
    grid-row:3;
  }
  .solution-editorial:nth-child(5){
    grid-column:2;
    grid-row:3;
  }
  .solution-editorial:nth-child(6){
    grid-column:3;
    grid-row:3;
  }
}


/* V21 — contact security and WhatsApp */
.contact form label{
  display:block;
  margin:0 0 7px;
  color:#314553;
  font-size:10px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.contact form input,
.contact form textarea{
  margin-bottom:15px;
}
.form-trap{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
}
.captcha-box{
  display:grid;
  grid-template-columns:1fr 42px minmax(110px,145px);
  gap:10px;
  align-items:center;
  margin:3px 0 14px;
  padding:12px;
  border:1px solid #d8e0e5;
  background:#f6f8f9;
}
.captcha-box strong{
  display:block;
  margin-top:3px;
  color:#071927;
  font-size:20px;
  letter-spacing:.04em;
}
.captcha-label{
  color:#627783;
  font-size:9px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.captcha-box input{
  margin:0!important;
  min-width:0;
  background:#fff;
}
.captcha-refresh{
  width:42px;
  height:42px;
  border:1px solid #c7d2d9;
  background:#fff;
  color:#0b4a72;
  font-size:21px;
  cursor:pointer;
}
.captcha-refresh:hover{
  border-color:var(--gold);
  color:var(--gold);
}
.form-status{
  min-height:20px;
  margin:0 0 10px;
  color:#2f6c4f;
  font-size:12px;
}
.form-status.error{color:#a52a2a}
.form-status.success{color:#2f6c4f}
@media(max-width:520px){
  .captcha-box{
    grid-template-columns:1fr 42px;
  }
  .captcha-box input{
    grid-column:1 / span 2;
  }
}


/* V22 — refined side-by-side Contact section */
.contact{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);
  gap:72px;
  align-items:start;
  padding-top:96px;
  padding-bottom:96px;
  background:#eef3f6;
}
.contact > div:first-child{
  max-width:690px;
  padding-top:18px;
}
.contact > div:first-child h2{
  max-width:650px;
  margin-bottom:24px;
  font-size:clamp(46px,5.1vw,76px);
  line-height:.99;
  letter-spacing:-.055em;
}
.contact > div:first-child > p:not(.eyebrow){
  max-width:680px;
  margin-bottom:30px;
  color:#647783;
  font-size:18px;
  line-height:1.72;
}
.contact-links{
  display:grid;
  gap:8px;
  margin-top:30px;
}
.contact-links a,
.contact-links span{
  display:flex;
  align-items:center;
  min-height:28px;
  color:#102331;
  font-size:16px;
  font-weight:750;
  text-decoration:none;
}
.contact-links a:hover{color:var(--gold)}

.contact form{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:20px;
  row-gap:0;
  width:100%;
  max-width:760px;
  margin-left:auto;
  padding:34px;
  background:#fff;
  border:1px solid #d9e2e7;
  border-radius:20px;
  box-shadow:0 22px 55px rgba(8,28,42,.10);
}
.contact form label{
  margin:0 0 7px;
  color:#425866;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}
.contact form label[for="message"],
.contact form textarea,
.captcha-box,
.form-status,
.contact form .btn{
  grid-column:1 / -1;
}
.contact form input,
.contact form textarea{
  width:100%;
  margin:0 0 18px;
  padding:15px 16px;
  border:1px solid #d5dfe5;
  border-radius:10px;
  background:#f8fafb;
  color:#102331;
  font-size:16px;
  line-height:1.35;
  box-sizing:border-box;
}
.contact form input:focus,
.contact form textarea:focus{
  outline:none;
  border-color:#b9852f;
  background:#fff;
  box-shadow:0 0 0 3px rgba(185,133,47,.10);
}
.contact form textarea{
  min-height:150px;
  resize:vertical;
}
.captcha-box{
  display:grid;
  grid-template-columns:1fr 44px 150px;
  gap:10px;
  align-items:center;
  margin:2px 0 14px;
  padding:14px 16px;
  border:1px solid #d8e1e6;
  border-radius:12px;
  background:#f6f8f9;
}
.captcha-box strong{
  margin-top:4px;
  font-size:18px;
}
.captcha-refresh{
  width:44px;
  height:44px;
  border-radius:9px;
}
.captcha-box input{
  height:44px;
  margin:0!important;
  padding:10px 12px;
  background:#fff;
}
.form-status{
  min-height:18px;
  margin:0 0 10px;
  font-size:12px;
}
.contact form .btn{
  width:100%;
  min-height:54px;
  margin-top:2px;
  border-radius:10px;
  font-size:13px;
  letter-spacing:.08em;
}
@media(max-width:1100px){
  .contact{
    grid-template-columns:1fr 1fr;
    gap:42px;
  }
  .contact form{
    padding:28px;
  }
}
@media(max-width:880px){
  .contact{
    grid-template-columns:1fr;
    gap:42px;
  }
  .contact > div:first-child{
    max-width:none;
    padding-top:0;
  }
  .contact form{
    max-width:none;
    margin:0;
  }
}
@media(max-width:620px){
  .contact{
    padding-top:68px;
    padding-bottom:68px;
  }
  .contact > div:first-child h2{
    font-size:42px;
  }
  .contact form{
    grid-template-columns:1fr;
    padding:22px;
    border-radius:16px;
  }
  .contact form label,
  .contact form input,
  .contact form textarea,
  .captcha-box,
  .form-status,
  .contact form .btn{
    grid-column:1;
  }
  .captcha-box{
    grid-template-columns:1fr 44px;
  }
  .captcha-box input{
    grid-column:1 / -1;
  }
}


/* V24 — contact icons, full address and embedded location map */
.contact-links-icons{
  gap:12px;
}
.contact-links-icons a{
  display:grid;
  grid-template-columns:38px 1fr;
  align-items:center;
  gap:12px;
  min-height:42px;
}
.contact-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 38px;
  border:1px solid #d7e0e5;
  border-radius:50%;
  background:#fff;
  color:#0b4a72;
  box-shadow:0 6px 16px rgba(7,27,41,.06);
}
.contact-icon svg{
  width:19px;
  height:19px;
  fill:currentColor;
}
.contact-links-icons a:hover .contact-icon{
  color:#fff;
  border-color:var(--gold);
  background:var(--gold);
}
.contact-map{
  margin-top:30px;
  overflow:hidden;
  border:1px solid #d6e0e5;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 42px rgba(8,28,42,.09);
}
.contact-map iframe{
  display:block;
  width:100%;
  height:300px;
  border:0;
}
@media(max-width:620px){
  .contact-links-icons a{
    grid-template-columns:34px 1fr;
    gap:10px;
    align-items:start;
  }
  .contact-icon{
    width:34px;
    height:34px;
  }
  .contact-map iframe{
    height:260px;
  }
}


/* V25 — perfectly centered contact icons */
.contact-icon{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
}
.contact-icon svg{
  display:block;
  width:18px;
  height:18px;
  margin:auto !important;
  flex:none;
}


/* V26 — optically balanced product brand logos */
.product-card-top{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:20px;
  margin-bottom:28px;
}
.product-card-top .product-index{
  padding-top:13px;
}
.product-brand-logo{
  position:relative;
  width:100%;
  height:108px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px 24px;
  overflow:hidden;
  background:linear-gradient(180deg,#ffffff 0%,#f7f9fa 100%);
  border:1px solid rgba(255,255,255,.9);
  border-radius:16px;
  box-shadow:0 16px 34px rgba(0,0,0,.20),inset 0 0 0 1px rgba(7,25,39,.035);
}
.product-brand-logo::after{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  bottom:0;
  height:3px;
  border-radius:3px 3px 0 0;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:.72;
}
.product-brand-logo img{
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:center;
  filter:none;
  transform:translateZ(0);
  transition:transform .3s ease;
}
.product-card:hover .product-brand-logo img{
  transform:scale(1.035);
}

/* Optical logo normalization: visual size, not identical pixel size */
.brand-balmer img{width:84%;max-height:62px}
.brand-flexco img{width:76%;max-height:58px}
.brand-sap img{width:79%;max-height:64px}
.brand-witt img{width:74%;max-height:66px}
.brand-wolfram img{width:84%;max-height:64px}
.brand-rocol img{width:69%;max-height:60px}

.product-card .product-type{
  margin-top:0;
}

@media(max-width:1000px){
  .product-brand-logo{height:104px}
}
@media(max-width:650px){
  .product-card-top{
    grid-template-columns:1fr;
    gap:12px;
    margin-bottom:22px;
  }
  .product-card-top .product-index{padding-top:0}
  .product-brand-logo{
    height:96px;
    padding:17px 20px;
    border-radius:14px;
  }
  .product-brand-logo::after{left:20px;right:20px}
}
