@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=IBM+Plex+Mono:wght@300;400;500&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400;1,500&display=swap');
/* ============ index.css (base) ============ */
:root {
  --text: #6b6375;
  --text-h: #08060d;
  --bg: #fff;
  --border: #e5e4e7;
  --code-bg: #f4f3ec;
  --accent: #aa3bff;
  --accent-bg: rgba(170, 59, 255, 0.1);
  --accent-border: rgba(170, 59, 255, 0.5);
  --social-bg: rgba(244, 243, 236, 0.5);
  --shadow:
    rgba(0, 0, 0, 0.1) 0 10px 15px -3px, rgba(0, 0, 0, 0.05) 0 4px 6px -2px;

  --sans: system-ui, 'Segoe UI', Roboto, sans-serif;
  --heading: system-ui, 'Segoe UI', Roboto, sans-serif;
  --mono: ui-monospace, Consolas, monospace;

  font: 18px/145% var(--sans);
  letter-spacing: 0.18px;
  color-scheme: light dark;
  color: var(--text);
  background: var(--bg);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  @media (max-width: 1024px) {
    font-size: 16px;
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --text: #9ca3af;
    --text-h: #f3f4f6;
    --bg: #16171d;
    --border: #2e303a;
    --code-bg: #1f2028;
    --accent: #c084fc;
    --accent-bg: rgba(192, 132, 252, 0.15);
    --accent-border: rgba(192, 132, 252, 0.5);
    --social-bg: rgba(47, 48, 58, 0.5);
    --shadow:
      rgba(0, 0, 0, 0.4) 0 10px 15px -3px, rgba(0, 0, 0, 0.25) 0 4px 6px -2px;
  }

  #social .button-icon {
    filter: invert(1) brightness(2);
  }
}

body {
  margin: 0;
}

#root {
  width: 1126px;
  max-width: 100%;
  margin: 0 auto;
  text-align: center;
  border-inline: 1px solid var(--border);
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}

h1,
h2 {
  font-family: var(--heading);
  font-weight: 500;
  color: var(--text-h);
}

h1 {
  font-size: 56px;
  letter-spacing: -1.68px;
  margin: 32px 0;
  @media (max-width: 1024px) {
    font-size: 36px;
    margin: 20px 0;
  }
}
h2 {
  font-size: 24px;
  line-height: 118%;
  letter-spacing: -0.24px;
  margin: 0 0 8px;
  @media (max-width: 1024px) {
    font-size: 20px;
  }
}
p {
  margin: 0;
}

code,
.counter {
  font-family: var(--mono);
  display: inline-flex;
  border-radius: 4px;
  color: var(--text-h);
}

code {
  font-size: 15px;
  line-height: 135%;
  padding: 4px 8px;
  background: var(--code-bg);
}


/* ============ styles.js (app styles, injected via <style>) ============ */


*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:16px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
:root{
  --bg:#F8F6F2;
  --bg2:#F2EFE9;
  --bg3:#EAE6DD;
  --white:#FFFFFF;
  --panel:#FFFFFF;
  --panel2:#F5F3EE;
  --border:#E2DDD5;
  --border2:#D4CEC4;
  --ink:#17150F;
  --ink2:#2E2A22;
  --body:#4A453B;
  --muted:#8A8278;
  --muted2:#B0AB9F;
  --copper:#B86028;
  --copper2:#D4743A;
  --copper-soft:#FDF1E8;
  --copper-border:#F0C4A0;
  --gold:#9A7A20;
  --gold-soft:#FBF6E8;
  --green:#1F6B3A;
  --green-soft:#EAF5EF;
  --cursor-default:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cpath d='M6 3.5L21.5 14L14.7 15.1L18.4 23.2L15.7 24.4L12 16.4L7.5 21.5L6 3.5Z' fill='%23B86028' stroke='%2317150F' stroke-width='1.4' stroke-linejoin='round'/%3E%3C/svg%3E") 6 4, auto;
  --cursor-pointer:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath d='M8 4L23 15L16.4 15.8L20 24L17.1 25.2L13.6 17.2L9.1 22.5L8 4Z' fill='%239A7A20' stroke='%2317150F' stroke-width='1.4' stroke-linejoin='round'/%3E%3Ccircle cx='22.5' cy='7.5' r='3' fill='%23D4743A'/%3E%3C/svg%3E") 8 4, pointer;
  --shadow-xs:0 1px 3px rgba(23,21,15,0.06);
  --shadow-sm:0 2px 8px rgba(23,21,15,0.08);
  --shadow-md:0 8px 24px rgba(23,21,15,0.10);
  --shadow-lg:0 16px 48px rgba(23,21,15,0.12);
  --r1:4px;--r2:8px;--r3:16px;--r4:24px;--rpill:999px;
  --nav-h:64px;
  --max:1440px;
}
body{
  font-family:'Plus Jakarta Sans',sans-serif;
  background:var(--bg);color:var(--body);
  overflow-x:hidden;line-height:1.55;cursor:var(--cursor-default);
}
a,button,input,select,textarea{font:inherit;}
button,a,[role="button"],.prod-card,.blog-card,.val-card,.feat-cell,.sust-pillar,.ep-card,.hp-card,.sb-item{cursor:var(--cursor-pointer);touch-action:manipulation;-webkit-tap-highlight-color:transparent;}
input,textarea,select{cursor:auto;}
img,svg,video,canvas{max-width:100%;}
h1,h2,h3,h4{
  font-family:'Plus Jakarta Sans',sans-serif;
  font-weight:700;letter-spacing:-0.025em;color:var(--ink);
}
.mono{font-family:'IBM Plex Mono',monospace;}
.serif{font-family:'Cormorant Garamond',serif;font-style:italic;}
.w-full{width:100%;}
.max-w{max-width:var(--max);margin:0 auto;}

