:root{
  /* --- exact Saarvam logo colours (sampled from the artwork) --- */
  --logo-bronze:#BD8849; --logo-bronze-dk:#B67932; --logo-bronze-lt:#D3B18B;
  --logo-grey:#656564;   --logo-grey-dk:#575756;   --logo-grey-lt:#878786;
  /* surfaces */
  --paper:#FFFFFF; --surface:#FFFFFF; --surface-2:#F7F5F1; --surface-3:#F1EEE8;
  /* text — one warm-neutral scale */
  --ink:#24272B; --ink-soft:#4F545A; --muted:#82868D;
  /* lines */
  --line:#E7E3DB; --line-2:#D8D3C9;
  /* BRAND GOLD — sampled from the Saarvam logo */
  --gold:#B07B2F; --gold-2:#D2A263; --gold-deep:#8C601F;
  --gold-tint:#F5EDDF; --gold-line:#E6D5B6;
  /* metal gradient (intro wordmark, tagline) */
  --metal-1:#E3B87C; --metal-2:#C7913F; --metal-3:#B07B2F; --metal-4:#8A5D22;
  /* dampers / secondary */
  --steel:#51606C; --steel-2:#7C8B98; --steel-tint:#EDF0F2; --steel-line:#D3D9DE;
  /* sustainability only */
  --green:#4C7A2E; --green-ink:#24331A; --green-tint:#EDF3E6; --green-line:#CFE0C1;
  /* dark surfaces */
  --dark:#1E2126; --dark-2:#282C32; --on-dark:#ECEAE5; --on-dark-soft:#A2A7AE;
  --maxw:1180px; --r:10px;
  --disp:"Archivo",system-ui,sans-serif; --body:"Inter",system-ui,sans-serif; --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:hidden;max-width:100%}