/* ── CURSOR ── */
.cur{
  position:fixed;left:0;top:0;width:12px;height:12px;
  background:#B86028;border-radius:50%;
  pointer-events:none;z-index:9999;
  transform:translate3d(-100px,-100px,0) translate(-50%,-50%);
  transition:width .12s ease,height .12s ease,background .18s ease;
  box-shadow:0 2px 8px rgba(184,96,40,.4);
  will-change:transform,width,height;
}
.cur::after{
  content:'';position:absolute;inset:2px;
  background:rgba(255,255,255,.7);border-radius:50%;
}
.cur-ring{
  position:fixed;left:0;top:0;width:44px;height:44px;
  pointer-events:none;z-index:9998;opacity:.35;
  transform:translate3d(-100px,-100px,0) translate(-50%,-50%);
  transition:width .2s ease,height .2s ease,opacity .18s ease;
  will-change:transform,width,height;
}
.cur-ring::before{
  content:'';position:absolute;inset:0;
  border:2px solid #B86028;border-radius:50%;
  box-shadow:0 0 0 8px rgba(184,96,40,.08);
  transition:all .2s ease;
}
.cur.hov{width:16px;height:16px;background:#D4743A;}
.cur-ring.hov{width:64px;height:64px;opacity:.55;}
.cur-ring.hov::before{border-color:#D4743A;box-shadow:0 0 0 12px rgba(212,116,58,.1);}
@media(max-width:768px),(pointer:coarse){
  .cur,.cur-ring{display:none;}
  body{cursor:auto;}
}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  height:var(--nav-h);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 2.5rem;
  background:rgba(248,246,242,0.95);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(20px);
  transition:box-shadow .3s ease,background .3s ease;
  will-change:box-shadow;
}
nav.scrolled{box-shadow:var(--shadow-sm);}
.logo{display:flex;align-items:center;gap:.55rem;background:none;border:none;cursor:pointer;padding:0;text-decoration:none;}
.logo-gem{
  width:26px;height:26px;
  background:linear-gradient(135deg,var(--copper) 0%,var(--copper2) 100%);
  clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);
  flex-shrink:0;
}
.logo-word{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.1rem;font-weight:800;color:var(--ink);letter-spacing:-.02em;}
.nav-links{display:flex;gap:.2rem;list-style:none;}
.nav-links button{
  background:none;border:none;cursor:pointer;
  font-family:'Plus Jakarta Sans',sans-serif;font-size:.82rem;font-weight:500;
  color:var(--muted);padding:.4rem .85rem;border-radius:var(--r2);
  transition:color .2s,background .2s;
}
.nav-links button:hover{color:var(--ink);background:var(--bg2);}
.nav-links button.active{color:var(--copper);background:var(--copper-soft);}
.btn-cta-nav{
  background:var(--ink);color:var(--bg);border:none;cursor:pointer;
  padding:.52rem 1.3rem;border-radius:var(--r2);
  font-family:'Plus Jakarta Sans',sans-serif;font-size:.82rem;font-weight:600;
  transition:all .2s;letter-spacing:-.01em;
}
.btn-cta-nav:hover{background:var(--copper);transform:translateY(-1px);}
.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:.5rem;}
.hamburger span{width:22px;height:1.5px;background:var(--ink);border-radius:2px;transition:all .3s;display:block;}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}

/* ── DRAWER ── */
.drw-overlay{position:fixed;inset:0;background:rgba(23,21,15,.55);z-index:198;opacity:0;pointer-events:none;transition:opacity .3s ease;backdrop-filter:blur(2px);}
.drw-overlay.open{opacity:1;pointer-events:auto;}
.drw{position:fixed;top:0;right:0;bottom:0;width:78%;max-width:310px;background:var(--white);border-left:1px solid var(--border);z-index:199;transform:translateX(100%);transition:transform .38s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;padding-top:var(--nav-h);will-change:transform;}
.drw.open{transform:translateX(0);}
.drw-nav{padding:1.5rem 1.2rem;display:flex;flex-direction:column;gap:.2rem;flex:1;}
.drw-nav button{background:none;border:none;cursor:pointer;text-align:left;font-family:'Plus Jakarta Sans',sans-serif;font-size:.9rem;font-weight:500;color:var(--body);padding:.85rem 1rem;border-radius:var(--r2);transition:all .2s;}
.drw-nav button:hover{background:var(--bg2);color:var(--ink);}
.drw-nav button.active{background:var(--copper-soft);color:var(--copper);}
.drw-foot{padding:1.5rem;border-top:1px solid var(--border);}
.drw-foot button{width:100%;background:var(--ink);color:var(--bg);border:none;cursor:pointer;padding:.85rem;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.85rem;font-weight:600;}

/* ── PAGE ── */
.page{min-height:100vh;animation:fadeUp .45s cubic-bezier(.22,1,.36,1);will-change:opacity,transform;}
@keyframes fadeUp{from{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translate3d(0,0,0)}}

/* ── BUTTONS ── */
.btn-p{background:var(--copper);color:var(--white);border:none;cursor:pointer;padding:.75rem 1.8rem;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.85rem;font-weight:600;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;letter-spacing:-.01em;}
.btn-p:hover{background:var(--copper2);transform:translateY(-1px);box-shadow:0 4px 16px rgba(184,96,40,0.3);}
.btn-g{background:none;color:var(--ink);cursor:pointer;padding:.75rem 1.8rem;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.85rem;font-weight:500;border:1.5px solid var(--border2);transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease;}
.btn-g:hover{border-color:var(--copper);color:var(--copper);background:var(--copper-soft);}
.btn-dark{background:var(--ink);color:var(--bg);border:none;cursor:pointer;padding:.85rem 2.2rem;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.85rem;font-weight:600;transition:all .2s;}
.btn-dark:hover{background:var(--ink2);transform:translateY(-1px);}

/* ── SECTION HELPERS ── */
.section{padding:5.5rem 2.5rem;}
.sec-label{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:'IBM Plex Mono',monospace;font-size:.68rem;font-weight:500;
  color:var(--copper);letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:1rem;
}
.sec-label::before{content:'';width:18px;height:1px;background:var(--copper);}
.sec-title{font-size:clamp(1.9rem,3.5vw,2.8rem);line-height:1.12;color:var(--ink);margin-bottom:.8rem;}
.sec-sub{color:var(--muted);font-size:.92rem;line-height:1.8;max-width:500px;}
.text-copper{color:var(--copper);}

/* ── HERO ── */
.hero{
  min-height:100vh;padding-top:var(--nav-h);
  display:grid;grid-template-columns:1fr 1fr;
  position:relative;overflow:hidden;background:var(--white);
}
.hero-left{
  padding:5rem 3rem 4rem 2.5rem;
  display:flex;flex-direction:column;justify-content:center;
  position:relative;z-index:2;
  border-right:1px solid var(--border);
}
.hero-right{position:relative;overflow:hidden;background:var(--bg);}
.hero-badge{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--copper-soft);border:1px solid var(--copper-border);
  border-radius:var(--rpill);padding:.32rem .9rem;
  font-family:'IBM Plex Mono',monospace;font-size:.65rem;
  color:var(--copper);letter-spacing:.1em;text-transform:uppercase;
  margin-bottom:2rem;width:fit-content;
}
.bdot{width:5px;height:5px;background:var(--copper);border-radius:50%;animation:blink 2s infinite;}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.2}}
.hero h1{font-size:clamp(2.8rem,4.5vw,4.2rem);line-height:1.06;margin-bottom:1.5rem;}
.hero h1 em{font-family:'Cormorant Garamond',serif;font-style:italic;color:var(--copper);font-weight:400;}
.hero-desc{color:var(--muted);font-size:.95rem;line-height:1.85;max-width:430px;margin-bottom:2.5rem;}
.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:3rem;}
.hero-kpi{
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid var(--border);border-radius:var(--r3);
  background:var(--bg);overflow:hidden;
}
.kpi-cell{padding:1.1rem;border-right:1px solid var(--border);}
.kpi-cell:last-child{border-right:none;}
.kpi-cell .n{font-family:'IBM Plex Mono',monospace;font-size:1.4rem;color:var(--copper);font-weight:500;}
.kpi-cell .l{font-family:'IBM Plex Mono',monospace;font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-top:.2rem;}

/* ── SHIP STATUS CARDS ── */
.ship-panel{
  position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);
  width:calc(100% - 3rem);max-width:330px;
  display:flex;flex-direction:column;gap:.5rem;z-index:3;
}
.ship-card{
  background:rgba(255,255,255,0.96);border:1px solid var(--border2);
  border-radius:var(--r2);padding:.75rem 1rem;
  display:flex;align-items:center;gap:.85rem;
  box-shadow:var(--shadow-sm);
  animation:slideFromR .5s ease forwards;opacity:0;
}
.ship-card:nth-child(1){animation-delay:.2s;}
.ship-card:nth-child(2){animation-delay:.5s;}
.ship-card:nth-child(3){animation-delay:.8s;}
@keyframes slideFromR{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
.ship-flag{width:30px;height:30px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r1);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;}
.ship-lbl{font-family:'IBM Plex Mono',monospace;font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;}
.ship-val{font-size:.82rem;font-weight:600;color:var(--ink);}
.ship-st{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:.58rem;padding:.2rem .5rem;border-radius:var(--r1);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;}
.st-live{background:var(--green-soft);color:var(--green);border:1px solid rgba(31,107,58,0.25);}
.st-tr{background:var(--copper-soft);color:var(--copper);border:1px solid var(--copper-border);}
.st-sp{background:var(--bg2);color:var(--muted);border:1px solid var(--border);}

/* ── TICKER ── */
.ticker{height:40px;background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;display:flex;align-items:center;}
.ticker-track{display:flex;gap:0;white-space:nowrap;animation:tick 30s linear infinite;}
@keyframes tick{to{transform:translateX(-50%)}}
.ti{display:inline-flex;align-items:center;gap:.6rem;padding:0 2rem;border-right:1px solid var(--border);}
.ti-dot{width:3px;height:3px;background:var(--copper);border-radius:50%;}
.ti-t{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;}
.ti-v{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--copper);font-weight:500;}