body{font-family:var(--body);color:var(--ink);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased;font-size:16px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
h1,h2,h3{font-family:var(--disp);font-weight:600;letter-spacing:-0.02em;line-height:1.14;color:var(--ink)}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);font-weight:500}
.eyebrow.steel{color:var(--steel)} .eyebrow.on{color:var(--gold)}
.mono{font-family:var(--mono)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-weight:500;font-size:14px;padding:12px 22px;border-radius:var(--r);border:1px solid transparent;cursor:pointer;transition:.18s}
.btn-gold{background:var(--gold);color:#fff}
.btn-gold:hover{background:var(--gold-deep)}
.btn-ghost,.btn-onchar{background:transparent;color:var(--ink);border-color:var(--line-2)}
.btn-ghost:hover,.btn-onchar:hover{border-color:var(--ink);background:var(--surface-2)}
.btn-onwhite{background:#fff;color:var(--gold);font-weight:600}
.btn-onwhite:hover{background:var(--gold-tint)}
.link-gold{font-family:var(--mono);font-size:13px;color:var(--gold);font-weight:500;display:inline-flex;align-items:center;gap:6px}
.link-gold:hover{gap:10px;transition:.18s}
.link-steel{color:var(--steel)}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:88px}
.logo{height:52px;width:auto;display:block}
.foot .logo{height:58px}
.nav-links{display:flex;align-items:center;gap:24px}
.nav-links a.top{font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;padding:6px 0}
.nav-links a.top:hover{color:var(--gold)}
.has-drop{position:relative}
.drop{position:absolute;top:calc(100% + 10px);left:-20px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px rgba(61,61,59,.10);padding:18px;width:460px;display:grid;grid-template-columns:1fr 1fr;gap:10px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s}
.has-drop:hover .drop{opacity:1;visibility:visible;transform:translateY(0)}
.drop-col h4{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.drop-col.bear h4{color:var(--gold)} .drop-col.damp h4{color:var(--steel)}
.drop-col a{display:block;font-size:13.5px;color:var(--ink-soft);padding:7px 9px;border-radius:8px}
.drop-col a:hover{background:var(--surface-2);color:var(--ink)}
.drop-col.bear{border-left:3px solid var(--gold);padding-left:14px}
.drop-col.damp{border-left:3px solid var(--steel);padding-left:14px}
.nav-cta{display:flex;align-items:center;gap:14px}
.burger{display:none;background:none;border:none;font-size:24px;cursor:pointer;color:var(--ink)}
.mobile{display:none}

/* hero (light) */
.hero{background:var(--surface-2);border-bottom:1px solid var(--line);padding:70px 0 0;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.hero h1{font-size:52px;line-height:1.03;letter-spacing:-0.03em;color:var(--ink)}
.hero .support{color:var(--ink-soft);font-size:16px;max-width:450px;margin-top:20px}
.paired{display:flex;margin-top:26px;border:1px solid var(--line-2);border-radius:12px;overflow:hidden;max-width:520px;background:var(--surface)}
.paired div{flex:1;padding:16px 18px}
.paired .b{border-right:1px solid var(--line-2)}
.paired .k{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:6px}
.paired .b .k{color:var(--gold)} .paired .d .k{color:var(--steel)}
.paired p{font-size:14.5px;color:var(--ink);line-height:1.4}
.hero-cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}

/* studio (stays dark — product visual) */
.studio{position:relative;height:360px;border-radius:16px;overflow:hidden;background:radial-gradient(120% 90% at 50% 40%,#33383f 0%,#202429 50%,#15181c 100%);border:1px solid #2a2e33}
.studio .glow{position:absolute;left:50%;top:38%;width:320px;height:280px;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgba(183,133,58,.32),rgba(183,133,58,.05) 60%,transparent 74%)}
.bearing{position:absolute;left:50%;top:50%;width:190px;transform:translate(-50%,-50%);animation:bob 4.6s ease-in-out infinite}
.cyl{position:relative;width:190px;height:180px}
.cyl-body{position:absolute;left:0;bottom:0;width:190px;height:142px;border-radius:0 0 24px 24px;overflow:hidden;background:linear-gradient(90deg,#141117 0%,#3a2f22 10%,#7c6647 24%,#d8bd8a 40%,#f4ead2 49%,#c8ad7c 58%,#6f5a3d 74%,#332a20 90%,#15120e 100%)}
.cyl-body .stripes{position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,0) 0 26px,rgba(255,255,255,.06) 26px 29px,rgba(0,0,0,.16) 36px 40px,rgba(255,255,255,0) 40px 62px);background-size:62px 100%;animation:stripes 2.5s linear infinite;mix-blend-mode:overlay}
.cyl-body .spec{position:absolute;left:44%;top:0;width:24px;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent)}
.cyl-top{position:absolute;left:0;top:16px;width:190px;height:46px;border-radius:50%;background:linear-gradient(180deg,#e6d3aa,#a9895a);overflow:hidden}
.cyl-top .ring{position:absolute;left:50%;top:50%;width:150px;height:34px;transform:translate(-50%,-50%);border-radius:50%;background:linear-gradient(180deg,#d98a5a,#a85e33)}
.cyl-top .bore{position:absolute;left:50%;top:50%;width:92px;height:21px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,#211d17,#0c0a07)}
.cyl-top .sheen{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(255,255,255,0),rgba(255,255,255,.4),rgba(255,255,255,0) 42%,rgba(255,255,255,.28) 60%,rgba(255,255,255,0));mix-blend-mode:screen;opacity:.5;animation:sheen 3s linear infinite}
.studio .cap{position:absolute;left:16px;bottom:14px;display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--gold-2)}
.studio .tag{position:absolute;right:16px;top:14px;font-family:var(--mono);font-size:11px;color:var(--gold-2);border:1px solid #4a4038;padding:4px 10px;border-radius:20px}
@keyframes bob{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,-56%)}}
@keyframes stripes{from{background-position-x:0}to{background-position-x:-62px}}
@keyframes sheen{from{transform:rotate(0)}to{transform:rotate(360deg)}}

/* proof bar (light) */
.proof{background:var(--surface);border-top:1px solid var(--line)}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.proof-grid div{padding:24px 18px;text-align:center;border-right:1px solid var(--line)}
.proof-grid div:last-child{border-right:none}
.proof .n{font-family:var(--disp);font-weight:600;font-size:27px;color:var(--ink)}
.proof .n span{font-size:14px;color:var(--gold)}
.proof .l{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:5px}

section{padding:80px 0}
.sec-head{max-width:660px;margin-bottom:40px}
.sec-head h2{font-size:34px;margin-top:12px}
.sec-head p{color:var(--ink-soft);margin-top:12px}
.center{text-align:center;margin-left:auto;margin-right:auto}

/* about split */
.about{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.about .imgs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.about .imgs .ph{height:200px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:34px}
.about .imgs .ph:first-child{margin-top:24px}
.about ul{list-style:none;margin:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.about ul li{font-family:var(--mono);font-size:12.5px;color:var(--ink-soft);display:flex;gap:8px;align-items:center}
.about ul li:before{content:"";width:6px;height:6px;background:var(--gold);border-radius:50%;flex:none}

/* families */
.families{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.fam{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px;border-top:4px solid var(--gold)}
.fam.damp{border-top-color:var(--steel)}
.fam .ic{width:46px;height:46px;border-radius:12px;background:var(--gold-tint);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}
.fam.damp .ic{background:var(--steel-tint);color:var(--steel)}
.fam h3{font-size:22px}
.fam .lead{font-family:var(--mono);font-size:13px;color:var(--gold);margin-top:10px;font-weight:500}
.fam.damp .lead{color:var(--steel)}
.fam p{color:var(--ink-soft);font-size:14.5px;margin-top:10px}
.fam .chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.chip{font-family:var(--mono);font-size:11px;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);padding:5px 10px;border-radius:20px}
.fam .go{margin-top:20px}

/* reveal */
.reveal{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.reveal .info .lead{font-family:var(--mono);font-size:14px;color:var(--gold);font-weight:500;margin-top:10px}
.reveal .info h3{font-size:26px}
.reveal .info p{color:var(--ink-soft);margin-top:10px}

/* tinted band (light) */
.band{background:var(--surface-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band .two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
.band .card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px}
.band .card .t{font-family:var(--mono);font-size:13px;font-weight:500}
.band .card.bear .t{color:var(--gold)} .band .card.damp .t{color:var(--steel)}
.band .card p{color:var(--ink-soft);font-size:13.5px;margin-top:7px}
.band .close{color:var(--ink-soft);max-width:560px;margin-top:22px}

/* tech feature */
.tech{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.tech .box{background:var(--dark);border-radius:16px;padding:30px;color:var(--on-dark)}
.tech .box h3{color:#fff}
.tech .box .k{font-family:var(--mono);font-size:12px;color:var(--gold-2);letter-spacing:.08em}
.tech .box p{color:var(--on-dark-soft);font-size:14px;margin-top:10px}

/* strip */
.strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.strip a{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 8px;text-align:center;transition:.16s}
.strip a:hover{border-color:var(--gold-line);transform:translateY(-2px)}
.strip .i{font-size:24px;color:var(--gold)}
.strip .nm{font-size:12px;margin-top:8px;color:var(--ink)}
.strip .bd{font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--muted);margin-top:3px}

/* teaser */
.teaser{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:30px 32px}
.teaser h3{font-size:24px} .teaser p{color:var(--ink-soft);margin-top:6px;max-width:520px}

/* sustainability */
.sustain{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.sustain .points{display:flex;flex-direction:column;gap:14px;margin-top:16px}
.sustain .points div{display:flex;gap:12px}
.sustain .points i{color:var(--green);font-size:20px;flex:none}
.sustain .points p{font-size:14px;color:var(--ink-soft)}
.sustain .ph{height:300px;border-radius:16px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--green);font-size:44px}

/* cta band (gold) */
.ctaband{background:var(--gold)}
.ctaband .in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:46px 0}
.ctaband h2{color:#fff;font-size:30px} .ctaband p{color:var(--gold-tint);margin-top:6px}

/* footer (light) */
.foot{background:var(--surface-2);border-top:1px solid var(--line);padding:56px 0 26px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:30px}
.foot h5{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:14px}
.foot a{display:block;font-size:13.5px;padding:5px 0;color:var(--ink-soft)}
.foot a:hover{color:var(--gold)}
.foot .addr{font-size:13px;color:var(--ink-soft);margin-top:16px;line-height:1.7;max-width:280px}
.foot .tagline{font-family:var(--disp);font-weight:600;color:var(--gold);font-size:16px;margin-top:14px}
.foot-bot{border-top:1px solid var(--line);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--muted);flex-wrap:wrap;gap:10px}

/* inner page hero (light) */
.phero{background:var(--surface-2);border-bottom:1px solid var(--line);padding:60px 0;position:relative}
.phero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold)}
.phero h1{font-size:40px;max-width:660px;margin-top:14px;color:var(--ink)}
.phero p{color:var(--ink-soft);max-width:580px;margin-top:14px}
.legend{display:flex;gap:18px;margin-top:20px}
.legend span{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:12px;color:var(--ink-soft)}
.legend i{width:11px;height:11px;border-radius:3px;display:inline-block}

/* products switcher */
.switch{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:34px 0}
.switch button{text-align:left;padding:18px 20px;border-radius:14px;border:1px solid var(--line);background:var(--surface);cursor:pointer;transition:.16s;font-family:var(--body)}
.switch button .row{display:flex;align-items:center;gap:10px}
.switch button .row i{font-size:22px}
.switch button .row b{font-family:var(--disp);font-size:18px;font-weight:600}
.switch button .sub{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--muted);margin-top:5px;text-transform:uppercase}
.switch button[data-on="1"].bear{background:var(--gold);border-color:var(--gold)}
.switch button[data-on="1"].bear .row i,.switch button[data-on="1"].bear .row b{color:#fff}
.switch button[data-on="1"].bear .sub{color:#f0e2c8}
.switch button[data-on="1"].damp{background:var(--steel);border-color:var(--steel)}
.switch button[data-on="1"].damp .row i,.switch button[data-on="1"].damp .row b{color:#fff}
.switch button[data-on="1"].damp .sub{color:#dce3e8}
.switch button.bear .row i,.switch button.bear .row b{color:var(--gold)}
.switch button.damp .row i,.switch button.damp .row b{color:var(--steel)}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pcard{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}
.pcard .ph{height:158px;background:var(--gold-tint);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:34px;position:relative}
.pcard.damp .ph{background:var(--steel-tint);color:var(--steel)}
.pcard .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.pcard .ph .typ{z-index:2;position:absolute;left:12px;top:12px;font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.75);color:var(--gold);padding:3px 8px;border-radius:20px}
.pcard.damp .ph .typ{color:var(--steel)}
.pcard .bd{padding:16px 18px}
.pcard .bd h3{font-size:17px}
.pcard .bd p{font-size:13px;color:var(--ink-soft);margin-top:5px}
.pcard .mini{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.pcard .mini .r{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:11px;color:var(--muted);padding:3px 0}
.pcard .mini .r b{color:var(--ink);font-weight:500;text-align:right}
.pcard .tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}
.pcard .tags span{font-family:var(--mono);font-size:10px;color:var(--ink-soft);background:var(--surface-2);border:1px solid var(--line);padding:3px 8px;border-radius:20px}
.pcard .ds{margin-top:13px;display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11.5px;color:var(--gold);cursor:pointer}
.pcard.damp .ds{color:var(--steel)}
.pcard .ds:hover{gap:9px;transition:.16s}
.note{font-family:var(--mono);font-size:12px;color:var(--gold);display:flex;gap:8px;align-items:center;background:var(--gold-tint);border-radius:12px;padding:12px 16px;margin-bottom:20px}
.note.damp{color:var(--steel);background:var(--steel-tint)}

/* products OEM */
.prodhead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:6px 0 20px}
.prodhead h2{font-size:26px}
.featured{display:grid;grid-template-columns:.92fr 1.08fr;gap:32px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:30px;margin-bottom:20px}
.xwrap{background:var(--dark);border-radius:14px;padding:24px 22px}
.xtoggle{display:inline-flex;background:#2f333a;border:1px solid #3b4048;border-radius:22px;padding:3px;margin-bottom:20px}
.xtoggle button{font-family:var(--mono);font-size:12px;padding:7px 16px;border:none;background:none;border-radius:18px;cursor:pointer;color:var(--on-dark-soft)}
.xtoggle button[data-on="1"]{background:var(--gold);color:#fff}
.featured.damp .xtoggle button[data-on="1"]{background:var(--steel)}
.stack{display:flex;flex-direction:column;gap:4px}
.layer{border-radius:5px;display:flex;align-items:center;justify-content:space-between;padding:0 13px}
.layer .ln{font-family:var(--mono);font-size:11px;font-weight:500}
.layer .lt{font-family:var(--mono);font-size:10px;opacity:.8}
.layer.overlay{height:24px;background:linear-gradient(180deg,#cfd2d8,#a9adb4);color:#26292e}
.layer.flash{height:11px;background:#7f858d;color:#eef}
.layer.bronze{height:44px;background:linear-gradient(180deg,#c88f52,#9c6f38);color:#fff}
.layer.steel{height:72px;background:linear-gradient(180deg,#5c636d,#3a3f47);color:#fff}
.xcap{font-family:var(--mono);font-size:10px;color:var(--on-dark-soft);margin-top:14px;text-align:center;letter-spacing:.1em;text-transform:uppercase}
.specpanel h3{font-size:25px}
.specpanel .lead{font-family:var(--mono);font-size:13px;color:var(--gold);margin-top:8px;font-weight:500}
.featured.damp .specpanel .lead{color:var(--steel)}
.specpanel .desc{color:var(--ink-soft);font-size:14px;margin-top:10px}
.spectable{margin-top:18px;border-top:1px solid var(--line)}
.specrow{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}
.specrow .k{font-family:var(--mono);font-size:11.5px;color:var(--muted);letter-spacing:.03em;text-transform:uppercase;flex:none}
.specrow .v{font-size:13.5px;color:var(--ink);text-align:right}
.specrow .v a{color:var(--gold)}
.stdrow{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}
.std{font-family:var(--mono);font-size:11px;padding:5px 12px;border-radius:20px;background:var(--dark);color:#fff;letter-spacing:.04em}
.fcta{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.dsvg{width:100%;height:auto;display:block}
.stdstrip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--surface-2);border:1px dashed var(--line-2);border-radius:12px;padding:16px 20px;margin-bottom:22px}
.stdstrip .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}

/* industries rows */
.irow{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}
.irow .img{height:180px;border-radius:14px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:44px}
.irow .meta{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.irow .num{font-family:var(--mono);font-size:12px;letter-spacing:.12em;color:var(--muted)}
.badge{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.06em;padding:3px 9px;border-radius:20px;text-transform:uppercase}
.badge.bear{background:var(--gold-tint);color:var(--gold)}
.badge.damp{background:var(--steel-tint);color:var(--steel)}
.irow h3{font-size:21px}
.irow p{color:var(--ink-soft);font-size:14.5px;margin-top:8px;max-width:620px}
.irow .chips{margin-top:12px}

/* material page */
.mfam{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:14px}
.mfam .c{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;border-top:3px solid var(--gold)}
.mfam .c h4{font-family:var(--disp);font-size:15px;font-weight:600}
.mfam .c p{font-size:12.5px;color:var(--ink-soft);margin-top:6px}
.mfam .c .g{font-family:var(--mono);font-size:11px;color:var(--gold);margin-top:8px;display:block}
.why{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:8px}
.why .w{display:flex;gap:12px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.why .w i{font-size:22px;color:var(--gold);flex:none}
.why .w b{font-family:var(--disp);font-weight:600;font-size:15px}
.why .w p{font-size:13px;color:var(--ink-soft);margin-top:4px}
.mtools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:26px 0 14px}
.mtools .filters{display:flex;gap:6px;flex-wrap:wrap}
.mtools .filters button{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;padding:7px 13px;border-radius:20px;border:1px solid var(--line-2);background:var(--surface);cursor:pointer;color:var(--ink-soft)}
.mtools .filters button[data-on="1"]{background:var(--gold);color:#fff;border-color:var(--gold)}
.mtools input{flex:1;min-width:180px;font-family:var(--mono);font-size:13px;padding:9px 13px;border:1px solid var(--line-2);border-radius:20px;background:var(--surface);color:var(--ink)}
.mtools input:focus{outline:none;border-color:var(--gold)}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
table.mat{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:12px;min-width:900px}
table.mat thead th{position:sticky;top:0;background:var(--dark);color:#fff;font-weight:500;font-size:11px;letter-spacing:.04em;padding:11px 10px;text-align:left;white-space:nowrap}
table.mat .grp td{background:var(--surface-2);font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);padding:10px 12px;border-top:2px solid var(--line-2)}
table.mat tbody td{padding:9px 10px;border-top:1px solid var(--line);white-space:nowrap;color:var(--ink-soft)}
table.mat tbody td.ref{color:var(--ink);font-weight:500}
table.mat tbody td.cmp{color:var(--gold)}
table.mat tr[data-fam] td:first-child{border-left:3px solid transparent}
table.mat tr.f-cast td:first-child{border-left-color:#8FB569}
table.mat tr.f-sinter td:first-child{border-left-color:#E3C13F}
table.mat tr.f-free td:first-child{border-left-color:#E7C58A}
table.mat tr.f-babbitt td:first-child{border-left-color:#E39A6B}
table.mat tr.f-overlay td:first-child{border-left-color:#B9B4A8}
table.mat tr.f-steel td:first-child{border-left-color:#B8B85E}
.mcloser{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--gold);border-radius:16px;padding:30px 34px;margin-top:32px}
.mcloser h3{color:#fff;font-size:22px} .mcloser p{color:var(--gold-tint);margin-top:6px}

@media(max-width:980px){
  .hero-grid,.reveal,.about,.tech,.sustain{grid-template-columns:1fr}
  .teaser,.ctaband .in,.mcloser{flex-direction:column;align-items:flex-start}
  .hero h1{font-size:40px}
  .families,.band .two,.why{grid-template-columns:1fr}
  .strip{grid-template-columns:repeat(3,1fr)}
  .mfam{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
  .irow,.featured{grid-template-columns:1fr}
  .irow .img{height:150px}
  .about ul{grid-template-columns:1fr}
}
@media(max-width:640px){
  .nav-links{display:none}.burger{display:block}
  .mobile.open{display:block;border-top:1px solid var(--line);background:var(--paper)}
  .mobile a{display:block;padding:14px 28px;border-bottom:1px solid var(--line);font-size:14px;letter-spacing:.06em;text-transform:uppercase}
  .proof-grid{grid-template-columns:1fr 1fr}.proof-grid div:nth-child(2){border-right:none}
  .switch,.pgrid{grid-template-columns:1fr}
  .strip{grid-template-columns:1fr 1fr}.mfam{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .hero h1{font-size:32px}.paired{flex-direction:column}.paired .b{border-right:none;border-bottom:1px solid var(--line-2)}
  .wrap{padding:0 20px}.logo{height:46px}.nav-in{height:72px}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

/* product carousels */
.pcar{position:relative;margin-top:6px;padding:0 6px}
.pcar-view{overflow:hidden;padding:8px 4px 14px}
.pcar-track{display:flex;gap:16px;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}
.pcar-track .pcard{flex:0 0 300px;transition:transform .22s,box-shadow .22s}
.pcar-track .pcard:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(40,40,38,.12)}
.pcar-track .pcard .ph img{transition:transform .5s}
.pcar-track .pcard:hover .ph img{transform:scale(1.06)}
.pcar-btn{position:absolute;top:70px;width:44px;height:44px;border-radius:50%;border:none;background:#fff;box-shadow:0 6px 18px rgba(20,20,20,.18);color:var(--gold);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:8;transition:.16s}
.pcar-btn:hover{background:var(--gold);color:#fff}
.pcar-btn[disabled]{opacity:.3;cursor:default}
.pcar-btn[disabled]:hover{background:#fff;color:var(--gold)}
.pcar-prev{left:-12px}.pcar-next{right:-12px}
#grid-damp .pcar-btn{color:var(--steel)}
#grid-damp .pcar-btn:hover{background:var(--steel);color:#fff}
.pcar-track .pcard.damp .ph{background:linear-gradient(135deg,#41637c,#22384a);color:#fff;font-size:42px}
.pcar-track .pcard.damp .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72%;background:no-repeat center/contain;background-image:url("assets/images/redesign/index-01.svg'http://www.w3.org/2000/svg' viewBox='0 0 240 70'%3E%3Cpath d='M0 35 Q20 8 40 35 T80 35 T120 35 T160 35 T200 35 T240 35' fill='none' stroke='white' stroke-width='2.4' stroke-opacity='0.4'/%3E%3C/svg%3E");opacity:.75;pointer-events:none}
.pcar-track .pcard.damp .ph .typ{z-index:3}
.pcar-track .pcard.damp .ph i{position:relative;z-index:2}
@media(max-width:600px){.pcar-track .pcard{flex:0 0 262px}.pcar-btn{top:60px}}

/* ===== premium carousel upgrades ===== */
.pcar{padding:0 10px}
.pcar-view{padding:12px 6px 16px;position:relative}
.pcar:before,.pcar:after{content:"";position:absolute;top:12px;bottom:16px;width:54px;z-index:6;pointer-events:none}
.pcar:before{left:8px;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}
.pcar:after{right:8px;background:linear-gradient(270deg,#fff,rgba(255,255,255,0))}
.pcar-track{gap:18px;counter-reset:pc;touch-action:pan-y}
.pcar-track .pcard{flex:0 0 306px;counter-increment:pc;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:14px;box-shadow:0 4px 14px rgba(40,40,38,.05)}
.pcar-track .pcard.damp{border-top-color:var(--steel)}
.pcar-track .pcard:hover{transform:translateY(-6px);box-shadow:0 20px 42px rgba(40,40,38,.15)}
.pcar-track .pcard .ph{height:186px}
.pcar-track .pcard .ph:before{content:counter(pc,decimal-leading-zero);position:absolute;right:12px;bottom:9px;z-index:4;font-family:var(--mono);font-size:12px;font-weight:600;color:rgba(255,255,255,.92);letter-spacing:.06em;text-shadow:0 1px 4px rgba(0,0,0,.55)}
.pcar-track .pcard:not(.damp) .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:55%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.30));z-index:1;pointer-events:none}
.pcar-track .pcard .ph .typ{background:rgba(18,20,24,.55);color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-weight:600;padding:4px 11px}
.pcar-track img{-webkit-user-drag:none;user-select:none}
.pcar-btn{top:84px;width:48px;height:48px;border:1px solid var(--line);box-shadow:0 8px 22px rgba(20,20,20,.16)}
.pcar-btn:hover{transform:scale(1.06)}
.pcar-prog{height:3px;background:var(--line);border-radius:3px;margin:8px 12px 0;overflow:hidden}
.pcar-prog span{display:block;height:100%;width:20%;background:var(--gold);border-radius:3px;transition:width .35s ease}
#grid-damp .pcar-prog span{background:var(--steel)}
@media(max-width:600px){.pcar:before,.pcar:after{display:none}.pcar-track .pcard{flex:0 0 264px}.pcar-track .pcard .ph{height:162px}.pcar-btn{top:66px}}




/* ===== products page: precision grid + cursor spotlight ===== */
.fx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;
  --mx:60%; --my:35%;
  background:
    radial-gradient(1200px 800px at 76% -8%, rgba(169,119,44,.085), transparent 60%),
    radial-gradient(1000px 700px at 6% 100%, rgba(81,96,108,.075), transparent 62%),
    linear-gradient(180deg,#FBFAF7 0%,#F5F3EE 55%,#F1EEE8 100%);}

/* fine engineering grid — dim by default */
.fx-grid{position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(60,58,54,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(60,58,54,.055) 1px,transparent 1px);
  background-size:56px 56px;}

/* the same grid, brighter — revealed only under the cursor spotlight */
.fx-lines{position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(169,119,44,.55) 1px,transparent 1px),
    linear-gradient(90deg,rgba(169,119,44,.55) 1px,transparent 1px);
  background-size:56px 56px;
  -webkit-mask-image:radial-gradient(340px 340px at var(--mx) var(--my),#000 0%,rgba(0,0,0,.55) 38%,transparent 72%);
  mask-image:radial-gradient(340px 340px at var(--mx) var(--my),#000 0%,rgba(0,0,0,.55) 38%,transparent 72%);}

/* soft warm spotlight that follows the cursor */
.fx-spot{position:absolute;inset:0;
  background:radial-gradient(460px 460px at var(--mx) var(--my),rgba(169,119,44,.14),rgba(169,119,44,.05) 42%,transparent 70%);}

/* slow drifting depth blobs */
.fx-blob{position:absolute;border-radius:50%;filter:blur(120px);opacity:.55;will-change:transform}
.fx-b1{width:720px;height:720px;top:-18%;right:-12%;background:radial-gradient(circle,rgba(169,119,44,.20),transparent 65%);animation:fxd1 46s ease-in-out infinite}
.fx-b2{width:640px;height:640px;bottom:-20%;left:-10%;background:radial-gradient(circle,rgba(81,96,108,.18),transparent 65%);animation:fxd2 58s ease-in-out infinite}
@keyframes fxd1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-70px,60px) scale(1.12)}}
@keyframes fxd2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(80px,-50px) scale(1.1)}}

/* fine grain for texture */
.fx-grain{position:absolute;inset:0;opacity:.055;
  background-image:url("assets/images/redesign/index-02.svg'http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");}

main,main > section{position:relative;z-index:1}
@media(prefers-reduced-motion:reduce){.fx-blob{animation:none}}
@media(max-width:640px){.fx-lines,.fx-spot{display:none}}





/* heavier scrim on the left, where the copy sits; video breathes on the right */
.phero-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(8,10,14,.93) 0%,rgba(8,10,14,.78) 34%,rgba(8,10,14,.34) 66%,rgba(8,10,14,.10) 100%),
  linear-gradient(180deg,rgba(8,10,14,.55) 0%,transparent 26%,transparent 60%,rgba(8,10,14,.80) 100%)}
.phero-in{position:relative;z-index:2;width:100%;animation:pUp 1s cubic-bezier(.2,.7,.2,1) both}
@keyframes pUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.phero .eyebrow{color:var(--gold-2)}
.phero h1{color:#fff;font-size:56px;line-height:1.04;letter-spacing:-.03em;max-width:640px;
  text-shadow:0 4px 34px rgba(0,0,0,.6)}
.phero p{color:var(--on-dark);max-width:560px;font-size:16px;text-shadow:0 2px 14px rgba(0,0,0,.65)}
@media(max-width:900px){.phero{height:66vh;min-height:460px}.phero h1{font-size:38px}
  .phero-scrim{background:linear-gradient(180deg,rgba(8,10,14,.62),rgba(8,10,14,.90))}}
@media(max-width:560px){.phero h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.phero-vid{animation:none;transform:none}.phero-in{animation:none}}

/* ===== product hero: full-bleed background video ===== */
.phero{position:relative;overflow:hidden;background:#12161c;
  height:84vh;min-height:580px;max-height:840px;
  display:flex;align-items:center;padding:0;border-bottom:none}
.phero:before{display:none}

/* lift the footage: brighter, richer, warmer */
.phero-media{position:absolute;inset:0;z-index:0;overflow:hidden;
  transform:scale(1.04);animation:heroPush 24s ease-in-out infinite alternate;will-change:transform}
.phero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;
  filter:brightness(1.24) contrast(1.10) saturate(1.16)}
@keyframes heroPush{from{transform:scale(1.04)}to{transform:scale(1.12)}}

/* much lighter scrim — video stays visible, text still reads 7.6:1 */
.phero-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(10,13,18,.58) 0%,rgba(10,13,18,.40) 38%,rgba(10,13,18,.14) 70%,rgba(10,13,18,.02) 100%),
  linear-gradient(180deg,rgba(10,13,18,.30) 0%,transparent 24%,transparent 66%,rgba(10,13,18,.55) 100%)}

/* warm copper wash — premium tint tying it to the brand */
.phero-tint{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(1000px 640px at 78% 42%,rgba(240,168,104,.16),transparent 62%);
  mix-blend-mode:screen}

.phero-in{position:relative;z-index:2;width:100%;animation:pUp 1s cubic-bezier(.2,.7,.2,1) both}
@keyframes pUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.phero .eyebrow{color:var(--gold-2);letter-spacing:.26em;text-shadow:0 2px 12px rgba(0,0,0,.7)}
.phero h1{color:#fff;font-size:58px;line-height:1.03;letter-spacing:-.03em;max-width:660px;
  text-shadow:0 3px 24px rgba(0,0,0,.75), 0 1px 3px rgba(0,0,0,.9)}
.phero p{color:#e6e9ed;max-width:560px;font-size:16.5px;line-height:1.7;
  text-shadow:0 2px 12px rgba(0,0,0,.85)}
@media(max-width:900px){.phero{height:66vh;min-height:460px}.phero h1{font-size:38px}
  .phero-scrim{background:linear-gradient(180deg,rgba(10,13,18,.42),rgba(10,13,18,.78))}}
@media(max-width:560px){.phero h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.phero-vid{animation:none;transform:none}.phero-in{animation:none}}


/* dark only where the words are — products stay clean and bright */
.mhero-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(105deg,rgba(9,12,17,.90) 0%,rgba(9,12,17,.72) 30%,rgba(9,12,17,.34) 52%,rgba(9,12,17,.04) 72%,transparent 100%),
  linear-gradient(180deg,rgba(9,12,17,.60) 0%,rgba(9,12,17,.18) 34%,transparent 58%)}
.mhero-in{position:relative;z-index:2;width:100%;padding-bottom:90px;
  animation:mUp 1s cubic-bezier(.2,.7,.2,1) both}
@keyframes mUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.mhero-ey{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;
  letter-spacing:.24em;text-transform:uppercase;color:var(--gold-2);font-weight:600}
.mhero-ey:before{content:"";width:44px;height:2px;background:var(--gold)}
.mhero-h{font-family:var(--disp);font-weight:800;font-size:64px;line-height:1.02;letter-spacing:-.035em;
  color:#fff;margin-top:20px;text-shadow:0 4px 40px rgba(0,0,0,.6)}
.mhero-pair{display:flex;gap:0;margin-top:26px;max-width:560px;
  border:1px solid rgba(255,255,255,.20);border-radius:12px;overflow:hidden;
  background:rgba(12,16,22,.42);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.mhero-pair div{flex:1;padding:15px 18px}
.mhero-pair div:first-child{border-right:1px solid rgba(255,255,255,.18)}
.mhero-pair span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:6px}
.mhero-pair div:first-child span{color:var(--gold-2)}
.mhero-pair div:last-child span{color:var(--steel-2)}
.mhero-pair p{font-size:14px;color:#eef1f4;line-height:1.4}
.mhero-p{color:var(--on-dark);font-size:16px;line-height:1.7;max-width:560px;margin-top:22px;
  text-shadow:0 2px 14px rgba(0,0,0,.7)}
/* glass stats rail across the foot of the hero */
.mhero-stats{position:absolute;left:0;right:0;bottom:0;z-index:3;
  background:rgba(10,13,18,.62);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-top:1px solid rgba(255,255,255,.14)}
.mhero-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.mhero-grid div{padding:20px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}
.mhero-grid div:last-child{border-right:none}
.mhero-grid b{display:block;font-family:var(--disp);font-weight:700;font-size:26px;color:#fff;line-height:1}
.mhero-grid b span{font-size:14px;color:var(--gold-2)}
.mhero-grid em{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--on-dark-soft);margin-top:8px;font-style:normal}
@media(max-width:900px){.mhero{height:auto;min-height:0;padding-top:0;display:block}
  .mhero-media{position:relative;height:46vh}
  .mhero-media img{object-position:50% 70%}
  .mhero-scrim{background:linear-gradient(180deg,rgba(9,12,17,.35),rgba(9,12,17,.75))}
  .mhero-in{padding:34px 0 26px;background:var(--dark)}
  .mhero-h{font-size:36px}.mhero-pair{max-width:none;flex-direction:column}
  .mhero-pair div:first-child{border-right:none;border-bottom:1px solid rgba(255,255,255,.18)}
  .mhero-stats{position:relative}.mhero-grid{grid-template-columns:1fr 1fr}
  .mhero-grid div:nth-child(2){border-right:none}}
@media(max-width:560px){.mhero-h{font-size:30px}}
@media(prefers-reduced-motion:reduce){.mhero-media img{animation:none;transform:none}.mhero-in{animation:none}}

/* ===== homepage hero: image shown in FULL, nothing over it ===== */
.mhero{width:100%;background:var(--dark);padding:0;margin:0}
.mhero-frame{margin:0;width:100%;line-height:0;background:var(--dark)}
.mhero-frame img{width:100%;height:auto;display:block}   /* whole composition, no crop */

/* content sits BELOW the image */
.mlead{background:var(--surface-2);border-bottom:1px solid var(--line);padding:0}
.mlead .wrap{padding-top:46px;padding-bottom:40px}
.mlead-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}
.mhero-ey{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;
  letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600}
.mhero-ey:before{content:"";width:44px;height:2px;background:var(--gold)}
.mlead-h{font-family:var(--disp);font-weight:800;font-size:52px;line-height:1.04;letter-spacing:-.035em;
  color:var(--ink);margin-top:18px}
.mlead-pair{display:flex;border:1px solid var(--line-2);border-radius:12px;overflow:hidden;background:#fff}
.mlead-pair div{flex:1;padding:16px 18px}
.mlead-pair div:first-child{border-right:1px solid var(--line-2)}
.mlead-pair span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:6px}
.mlead-pair div:first-child span{color:var(--gold)}
.mlead-pair div:last-child span{color:var(--steel)}
.mlead-pair p{font-size:14.5px;color:var(--ink);line-height:1.42}
.mlead-p{color:var(--ink-soft);font-size:15.5px;line-height:1.7;margin-top:18px}

/* stats rail */
.mstats{background:var(--dark)}
.mstats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.mstats-grid div{padding:22px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}
.mstats-grid div:last-child{border-right:none}
.mstats-grid b{display:block;font-family:var(--disp);font-weight:700;font-size:26px;color:#fff;line-height:1}
.mstats-grid b span{font-size:14px;color:var(--gold-2)}
.mstats-grid em{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--on-dark-soft);margin-top:8px;font-style:normal}
@media(max-width:900px){.mlead-grid{grid-template-columns:1fr;gap:26px}.mlead-h{font-size:36px}
  .mlead-pair{flex-direction:column}
  .mlead-pair div:first-child{border-right:none;border-bottom:1px solid var(--line-2)}
  .mstats-grid{grid-template-columns:1fr 1fr}.mstats-grid div:nth-child(2){border-right:none}}
@media(max-width:560px){.mlead-h{font-size:29px}}

/* ================= VARIANT A: split hero + process ================= */
.va-hero{display:grid;grid-template-columns:1fr 1.15fr;min-height:88vh;background:var(--dark)}
.va-left{padding:70px 56px;display:flex;flex-direction:column;justify-content:center;color:var(--on-dark)}
.va-ey{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-2);font-weight:600}
.va-ey:before{content:"";width:40px;height:2px;background:var(--gold)}
.va-h{font-family:var(--disp);font-weight:800;font-size:50px;line-height:1.05;letter-spacing:-.035em;color:#fff;margin-top:20px}
.va-h span{color:var(--gold-2)}
.va-p{color:var(--on-dark-soft);font-size:16px;line-height:1.72;margin-top:20px;max-width:480px}
.va-cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.va-left .btn-ghost{color:#e6e9ec;border-color:#3d444c}
.va-left .btn-ghost:hover{background:var(--dark-2);border-color:#6c757e}
.va-mini{display:flex;gap:34px;margin-top:38px;border-top:1px solid rgba(255,255,255,.14);padding-top:20px}
.va-mini b{display:block;font-family:var(--disp);font-weight:700;font-size:21px;color:#fff}
.va-mini span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--on-dark-soft);margin-top:5px}
.va-right{position:relative;overflow:hidden}
.va-right img{width:100%;height:100%;object-fit:cover;object-position:60% 68%;display:block}
.va-proc{background:var(--surface-2);border-bottom:1px solid var(--line)}
.va-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.va-step{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:14px;padding:24px 22px}
.va-step .n{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--gold)}
.va-step h3{font-size:19px;margin-top:10px}
.va-step p{font-size:13.5px;color:var(--ink-soft);line-height:1.62;margin-top:9px}
@media(max-width:1000px){.va-hero{grid-template-columns:1fr}.va-right{height:46vh;order:-1}
  .va-left{padding:44px 26px}.va-h{font-size:34px}.va-steps{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.va-steps{grid-template-columns:1fr}.va-h{font-size:29px}}

/* ================= VARIANT B: editorial, application-led ================= */
.vb-hero{background:var(--dark)}
.vb-frame{margin:0;line-height:0}
.vb-frame img{width:100%;height:auto;display:block}
.vb-cap{background:var(--dark);padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.vb-cap span{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-dark-soft)}
.vb-lead{padding:66px 0 56px;border-bottom:1px solid var(--line)}
.vb-ey{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600}
.vb-h{font-family:var(--disp);font-weight:800;font-size:52px;line-height:1.06;letter-spacing:-.035em;color:var(--ink);margin-top:16px;max-width:900px}
.vb-p{color:var(--ink-soft);font-size:17px;line-height:1.75;margin-top:22px;max-width:760px}
.vb-p strong{color:var(--gold);font-weight:600}
.vb-pair{display:flex;margin-top:30px;max-width:620px;border:1px solid var(--line-2);border-radius:12px;overflow:hidden;background:#fff}
.vb-pair div{flex:1;padding:16px 20px}
.vb-pair div:first-child{border-right:1px solid var(--line-2)}
.vb-pair span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.vb-pair div:first-child span{color:var(--gold)} .vb-pair div:last-child span{color:var(--steel)}
.vb-pair p{font-size:14.5px;color:var(--ink)}
.vb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.vb-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 22px;transition:.18s;display:block}
.vb-card:hover{border-color:var(--gold-line);transform:translateY(-3px);box-shadow:0 14px 30px rgba(40,40,38,.09)}
.vb-card.big{grid-column:span 3;border-left:4px solid var(--gold);background:linear-gradient(100deg,var(--gold-tint),#fff 55%)}
.vb-num{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--gold)}
.vb-card h3{font-size:19px;margin-top:8px}
.vb-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.6;margin-top:8px}
.vb-card.big p{max-width:640px;font-size:15px}
.vb-tags{display:inline-block;margin-top:12px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);background:#fff;border:1px solid var(--gold-line);padding:5px 11px;border-radius:20px}
.vb-split{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}
.vb-list div{padding:16px 0;border-bottom:1px solid var(--line)}
.vb-list b{display:block;font-family:var(--disp);font-weight:600;font-size:15.5px;color:var(--ink)}
.vb-list span{display:block;font-size:13.5px;color:var(--ink-soft);margin-top:5px;line-height:1.6}
.vb-numbers{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.vb-numbers div{padding:30px 18px;text-align:center;border-right:1px solid var(--line)}
.vb-numbers div:last-child{border-right:none}
.vb-numbers b{display:block;font-family:var(--disp);font-weight:800;font-size:34px;color:var(--ink);line-height:1}
.vb-numbers b em{font-style:normal;font-size:16px;color:var(--gold)}
.vb-numbers span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:9px}
@media(max-width:1000px){.vb-grid{grid-template-columns:1fr 1fr}.vb-card.big{grid-column:span 2}
  .vb-split{grid-template-columns:1fr;gap:26px}.vb-h{font-size:34px}.vb-numbers{grid-template-columns:1fr 1fr}
  .vb-numbers div:nth-child(2){border-right:none}}
@media(max-width:600px){.vb-grid{grid-template-columns:1fr}.vb-card.big{grid-column:span 1}
  .vb-h{font-size:28px}.vb-pair{flex-direction:column}
  .vb-pair div:first-child{border-right:none;border-bottom:1px solid var(--line-2)}
  .vb-numbers{grid-template-columns:1fr}}

/* ===== material capability: technical backgrounds ===== */
.mat-hero{position:relative;overflow:hidden;background:#171b21;border-bottom:none;padding:70px 0 62px}
.mat-hero:before{display:none}
.mat-hero-bg{position:absolute;inset:0;z-index:0}
.mat-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:60% 45%;display:block;
  transform:scale(1.05);animation:matPush 30s ease-in-out infinite alternate}
@keyframes matPush{from{transform:scale(1.05)}to{transform:scale(1.13)}}
.mat-hero-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(100deg,rgba(15,18,23,.95) 0%,rgba(15,18,23,.86) 40%,rgba(15,18,23,.55) 72%,rgba(15,18,23,.30) 100%),
  radial-gradient(900px 500px at 82% 40%,rgba(169,119,44,.20),transparent 66%);
  }
.mat-hero-in{position:relative;z-index:2}
.mat-hero h1{color:#fff;max-width:760px}
.mat-hero p{color:#b9c0c8;max-width:720px}
.mat-hero p + p{margin-top:14px}
.mat-hero .eyebrow{color:var(--gold-2)}

/* blueprint field behind the light sections */
.mat-table-sec{position:relative}
.mat-table-sec:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(rgba(60,58,54,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(60,58,54,.045) 1px,transparent 1px);
  background-size:52px 52px;
  -webkit-mask-image:radial-gradient(ellipse 80% 65% at 50% 40%,#000,transparent 80%);
  mask-image:radial-gradient(ellipse 80% 65% at 50% 40%,#000,transparent 80%)}
.mat-table-sec > .wrap{position:relative;z-index:1}

/* process band over a metal photograph */
.mat-proc{position:relative;overflow:hidden;background:var(--dark);padding:78px 0}
.mat-proc-bg{position:absolute;inset:0;z-index:0}
.mat-proc-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 55%;display:block;opacity:.42}
.mat-proc-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(180deg,rgba(14,17,22,.92) 0%,rgba(14,17,22,.80) 42%,rgba(14,17,22,.94) 100%),
  radial-gradient(800px 420px at 20% 30%,rgba(169,119,44,.16),transparent 70%)}
.mat-proc-in{position:relative;z-index:2}
.mat-proc h2{color:#fff}
.mat-proc .sec-head p{color:#a7aeb6}
.mat-proc .eyebrow{color:var(--gold-2)}
.mfam .c.dark{background:rgba(30,35,42,.78);border:1px solid rgba(255,255,255,.12);
  border-top:3px solid var(--gold-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.mfam .c.dark h4{color:#fff}
.mfam .c.dark p{color:var(--on-dark-soft)}
.mfam .c.dark .g{color:var(--gold-2)}
.mfam .c.dark.accent{border-top-color:var(--gold)}
@media(prefers-reduced-motion:reduce){.mat-hero-bg img{animation:none;transform:none}}
@media(max-width:900px){.mat-hero-scrim{background:linear-gradient(180deg,rgba(15,18,23,.86),rgba(15,18,23,.95))}}

/* mobile safety */
img,video,svg,table{max-width:100%}

/* ===== industries: sector detail ===== */
.idet{max-width:1240px;margin:78px auto 0;padding:0 20px;position:relative;z-index:1}
.idet-head{text-align:center;max-width:820px;margin:0 auto 40px}
.idet-head .iw-ey{justify-content:center}
.idet-list{display:flex;flex-direction:column;gap:0}
.idet-row{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}
.idet-row:last-child{border-bottom:none}
.idet-n{font-family:var(--mono);font-size:13px;font-weight:600;letter-spacing:.12em;color:var(--gold);padding-top:6px}
.idet-row h2{font-family:var(--disp);font-weight:700;font-size:22px;color:var(--ink);letter-spacing:-.01em}
.idet-row p{color:var(--ink-soft);font-size:14.5px;line-height:1.72;margin-top:10px;max-width:820px}
.idet-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.idet-tags span{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--ink-soft);
  background:var(--surface-2);border:1px solid var(--line);padding:5px 10px;border-radius:20px}
@media(max-width:700px){.idet-row{grid-template-columns:1fr;gap:6px}.idet-n{padding-top:0}
  .idet-row h2{font-size:19px}}

/* ===== industries explorer: click to open ===== */
.iex{max-width:1240px;margin:78px auto 0;padding:0 20px;position:relative;z-index:1}
.iex-head{text-align:center;max-width:820px;margin:0 auto 36px}
.iex-head .iw-ey{justify-content:center}
.iex-box{display:grid;grid-template-columns:.34fr .66fr;gap:0;background:#fff;border:1px solid var(--line);
  border-radius:18px;overflow:hidden;box-shadow:0 16px 42px rgba(40,40,38,.09)}

/* left: the sector list */
.iex-list{display:flex;flex-direction:column;background:var(--surface-2);border-right:1px solid var(--line);padding:10px 0}
.iex-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;cursor:pointer;
  background:none;border:none;padding:15px 22px;font-family:var(--body);position:relative;transition:.18s}
.iex-item .n{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--muted);transition:.18s}
.iex-item .t{font-family:var(--disp);font-weight:600;font-size:15.5px;color:var(--ink-soft);flex:1;transition:.18s}
.iex-item .ar{width:7px;height:7px;border-right:2px solid var(--line-2);border-bottom:2px solid var(--line-2);
  transform:rotate(-45deg);opacity:0;transition:.18s}
.iex-item:hover{background:var(--surface-3)}
.iex-item:hover .t{color:var(--gold)}
.iex-item.on{background:#fff}
.iex-item.on:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.iex-item.on .n{color:var(--gold)}
.iex-item.on .t{color:var(--gold)}
.iex-item.on .ar{opacity:1;border-color:var(--gold)}

/* right: the detail panel */
.iex-panel{display:grid;grid-template-columns:.46fr .54fr;min-height:400px}
.iex-panel.in .iex-body > *{animation:iexUp .5s cubic-bezier(.2,.7,.2,1) both}
.iex-panel.in .iex-body > *:nth-child(2){animation-delay:.06s}
.iex-panel.in .iex-body > *:nth-child(3){animation-delay:.12s}
.iex-panel.in .iex-body > *:nth-child(4){animation-delay:.18s}
@keyframes iexUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.iex-media{position:relative;overflow:hidden;background:var(--dark)}
.iex-media img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .45s}
.iex-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.42))}
.iex-badge{position:absolute;left:16px;bottom:16px;z-index:2;font-family:var(--mono);font-size:10px;
  letter-spacing:.12em;text-transform:uppercase;color:#fff;background:rgba(196,103,30,.94);
  padding:6px 12px;border-radius:20px}
.iex-body{padding:34px 34px 30px;display:flex;flex-direction:column}
.iex-body h3{font-family:var(--disp);font-weight:700;font-size:26px;color:var(--ink);letter-spacing:-.015em}
.iex-body p{color:var(--ink-soft);font-size:14.5px;line-height:1.72;margin-top:12px}
.iex-supply{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.iex-supply .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.iex-supply ul{list-style:none;margin:10px 0 0;padding:0}
.iex-supply li{position:relative;padding-left:18px;font-size:13.5px;color:var(--ink-soft);line-height:1.5;margin-bottom:7px}
.iex-supply li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.iex-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:18px}
.iex-tags span{font-family:var(--mono);font-size:10.5px;color:var(--ink-soft);background:var(--surface-2);
  border:1px solid var(--line);padding:5px 10px;border-radius:20px}
@media(max-width:1000px){.iex-box{grid-template-columns:1fr}
  .iex-list{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--line);padding:6px}
  .iex-item{flex:0 0 auto;padding:12px 16px}.iex-item .ar{display:none}
  .iex-item.on:before{top:auto;bottom:0;left:16px;right:16px;width:auto;height:3px}
  .iex-panel{grid-template-columns:1fr}.iex-media{height:220px}}
@media(max-width:600px){.iex-body{padding:24px 20px}.iex-body h3{font-size:21px}}

/* ===== homepage: three pillars ===== */
.pillars{background:var(--dark);padding:0}
.pil-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.pil{display:block;padding:40px 34px;border-right:1px solid rgba(255,255,255,.12);transition:.2s;position:relative}
.pil:last-child{border-right:none}
.pil:before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--gold);transition:.28s}
.pil:hover{background:var(--dark-2)}
.pil:hover:before{width:100%}
.pil-n{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--gold-2)}
.pil h2{font-family:var(--disp);font-weight:700;font-size:24px;color:#fff;margin-top:10px;letter-spacing:-.01em}
.pil p{color:var(--on-dark-soft);font-size:14px;line-height:1.65;margin-top:10px}
.pil-go{display:inline-block;margin-top:16px;font-family:var(--mono);font-size:12px;color:var(--gold-2);letter-spacing:.04em}
.pil:hover .pil-go{color:#fff}

/* ===== capability 4-up ===== */
.cap4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}
.cap{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:14px;padding:24px 22px}
.cap .n{font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.14em;color:var(--gold)}
.cap h3{font-size:17px;margin-top:9px}
.cap p{font-size:13.5px;color:var(--ink-soft);line-height:1.62;margin-top:8px}

/* ===== certifications ===== */
.certs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.cert{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 24px;text-align:center}
.cert b{display:block;font-family:var(--disp);font-weight:700;font-size:20px;color:var(--ink)}
.cert span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-top:7px}
.cert p{font-size:13.5px;color:var(--ink-soft);line-height:1.6;margin-top:12px}
@media(max-width:900px){.pil-grid{grid-template-columns:1fr}
  .pil{border-right:none;border-bottom:1px solid rgba(255,255,255,.12)}
  .cap4{grid-template-columns:1fr 1fr}.certs{grid-template-columns:1fr}}
@media(max-width:600px){.cap4{grid-template-columns:1fr}}



/* ===== living hero: the image breathes ===== */
.mhero-frame{position:relative;overflow:hidden;isolation:isolate}
.mh-plate{position:relative;line-height:0;will-change:transform;
  animation:mhDrift 34s ease-in-out infinite alternate}
.mh-plate img{width:100%;height:auto;display:block}
@keyframes mhDrift{
  0%  {transform:scale(1.00) translate3d(0,0,0)}
  100%{transform:scale(1.055) translate3d(-1.1%,-0.7%,0)}
}

/* the sun, breathing — positioned on the actual sun in the photo (95% / 44%) */
.mh-sun{position:absolute;left:95%;top:44%;width:44vw;height:44vw;max-width:640px;max-height:640px;
  transform:translate(-50%,-50%);pointer-events:none;mix-blend-mode:screen;
  background:radial-gradient(circle,rgba(255,214,150,.55) 0%,rgba(255,186,105,.28) 26%,rgba(255,170,80,.10) 46%,transparent 68%);
  animation:mhSun 7s ease-in-out infinite}
@keyframes mhSun{0%,100%{opacity:.55;transform:translate(-50%,-50%) scale(1)}
                 50%    {opacity:.9; transform:translate(-50%,-50%) scale(1.09)}}

/* god-rays fanning from the sun, turning slowly */
.mh-rays{position:absolute;left:95%;top:44%;width:150vw;height:150vw;
  transform:translate(-50%,-50%);pointer-events:none;mix-blend-mode:screen;opacity:.30;
  background:conic-gradient(from 0deg,
    transparent 0deg, rgba(255,206,140,.20) 5deg, transparent 12deg,
    transparent 26deg, rgba(255,206,140,.14) 31deg, transparent 40deg,
    transparent 58deg, rgba(255,206,140,.18) 63deg, transparent 72deg,
    transparent 96deg, rgba(255,206,140,.12) 101deg, transparent 110deg,
    transparent 140deg, rgba(255,206,140,.16) 145deg, transparent 154deg,
    transparent 360deg);
  -webkit-mask-image:radial-gradient(circle,#000 0%,rgba(0,0,0,.7) 22%,transparent 52%);
  mask-image:radial-gradient(circle,#000 0%,rgba(0,0,0,.7) 22%,transparent 52%);
  animation:mhRays 90s linear infinite}
@keyframes mhRays{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* light raking across the polished parts along the bottom */
.mh-sheen{position:absolute;left:-30%;bottom:0;width:26%;height:46%;pointer-events:none;
  mix-blend-mode:screen;transform:skewX(-14deg);
  background:linear-gradient(100deg,transparent,rgba(255,242,220,.30),transparent);
  animation:mhSheen 11s cubic-bezier(.45,0,.25,1) infinite}
@keyframes mhSheen{0%{left:-30%;opacity:0}8%{opacity:1}62%{left:112%;opacity:0}100%{left:112%;opacity:0}}

/* atmospheric motes drifting up through the light */
.mh-dust{position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen}
.mh-dust i{position:absolute;bottom:-8px;width:3px;height:3px;border-radius:50%;
  background:rgba(255,222,170,.85);opacity:0;
  animation:mhDust linear infinite}
@keyframes mhDust{
  0%{opacity:0;transform:translateY(0) translateX(0) scale(.7)}
  12%{opacity:.9}
  85%{opacity:.5}
  100%{opacity:0;transform:translateY(-330px) translateX(26px) scale(1.25)}
}
.mh-dust i:nth-child(1){left:12%;animation-duration:13s;animation-delay:0s}
.mh-dust i:nth-child(2){left:23%;animation-duration:16s;animation-delay:2.2s}
.mh-dust i:nth-child(3){left:31%;animation-duration:11s;animation-delay:4.1s}
.mh-dust i:nth-child(4){left:39%;animation-duration:18s;animation-delay:1.3s}
.mh-dust i:nth-child(5){left:47%;animation-duration:14s;animation-delay:6.0s}
.mh-dust i:nth-child(6){left:55%;animation-duration:12s;animation-delay:3.4s}
.mh-dust i:nth-child(7){left:63%;animation-duration:17s;animation-delay:7.5s}
.mh-dust i:nth-child(8){left:71%;animation-duration:13s;animation-delay:5.2s}
.mh-dust i:nth-child(9){left:79%;animation-duration:15s;animation-delay:8.8s}
.mh-dust i:nth-child(10){left:86%;animation-duration:12s;animation-delay:2.9s}
.mh-dust i:nth-child(11){left:92%;animation-duration:19s;animation-delay:6.6s}
.mh-dust i:nth-child(12){left:6%; animation-duration:15s;animation-delay:9.4s}

/* a whisper of warm grade over the whole frame */
.mh-grade{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 90% at 88% 42%,rgba(255,180,110,.10),transparent 58%);
  mix-blend-mode:soft-light}

@media(prefers-reduced-motion:reduce){
  .mh-plate,.mh-sun,.mh-rays,.mh-sheen,.mh-dust i{animation:none}
  .mh-plate{transform:none}
}

/* ===== SKF-style full-viewport moving hero ===== */
.vhero{position:relative;width:100%;height:100vh;min-height:620px;overflow:hidden;background:var(--dark);
  display:flex;align-items:center}
.vhero-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;display:block;
  filter:brightness(1.06) contrast(1.08) saturate(1.10);
  transform:scale(1.06);animation:vhPush 26s ease-in-out infinite alternate;will-change:transform}
@keyframes vhPush{from{transform:scale(1.06)}to{transform:scale(1.14)}}
.vhero-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(8,11,15,.88) 0%,rgba(8,11,15,.66) 34%,rgba(8,11,15,.22) 66%,rgba(8,11,15,.05) 100%),
  linear-gradient(180deg,rgba(8,11,15,.55) 0%,transparent 26%,transparent 52%,rgba(8,11,15,.88) 100%)}
.vhero-grain{position:absolute;inset:0;z-index:2;opacity:.05;pointer-events:none;
  background-image:url("assets/images/redesign/index-03.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.vhero-in{position:relative;z-index:3;width:100%;padding-bottom:90px;
  animation:vhUp 1.1s cubic-bezier(.2,.7,.2,1) .15s both}
@keyframes vhUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.vhero-ey{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11.5px;
  letter-spacing:.26em;text-transform:uppercase;color:var(--gold-2);font-weight:600}
.vhero-ey:before{content:"";width:44px;height:2px;background:var(--gold);box-shadow:0 0 16px rgba(196,103,30,.8)}
.vhero-h{font-family:var(--disp);font-weight:800;font-size:70px;line-height:1;letter-spacing:-.035em;
  color:#fff;margin-top:22px;text-shadow:0 6px 44px rgba(0,0,0,.6)}
.vhero-pair{display:flex;gap:0;margin-top:28px;max-width:470px;border:1px solid rgba(255,255,255,.22);
  border-radius:12px;overflow:hidden;background:rgba(12,16,22,.34);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.vhero-pair div{flex:1;padding:14px 18px}
.vhero-pair div:first-child{border-right:1px solid rgba(255,255,255,.2)}
.vhero-pair span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:5px}
.vhero-pair div:first-child span{color:var(--gold-2)}
.vhero-pair div:last-child span{color:var(--steel-2)}
.vhero-pair p{font-size:15px;color:#fff;font-weight:500}
.vhero-p{color:var(--on-dark);font-size:16px;line-height:1.7;max-width:520px;margin-top:20px;
  text-shadow:0 2px 14px rgba(0,0,0,.7)}
.vhero-cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.btn-glass{background:rgba(255,255,255,.10);color:#fff;border:1px solid rgba(255,255,255,.30);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.btn-glass:hover{background:rgba(255,255,255,.20);border-color:#fff}
/* glass stats rail across the foot */
.vhero-stats{position:absolute;left:0;right:0;bottom:0;z-index:4;
  background:rgba(10,13,18,.55);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
  border-top:1px solid rgba(255,255,255,.14)}
.vhero-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.vhero-grid div{padding:20px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.12);transition:.25s}
.vhero-grid div:last-child{border-right:none}
.vhero-grid div:hover{background:rgba(255,255,255,.05)}
.vhero-grid b{display:block;font-family:var(--disp);font-weight:700;font-size:25px;color:#fff;line-height:1}
.vhero-grid b span{font-size:13px;color:var(--gold-2)}
.vhero-grid em{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--on-dark-soft);margin-top:7px;font-style:normal}
.vhero-cue{position:absolute;left:50%;bottom:96px;z-index:5;transform:translateX(-50%);
  width:23px;height:36px;border:1.5px solid rgba(255,255,255,.4);border-radius:14px;
  display:flex;justify-content:center;padding-top:7px}
.vhero-cue span{width:3px;height:7px;border-radius:2px;background:var(--gold-2);animation:vcue 1.7s ease-in-out infinite}
@keyframes vcue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}70%{opacity:1;transform:translateY(11px)}100%{opacity:0;transform:translateY(13px)}}

/* the composite image becomes a showcase band */
.showcase{padding:0;background:var(--dark);position:relative}
.showcase figcaption{position:absolute;left:0;right:0;bottom:0;z-index:5;padding:22px 28px;
  text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--gold-2);background:linear-gradient(180deg,transparent,rgba(8,11,15,.82))}

@media(max-width:900px){.vhero{height:auto;min-height:0;padding:110px 0 0;display:block}
  .vhero-h{font-size:40px}.vhero-in{padding-bottom:34px}
  .vhero-scrim{background:linear-gradient(180deg,rgba(8,11,15,.62),rgba(8,11,15,.90))}
  .vhero-stats{position:relative}.vhero-grid{grid-template-columns:1fr 1fr}
  .vhero-grid div:nth-child(2){border-right:none}
  .vhero-cue{display:none}.vhero-pair{max-width:none}}
@media(max-width:560px){.vhero-h{font-size:31px}.vhero-pair{flex-direction:column}
  .vhero-pair div:first-child{border-right:none;border-bottom:1px solid rgba(255,255,255,.2)}}
@media(prefers-reduced-motion:reduce){.vhero-vid{animation:none;transform:none}.vhero-in{animation:none}}

/* ===== DRONE-SHOT HERO: the image, alive, with a live component scan ===== */
.dhero{position:relative;width:100%;background:var(--dark)}
.dh-frame{position:relative;width:100%;overflow:hidden;line-height:0}

/* slow drone move over the plate */
.dh-plate{position:relative;will-change:transform;
  animation:dhFly 40s ease-in-out infinite alternate}
.dh-plate img{width:100%;height:auto;display:block}
@keyframes dhFly{
  0%  {transform:scale(1.02) translate3d(0.6%, 0.4%, 0)}
  100%{transform:scale(1.09) translate3d(-1.4%, -0.9%, 0)}
}

/* scan layer */
.dh-scan{position:absolute;inset:0;z-index:3;pointer-events:none}

/* the scanning sweep that runs across the frame */
.dh-sweep{position:absolute;top:0;bottom:0;left:-25%;width:16%;
  background:linear-gradient(90deg,transparent,rgba(255,168,92,.16),rgba(255,200,140,.42),rgba(255,168,92,.16),transparent);
  box-shadow:0 0 40px rgba(255,150,60,.35);
  animation:dhSweep 9s cubic-bezier(.45,0,.25,1) infinite}
@keyframes dhSweep{0%{left:-25%;opacity:0}6%{opacity:1}70%{left:112%;opacity:.9}80%,100%{left:112%;opacity:0}}

/* HUD chrome */



50%{opacity:.15}}


/* the targeting boxes */
.tgt{position:absolute;border:1px solid rgba(255,168,92,.85);opacity:0;
  box-shadow:0 0 0 1px rgba(0,0,0,.25), inset 0 0 22px rgba(255,150,60,.10);
  animation:tgtLock 9s ease-in-out infinite}
.tgt b{position:absolute;width:9px;height:9px;border:2px solid var(--gold-2)}
.tgt b:nth-child(1){top:-1px;left:-1px;border-right:none;border-bottom:none}
.tgt b:nth-child(2){top:-1px;right:-1px;border-left:none;border-bottom:none}
.tgt b:nth-child(3){bottom:-1px;left:-1px;border-right:none;border-top:none}
.tgt b:nth-child(4){bottom:-1px;right:-1px;border-left:none;border-top:none}
.tgt em{position:absolute;left:-1px;top:100%;margin-top:5px;display:block;white-space:nowrap;
  font-family:var(--mono);font-style:normal;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--dark);background:var(--gold-2);padding:4px 8px;font-weight:600;line-height:1.35}
.tgt em u{display:block;text-decoration:none;font-weight:400;color:#3a2410;font-size:8.5px;letter-spacing:.08em}
@keyframes tgtLock{
  0%,4%    {opacity:0;transform:scale(1.10)}
  10%      {opacity:1;transform:scale(1)}
  62%      {opacity:1;transform:scale(1)}
  72%,100% {opacity:0;transform:scale(.98)}
}
/* each box locks on as the sweep passes it */
.t1{left:3.5%;  top:31%; width:23%;  height:35%; animation-delay:.35s}   /* locomotive */
.t2{left:27.5%; top:39%; width:22%;  height:26%; animation-delay:1.05s}  /* Vande Bharat / bogie */
.t3{left:40%;   top:19%; width:26%;  height:41%; animation-delay:1.75s}  /* refinery */
.t4{left:76%;   top:5%;  width:18%;  height:14%; animation-delay:2.45s}  /* aircraft */
.t5{left:83%;   top:41%; width:16%;  height:20%; animation-delay:3.15s}  /* ship */
.t6{left:4%;    top:62%; width:64%;  height:32%; animation-delay:3.85s}  /* the parts */
.t6 em{top:auto;bottom:100%;margin-top:0;margin-bottom:5px}

/* light + grade so the plate feels shot, not scanned */

.dh-grain{position:absolute;inset:0;z-index:5;opacity:.05;pointer-events:none;
  background-image:url("assets/images/redesign/index-04.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}

/* headline over the shot */

.dh-ey{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:11px;
  letter-spacing:.26em;text-transform:uppercase;color:var(--gold-2);font-weight:600}
.dh-ey:before{content:"";width:40px;height:2px;background:var(--gold)}
.dh-h{font-family:var(--disp);font-weight:800;font-size:60px;line-height:1.02;letter-spacing:-.035em;
  color:#fff;margin-top:18px;text-shadow:0 6px 40px rgba(0,0,0,.75)}
.dh-p{color:var(--on-dark);font-size:16px;line-height:1.7;max-width:470px;margin-top:16px;
  text-shadow:0 2px 14px rgba(0,0,0,.8)}

/* stats rail beneath the shot */
.dh-stats{background:var(--dark)}
.dh-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.dh-grid div{padding:22px 16px;text-align:center;border-right:1px solid rgba(255,255,255,.12);transition:.25s}
.dh-grid div:last-child{border-right:none}
.dh-grid div:hover{background:rgba(255,255,255,.05)}
.dh-grid b{display:block;font-family:var(--disp);font-weight:700;font-size:26px;color:#fff;line-height:1}
.dh-grid b span{font-size:13px;color:var(--gold-2)}
.dh-grid em{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--on-dark-soft);margin-top:8px;font-style:normal}

@media(max-width:1000px){.dh-h{font-size:38px}.tgt em{font-size:8px;padding:3px 6px}.tgt em u{display:none}}
@media(max-width:700px){
  
  .dh-h{font-size:30px}.dh-grid{grid-template-columns:1fr 1fr}
  .dh-grid div:nth-child(2){border-right:none}
  .tgt em{display:none}}
@media(prefers-reduced-motion:reduce){.dh-plate,.dh-sweep,.tgt,
  .dh-plate{transform:none}.tgt{opacity:1}}
.dh-pair{display:flex;margin-top:24px;max-width:430px;border:1px solid rgba(255,255,255,.22);
  border-radius:12px;overflow:hidden;background:rgba(12,16,22,.40);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.dh-pair div{flex:1;padding:13px 17px}
.dh-pair div:first-child{border-right:1px solid rgba(255,255,255,.2)}
.dh-pair span{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;margin-bottom:5px}
.dh-pair div:first-child span{color:var(--gold-2)}
.dh-pair div:last-child span{color:var(--steel-2)}
.dh-pair p{font-size:14.5px;color:#fff;font-weight:500}
@media(max-width:560px){.dh-pair{flex-direction:column;max-width:none}
  .dh-pair div:first-child{border-right:none;border-bottom:1px solid rgba(255,255,255,.2)}}


/* ===== hero: image only, full width, live ===== */
.dhero{width:100%;background:var(--dark);padding:0}
.dh-frame{position:relative;width:100%;overflow:hidden;line-height:0}
.dh-plate img{width:100%;height:auto;display:block}

/* ===== COMPANY PAGE ===== */
.cphero{background:var(--surface-2);border-bottom:1px solid var(--line);padding:62px 0;position:relative}
.cphero:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold)}
.cphero h1{font-size:46px;max-width:680px;margin-top:14px;letter-spacing:-.03em}
.cphero p{color:var(--ink-soft);max-width:640px;margin-top:16px;font-size:16px;line-height:1.72}

/* Managing Director */
.md{padding:74px 0 0}
.md-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.md-ey{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:600}
.md-copy h2{font-family:var(--disp);font-weight:800;font-size:42px;letter-spacing:-.03em;margin-top:12px;color:var(--ink)}
.md-copy h2 span{color:var(--gold)}
.md-rule{width:120px;height:1px;background:var(--gold-line);margin:18px 0 20px;position:relative}
.md-rule:before,.md-rule:after{content:"";position:absolute;top:-3px;width:7px;height:7px;border-radius:50%;border:1.5px solid var(--gold)}
.md-rule:before{left:0} .md-rule:after{left:36px}
.md-copy > p{color:var(--ink-soft);font-size:15.5px;line-height:1.75;margin-bottom:14px}
.md-list{margin-top:26px}
.md-item{display:flex;gap:16px;padding:16px 0;border-top:1px solid var(--line)}
.md-item i{flex:none;width:44px;height:44px;border:1.5px solid var(--gold-line);border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:21px}
.md-item b{display:block;font-family:var(--disp);font-weight:700;font-size:14.5px;color:var(--gold);
  text-transform:uppercase;letter-spacing:.02em}
.md-item p{font-size:13.5px;color:var(--ink-soft);line-height:1.6;margin-top:5px}
.md-photo{border-radius:16px;overflow:hidden;box-shadow:0 26px 60px rgba(40,40,38,.20)}
.md-photo img{width:100%;height:auto;display:block}
.md-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;
  background:var(--surface-2);border:1px solid var(--gold-line);border-radius:16px;overflow:hidden}
.md-stats div{padding:26px 20px;display:flex;align-items:center;gap:14px;border-right:1px solid var(--gold-line)}
.md-stats div:last-child{border-right:none}
.md-stats i{flex:none;width:48px;height:48px;border:1.5px solid var(--gold-line);border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:22px}
.md-stats b{display:block;font-family:var(--disp);font-weight:800;font-size:27px;color:var(--ink);line-height:1}
.md-stats span{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:4px;line-height:1.4}

/* timeline */
.tl{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:40px;position:relative}
.tl:before{content:"";position:absolute;top:13px;left:6%;right:6%;height:1px;background:var(--gold-line)}
.tl-step{padding:0 18px;position:relative;text-align:center}
.tl-y{display:inline-block;position:relative;z-index:1;font-family:var(--mono);font-size:12px;font-weight:600;
  letter-spacing:.1em;color:#fff;background:var(--gold);padding:5px 14px;border-radius:20px}
.tl-step h3{font-size:18px;margin-top:16px}
.tl-step p{font-size:13.5px;color:var(--ink-soft);line-height:1.65;margin-top:8px}

/* today */
.today{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.today-facts div{padding:18px 0;border-bottom:1px solid var(--line)}
.today-facts b{display:block;font-family:var(--disp);font-weight:600;font-size:15.5px;color:var(--ink)}
.today-facts span{display:block;font-size:13.5px;color:var(--ink-soft);margin-top:5px;line-height:1.6}

/* founder quote */
.quote{max-width:880px;margin:0 auto;text-align:center;position:relative}
.quote-mark{font-family:var(--disp);font-size:110px;line-height:.6;color:var(--gold-line);height:56px}
.quote blockquote{font-family:var(--disp);font-weight:500;font-size:24px;line-height:1.55;color:var(--ink);
  letter-spacing:-.015em;margin:0}
.quote cite{display:block;margin-top:26px;font-style:normal;font-family:var(--disp);font-weight:700;
  font-size:15px;color:var(--gold)}
.quote cite span{display:block;font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);margin-top:6px}

/* CSR */
.csr{background:var(--surface-2);border-top:1px solid var(--line)}
.csr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.csr-card{background:#fff;border:1px solid var(--line);border-top:3px solid #6a9b4a;border-radius:14px;
  padding:26px 24px;display:flex;flex-direction:column}
.csr-card:nth-child(3n-1){border-top-color:var(--gold)}
.csr-card:nth-child(3n){border-top-color:var(--steel)}
.csr-ic{width:46px;height:46px;border-radius:12px;background:var(--green-tint);color:var(--green);
  display:flex;align-items:center;justify-content:center;font-size:23px;margin-bottom:14px}
.csr-card:nth-child(3n-1) .csr-ic{background:var(--gold-tint);color:var(--gold)}
.csr-card:nth-child(3n) .csr-ic{background:var(--steel-tint);color:var(--steel)}
.csr-card h3{font-size:18px}
.csr-card p{font-size:13.5px;color:var(--ink-soft);line-height:1.68;margin-top:9px;flex:1}
.csr-tag{display:inline-block;margin-top:16px;align-self:flex-start;font-family:var(--mono);font-size:10px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);background:var(--surface-2);
  border:1px solid var(--line);padding:5px 10px;border-radius:20px}

@media(max-width:1000px){.md-grid{grid-template-columns:1fr;gap:32px}.md-photo{order:-1}
  .md-stats{grid-template-columns:1fr 1fr}.md-stats div:nth-child(2){border-right:none}
  .tl{grid-template-columns:1fr 1fr;gap:30px 0}.tl:before{display:none}
  .today{grid-template-columns:1fr;gap:28px}.csr-grid{grid-template-columns:1fr 1fr}
  .cphero h1{font-size:34px}.md-copy h2{font-size:32px}.quote blockquote{font-size:19px}}
@media(max-width:600px){.md-stats,.tl,.csr-grid{grid-template-columns:1fr}
  .md-stats div{border-right:none;border-bottom:1px solid var(--gold-line)}}


/* ===== Saarvam Circle ===== */
.circle{display:grid;grid-template-columns:1fr 1.05fr;gap:0;margin:44px 0 26px;border-radius:18px;
  overflow:hidden;background:linear-gradient(160deg,#F4F8F0 0%,#EAF2E3 55%,#E2EDD8 100%);
  border:1px solid var(--green-line);box-shadow:0 18px 48px rgba(47,74,32,.12)}
.circle-media{position:relative;min-height:400px;overflow:hidden;background:#dbe7d0}
.circle-media img{width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1.02);transition:transform 1.2s ease}
.circle:hover .circle-media img{transform:scale(1.06)}
.circle-media:after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(24,42,16,.62) 100%)}
.circle-plate{position:absolute;left:22px;bottom:20px;z-index:2;display:flex;flex-direction:column;gap:7px;align-items:flex-start}
.circle-badge{font-family:var(--disp);font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;
  color:#fff;background:var(--green);padding:8px 15px;border-radius:6px;
  box-shadow:0 6px 18px rgba(20,40,12,.4)}
.circle-loc{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:#e6f0dc;background:rgba(20,34,14,.62);padding:6px 12px;border-radius:6px;
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}

.circle-copy{padding:46px 46px 42px;display:flex;flex-direction:column;justify-content:center}
.circle-ey{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;
  letter-spacing:.2em;text-transform:uppercase;color:var(--green);font-weight:600;align-self:flex-start}
.circle-ey:before{content:"";width:34px;height:2px;background:var(--green)}
.circle-copy h3{font-family:var(--disp);font-weight:800;font-size:33px;color:var(--green-ink);margin-top:14px;
  line-height:1.14;letter-spacing:-.025em}
.circle-copy h3 span{color:var(--green)}
.circle-copy p{color:var(--ink-soft);font-size:15px;line-height:1.78;margin-top:14px}
.circle-copy strong{color:var(--green);font-weight:700}
.circle-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px;
  padding-top:22px;border-top:1px solid var(--green-line)}
.circle-facts i{display:block;font-size:20px;color:var(--green);margin-bottom:8px}
.circle-facts b{display:block;font-family:var(--disp);font-weight:700;font-size:13px;
  letter-spacing:.02em;color:var(--green-ink)}
.circle-facts span{display:block;font-size:12.5px;color:var(--ink-soft);margin-top:4px;line-height:1.5}

/* ===== compliance ===== */
.comp{background:var(--dark);color:var(--on-dark)}
.comp h2{color:#fff}
.comp .sec-head p{color:var(--on-dark-soft)}
.comp .eyebrow{color:var(--gold-2)}
.comp-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:34px}
.comp-row{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:20px 0;
  border-top:1px solid rgba(255,255,255,.12)}
.comp-k{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-2);padding-top:3px}
.comp-v b{display:block;font-family:var(--disp);font-weight:600;font-size:15px;color:#fff}
.comp-v p{color:var(--on-dark-soft);font-size:13.5px;line-height:1.68;margin-top:6px}
.comp-note{margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);
  font-family:var(--mono);font-size:12.5px;color:var(--gold-2);letter-spacing:.02em}

@media(max-width:1000px){.circle{grid-template-columns:1fr}.circle-media{min-height:280px}
  .circle-copy{padding:32px 26px}.circle-copy h3{font-size:26px}
  .comp-grid{grid-template-columns:1fr;gap:0}}
@media(max-width:600px){.circle-facts{grid-template-columns:1fr;gap:14px}}
@media(max-width:600px){.comp-row{grid-template-columns:1fr;gap:6px}}
/* brand name inside the Circle headline */
.circle-copy h3 .brandname{color:var(--gold);letter-spacing:.005em}
.circle-copy h3{color:var(--green-ink)}
.comp-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:34px;padding-top:24px;
  border-top:1px solid rgba(255,255,255,.12)}
.comp-badges span{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--gold-2);background:rgba(255,255,255,.05);border:1px solid rgba(240,168,104,.30);
  padding:7px 13px;border-radius:20px}
.comp h2{font-size:34px;letter-spacing:-.025em}
.comp .comp-v b{font-size:15.5px}

/* ===== ENGINEERED FOR ENDURANCE — on every page ===== */
.endurance{background:var(--dark);border-top:1px solid rgba(255,255,255,.10);padding:26px 0}
.endurance .wrap{display:flex;align-items:center;justify-content:center;gap:22px}
.end-txt{font-family:var(--disp);font-weight:800;font-size:clamp(15px,2.1vw,24px);
  letter-spacing:.30em;text-transform:uppercase;white-space:nowrap;
  background:linear-gradient(180deg,var(--metal-1) 0%,var(--metal-2) 40%,var(--gold) 64%,var(--metal-4) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 2px 10px rgba(185,128,60,.26))}
.end-line{flex:1;height:1px;max-width:170px;
  background:linear-gradient(90deg,transparent,rgba(185,128,60,.55))}
.end-line:last-child{background:linear-gradient(90deg,rgba(185,128,60,.55),transparent)}
.foot .tagline{font-family:var(--disp);font-weight:700;font-size:14px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold)}
/* AS9100D emphasis */
.certs-4{grid-template-columns:repeat(4,1fr)}
.cert-lead{border:2px solid var(--gold);background:linear-gradient(160deg,var(--gold-tint),#fff 60%)}
.cert-lead b{color:var(--gold)}
.comp-badges span.lead{background:var(--gold);color:#fff;border-color:var(--gold);font-weight:600}
@media(max-width:1000px){.certs-4{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.certs-4{grid-template-columns:1fr}
  .end-line{display:none}.end-txt{letter-spacing:.18em;white-space:normal;text-align:center}}


/* ===== TYPOGRAPHY & COLOUR — one system, applied everywhere ===== */
h1{font-size:clamp(30px,4.2vw,52px);line-height:1.08;letter-spacing:-.03em;color:var(--ink)}
h2{font-size:clamp(24px,3vw,34px);line-height:1.15;letter-spacing:-.022em;color:var(--ink)}
h3{font-size:clamp(17px,1.6vw,21px);line-height:1.28;letter-spacing:-.012em;color:var(--ink)}
p{color:var(--ink-soft)}
strong,b{color:var(--ink)}

/* body copy: one size, one leading */
.sec-head p,.fam p,.cap p,.cert p,.pil p,.csr-card p,.today-facts span,
.md-copy > p,.md-item p,.tl-step p,.circle-copy p,.iex-body p,
.idet-row p,.irow p,.pcard .bd p,.mfam .c p,.why .w p{
  font-size:15px;line-height:1.72;color:var(--ink-soft)}

/* labels / eyebrows: one treatment */
.eyebrow,.iw-ey,.circle-ey,.md-ey,.dh-ey,.mhero-ey,.vhero-ey,.comp-k{
  font-family:var(--mono);font-weight:600;letter-spacing:.2em;text-transform:uppercase;
  font-size:11.5px;color:var(--gold)}
.eyebrow.steel{color:var(--steel)}
.circle-ey{color:var(--green)}

/* every accent that used to be orange is now the logo gold */
.iw-name,.dname,.iex-item.on .t,.iex-item.on .n,.iex-item:hover .t,
.dh-title span,.iw-h span,.tgt em{color:var(--gold)}
.iw-cta,.iex-item.on:before,.circle-badge{background:var(--gold)}
.circle-badge{background:var(--green)}
.iw-cta:hover{background:var(--gold-deep)}

/* on dark surfaces: one text colour set */
.band.dark p,.comp-v p,.pil p,.foot a,.mstats-grid em,.dh-grid em,.vhero-grid em{color:var(--on-dark-soft)}

/* links */
a.link-gold{color:var(--gold)} a.link-gold.link-steel{color:var(--steel)}
.csr .sec-head h2 .brandname{color:var(--green)}

/* ===== product banner: the parts collage ===== */
.prod-banner{position:relative;margin:8px 0 30px;border-radius:16px;overflow:hidden;
  background:linear-gradient(160deg,#F3F4F6 0%,#E7E9EC 55%,#DDE0E4 100%);
  border:1px solid var(--line);box-shadow:0 14px 38px rgba(36,39,43,.10)}
.prod-banner img{width:100%;height:auto;display:block;
  transform:scale(1.01);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.prod-banner:hover img{transform:scale(1.045)}
.prod-banner:after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 52%,rgba(20,23,27,.06) 72%,rgba(20,23,27,.55) 100%)}
.prod-banner figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:26px 30px;display:flex;flex-direction:column;gap:7px}
.pb-ey{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;color:var(--gold-2)}
.pb-t{font-family:var(--disp);font-weight:600;font-size:18px;color:#fff;line-height:1.35;
  max-width:640px;letter-spacing:-.012em;text-shadow:0 2px 14px rgba(0,0,0,.5)}
@media(max-width:700px){.prod-banner figcaption{padding:18px 18px}
  .pb-t{font-size:14px}.prod-banner:after{background:linear-gradient(180deg,transparent 34%,rgba(20,23,27,.68) 100%)}}

/* the parts photo, inside the construction panel */
.xphoto{margin:0 0 20px;border-radius:10px;overflow:hidden;background:#EDEFF2;
  border:1px solid rgba(255,255,255,.10)}
.xphoto img{width:100%;height:auto;display:block;
  transform:scale(1.01);transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.featured:hover .xphoto img{transform:scale(1.04)}

/* ===== parts photo: clean gallery frame (replaces the heavy dark block) ===== */
.xwrap-photo{
  background:linear-gradient(165deg,#FFFFFF 0%,#FAFAFB 46%,#F2F3F5 100%);
  border:1px solid var(--line);
  border-radius:14px;
  padding:14px;
  box-shadow:
    0 1px 0 rgba(255,255,255,.9) inset,
    0 12px 30px rgba(36,39,43,.09),
    0 2px 6px rgba(36,39,43,.05);
}
.xwrap-photo .xphoto{
  margin:0;
  border:1px solid #E9EBEE;
  border-radius:9px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(36,39,43,.06);
}
.xwrap-photo .xphoto img{
  width:100%;height:auto;display:block;
  transform:scale(1.005);
  transition:transform 1s cubic-bezier(.2,.7,.2,1);
}
.featured:hover .xwrap-photo .xphoto img{transform:scale(1.035)}
/* a hairline of brand gold along the top edge — ties it to the card language */
.xwrap-photo{position:relative}
.xwrap-photo:before{
  content:"";position:absolute;left:16px;right:16px;top:-1px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:.85;
}
@media(max-width:700px){.xwrap-photo{padding:10px;border-radius:12px}}
.cert-seal{width:70px;height:70px;margin:0 auto 16px;color:var(--gold);transition:transform .3s ease}
.cert-seal svg{width:100%;height:100%;display:block}
.cert:hover .cert-seal{transform:rotate(8deg) scale(1.04)}
.cert-lead .cert-seal{color:var(--gold-deep)}


/* Page-specific additions */
.pcar-track .pcard.damp .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72%;background:no-repeat center/contain;background-image:url("assets/images/redesign/industries-01.svg'http://www.w3.org/2000/svg' viewBox='0 0 240 70'%3E%3Cpath d='M0 35 Q20 8 40 35 T80 35 T120 35 T160 35 T200 35 T240 35' fill='none' stroke='white' stroke-width='2.4' stroke-opacity='0.4'/%3E%3C/svg%3E");opacity:.75;pointer-events:none}
background-image:url("assets/images/redesign/industries-02.svg'http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");}
background-image:url("assets/images/redesign/industries-03.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
background-image:url("assets/images/redesign/industries-04.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}

.iw{background:#F7F5F1;padding:64px 0 70px}
.iw-head{text-align:center;max-width:840px;margin:0 auto 46px;padding:0 20px}
.iw-ey{display:inline-flex;align-items:center;justify-content:center;gap:14px;font-family:var(--mono);font-size:12.5px;letter-spacing:.22em;color:#C4671E;font-weight:600;text-transform:uppercase}
.iw-ey:before,.iw-ey:after{content:"";width:38px;height:1px;background:#C4671E;opacity:.55}
.iw-h{font-family:var(--disp);font-weight:800;font-size:46px;letter-spacing:-.02em;margin-top:16px;color:#2A2A28;line-height:1.08}
.iw-h span{color:#C4671E}
.iw-div{display:flex;align-items:center;justify-content:center;gap:10px;margin:18px 0}
.iw-div .l{width:82px;height:1px;background:#D8D2C8}
.iw-div .o{width:9px;height:9px;border:2px solid #C4671E;border-radius:50%}
.iw-sub{color:#5E5E5C;font-size:16px;line-height:1.62}
.iw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:1240px;margin:0 auto;padding:0 20px}
.iw-card{background:#fff;border:1px solid #EAE6DE;border-radius:14px;box-shadow:0 6px 20px rgba(40,40,38,.05);display:flex;flex-direction:column}
.iw-imgwrap{position:relative}
.iw-img{position:relative;height:172px;border-radius:14px 14px 0 0;overflow:hidden;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.9);font-size:44px}
.iw-img>i{position:relative;z-index:1;opacity:.85}
.iw-img>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2}
.iw-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.32));z-index:3}
.iw-badge{position:absolute;left:20px;bottom:-24px;width:50px;height:50px;border-radius:50%;background:#C4671E;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;box-shadow:0 5px 12px rgba(196,103,30,.4);border:3px solid #fff;z-index:6}
.iw-body{padding:34px 22px 22px}
.iw-name{font-family:var(--disp);font-weight:700;font-size:19px;color:#C4671E;text-transform:uppercase}
.iw-desc{color:#5E5E5C;font-size:13.5px;line-height:1.6;margin-top:10px}
.iw-desc.tall{min-height:92px}
.iw-line{height:1px;background:#EAE6DE;margin:16px 0 12px}
.iw-tags{font-family:var(--mono);font-size:10.5px;letter-spacing:.03em;color:#45453F;text-transform:uppercase;line-height:1.95}
.iw-tags b{color:#C4671E;font-weight:700;margin:0 6px}
/* dampers band */
.dhead{text-align:center;max-width:860px;margin:74px auto 30px;padding:0 20px}
.dhead .iw-ey{justify-content:center}
.dh-title{font-family:var(--disp);font-weight:800;font-size:40px;letter-spacing:-.02em;color:#2A2A28;margin-top:16px;line-height:1.1}
.dh-title span{color:#C4671E}
.dh-title .brandname{color:#B07B2F;letter-spacing:.01em}
.dh-sub{color:#5E5E5C;font-size:15px;line-height:1.66;margin-top:6px}
.rail{max-width:1240px;margin:0 auto;padding:0 20px}
.rail-box{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border:1px solid #EAE6DE;border-radius:16px;overflow:hidden;box-shadow:0 14px 38px rgba(40,40,38,.08);align-items:stretch}
.rail-media{position:relative;background:linear-gradient(155deg,#20262d 0%,#151a20 55%,#0f1319 100%);display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:600px;padding:44px 32px 34px;overflow:hidden}
.rail-media img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.13;filter:grayscale(.55) contrast(1.12)}
.rail-media:after{content:"";position:absolute;inset:0;background:radial-gradient(110% 80% at 50% 42%,rgba(196,103,30,.20),transparent 62%),linear-gradient(180deg,rgba(12,15,19,.30),rgba(12,15,19,.88))}
.rail-prod{position:relative;z-index:2;flex:1;display:flex;align-items:center;justify-content:center;width:100%}
.rail-prod img{width:100%;max-width:none;height:100%;max-height:470px;object-fit:contain;display:block;filter:drop-shadow(0 30px 46px rgba(0,0,0,.66)) saturate(1.08) contrast(1.06)}
.rail-cap{position:relative;z-index:2;margin-top:22px;text-align:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:#d3ae7e}
.rail-txt{padding:52px 46px;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #EAE6DE}
.rail-txt .ey{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#C4671E;font-weight:600}
.rail-txt h3{font-family:var(--disp);font-weight:700;font-size:25px;color:#2A2A28;margin-top:10px;line-height:1.18}
.rail-txt p{color:#5E5E5C;font-size:14px;line-height:1.68;margin-top:12px}
.rail-list{margin-top:18px;border-top:1px solid #EAE6DE}
.rail-list .r{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid #EAE6DE}
.rail-list .r i{width:6px;height:6px;border-radius:50%;background:#C4671E;flex:none;margin-top:7px}
.rail-list .r b{font-family:var(--disp);font-weight:600;font-size:13.5px;color:#2A2A28}
.rail-list .r span{display:block;font-size:12.5px;color:#5E5E5C;margin-top:2px;line-height:1.5}
.rail-cta{margin-top:22px}
@media(max-width:1000px){.rail-box{grid-template-columns:1fr}.dh-title{font-size:30px}.rail-media{min-height:260px}}
@media(max-width:600px){.dh-title{font-size:26px}.rail-txt{padding:26px 22px}}

/* feature bar */
.iw-foot{max-width:1240px;margin:34px auto 0;background:#fff;border:1px solid #EAE6DE;border-radius:14px;padding:22px 26px;display:grid;grid-template-columns:repeat(3,1fr) auto;gap:22px;align-items:center}
.iw-feat{display:flex;gap:12px;align-items:flex-start;border-right:1px solid #EAE6DE;padding-right:18px}
.iw-feat:nth-child(3){border-right:none}
.iw-feat .fi{width:44px;height:44px;border:1.5px solid #E4C9AE;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#C4671E;font-size:21px;flex:none}
.iw-feat h5{font-family:var(--disp);font-weight:700;font-size:13px;color:#2A2A28;text-transform:uppercase;letter-spacing:.02em}
.iw-feat p{font-size:12px;color:#5E5E5C;margin-top:4px;line-height:1.5}
.iw-cta{background:#C4671E;color:#fff;font-family:var(--body);font-weight:600;font-size:13px;letter-spacing:.03em;text-transform:uppercase;padding:15px 24px;border-radius:8px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;transition:.18s}
.iw-cta:hover{background:#a9561a}
@media(max-width:1000px){.iw-grid{grid-template-columns:repeat(2,1fr)}.iw-damper .box{grid-template-columns:1fr}.iw-foot{grid-template-columns:1fr 1fr}.iw-feat:nth-child(3){border-right:1px solid #EAE6DE}.iw-cta{grid-column:1/-1;justify-content:center}.iw-desc.tall{min-height:0}}
@media(max-width:600px){.iw-grid{grid-template-columns:1fr}.iw-h{font-size:32px}.iw-foot{grid-template-columns:1fr}.iw-feat{border-right:none!important;border-bottom:1px solid #EAE6DE;padding-bottom:14px}}

.icar{position:relative;max-width:1300px;margin:44px auto 0;padding:0 20px}
.icar-view{overflow:hidden}
.icar-track{display:flex;gap:16px;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}
.icar-card{flex:0 0 250px;position:relative;cursor:pointer}
.icar-imgb{height:430px;border-radius:3px;overflow:hidden;position:relative;background:#e6e4e0}
.icar-imgb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.icar-card:hover .icar-imgb img{transform:scale(1.05)}
.icar-label{position:absolute;left:-6px;bottom:42px;background:#fff;box-shadow:0 8px 22px rgba(20,20,20,.14);padding:15px 18px;min-width:150px;max-width:186px}
.icar-label .nm{font-family:var(--disp);font-weight:600;font-size:15px;line-height:1.25;color:#2A2A28}
.icar-card.active .icar-label{background:#C4671E}
.icar-card.active .icar-label .nm{color:#fff}
.icar-card.active .icar-label:after{content:"";position:absolute;left:26px;bottom:-9px;border-left:9px solid transparent;border-right:9px solid transparent;border-top:9px solid #C4671E}
.icar-btn{position:absolute;top:195px;width:46px;height:46px;border-radius:50%;border:none;background:#fff;box-shadow:0 6px 18px rgba(20,20,20,.16);color:#C4671E;font-size:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;transition:.16s}
.icar-btn:hover{background:#C4671E;color:#fff}
.icar-prev{left:-4px}.icar-next{right:-4px}
.icar-btn[disabled]{opacity:.32;cursor:default}
.icar-btn[disabled]:hover{background:#fff;color:#C4671E}
@media(max-width:600px){.icar-card{flex:0 0 208px}.icar-imgb{height:340px}.icar-btn{top:150px}}


/* ===== full-bleed cinematic hero ===== */
.ihero{position:relative;width:100%;min-height:600px;height:76vh;max-height:760px;overflow:hidden;display:flex;align-items:flex-end;background:#15181c}
.ihero-bg{position:absolute;inset:0;z-index:0}
.ihero-bg img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04);animation:iheroZoom 18s ease-out forwards}
@keyframes iheroZoom{from{transform:scale(1.10)}to{transform:scale(1.0)}}
.ihero-scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(180deg,rgba(12,14,17,.62) 0%,rgba(12,14,17,.18) 34%,rgba(12,14,17,.72) 74%,rgba(12,14,17,.94) 100%),
  linear-gradient(90deg,rgba(12,14,17,.72) 0%,rgba(12,14,17,.10) 58%,transparent 100%)}
.ihero-inner{position:relative;z-index:2;max-width:1240px;width:100%;margin:0 auto;padding:0 40px 76px;animation:iheroUp .9s cubic-bezier(.2,.7,.2,1) both}
@keyframes iheroUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.ihero-ey{display:inline-flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12.5px;letter-spacing:.24em;text-transform:uppercase;color:#E9A05C;font-weight:600}
.ihero-ey:before{content:"";width:44px;height:2px;background:#C4671E}
.ihero-h{font-family:var(--disp);font-weight:800;font-size:60px;line-height:1.03;letter-spacing:-.025em;color:#fff;margin-top:20px;text-shadow:0 2px 24px rgba(0,0,0,.4)}
.ihero-h span{color:#E9A05C}
.ihero-p{color:#d5d8dc;font-size:16.5px;line-height:1.65;max-width:600px;margin-top:20px;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.ihero-stats{display:flex;gap:0;margin-top:34px;border-top:1px solid rgba(255,255,255,.18);padding-top:20px;max-width:600px}
.ihero-stats div{padding-right:38px;margin-right:38px;border-right:1px solid rgba(255,255,255,.16)}
.ihero-stats div:last-child{border-right:none;margin-right:0;padding-right:0}
.ihero-stats b{display:block;font-family:var(--disp);font-weight:700;font-size:26px;color:#fff;line-height:1}
.ihero-stats span{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#a9aeb4;margin-top:7px}
.ihero-cue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3;width:24px;height:38px;border:1.5px solid rgba(255,255,255,.4);border-radius:14px;display:flex;justify-content:center;padding-top:7px}
.ihero-cue span{width:3px;height:7px;border-radius:2px;background:#E9A05C;animation:cue 1.7s ease-in-out infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}30%{opacity:1}70%{opacity:1;transform:translateY(12px)}100%{opacity:0;transform:translateY(14px)}}
.iw{padding-top:56px}
@media(max-width:900px){.ihero{min-height:520px;height:70vh}.ihero-h{font-size:38px}.ihero-inner{padding:0 24px 56px}.ihero-p{font-size:15px}.ihero-stats{flex-wrap:wrap;gap:18px}.ihero-stats div{padding-right:22px;margin-right:22px}}
@media(max-width:560px){.ihero-h{font-size:30px}.ihero-stats b{font-size:20px}}
@media(prefers-reduced-motion:reduce){.ihero-bg img{animation:none;transform:none}.ihero-inner{animation:none}.ihero-cue span{animation:none}}

/* ===== ambient VFX background ===== */
.vfx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.vfx .orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5;mix-blend-mode:multiply;will-change:transform}
.vfx .o1{width:620px;height:620px;background:radial-gradient(circle,rgba(196,103,30,.30),transparent 66%);top:-14%;left:-10%;animation:drift1 34s ease-in-out infinite}
.vfx .o2{width:560px;height:560px;background:radial-gradient(circle,rgba(70,110,150,.24),transparent 66%);top:36%;right:-14%;animation:drift2 42s ease-in-out infinite}
.vfx .o3{width:520px;height:520px;background:radial-gradient(circle,rgba(196,103,30,.18),transparent 66%);bottom:-16%;left:24%;animation:drift3 38s ease-in-out infinite}
@keyframes drift1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(90px,70px) scale(1.14)}}
@keyframes drift2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-110px,-60px) scale(1.1)}}
@keyframes drift3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(70px,-80px) scale(1.16)}}
.vfx .grid{position:absolute;inset:0;background-image:linear-gradient(rgba(40,40,38,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(40,40,38,.045) 1px,transparent 1px);background-size:74px 74px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000,transparent 78%);mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000,transparent 78%)}
.vfx .grain{position:absolute;inset:-120%;opacity:.20;background-image:url("assets/images/redesign/industries-05.svg'http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");animation:grain 7s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-6%,-4%)}40%{transform:translate(4%,-6%)}60%{transform:translate(-4%,5%)}80%{transform:translate(6%,3%)}100%{transform:translate(0,0)}}
.vfx .beam{position:absolute;top:0;left:-30%;width:36%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-14deg);animation:beam 13s ease-in-out infinite}
@keyframes beam{0%{left:-40%;opacity:0}12%{opacity:.7}44%{left:112%;opacity:0}100%{left:112%;opacity:0}}
.iw,.dhead,.rail,.iw-foot{position:relative;z-index:1}
.iw{background:transparent}
body{background:#F7F5F1}

/* scroll reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.vfx .orb,.vfx .grain,.vfx .beam{animation:none}.rv{opacity:1;transform:none;transition:none}}


    .certbar-sec{padding:46px 0}
    .certbar{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:26px 30px;text-align:center}
    .certbar .cb-head{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
    .certbar .cb-row{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
    .cb-item{flex:1;min-width:150px;max-width:230px;padding:6px 8px}
    .cb-seal{width:56px;height:56px;margin:0 auto 12px;color:var(--gold)}
    .cb-seal svg{width:100%;height:100%;display:block}
    .cb-lead .cb-seal{color:var(--gold-deep)}
    .cb-item b{display:block;font-family:var(--disp);font-weight:700;font-size:15px;color:var(--ink)}
    .cb-item.cb-lead b{color:var(--gold)}
    .cb-item span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:5px}
    @media(max-width:640px){.cb-item{min-width:130px}}
  
.pcar-track .pcard.damp .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72%;background:no-repeat center/contain;background-image:url("assets/images/redesign/products-01.svg'http://www.w3.org/2000/svg' viewBox='0 0 240 70'%3E%3Cpath d='M0 35 Q20 8 40 35 T80 35 T120 35 T160 35 T200 35 T240 35' fill='none' stroke='white' stroke-width='2.4' stroke-opacity='0.4'/%3E%3C/svg%3E");opacity:.75;pointer-events:none}
background-image:url("assets/images/redesign/products-02.svg'http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");}
background-image:url("assets/images/redesign/products-03.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
background-image:url("assets/images/redesign/products-04.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.dgroup{margin:0}
.dgroup img{width:100%;height:auto;display:block}
.dgroup figcaption{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--on-dark-soft);text-align:center;margin-top:16px}
/* damper panel now holds the photo alone - stretch to the spec panel and centre it */
.featured.damp .xwrap{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:30px 26px}
@media(max-width:900px){.featured.damp .xwrap{padding:22px 18px}}
/* damper range cards: give the full unit room, spec-led reading */
.pcard.damp .ph{height:210px}
.pcard.damp .ph:before{color:rgba(255,255,255,.75)}
.dnote{font-family:var(--mono);font-size:11.5px;line-height:1.7;color:var(--muted);margin-top:18px;max-width:760px}
.dnote b{color:var(--ink-soft);font-weight:500}

    .certbar-sec{padding:46px 0}
    .certbar{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:26px 30px;text-align:center}
    .certbar .cb-head{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:22px}
    .certbar .cb-row{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
    .cb-item{flex:1;min-width:150px;max-width:230px;padding:6px 8px}
    .cb-seal{width:56px;height:56px;margin:0 auto 12px;color:var(--gold)}
    .cb-seal svg{width:100%;height:100%;display:block}
    .cb-lead .cb-seal{color:var(--gold-deep)}
    .cb-item b{display:block;font-family:var(--disp);font-weight:700;font-size:15px;color:var(--ink)}
    .cb-item.cb-lead b{color:var(--gold)}
    .cb-item span{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:5px}
    @media(max-width:640px){.cb-item{min-width:130px}}
  
.pcar-track .pcard.damp .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72%;background:no-repeat center/contain;background-image:url("assets/images/redesign/material-capability-01.svg'http://www.w3.org/2000/svg' viewBox='0 0 240 70'%3E%3Cpath d='M0 35 Q20 8 40 35 T80 35 T120 35 T160 35 T200 35 T240 35' fill='none' stroke='white' stroke-width='2.4' stroke-opacity='0.4'/%3E%3C/svg%3E");opacity:.75;pointer-events:none}
background-image:url("assets/images/redesign/material-capability-02.svg'http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");}
background-image:url("assets/images/redesign/material-capability-03.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
background-image:url("assets/images/redesign/material-capability-04.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
/* ---- construction cross-section diagram ---- */
.constr-sec{padding-bottom:8px}
.constr{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px 26px;margin-top:8px}
.constr svg{width:100%;height:auto;display:block}
@media(max-width:640px){.constr{padding:14px}}

.d-hd{font-family:"Archivo",sans-serif;font-weight:700;font-size:15px;fill:#24272B}
.d-hdsub{font-family:"IBM Plex Mono",monospace;font-weight:400;font-size:10.5px;fill:#B07B2F}
.d-num{font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:11px;fill:#B07B2F}
.d-lnum{font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:10px;fill:#B07B2F}
.d-lname{font-family:"Archivo",sans-serif;font-weight:600;font-size:13px;fill:#24272B}
.d-ldet{font-family:"IBM Plex Mono",monospace;font-size:10.5px;fill:#82868D}
.d-foot{font-family:"IBM Plex Mono",monospace;font-size:9.5px;fill:#A6A196;letter-spacing:.08em}

.pcar-track .pcard.damp .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72%;background:no-repeat center/contain;background-image:url("assets/images/redesign/company-01.svg'http://www.w3.org/2000/svg' viewBox='0 0 240 70'%3E%3Cpath d='M0 35 Q20 8 40 35 T80 35 T120 35 T160 35 T200 35 T240 35' fill='none' stroke='white' stroke-width='2.4' stroke-opacity='0.4'/%3E%3C/svg%3E");opacity:.75;pointer-events:none}
background-image:url("assets/images/redesign/company-02.svg'http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");}
.cert-foot{text-align:center;margin-top:24px;font-family:var(--mono);font-size:12px;letter-spacing:.02em;color:var(--muted)}
.cert-foot a{color:var(--gold);text-decoration:none;border-bottom:1px solid var(--gold-line)}
background-image:url("assets/images/redesign/company-03.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
background-image:url("assets/images/redesign/company-04.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.md-name{margin-top:16px;text-align:center}
.md-name b{font-family:var(--disp);font-weight:700;font-size:18px;color:var(--ink);display:block;letter-spacing:-.01em}
.md-name span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-top:5px;display:block}
.circle{padding:64px 0}
.circle-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}
.circle-item{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:26px 24px;transition:border-color .2s ease}
.circle-item:hover{border-color:var(--gold)}
.circle-item i{font-size:26px;color:var(--gold);display:block;margin-bottom:14px}
.circle-item b{font-family:var(--disp);font-weight:600;font-size:17px;color:var(--ink);display:block;margin-bottom:8px}
.circle-item p{font-size:14px;line-height:1.62;color:var(--ink-soft)}
@media(max-width:820px){.circle-row{grid-template-columns:1fr}}
.pcar-track .pcard.damp .ph:after{content:"";position:absolute;left:0;right:0;bottom:0;height:72%;background:no-repeat center/contain;background-image:url("assets/images/redesign/contact-01.svg'http://www.w3.org/2000/svg' viewBox='0 0 240 70'%3E%3Cpath d='M0 35 Q20 8 40 35 T80 35 T120 35 T160 35 T200 35 T240 35' fill='none' stroke='white' stroke-width='2.4' stroke-opacity='0.4'/%3E%3C/svg%3E");opacity:.75;pointer-events:none}
background-image:url("assets/images/redesign/contact-02.svg'http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");}
background-image:url("assets/images/redesign/contact-03.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
background-image:url("assets/images/redesign/contact-04.svg'http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
/* ===== Contact page ===== */
.cphero{padding:92px 0 30px}
.cphero .eyebrow.on{color:var(--gold)}
.cphero h1{font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-.02em;margin:14px 0 18px}
.cphero p{max-width:680px;font-size:17px;line-height:1.68;color:var(--ink-soft)}
.csection{padding:46px 0}
.csection.alt{background:var(--surface-2)}
.cgrid{display:grid;grid-template-columns:1.35fr .8fr;gap:34px;align-items:start}
.cformcard{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:34px 32px}
.cformcard h2{font-size:26px;letter-spacing:-.01em;margin:6px 0 24px}
.cform .frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cform .field{margin-bottom:16px;display:flex;flex-direction:column}
.cform label{font-family:var(--mono);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.cform input,.cform select,.cform textarea{font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px;outline:none;width:100%;transition:border-color .18s ease,box-shadow .18s ease}
.cform input::placeholder,.cform textarea::placeholder{color:var(--muted)}
.cform input:focus,.cform select:focus,.cform textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-line)}
.cform textarea{resize:vertical;min-height:120px}
.cform .btn{margin-top:8px}
.fnote{font-family:var(--mono);font-size:11.5px;color:var(--muted);margin-top:16px;line-height:1.65}
.fnote a{color:var(--gold)}
.caside{display:flex;flex-direction:column;gap:20px}
.cquick,.chours{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px 22px}
.cquick .eyebrow,.chours .eyebrow{margin-bottom:14px}
.cq{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}
.cq:last-child{border-bottom:none;padding-bottom:0}
.cq i{font-size:20px;color:var(--gold);width:24px;text-align:center;flex:none}
.cq span{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
.cq b{font-family:var(--disp);font-weight:600;font-size:15px;color:var(--ink)}
.chours p{margin:5px 0;font-size:14px;color:var(--ink-soft)}
.chours .muted{color:var(--muted);font-size:12.5px;line-height:1.6}
.cdir{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:32px}
.cdir-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px 18px;border-top:3px solid var(--line-2)}
.cdir-card.lead{border-top-color:var(--gold)}
.cdir-card .role{font-family:var(--mono);font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:11px}
.cdir-card b{font-family:var(--disp);font-weight:600;font-size:16px;color:var(--ink);display:block;margin-bottom:9px}
.cdir-card a{font-family:var(--mono);font-size:11.5px;color:var(--ink-soft);text-decoration:none;word-break:break-all;line-height:1.5}
.cdir-card a:hover{color:var(--gold)}
.cloc{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}
.cloc-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px 22px}
.cloc-card .tag{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin-bottom:13px}
.cloc-card p{font-size:14.5px;line-height:1.72;color:var(--ink-soft)}
.cloc-card.contactline a{display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:13px;color:var(--ink);text-decoration:none;padding:7px 0}
.cloc-card.contactline a:hover{color:var(--gold)}
.cloc-card.contactline i{color:var(--gold);width:18px}
.cmap{margin-top:28px;border:1px solid var(--line);border-radius:16px;overflow:hidden;line-height:0}
.cmap iframe{width:100%;height:430px;border:0;display:block;filter:grayscale(.25) contrast(1.02)}
@media(max-width:920px){.cgrid{grid-template-columns:1fr}.cdir{grid-template-columns:repeat(2,1fr)}.cloc{grid-template-columns:1fr}}
@media(max-width:560px){.cform .frow{grid-template-columns:1fr}.cdir{grid-template-columns:1fr}}

/* Product detail galleries */
.product-detail{padding:82px 0 90px}
.product-detail .back-link{display:inline-flex;align-items:center;gap:8px;color:var(--gold);font-family:var(--mono);font-size:12px;text-decoration:none;margin-bottom:28px}
.detail-head{max-width:800px;margin-bottom:38px}
.detail-head h1{font-size:clamp(36px,5vw,62px);line-height:1.04;letter-spacing:-.025em;margin:12px 0 16px}
.detail-head p{font-size:17px;line-height:1.7;color:var(--ink-soft)}
.product-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gallery-item{display:block;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;cursor:zoom-in;padding:0;transition:transform .2s ease,border-color .2s ease}
.gallery-item:hover{transform:translateY(-3px);border-color:var(--gold)}
.gallery-item img{display:block;width:100%;height:280px;object-fit:cover}
.pcard h3 a{color:inherit;text-decoration:none}.pcard h3 a:hover{color:var(--gold)}
.pcard[data-product-link]{cursor:pointer}.pcard[data-product-link]:focus-visible{outline:3px solid var(--gold-line);outline-offset:3px}
.form-status{padding:12px 14px;border-radius:10px;margin:0 0 18px;font-size:14px;line-height:1.5}
.form-status.success{color:#17643a;background:#eaf8f0;border:1px solid #b9e7ca}
.form-status.error{color:#8a2e2e;background:#fff0f0;border:1px solid #efc2c2}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.circle-section{display:block;grid-template-columns:none}
.circle-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:44px;align-items:stretch}
.circle-section .circle-copy{min-width:0;padding:0;display:block}
.circle-copy .sec-head.center{max-width:820px;margin-inline:auto}
.circle-copy .circle-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.circle-copy .circle-item{padding:24px 20px}
.circle-visual{margin:0;position:relative;border-radius:18px;overflow:hidden;background:var(--surface-2);min-height:500px}
.circle-visual img{display:block;width:100%;height:100%;min-height:500px;object-fit:cover}
.circle-visual:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.22);border-radius:inherit;pointer-events:none}
@media(max-width:1100px){.circle-layout{grid-template-columns:1fr}.circle-visual,.circle-visual img{min-height:0;aspect-ratio:16/9}}
@media(max-width:760px){.circle-copy .circle-row{grid-template-columns:1fr}}
.lightbox{position:fixed;inset:0;z-index:10000;background:rgba(8,12,16,.94);display:none;align-items:center;justify-content:center;padding:28px}
.lightbox.is-open{display:flex}
.lightbox img{max-width:min(1200px,92vw);max-height:86vh;object-fit:contain;border-radius:8px}
.lightbox button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;width:44px;height:44px;border-radius:50%;font-size:24px;cursor:pointer}
.lightbox-close{right:24px;top:24px}.lightbox-prev{left:24px}.lightbox-next{right:24px}
@media(max-width:900px){.product-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.product-gallery{grid-template-columns:1fr}.gallery-item img{height:240px}.lightbox-prev{left:8px}.lightbox-next{right:8px}}


/* Former inline presentation rules */
.inline-1{grid-template-columns:repeat(5,1fr)}
.inline-2{padding-top:0}
.inline-3{object-position:27% center}
.inline-4{text-align:center;margin-top:22px}
.inline-5{vertical-align:middle;margin-left:3px}
.inline-6{font-family:var(--mono);font-size:12px;color:var(--ink-soft)}
.inline-7{color:var(--gold)}
.inline-8{display:none}
.inline-9{background:var(--steel)}
.inline-10{background:transparent;border:1px solid var(--line-2);color:var(--ink);margin-left:10px}
.inline-11{object-fit:contain;padding:16px;background:radial-gradient(120% 100% at 50% 40%,#252b33,#12161b);filter:drop-shadow(0 10px 18px rgba(0,0,0,.5))}
.inline-12{padding-bottom:40px}
.inline-13{border-top-color:#C4671E}
.inline-14{grid-template-columns:repeat(3,1fr)}
.inline-15{font-size:32px;margin-top:12px}
.inline-16{color:var(--ink-soft);margin-top:14px}
.inline-17{color:var(--ink-soft);margin-top:12px}