.lme-ticker{height:44px;background:var(--ink);border-bottom:1px solid rgba(255,255,255,0.08);overflow:hidden;display:flex;align-items:center;position:relative;}
.lme-ticker-left{flex-shrink:0;display:flex;align-items:center;gap:.5rem;padding:0 1.2rem;border-right:1px solid rgba(255,255,255,0.1);height:100%;background:var(--copper);}
.lme-ticker-label{font-family:'IBM Plex Mono',monospace;font-size:.62rem;font-weight:600;color:#fff;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;}
.lme-pulse{width:6px;height:6px;background:#fff;border-radius:50%;animation:blink 1.5s infinite;flex-shrink:0;}
.lme-track-wrap{flex:1;overflow:hidden;height:100%;display:flex;align-items:center;}
.lme-track{display:flex;gap:0;white-space:nowrap;animation:tick 38s linear infinite;}
.lme-item{display:inline-flex;align-items:center;gap:.65rem;padding:0 2rem;border-right:1px solid rgba(255,255,255,0.07);height:100%;}
.lme-metal{font-family:'IBM Plex Mono',monospace;font-size:.63rem;color:rgba(248,246,242,.45);letter-spacing:.1em;text-transform:uppercase;}
.lme-price{font-family:'IBM Plex Mono',monospace;font-size:.75rem;font-weight:600;color:#fff;}
.lme-unit{font-family:'IBM Plex Mono',monospace;font-size:.58rem;color:rgba(248,246,242,.38);margin-left:.1rem;}
.lme-chg{font-family:'IBM Plex Mono',monospace;font-size:.63rem;font-weight:500;padding:.15rem .38rem;border-radius:2px;}
.lme-chg.up{background:rgba(31,107,58,.35);color:#6FD4A0;}
.lme-chg.dn{background:rgba(180,40,40,.25);color:#F0908A;}
.lme-chg.flat{background:rgba(255,255,255,.08);color:rgba(248,246,242,.45);}
.lme-loading{font-family:'IBM Plex Mono',monospace;font-size:.63rem;color:rgba(248,246,242,.3);padding:0 1.5rem;}
*/

/* ── FEATURE GRID ── */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:var(--r3);overflow:hidden;}
.feat-cell{padding:2rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--white);transition:background .2s,box-shadow .2s;}
.feat-cell:hover{background:var(--bg);box-shadow:inset 0 0 0 2px var(--copper-border);}
.feat-cell:nth-child(3n){border-right:none;}
.feat-cell:nth-last-child(-n+3){border-bottom:none;}
.f-num{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted2);letter-spacing:.1em;margin-bottom:1rem;}
.feat-cell h4{font-size:.95rem;font-weight:700;color:var(--ink);margin-bottom:.5rem;}
.feat-cell p{font-size:.84rem;color:var(--muted);line-height:1.72;}

/* ── PRODUCT CARDS ── */
.prod-filter{display:flex;gap:.5rem;flex-wrap:wrap;}
.pd-detail-grid{width:100%;}
.pd-info{min-width:0;}
.pd-rating-row{flex-wrap:wrap;}
.pd-thumbs{overflow-x:auto;padding-bottom:.15rem;scrollbar-width:thin;}
.pd-actions{z-index:2;}
@media(max-width:900px){
  .pd-detail-grid{grid-template-columns:1fr !important;}
  .pd-gallery{position:static !important;top:auto !important;border-right:none !important;border-bottom:1px solid var(--border);padding:1.2rem !important;}
  .pd-info{padding:1.6rem 1.2rem 2rem !important;overflow:visible !important;}
  .pd-main-image{max-width:520px;margin:0 auto;}
  .pd-thumbs{justify-content:flex-start;}
  .pd-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .pd-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .pd-rating-row{align-items:flex-start !important;}
  .pd-actions{position:static !important;padding:1.2rem 0 0 !important;}
}
@media(max-width:600px){
  .pd-gallery{padding:1rem !important;}
  .pd-info{padding:1.35rem 1rem 1.8rem !important;}
  .pd-main-image{border-radius:var(--r2) !important;}
  .pd-thumbs > div{width:64px !important;height:64px !important;}
  .pd-metric-grid{gap:7px !important;}
  .pd-quick-grid{grid-template-columns:1fr !important;}
  .pd-rating-row{gap:.45rem !important;}
  .pd-info h1{text-align:left;}
  .pd-info table{table-layout:fixed;}
  .pd-info td{word-break:break-word;}
}
.pf-btn{background:none;border:1px solid var(--border2);cursor:pointer;padding:.42rem 1rem;border-radius:var(--rpill);font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;transition:all .2s;}
.pf-btn:hover{border-color:var(--copper);color:var(--copper);}
.pf-btn.active{background:var(--copper);border-color:var(--copper);color:var(--white);}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;background:var(--border);}
.prod-card{background:var(--white);padding:1.8rem;cursor:pointer;transition:transform .22s ease,background .22s ease,box-shadow .22s ease;display:flex;flex-direction:column;position:relative;overflow:hidden;will-change:transform;}
.prod-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:background .22s;}
.prod-card:hover{background:var(--bg);box-shadow:var(--shadow-md);transform:translateY(-2px);}
.prod-card:hover::before{background:linear-gradient(90deg,var(--copper),var(--gold));}
.pc-cat{font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem;}
.pc-icon{font-size:1.4rem;margin-bottom:.75rem;color:var(--copper);}
.pc-img{aspect-ratio:16/9;border-radius:1rem;overflow:hidden;margin-bottom:1rem;background:var(--bg2);}
.pc-img img{width:100%;display:block;height:100%;object-fit:cover;}
.prod-card h3{font-size:1.05rem;font-weight:700;color:var(--ink);margin-bottom:.25rem;line-height:1.3;}
.pc-sub{font-size:.76rem;color:var(--muted);margin-bottom:.9rem;font-family:'IBM Plex Mono',monospace;}
.pc-desc{font-size:.84rem;color:var(--body);line-height:1.68;margin-bottom:1.2rem;flex:1;}
.pc-specs{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;margin-bottom:1.2rem;}
.pc-spec{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r1);padding:.42rem .65rem;}
.pc-spec .sk{font-family:'IBM Plex Mono',monospace;font-size:.56rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;}
.pc-spec .sv{font-family:'IBM Plex Mono',monospace;font-size:.75rem;color:var(--ink);font-weight:500;margin-top:2px;}
.pc-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--border);}
.pc-supply{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);}
.pc-arr{font-size:.78rem;color:var(--muted2);transition:color .2s,transform .2s;}
.prod-card:hover .pc-arr{color:var(--copper);transform:translateX(3px);}

/* ── E-COMMERCE PRODUCT GRID ── */
.ecom-layout{display:grid;grid-template-columns:220px 1fr;min-height:60vh;align-items:start;}
.ecom-sidebar{padding:1.5rem;background:var(--white);border-right:1px solid var(--border);position:sticky;top:calc(var(--nav-h) + 56px);}
.ecom-sidebar h4{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.8rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);}
.ecom-sidebar .sb-item{display:flex;align-items:center;gap:.55rem;padding:.45rem .5rem;border-radius:var(--r1);cursor:pointer;transition:background .15s;font-size:.84rem;color:var(--body);}
.ecom-sidebar .sb-item:hover{background:var(--bg2);}
.ecom-sidebar .sb-item.active{background:var(--copper-soft);color:var(--copper);font-weight:600;}
.ecom-sidebar .sb-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.ecom-main{background:var(--bg2);}
.ecom-sort{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;background:var(--white);border-bottom:1px solid var(--border);font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);flex-wrap:wrap;}
.ecom-sort span{color:var(--ink);font-weight:500;}
.sort-btn{background:none;border:1px solid var(--border2);cursor:pointer;padding:.28rem .7rem;border-radius:var(--r1);font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);transition:all .15s;}
.sort-btn:hover,.sort-btn.active{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.ecom-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:12px;}
.ep-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r3);overflow:hidden;cursor:pointer;transition:box-shadow .24s ease,transform .24s ease,border-color .24s ease;display:flex;flex-direction:column;position:relative;will-change:transform;}
.ep-card:hover{box-shadow:0 10px 28px rgba(23,21,15,0.13);transform:translateY(-4px);border-color:var(--border2);}
.ep-badge-wrap{position:absolute;top:.7rem;left:.7rem;z-index:2;display:flex;flex-direction:column;gap:.3rem;}
.ep-badge{font-family:'IBM Plex Mono',monospace;font-size:.56rem;font-weight:600;padding:.22rem .55rem;border-radius:var(--rpill);letter-spacing:.06em;text-transform:uppercase;}
.ep-badge.certified{background:#EAF5EF;color:#1F6B3A;border:1px solid rgba(31,107,58,0.2);}
.ep-badge.direct{background:var(--copper-soft);color:var(--copper);border:1px solid var(--copper-border);}
.ep-badge.new{background:var(--gold-soft);color:var(--gold);border:1px solid rgba(154,122,32,0.2);}
.ep-img-wrap{width:100%;aspect-ratio:4/3;background:var(--bg2);overflow:hidden;flex-shrink:0;position:relative;}
.ep-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.22,1,.36,1);}
.ep-card:hover .ep-img-wrap img{transform:scale(1.06);}
.ep-img-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.8rem;color:var(--copper);opacity:.35;}
.ep-body{padding:1rem 1.1rem;flex:1;display:flex;flex-direction:column;}
.ep-origin{font-family:'IBM Plex Mono',monospace;font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.32rem;}
.ep-name{font-size:1rem;font-weight:700;color:var(--ink);margin-bottom:.2rem;line-height:1.28;}
.ep-sub{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);margin-bottom:.7rem;}
.ep-stars{display:flex;align-items:center;gap:.35rem;margin-bottom:.75rem;}
.ep-star-pill{background:var(--copper);color:var(--white);font-family:'IBM Plex Mono',monospace;font-size:.62rem;font-weight:600;padding:.18rem .45rem;border-radius:3px;display:flex;align-items:center;gap:.25rem;}
.ep-cert-count{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);}
.ep-specs-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:.9rem;}
.ep-spec-chip{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r1);padding:.35rem .55rem;}
.ep-spec-chip .ek{font-family:'IBM Plex Mono',monospace;font-size:.52rem;color:var(--muted2);text-transform:uppercase;letter-spacing:.06em;}
.ep-spec-chip .ev{font-family:'IBM Plex Mono',monospace;font-size:.7rem;color:var(--ink);font-weight:600;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ep-divider{height:1px;background:var(--border);margin-bottom:.75rem;}
.ep-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;}
.ep-supply-tag{font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:var(--muted);display:flex;align-items:center;gap:.3rem;}
.ep-supply-tag::before{content:'';width:6px;height:6px;background:var(--green);border-radius:50%;flex-shrink:0;}
.ep-cta{background:var(--copper);color:var(--white);border:none;cursor:pointer;padding:.42rem .9rem;border-radius:var(--r2);font-family:'IBM Plex Mono',monospace;font-size:.62rem;font-weight:600;transition:all .18s;white-space:nowrap;}
.ep-cta:hover{background:var(--copper2);}
.ep-count-bar{padding:.5rem 1.5rem;background:var(--bg2);border-bottom:1px solid var(--border);font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);}
@media(max-width:900px){.ecom-layout{grid-template-columns:1fr;}.ecom-sidebar{position:static;display:flex;flex-wrap:wrap;gap:.4rem;border-right:none;border-bottom:1px solid var(--border);}.ecom-sidebar h4{display:none;}.ecom-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}}
@media(max-width:600px){.ecom-grid{grid-template-columns:1fr;gap:10px;padding:10px;}.ep-specs-row{grid-template-columns:1fr 1fr;}.ep-body{padding:1rem;}.ecom-sidebar{padding:1rem;}.ecom-sidebar .sb-item{font-size:.78rem;}}

/* ── HOME PREVIEW IMAGE CARDS ── */
.hp-card{background:var(--white);cursor:pointer;transition:transform .24s ease,box-shadow .24s ease,background .24s ease;display:flex;flex-direction:column;overflow:hidden;will-change:transform;}
.hp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.hp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);z-index:2;}
.hp-img{width:100%;height:145px;overflow:hidden;position:relative;background:var(--bg2);flex-shrink:0;}
.hp-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,1,.36,1);}
.hp-card:hover .hp-img img{transform:scale(1.07);}
.hp-img-ov{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 50%,rgba(23,21,15,.3) 100%);}
.hp-body{padding:1.1rem 1.3rem;}

/* ── MODAL ── */
.modal-ov{position:fixed;inset:0;background:rgba(23,21,15,.55);z-index:300;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease;backdrop-filter:blur(6px);}
@keyframes fadeIn{from{opacity:0}}
.modal{background:var(--white);border:1px solid var(--border);border-radius:var(--r4);max-width:740px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideUp .25s ease;}
@keyframes slideUp{from{transform:translateY(14px);opacity:0}}
.modal-hd{padding:1.8rem 2.2rem 1.5rem;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--white);z-index:2;display:flex;justify-content:space-between;align-items:flex-start;}
.modal-bd{padding:1.8rem 2.2rem;}
.close-x{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r1);width:32px;height:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.9rem;transition:all .2s;flex-shrink:0;}
.close-x:hover{background:var(--copper-soft);border-color:var(--copper-border);color:var(--copper);}
.spec-sec{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--copper);letter-spacing:.12em;text-transform:uppercase;margin:1.4rem 0 .6rem;}
.spec-tbl{width:100%;border-collapse:collapse;}
.spec-tbl tr{border-bottom:1px solid var(--border);}
.spec-tbl td{padding:.58rem .4rem;font-size:.84rem;}
.spec-tbl td:first-child{color:var(--muted);font-family:'IBM Plex Mono',monospace;font-size:.72rem;width:46%;}
.spec-tbl td:last-child{color:var(--ink);font-weight:600;text-align:right;font-family:'IBM Plex Mono',monospace;font-size:.72rem;}
.app-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.8rem;}
.app-tag{background:var(--bg2);border:1px solid var(--border);border-radius:var(--rpill);padding:.28rem .75rem;font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--body);}

/* ── ABOUT ── */
/* FIX: was .a.about-hero (wrong selector) — now correctly .about-hero with proper top padding */
.about-hero{
  padding:calc(var(--nav-h) + 5rem) 2.5rem 5rem;
  background:var(--white);border-bottom:1px solid var(--border);
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;
}
.ab-wrap{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:var(--r4);overflow:hidden;margin:0 2.5rem;}
.ab-l{background:var(--bg2);padding:2.5rem;border-right:1px solid var(--border);}
.ab-r{padding:2.5rem;background:var(--white);}
.ab-year{font-family:'IBM Plex Mono',monospace;font-size:5rem;font-weight:700;color:var(--border2);line-height:1;margin-bottom:1.2rem;}
.ab-list{list-style:none;display:flex;flex-direction:column;gap:.5rem;}
.ab-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:.84rem;color:var(--body);line-height:1.6;padding:.5rem 0;border-bottom:1px solid var(--border);}
.ab-list li:last-child{border-bottom:none;}
.ab-list li::before{content:'▸';color:var(--copper);font-size:.6rem;margin-top:.3rem;flex-shrink:0;}

/* ── LEADERS ── */
.leader-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:540px;border-top:1px solid var(--border);}
.leader-img{position:relative;overflow:hidden;}
.leader-img img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s;}
.leader-wrap:hover .leader-img img{transform:scale(1.04);}
.li-ov-r{position:absolute;inset:0;background:linear-gradient(to left,var(--white) 0%,transparent 55%);}
.li-ov-l{position:absolute;inset:0;background:linear-gradient(to right,var(--white) 0%,transparent 55%);}
.leader-content{padding:3.5rem 2.5rem;display:flex;flex-direction:column;justify-content:center;background:var(--white);}
.leader-tag{display:inline-flex;align-items:center;gap:.5rem;font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--copper);letter-spacing:.12em;text-transform:uppercase;margin-bottom:1.2rem;}
.leader-tag::before{content:'';width:14px;height:1px;background:var(--copper);}
.leader-name{font-family:'IBM Plex Mono',monospace;font-size:.78rem;color:var(--muted);letter-spacing:.08em;margin-bottom:.4rem;}
.leader-title{font-size:clamp(1.5rem,2.3vw,2rem);color:var(--ink);line-height:1.2;margin-bottom:1.2rem;}
.leader-q{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1rem;color:var(--body);line-height:1.85;padding-left:1.2rem;border-left:2px solid var(--copper-border);margin-bottom:1.5rem;}
.ldr-pills{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.4rem;}
.ldr-pill{background:var(--bg2);border:1px solid var(--border);border-radius:var(--rpill);font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);padding:.28rem .7rem;}
.ldr-metrics{display:flex;gap:2rem;padding-top:1.2rem;border-top:1px solid var(--border);}
.lm-n{font-family:'IBM Plex Mono',monospace;font-size:1.5rem;color:var(--copper);}
.lm-l{font-family:'IBM Plex Mono',monospace;font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:.2rem;}

/* ── VALUE CARDS ── */
.val-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--border);border-radius:var(--r3);overflow:hidden;}
.val-card{background:var(--white);padding:1.8rem;transition:background .2s;}
.val-card:hover{background:var(--bg);}
.val-icon{font-size:1.2rem;margin-bottom:.8rem;}
.val-card h4{font-size:.95rem;font-weight:700;color:var(--ink);margin-bottom:.4rem;}
.val-card p{font-size:.84rem;color:var(--muted);line-height:1.72;}

/* ── STATS ROW ── */
.stats-row{display:grid;grid-template-columns:repeat(4,1fr);background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.sc{padding:2rem 2.5rem;border-right:1px solid var(--border);text-align:center;}
.sc:last-child{border-right:none;}
.sc .n{font-family:'IBM Plex Mono',monospace;font-size:2rem;font-weight:500;color:var(--copper);}
.sc .l{font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:.3rem;}

/* ── CERTS ── */
.certs-row{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;padding:2.5rem;background:var(--bg2);border-top:1px solid var(--border);}
.cert-tag{background:var(--white);border:1px solid var(--border);border-radius:var(--r1);padding:.5rem 1.1rem;font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);letter-spacing:.06em;}

/* ── CTA BANNER ── */
.cta-banner{background:var(--ink);padding:4.5rem 2.5rem;text-align:center;position:relative;overflow:hidden;}
.cta-banner::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,transparent,transparent 12px,rgba(255,255,255,0.015) 12px,rgba(255,255,255,0.015) 24px);}
.cta-banner h2{color:var(--bg);font-size:clamp(1.8rem,3.5vw,2.8rem);position:relative;margin-bottom:.6rem;}
.cta-banner p{color:rgba(248,246,242,.55);font-size:.9rem;max-width:440px;margin:0 auto 2.5rem;position:relative;line-height:1.8;}
.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;position:relative;}
.btn-cta-inv{background:var(--copper);color:var(--white);border:none;cursor:pointer;padding:.85rem 2.2rem;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.88rem;font-weight:600;transition:all .2s;}
.btn-cta-inv:hover{background:var(--copper2);transform:translateY(-1px);}
.btn-outline-inv{background:none;border:1.5px solid rgba(248,246,242,.2);color:rgba(248,246,242,.75);cursor:pointer;padding:.85rem 2.2rem;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.88rem;font-weight:500;transition:all .2s;}
.btn-outline-inv:hover{border-color:var(--copper);color:var(--copper);}

/* ── PROD HERO — FIX: proper top padding to clear nav ── */
.prod-hero{padding:calc(var(--nav-h) + 6rem) 2.5rem 3rem;background:var(--white);border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr auto;gap:4rem;align-items:center;}
.ph-stat{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r3);padding:1.2rem 1.5rem;text-align:center;}
.ph-stat .n{font-family:'IBM Plex Mono',monospace;font-size:1.4rem;color:var(--copper);}
.ph-stat .l{font-family:'IBM Plex Mono',monospace;font-size:.58rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:.2rem;}

/* ── FILTER BAR ── */
.filter-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 2.5rem;background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:var(--nav-h);z-index:50;flex-wrap:wrap;gap:.8rem;box-shadow:var(--shadow-xs);}
.search-bar{display:flex;align-items:center;gap:.5rem;background:var(--bg2);border:1.5px solid var(--border);border-radius:var(--rpill);padding:.42rem 1rem;transition:border-color .2s;}
.search-bar:focus-within{border-color:var(--copper);}
.search-bar input{background:none;border:none;outline:none;font-family:'IBM Plex Mono',monospace;font-size:.72rem;color:var(--ink);width:175px;}
.search-bar input::placeholder{color:var(--muted2);}

/* ── BLOG HERO — FIX: proper top padding ── */
.blog-hero{padding:calc(var(--nav-h) + 6rem) 2.5rem 3rem;background:var(--white);border-bottom:1px solid var(--border);}
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;background:var(--border);}
.blog-card{background:var(--white);padding:2rem;cursor:pointer;transition:background .2s;display:flex;flex-direction:column;}
.blog-card:hover{background:var(--bg);}
.blog-cat-tag{font-family:'IBM Plex Mono',monospace;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.9rem;display:inline-block;}
.blog-card h3{font-size:1.05rem;font-weight:700;color:var(--ink);line-height:1.35;margin-bottom:.7rem;}
.blog-card p{font-size:.84rem;color:var(--muted);line-height:1.72;flex:1;margin-bottom:1.2rem;}
.blog-meta{display:flex;gap:.6rem;font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:var(--muted2);border-top:1px solid var(--border);padding-top:1rem;flex-wrap:wrap;}

/* ── SUST HERO — FIX: proper top padding ── */
.sust-hero{padding:calc(var(--nav-h) + 7rem) 2.5rem 5rem;background:var(--white);border-bottom:1px solid var(--border);}
.sust-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);}
.sust-pillar{background:var(--white);padding:2.5rem;transition:background .2s;}
.sust-pillar:hover{background:var(--bg);}
.s-num{font-family:'IBM Plex Mono',monospace;font-size:2.5rem;font-weight:700;margin-bottom:.8rem;line-height:1;}
.sust-pillar h3{font-size:1.1rem;font-weight:700;color:var(--ink);margin-bottom:.7rem;}
.sust-pillar p{font-size:.84rem;color:var(--muted);line-height:1.75;margin-bottom:1.2rem;}
.sust-pillar ul{list-style:none;display:flex;flex-direction:column;gap:.4rem;}
.sust-pillar ul li{display:flex;align-items:center;gap:.6rem;font-size:.82rem;color:var(--body);}
.sust-pillar ul li::before{content:'→';color:var(--copper);font-family:'IBM Plex Mono',monospace;font-size:.7rem;}

/* ── PROG BARS ── */
.prog-bar{margin-bottom:1.2rem;}
.prog-labels{display:flex;justify-content:space-between;margin-bottom:.4rem;}
.prog-lbl{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);}
.prog-val{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--copper);}
.prog-track{height:3px;background:var(--border);border-radius:999px;overflow:hidden;}
.prog-fill{height:100%;border-radius:999px;animation:fillBar 1.2s ease forwards;width:0;}
@keyframes fillBar{to{width:var(--pct)}}

/* ── CONTACT ── */
.contact-wrap{display:grid;grid-template-columns:1fr 1.2fr;border-top:1px solid var(--border);}
.cinfo{padding:4rem 2.5rem;background:var(--bg2);border-right:1px solid var(--border);}
.cform{padding:4rem 2.5rem;background:var(--white);}
.cd-row{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.5rem;}
.cd-dot{width:8px;height:8px;background:var(--copper);border-radius:50%;flex-shrink:0;margin-top:.4rem;}
.cd-lbl{font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:var(--copper);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.2rem;}
.cd-val{font-size:.88rem;color:var(--body);line-height:1.6;}
.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.1rem;}
.form-label{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;}
.form-input,.form-select,.form-textarea{background:var(--bg);border:1.5px solid var(--border);border-radius:var(--r2);padding:.7rem .9rem;font-family:'Plus Jakarta Sans',sans-serif;font-size:.9rem;color:var(--ink);outline:none;transition:border-color .2s;}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--copper);background:var(--white);}
.form-select{cursor:pointer;}
.form-textarea{resize:vertical;min-height:110px;line-height:1.6;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.btn-submit{width:100%;padding:.9rem;background:var(--copper);color:var(--white);border:none;cursor:pointer;border-radius:var(--r2);font-family:'Plus Jakarta Sans',sans-serif;font-size:.88rem;font-weight:600;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;letter-spacing:-.01em;}
.btn-submit:hover{background:var(--copper2);transform:translateY(-1px);box-shadow:0 4px 16px rgba(184,96,40,0.25);}
.btn-submit:disabled{opacity:.5;cursor:not-allowed;}
.success-box{text-align:center;padding:3rem 1rem;}
.success-box .s-icon{font-size:2.5rem;margin-bottom:1rem;}
.success-box h3{font-size:1.5rem;color:var(--green);margin-bottom:.7rem;}
.success-box p{color:var(--muted);font-size:.9rem;line-height:1.72;}

/* ── OFFICE CARDS — FIX: 4 columns now, no empty slot ── */
.office-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);}
.office-card{background:var(--white);padding:2rem;transition:background .2s;}
.office-card:hover{background:var(--bg);}
.office-flag{font-size:1.5rem;margin-bottom:.8rem;}
.office-badge{font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:var(--copper);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.35rem;}
.office-city{font-size:1.1rem;font-weight:700;color:var(--ink);margin-bottom:.2rem;}
.office-country{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--muted);margin-bottom:.55rem;}
.office-addr{font-size:.82rem;color:var(--muted);line-height:1.65;}

/* ── LME LIVE TICKER ── */
.lme-ticker{height:44px;background:var(--ink);border-bottom:1px solid rgba(255,255,255,0.08);overflow:hidden;display:flex;align-items:center;position:relative;}
.lme-ticker-left{flex-shrink:0;display:flex;align-items:center;gap:.5rem;padding:0 1.2rem;border-right:1px solid rgba(255,255,255,0.12);height:100%;background:var(--copper);}
.lme-ticker-label{font-family:'IBM Plex Mono',monospace;font-size:.62rem;font-weight:700;color:#fff;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;}
.lme-pulse{width:6px;height:6px;background:#fff;border-radius:50%;animation:blink 1.5s infinite;flex-shrink:0;}
.lme-track-wrap{flex:1;overflow:hidden;height:100%;display:flex;align-items:center;}
.lme-track{display:flex;gap:0;white-space:nowrap;animation:tick 38s linear infinite;}
.lme-item{display:inline-flex;align-items:center;gap:.65rem;padding:0 2.2rem;border-right:1px solid rgba(255,255,255,0.07);height:100%;}
.lme-metal{font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:rgba(248,246,242,.42);letter-spacing:.1em;text-transform:uppercase;}
.lme-price{font-family:'IBM Plex Mono',monospace;font-size:.76rem;font-weight:600;color:#fff;}
.lme-unit{font-family:'IBM Plex Mono',monospace;font-size:.56rem;color:rgba(248,246,242,.35);margin-left:.1rem;}
.lme-chg{font-family:'IBM Plex Mono',monospace;font-size:.6rem;font-weight:500;padding:.14rem .36rem;border-radius:2px;}
.lme-chg.up{background:rgba(31,107,58,.4);color:#7EDCA8;}
.lme-chg.dn{background:rgba(200,50,50,.25);color:#F4A0A0;}
.lme-chg.flat{color:rgba(248,246,242,.35);}
.lme-loading{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:rgba(248,246,242,.3);padding:0 1.5rem;animation:blink 2s infinite;}

/* ── TOP CABLE COPPER EMBED ── */
.topcable-market-section{background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.topcable-market-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:2rem;}
.topcable-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:1.25rem;align-items:start;}
.topcable-card{background:#fff;border:1px solid var(--border);border-radius:var(--r3);box-shadow:var(--shadow-sm);overflow:hidden;}
.topcable-price-clip{position:relative;width:330px;height:148px;overflow:hidden;background:#fff;}
.topcable-chart-clip{position:relative;width:100%;height:320px;overflow:hidden;background:#fff;}
.topcable-frame{position:absolute;border:0;background:#fff;overflow:hidden;pointer-events:none;}
.topcable-frame.price{left:-6px;top:-140px;width:720px;height:680px;transform:scale(.46);transform-origin:top left;}
.topcable-frame.chart{left:50%;top:-320px;width:1880px;height:980px;transform:translateX(-50%) scale(.54);transform-origin:top center;}
.topcable-guard{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(23,21,15,.04);}
.topcable-open{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.78rem 1rem;border-top:1px solid var(--border);background:var(--bg);text-decoration:none;}
.topcable-open span{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;}
.topcable-open strong{font-family:'IBM Plex Mono',monospace;font-size:.62rem;color:var(--copper);letter-spacing:.08em;text-transform:uppercase;}

/* ── FOOTER ── */
footer{background:var(--ink);color:var(--bg);}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;padding:3.5rem 2.5rem 2.5rem;border-bottom:1px solid rgba(248,246,242,.08);}
.footer-logo-w{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.1rem;font-weight:800;color:var(--bg);letter-spacing:-.02em;margin-bottom:.6rem;}
.footer-desc{font-size:.82rem;color:rgba(248,246,242,.45);line-height:1.72;max-width:260px;margin-bottom:1.2rem;}
.footer-soc{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:rgba(248,246,242,.07);border:1px solid rgba(248,246,242,.1);border-radius:var(--r1);color:rgba(248,246,242,.5);font-size:.7rem;font-weight:700;text-decoration:none;transition:all .2s;}
.footer-soc:hover{background:var(--copper);border-color:var(--copper);color:var(--white);}
.footer-col h5{font-family:'IBM Plex Mono',monospace;font-size:.65rem;color:var(--copper);letter-spacing:.15em;text-transform:uppercase;margin-bottom:1rem;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.5rem;}
.footer-col ul li{font-size:.82rem;color:rgba(248,246,242,.4);cursor:pointer;transition:color .2s;}
.footer-col ul li:hover{color:rgba(248,246,242,.85);}
.footer-bottom{display:flex;justify-content:space-between;padding:1.2rem 2.5rem;font-family:'IBM Plex Mono',monospace;font-size:.6rem;color:rgba(248,246,242,.25);flex-wrap:wrap;gap:.5rem;}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .hero{grid-template-columns:1fr 1fr;}
  .feat-grid{grid-template-columns:1fr 1fr;}
  .feat-cell:nth-child(3n){border-right:1px solid var(--border);}
  .feat-cell:nth-child(2n){border-right:none;}
  .office-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;} .hero-right{display:none;}
  .topcable-market-head{align-items:flex-start;flex-direction:column;}
  .topcable-grid{grid-template-columns:1fr;}
  .about-hero{grid-template-columns:1fr;} .ab-wrap{grid-template-columns:1fr;}
  .contact-wrap{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;}
  nav .nav-links{display:none;} nav .btn-cta-nav{display:none;}
  .hamburger{display:flex;}
  .leader-wrap{grid-template-columns:1fr;} .leader-img{min-height:300px;}
  .sust-pillars{grid-template-columns:1fr;}
  .stats-row{grid-template-columns:1fr 1fr;} .sc:nth-child(2){border-right:none;}
  .office-grid{grid-template-columns:1fr 1fr;}
  .prod-hero{grid-template-columns:1fr;}
}
@media(max-width:600px){
  nav{padding:0 1.2rem;}
  .section{padding:3.5rem 1.2rem;}
  .prod-hero{padding:calc(var(--nav-h) + 2.5rem) 1rem 2rem;}
  .filter-bar{padding:1rem;}
  .hero-left{padding:3rem 1.2rem;}
  .hero-kpi{grid-template-columns:1fr 1fr;} .kpi-cell:last-child{grid-column:span 2;}
  .form-row{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr;}
  .feat-grid{grid-template-columns:1fr;} .feat-cell{border-right:none;}
  .filter-bar{flex-direction:column;align-items:flex-start;}
  .modal-hd,.modal-bd{padding:1.4rem 1.2rem;}
  .ab-wrap{margin:0 1.2rem;}
  .leader-content{padding:2rem 1.2rem;}
  .cinfo,.cform{padding:2.5rem 1.2rem;}
  .office-grid{grid-template-columns:1fr;}
  .topcable-price-clip{width:100%;}
  .topcable-frame.price{left:50%;transform:translateX(-50%) scale(.46);transform-origin:top center;}
  .topcable-chart-clip{height:250px;}
  .topcable-frame.chart{transform:translateX(-50%) scale(.42);}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:.01ms !important;}
  .cur,.cur-ring{display:none;}
}
@keyframes spin{to{transform:rotate(360deg)}}
