:root {
  --ink: #07111f;
  --ink-2: #0d1928;
  --paper: #f3f3ef;
  --white: #fff;
  --muted: #667180;
  --line: rgba(7, 17, 31, .16);
  --blue: #1258ff;
  --cyan: #2ef1cf;
  --red: #ef482e;
  --header-h: 84px;
  --section-x: clamp(24px, 6.3vw, 112px);
  --display: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
  --body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--body);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.menu-open, body.panel-open { overflow: hidden; }
button, a, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { color: inherit; }

.page-noise {
  position: fixed;
  inset: 0;
  z-index: 1000;
  pointer-events: none;
  opacity: .055;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
  mix-blend-mode: soft-light;
}

.site-header {
  position: fixed;
  inset: 0 0 auto 0;
  height: var(--header-h);
  z-index: 100;
  display: flex;
  align-items: center;
  padding: 0 var(--section-x);
  color: var(--ink);
  background: #fff;
  border-bottom: 1px solid rgba(7, 17, 31, .1);
  transition: background .35s ease, color .35s ease, height .35s ease, border .35s ease;
}
.official-logo { display: block; width: 48px; height: 48px; object-fit: contain; object-position: left center; }
.footer-logo { width: 64px; height: 64px; opacity: .92; filter: brightness(0) invert(1); }
.site-header.scrolled {
  height: 70px;
  color: var(--ink);
  background: rgba(246, 246, 242, .9);
  backdrop-filter: blur(20px);
  border-color: rgba(7, 17, 31, .1);
}
.brand { display: flex; align-items: center; gap: 13px; min-width: 170px; }
.brand-name { font-size: 18px; font-weight: 600; line-height: 1; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.brand-copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; line-height: 1; }
.stock-ticker { display: inline-flex; align-items: center; width: fit-content; margin-top: 6px; font: 600 10.5px/1.12 var(--display); letter-spacing: .07em; white-space: nowrap; color: rgba(7,17,31,.58); }
.stock-ticker.is-up { color: var(--red); }
.stock-ticker.is-down { color: #0b8f61; }
.stock-ticker.is-flat { color: rgba(7,17,31,.58); }
.brand-mark {
  position: relative;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--blue);
}
.brand-mark::before, .brand-mark::after, .brand-mark span {
  content: "";
  position: absolute;
  width: 28px;
  height: 12px;
  border: 2px solid #fff;
  border-radius: 50%;
  transform: rotate(20deg);
}
.brand-mark::after { transform: rotate(-20deg); }
.brand-mark span { border-color: var(--red); transform: rotate(90deg); width: 18px; }
.brand-copy strong { font-size: 21px; letter-spacing: .05em; }
.brand-copy small { margin-top: 7px; font: 500 9px/1 var(--display); letter-spacing: .18em; opacity: .7; }
.desktop-nav { display: flex; justify-content: center; align-items: center; gap: clamp(18px, 2.3vw, 40px); flex: 1; }
.desktop-nav a { position: relative; font-size: 13px; letter-spacing: .02em; white-space: nowrap; opacity: .78; transition: opacity .2s ease; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -10px; height: 1px; background: currentColor; transition: right .25s ease; }
.desktop-nav a:hover { opacity: 1; }
.desktop-nav a:hover::after { right: 0; }
.desktop-nav a[aria-current="page"] { opacity: 1; }
.desktop-nav a[aria-current="page"]::after { right: 0; background: var(--blue); }
.desktop-nav-group { position: relative; display: flex; align-items: center; height: 100%; }
.desktop-nav-group::before { content: ""; position: absolute; top: 100%; left: 50%; width: max(188px, calc(100% + 56px)); height: 22px; transform: translateX(-50%); pointer-events: none; }
.desktop-nav-group:hover::before, .desktop-nav-group:focus-within::before { pointer-events: auto; }
.desktop-nav-parent { display: inline-flex; align-items: center; gap: 8px; }
.nav-caret { width: 6px; height: 6px; margin-top: -3px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); transition: transform .25s ease; }
.desktop-nav-group:hover .nav-caret, .desktop-nav-group:focus-within .nav-caret { transform: rotate(225deg) translate(-1px,-1px); }
.desktop-nav-submenu { position: absolute; top: calc(100% + 8px); left: 50%; z-index: 4; display: flex; flex-direction: column; min-width: 168px; padding: 8px; color: #fff; background: rgba(7,17,31,.97); border: 1px solid rgba(255,255,255,.12); box-shadow: 0 18px 44px rgba(7,17,31,.2); opacity: 0; visibility: hidden; pointer-events: none; transform: translate(-50%, -6px); transition: opacity .2s ease, visibility 0s linear .14s, transform .2s ease; }
.desktop-nav-group:hover .desktop-nav-submenu, .desktop-nav-group:focus-within .desktop-nav-submenu { opacity: 1; visibility: visible; pointer-events: auto; transform: translate(-50%, 0); transition-delay: 0s; }
.desktop-nav-submenu a { display: flex; align-items: center; gap: 9px; min-height: 38px; padding: 0 12px; color: rgba(255,255,255,.62); font-size: 11px; opacity: 1; }
.desktop-nav-submenu a::after { display: none; }
.desktop-nav-submenu a::before { content: ""; width: 4px; height: 4px; border: 1px solid var(--cyan); border-radius: 50%; opacity: .7; }
.desktop-nav-submenu a:hover, .desktop-nav-submenu a:focus-visible, .desktop-nav-submenu a[aria-current="page"] { color: #fff; background: rgba(90,216,194,.14); }
.desktop-nav-submenu a[aria-current="page"]::before { background: var(--red); border-color: var(--red); opacity: 1; }
.header-actions { min-width: 124px; display: flex; justify-content: flex-end; align-items: center; gap: 12px; }
.language-trigger, .menu-trigger { border: 0; background: transparent; cursor: pointer; }
.language-trigger { display: flex; align-items: center; gap: 9px; padding: 9px 2px; font: 500 12px/1 var(--display); letter-spacing: .1em; }
.globe-icon { position: relative; display: inline-grid; place-items: center; width: 18px; height: 18px; color: currentColor; border: 1px solid currentColor; border-radius: 4px; }
.globe-icon::before { content: "文"; transform: translate(-1px, -1px); font: 700 9px/1 var(--display); letter-spacing: 0; }
.globe-icon::after { content: "A"; position: absolute; right: -6px; bottom: -5px; display: grid; place-items: center; width: 13px; height: 13px; color: #fff; background: var(--blue); border-radius: 50%; box-shadow: 0 0 0 2px #fff; font: 800 7px/1 var(--display); letter-spacing: 0; }
.chevron { width: 6px; height: 6px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease; }
.panel-open .chevron { transform: rotate(225deg) translateY(-2px); }
.menu-trigger { display: none; width: 34px; height: 34px; padding: 8px 2px; }
.menu-trigger span { display: block; width: 28px; height: 1px; margin: 6px 0; background: currentColor; transition: transform .3s ease; }
.menu-open .menu-trigger span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-open .menu-trigger span:last-child { transform: translateY(-3.5px) rotate(-45deg); }

.language-panel {
  position: fixed;
  top: calc(var(--header-h) + 10px);
  right: var(--section-x);
  z-index: 120;
  width: min(440px, calc(100vw - 40px));
  padding: 24px;
  color: #e9f0f7;
  background: rgba(7, 17, 31, .96);
  border: 1px solid rgba(255, 255, 255, .14);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: .25s ease;
}
.panel-open .language-panel { opacity: 1; visibility: visible; transform: none; }
.language-panel-head { display: flex; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid rgba(255, 255, 255, .15); }
.language-panel-head span { font-size: 15px; }
.language-panel-head small { font: 500 10px/1 var(--display); letter-spacing: .18em; color: var(--cyan); }
.language-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; margin-top: 14px; }
.language-list button { border: 0; color: rgba(255,255,255,.6); background: transparent; padding: 14px 10px; text-align: left; cursor: pointer; font-size: 12px; transition: .2s ease; }
.language-list button small { display: block; color: rgba(255,255,255,.28); font: 500 9px/1 var(--display); margin-top: 5px; }
.language-list button:hover, .language-list button.active { color: #fff; background: rgba(255,255,255,.08); }
.language-list button.active { box-shadow: inset 2px 0 var(--cyan); }

.mobile-menu { display: none; }

.module-page-main { min-height: calc(100svh - var(--header-h)); padding-top: var(--header-h); }
.module-page-main > section { min-height: calc(100svh - var(--header-h)); }

.hero { --hero-progress: 33.333%; position: relative; min-height: 100svh; color: #fff; background: var(--ink); overflow: hidden; }
.hero-media, .hero-slides, .hero-slide { position: absolute; inset: 0; }
.hero-media img { pointer-events: none; }
.blueprint-products img,
.research-core-products img,
.product-blueprint img { pointer-events: none; }
.hero-media::after { content: ""; position: absolute; z-index: 2; inset: 0; pointer-events:none; background: radial-gradient(circle at 70% 48%, rgba(18,88,255,.1), transparent 38%), linear-gradient(0deg, rgba(3,10,20,.92) 0%, rgba(3,10,20,.28) 27%, rgba(3,10,20,.06) 66%, rgba(3,10,20,.28) 100%), linear-gradient(90deg, rgba(3,10,20,.18), rgba(3,10,20,.03)); }
.hero-slide { margin: 0; opacity: 0; transform: scale(1.035); transition: opacity 1s ease, transform 7s cubic-bezier(.2,.7,.1,1); }
.hero-slide.is-active { opacity: 1; transform: scale(1); }
.hero-slide img { width: 100%; height: 100%; object-fit: cover; }
.hero-slide:first-child img { object-position: 50% 42%; }
.hero-slide:nth-child(2) img { object-position: 46% center; }
.hero-slide:nth-child(3) img { object-position: 62% center; }
.hero-carousel-controls { position: absolute; z-index: 8; top: calc(var(--header-h) + 24px); right: var(--section-x); display: flex; align-items: center; height: 38px; padding: 0 5px; color: #fff; background: rgba(5,12,21,.48); border: 1px solid rgba(255,255,255,.18); backdrop-filter: blur(12px); }
.hero-carousel-controls button { border: 0; color: inherit; background: transparent; cursor: pointer; }
.hero-carousel-arrow { width: 32px; height: 32px; padding: 0; font: 500 14px/1 var(--display); opacity: .62; transition: opacity .2s ease, transform .2s ease; }
.hero-carousel-arrow:hover { opacity: 1; transform: translateX(2px); }
.hero-carousel-arrow:first-child:hover { transform: translateX(-2px); }
.hero-carousel-dots { display: flex; align-items: center; gap: 2px; padding: 0 5px; }
.hero-carousel-dots button { position: relative; width: 29px; height: 32px; padding: 0; color: rgba(255,255,255,.45); font: 500 9px/1 var(--display); letter-spacing: .06em; transition: color .25s ease; }
.hero-carousel-dots button::after { content: ""; position: absolute; left: 6px; right: 6px; bottom: 3px; height: 1px; background: currentColor; transform: scaleX(.35); transition: transform .25s ease, background .25s ease; }
.hero-carousel-dots button:hover, .hero-carousel-dots button.is-active { color: #fff; }
.hero-carousel-dots button.is-active::after { background: var(--cyan); transform: scaleX(1); }
.hero-content { position: relative; z-index: 5; padding: clamp(160px, 23vh, 240px) var(--section-x) 190px; width: min(940px, 76vw); }
.eyebrow, .overline { display: flex; align-items: center; gap: 14px; font: 500 11px/1 var(--display); letter-spacing: .2em; text-transform: uppercase; }
.eyebrow { color: rgba(255,255,255,.72); }
.eyebrow span { width: 40px; height: 1px; background: var(--cyan); }
.hero h1 { margin: 32px 0 30px; font: 500 clamp(56px, 7.1vw, 112px)/.88 var(--display); letter-spacing: -.02em; text-transform: uppercase; }
.hero h1 span, .hero h1 em { display: block; font-style: normal; }
.hero h1 em { color: transparent; -webkit-text-stroke: 1px rgba(255,255,255,.82); margin-left: clamp(36px, 5vw, 90px); }
.hero-summary { max-width: 590px; margin: 0 0 35px 8px; color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.9; }
.hero-actions { display: flex; align-items: center; gap: 34px; margin-left: 8px; }
.primary-cta { display: inline-flex; align-items: center; justify-content: space-between; min-width: 192px; height: 52px; padding: 0 6px 0 20px; background: var(--blue); color: #fff; font-size: 13px; transition: transform .25s ease, box-shadow .25s ease; }
.primary-cta i { display: grid; place-items: center; width: 40px; height: 40px; font-style: normal; background: rgba(255,255,255,.13); }
.primary-cta:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(18,88,255,.28); }
.showreel-button { display: flex; align-items: center; gap: 12px; border: 0; padding: 0; color: rgba(255,255,255,.72); background: transparent; cursor: pointer; font-size: 12px; }
.play-icon { display: grid; place-items: center; width: 36px; height: 36px; color: var(--cyan); border: 1px solid rgba(255,255,255,.3); border-radius: 50%; font-size: 8px; transition: border .2s ease, transform .2s ease; }
.showreel-button:hover .play-icon { border-color: var(--cyan); transform: scale(1.08); }
.hero-footer { position: absolute; z-index: 6; left: var(--section-x); right: var(--section-x); bottom: 32px; display: grid; grid-template-columns: repeat(4, minmax(110px, 170px)); gap: 26px; }
.hero-footer div { display: grid; grid-template-columns: auto 1fr; align-items: end; gap: 6px 12px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,.24); }
.hero-footer span { font: 500 29px/.86 var(--display); letter-spacing: -.025em; }
.hero-footer small { font-size: 11px; color: rgba(255,255,255,.7); line-height: 1.42; }
.scroll-cue { position: absolute; z-index: 5; right: var(--section-x); bottom: 34px; display: flex; align-items: center; gap: 13px; color: rgba(255,255,255,.52); font-size: 9px; letter-spacing: .1em; }
.scroll-cue i { position: relative; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; }
.scroll-cue i::after { content: "↓"; position: absolute; inset: 0; display: grid; place-items: center; color: var(--cyan); font-style: normal; }
.hero-rail { position: absolute; z-index: 5; top: 42%; right: 22px; display: flex; flex-direction: column; align-items: center; gap: 8px; color: rgba(255,255,255,.35); font: 500 9px/1 var(--display); }
.hero-rail i { display: block; width: 1px; height: 68px; background: linear-gradient(var(--cyan) 0 var(--hero-progress), rgba(255,255,255,.25) var(--hero-progress)); transition: background .35s ease; }

.section-light, .section-paper, .section-dark, .section-ink { position: relative; padding: 120px var(--section-x); }
.section-light { background: var(--paper); }
.section-paper { background: #e9e9e4; }
.section-dark { color: #eef4f7; background: #07111f; }
.section-ink { color: #eef4f7; background: #0a1522; }
.display-title { margin: 0; font: 500 clamp(38px, 4.4vw, 68px)/1.06 var(--display); letter-spacing: -.014em; text-transform: uppercase; }
.overline { margin: 0 0 24px; color: var(--blue); }
.section-dark .overline, .section-ink .overline { color: var(--cyan); }
.intro-grid { display: grid; grid-template-columns: minmax(360px, 1.15fr) minmax(300px, .65fr); gap: 10vw; align-items: start; }
.intro-copy { padding-top: 12px; }
.intro-copy p { margin: 0 0 20px; color: var(--muted); font-size: 14px; line-height: 1.95; }
.intro-copy .lead { color: var(--ink); font-size: 17px; font-weight: 500; }
.text-link { display: inline-flex; align-items: center; gap: 18px; margin-top: 12px; padding-bottom: 7px; border-bottom: 1px solid currentColor; font-size: 12px; }
.text-link i { font-style: normal; transition: transform .2s ease; }
.text-link:hover i { transform: translateX(5px); }
.material-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 96px; background: var(--line); border: 1px solid var(--line); }
.material-card { position: relative; min-height: 400px; padding: 24px; overflow: hidden; background: var(--paper); }
.material-number { color: var(--muted); font: 500 10px/1 var(--display); }
.material-visual { position: relative; height: 245px; margin: 20px 0 18px; overflow: hidden; background: #d7d9d6; }
.material-visual img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.82); transition: transform .65s cubic-bezier(.2,.7,.1,1), filter .35s ease; }
.material-card:hover .material-visual img { transform: scale(1.04); filter: saturate(1); }
.material-card h3 { margin: 0 0 8px; font-size: 18px; font-weight: 500; }
.material-card p { margin: 0; color: var(--muted); font-size: 12px; }
.material-visual::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(115deg, transparent 0 28px, rgba(255,255,255,.08) 29px); }
.visual-surface { background: radial-gradient(circle at 70% 30%, #9ba3a7, transparent 30%), linear-gradient(135deg, #1f2b35, #b9c0c1); }
.visual-surface i { position: absolute; left: -12%; top: 23%; width: 120%; height: 95%; border: 28px solid #d7d9d6; border-radius: 50%; transform: rotate(-12deg); box-shadow: inset 0 0 0 1px rgba(0,0,0,.25), 0 0 0 1px rgba(255,255,255,.2); }
.visual-tooling { background: linear-gradient(145deg, #e1e5e5, #798287); }
.visual-tooling i { position: absolute; inset: 23% 18%; border: 20px solid #37424a; transform: skewY(-8deg); box-shadow: 18px 18px 0 rgba(255,255,255,.22), inset 0 0 26px #111a21; }
.visual-digital { background: #0b1928; }
.visual-digital i { position: absolute; width: 62%; height: 62%; left: 20%; top: 22%; border: 1px solid var(--cyan); border-radius: 50%; box-shadow: 0 0 0 20px rgba(46,241,207,.04), 0 0 0 40px rgba(46,241,207,.025), inset 0 0 30px rgba(46,241,207,.14); }
.visual-digital i::before, .visual-digital i::after { content:""; position:absolute; background:var(--cyan); opacity:.65; }
.visual-digital i::before { width:1px; height:140%; left:50%; top:-20%; }
.visual-digital i::after { height:1px; width:140%; top:50%; left:-20%; }

.innovation { overflow: hidden; }
.innovation::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 72% 60%, rgba(18,88,255,.12), transparent 32%), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px); background-size: auto, 84px 100%; pointer-events: none; }
.innovation-head { position: relative; display: grid; grid-template-columns: 1fr .6fr; gap: 8vw; align-items: end; }
.innovation-intro { max-width: 520px; margin: 0 0 8px; color: rgba(255,255,255,.52); font-size: 14px; line-height: 1.9; }
.product-stage { position: relative; display: grid; grid-template-columns: 1fr 320px; gap: 56px; margin-top: 80px; min-height: 520px; }
.product-blueprint { position: relative; min-height: 520px; border: 1px solid rgba(255,255,255,.1); overflow: hidden; background-image: linear-gradient(rgba(255,255,255,.032) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.032) 1px, transparent 1px); background-size: 38px 38px; }
.product-blueprint > *:not(.product-reference) { pointer-events: none; }
.product-reference { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .2; filter: saturate(.7) contrast(1.1); }
.ring { position: absolute; border: 1px solid rgba(46,241,207,.13); border-radius: 50%; }
.ring-a { width: 520px; height: 520px; left: 20%; top: 4%; }
.ring-b { width: 380px; height: 380px; left: calc(20% + 70px); top: calc(4% + 70px); }
.ring-c { width: 190px; height: 190px; left: calc(20% + 165px); top: calc(4% + 165px); border-style: dashed; animation: rotate 18s linear infinite; }
@keyframes rotate { to { transform: rotate(360deg); } }
.cockpit-line { position: absolute; left: 9%; right: 7%; top: 31%; height: 46%; border: 2px solid rgba(255,255,255,.78); border-top-left-radius: 48% 58%; border-top-right-radius: 26% 60%; border-bottom: 0; transform: skewY(-2deg); filter: drop-shadow(0 0 12px rgba(255,255,255,.08)); transition: transform .5s ease, filter .5s ease; }
.cockpit-line::before { content:""; position:absolute; left:7%; right:8%; top:13%; height:32%; border:1px solid rgba(255,255,255,.38); border-radius:50% 50% 22% 18%; }
.dash-line { position: absolute; left: 25%; top: 28%; width: 32%; height: 21%; border: 1px solid var(--cyan); border-radius: 50% 50% 15% 15%; }
.screen-line { position:absolute; left:52%; top:34%; width:15%; height:43%; border:1px solid rgba(255,255,255,.64); transform:skewY(10deg); }
.door-line { position:absolute; right:-4%; top:8%; width:30%; height:58%; border:1px solid rgba(255,255,255,.52); border-radius:10% 60% 20% 50%; }
.console-line { position:absolute; left:43%; top:55%; width:26%; height:58%; border:1px solid rgba(255,255,255,.4); transform:perspective(100px) rotateX(14deg) skewX(-18deg); }
.hotspot { position: absolute; width: 18px; height: 18px; border: 1px solid var(--cyan); border-radius: 50%; box-shadow: 0 0 0 6px rgba(46,241,207,.08); }
.hotspot::after { content:""; position:absolute; inset:5px; background:var(--cyan); border-radius:50%; }
.hotspot b { position:absolute; left:22px; top:-4px; font:500 9px/1 var(--display); color:var(--cyan); }
.h1 { left: 28%; top: 43%; }.h2 { left: 57%; top: 52%; }.h3 { right: 17%; top: 42%; }
.product-tabs { display: flex; flex-direction: column; border-top: 1px solid rgba(255,255,255,.13); }
.product-tabs button { display: grid; grid-template-columns: 32px 1fr; gap: 4px 10px; padding: 21px 6px; color: rgba(255,255,255,.4); border: 0; border-bottom: 1px solid rgba(255,255,255,.13); background: transparent; text-align: left; cursor: pointer; transition: .25s ease; }
.product-tabs span { grid-row: span 2; padding-top: 3px; font: 500 9px/1 var(--display); }
.product-tabs b { font-size: 15px; font-weight: 500; }
.product-tabs small { font: 500 9px/1 var(--display); letter-spacing: .12em; opacity: .6; }
.product-tabs button:hover, .product-tabs button.active { color: #fff; padding-left: 15px; background: rgba(255,255,255,.035); }
.product-tabs button.active { box-shadow: inset 2px 0 var(--cyan); }

.manufacturing-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 8vw; align-items: center; }
.manufacturing-copy > p:not(.overline) { max-width: 490px; color: var(--muted); font-size: 14px; line-height: 1.9; margin: 32px 0; }
.metric-row { display: flex; gap: 42px; padding-top: 26px; border-top: 1px solid var(--line); }
.metric-row div { display: grid; grid-template-columns: auto auto; align-items: end; }
.metric-row strong { font: 500 42px/.9 var(--display); }
.metric-row span { margin-left: 4px; font: 500 13px/1 var(--display); color: var(--blue); }
.metric-row small { grid-column: 1 / -1; margin-top: 8px; color: var(--muted); font-size: 10px; }
.manufacturing-media { position: relative; margin: 0; min-height: 590px; overflow: hidden; background: #101821; }
.manufacturing-media img { width: 100%; height: 590px; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.1,1); }
.manufacturing-media:hover img { transform: scale(1.025); }
.manufacturing-media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(0deg, rgba(2,8,14,.72), transparent 42%); }
.manufacturing-media figcaption { position: absolute; z-index: 2; left: 26px; right: 26px; bottom: 25px; display: grid; grid-template-columns: 1fr auto; align-items: end; pointer-events: none; color: #fff; }
.manufacturing-media figcaption span { font: 500 9px/1 var(--display); letter-spacing: .16em; color: var(--cyan); }
.manufacturing-media figcaption b { grid-row: span 2; font: 500 48px/.8 var(--display); }
.manufacturing-media figcaption small { margin-top: 7px; font: 500 8px/1 var(--display); letter-spacing: .12em; opacity: .5; }
.media-corners::before, .media-corners::after { content:""; position:absolute; z-index:3; width:26px; height:26px; border-top:1px solid var(--cyan); top:16px; pointer-events: none; }
.media-corners::before { left:16px; border-left:1px solid var(--cyan); }
.media-corners::after { right:16px; border-right:1px solid var(--cyan); }
.process-line { display: grid; grid-template-columns: auto 1fr auto 1fr auto 1fr auto 1fr auto; align-items: center; gap: 20px; margin-top: 76px; }
.process-line div { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.process-line span { color: var(--blue); font: 500 9px/1 var(--display); }
.process-line b { font-size: 11px; font-weight: 500; }
.process-line i { height: 1px; background: linear-gradient(90deg, var(--line), var(--blue)); }

.global-section { overflow: hidden; }
.global-copy { position: relative; z-index: 2; }
.country-list { margin-top: clamp(64px, 8vw, 110px); border-top: 1px solid rgba(255,255,255,.18); }
.country-row { position: relative; display: grid; grid-template-columns: 150px minmax(180px,.42fr) 1fr; gap: clamp(24px,4vw,68px); align-items: start; padding: 34px 0 34px clamp(26px,3.4vw,58px); border-bottom: 1px solid rgba(255,255,255,.14); transition: background .25s ease; }
.country-row::before { content:""; position:absolute; left:0; top:22px; bottom:22px; width:2px; background:var(--cyan); opacity:0; transform:scaleY(.35); transition:.25s ease; }
.country-row:hover { background:linear-gradient(90deg,rgba(46,241,207,.045),transparent 70%); }
.country-row:hover::before { opacity:1; transform:scaleY(1); }
.country-code-group { display: flex; align-items: center; gap: 10px; min-width: 0; padding-top: 7px; }
.country-code { color: var(--cyan); font: 500 11px/1.1 var(--display); letter-spacing: .12em; white-space: nowrap; }
.country-identity { display:flex; align-items:center; gap:16px; min-width:0; }
.country-flag { display:grid; place-items:center; flex:0 0 auto; width:38px; height:28px; font-size:22px; line-height:1; filter:saturate(.85); }
.country-name h3 { margin: 0; font: 500 clamp(27px,2.7vw,38px)/1.03 var(--display); letter-spacing: -.006em; }
.country-name small { display:block; margin-top:9px; color:rgba(255,255,255,.64); font:500 11px/1.25 var(--display); letter-spacing:.08em; }
.country-row ul { display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; list-style:none; }
.country-row li { min-width:88px; padding:12px 15px; color:rgba(255,255,255,.88); background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.2); font-size:13px; line-height:1.36; text-align:center; transition:.2s ease; }
.country-row li:hover { color:#fff; border-color:rgba(46,241,207,.55); background:rgba(46,241,207,.06); }

.sustainability { overflow: hidden; }
.sustainability-shell { display: grid; grid-template-columns: .75fr 1fr; gap: 9vw; align-items: center; min-height: 560px; }
.sustainability-copy p:not(.overline) { max-width: 600px; margin: 28px 0; color: var(--muted); font-size: 14px; line-height: 1.9; }
.primary-cta.dark { background: var(--ink); }
.sustainability-orbit { position: relative; height: 480px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(7,17,31,.13); background: #dfe6e8; }
.sustainability-orbit > img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.03); }
.sustainability-orbit::before { content:""; position:absolute; width:78%; height:78%; pointer-events: none; border:1px solid rgba(7,17,31,.13); border-radius:50%; }
.sustainability-orbit::after { content:""; position:absolute; width:46%; height:46%; pointer-events: none; border:1px dashed rgba(7,17,31,.2); border-radius:50%; }
.orbit-core { position: relative; z-index:2; width:170px; height:170px; display:flex; flex-direction:column; justify-content:center; align-items:center; pointer-events: none; color:#fff; background:var(--ink); border-radius:50%; box-shadow: 0 20px 60px rgba(7,17,31,.2); }
.orbit-core span { font:500 76px/.8 var(--display); color:var(--cyan); }
.orbit-core small { margin-top:10px; text-align:center; font:500 8px/1.4 var(--display); letter-spacing:.18em; }
.orbit-one, .orbit-two { position:absolute; width:12px; height:12px; pointer-events: none; border-radius:50%; background:var(--blue); top:11%; left:48%; transform-origin:0 190px; animation:orbit 9s linear infinite; box-shadow:0 0 0 7px rgba(18,88,255,.1); }
.orbit-two { top:27%; left:37%; background:var(--red); transform-origin:56px 110px; animation-duration:6s; animation-direction:reverse; }
@keyframes orbit { to { transform:rotate(360deg); } }
.sustainability-facts { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.sustainability-facts div { display:grid; grid-template-columns:36px 1fr; gap:7px 14px; padding:24px 12px; border-right:1px solid var(--line); }
.sustainability-facts div:last-child { border:0; }
.sustainability-facts span { grid-row:span 2; color:var(--blue); font:500 9px/1 var(--display); }
.sustainability-facts b { font-size:14px; font-weight:500; }
.sustainability-facts small { color:var(--muted); font:500 8px/1 var(--display); letter-spacing:.14em; }
.sustainability-hero-card { --sustainability-module-gap:clamp(22px,2.6vw,42px); position:relative; display:grid; grid-template-columns:minmax(260px,.78fr) minmax(360px,1.1fr); gap:0; min-height:560px; overflow:visible; background:transparent; border:0; }
.sustainability-forest { position:relative; min-height:560px; margin:0; overflow:hidden; background:#eef5fb; border:1px solid rgba(7,17,31,.08); border-right:0; }
.sustainability-forest::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg, rgba(238,245,251,0) 0%, rgba(238,245,251,.76) 82%, #eef5fb 100%); }
.sustainability-forest img { width:100%; height:100%; object-fit:cover; filter:saturate(.95) contrast(1.04); }
.sustainability-hero-card .sustainability-copy { align-self:stretch; display:flex; flex-direction:column; justify-content:center; min-height:560px; padding:clamp(46px,5vw,78px) clamp(38px,5vw,82px); background:#eef5fb; border:1px solid rgba(7,17,31,.08); border-left:0; }
.sustainability-hero-card .display-title { color:#09275d; }
.sustainability-hero-card .sustainability-copy p:not(.overline) { max-width:720px; color:#29486e; font-size:15px; line-height:1.9; }
.sustainability-hero-card .sustainability-facts { grid-column:1 / -1; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--sustainability-module-gap); margin-top:var(--sustainability-module-gap); background:transparent; border-top:0; }
.sustainability-hero-card .sustainability-facts div { grid-template-columns:1fr; gap:8px; min-height:132px; padding:24px clamp(18px,2.4vw,34px); background:#fff; border:1px solid rgba(13,79,145,.12); border-radius:4px; box-shadow:0 10px 26px rgba(18,55,96,.06); }
.sustainability-hero-card .sustainability-facts span { grid-row:auto; color:#e32622; font:600 clamp(25px,3vw,42px)/1 var(--display); letter-spacing:-.03em; }
.sustainability-hero-card .sustainability-facts b { color:#102f5d; font-size:13px; }

.official-details { overflow: hidden; }
.official-details-grid { display: grid; grid-template-columns: minmax(300px, .8fr) minmax(360px, 1fr); gap: 9vw; align-items: start; }
.official-details-grid:has(.official-media) { grid-template-columns: minmax(230px,.62fr) minmax(300px,1fr) minmax(260px,.8fr); gap:5vw; align-items:center; }
.official-media { margin: 0; min-height: 260px; overflow: hidden; border: 1px solid var(--line); background: #d7d9d6; }
.official-media img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; filter: saturate(.78); }
.official-copy { max-width: 680px; padding-top: 12px; }
.official-copy p { margin: 0 0 20px; color: var(--muted); font-size: 14px; line-height: 1.95; }
.official-copy .lead { color: var(--ink); font-size: 17px; font-weight: 500; }
.official-facts { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 34px; border-top: 1px solid var(--line); }
.official-facts span { padding: 18px 12px 0 0; color: var(--blue); font-size: 12px; border-right: 1px solid var(--line); }
.official-facts span + span { padding-left: 16px; }
.official-facts span:last-child { border-right: 0; }
.hr-pillars, .hr-model-section { margin-top: clamp(96px, 11vw, 168px); }
#hr-panel-about > .hr-pillars:first-child { margin-top: 0; }
.hr-subhead { display: grid; grid-template-columns: minmax(280px,.85fr) minmax(320px,1fr); gap: 8vw; align-items: end; padding-bottom: 30px; border-bottom: 1px solid var(--line); }
.hr-subhead span, .hr-team-band > div > span, .hr-founder > div > span { color: var(--blue); font: 500 9px/1 var(--display); letter-spacing: .18em; }
.hr-subhead h2, .hr-team-band h2 { margin: 12px 0 0; font: 500 clamp(42px,5vw,72px)/.9 var(--display); letter-spacing: -.025em; text-transform: uppercase; }
.hr-subhead > p { max-width: 600px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.9; }
.hr-pillar-grid { display: grid; grid-template-columns: repeat(3,1fr); border-left: 1px solid var(--line); }
.hr-pillar-card { position: relative; min-height: 290px; padding: 34px 30px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.25); transition: background .25s ease, transform .25s ease; }
.hr-pillar-card:hover { z-index: 1; background: #fff; transform: translateY(-4px); }
.hr-pillar-card > span { color: var(--blue); font: 500 9px/1 var(--display); }
.hr-pillar-card img { display: block; width: 50px; height: 50px; margin: 54px 0 24px; object-fit: contain; filter: grayscale(1) contrast(1.15); opacity: .72; }
.hr-pillar-card h3 { margin: 0 0 12px; font-size: 19px; font-weight: 500; }
.hr-pillar-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.8; }
.hr-team-band { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); min-height: 520px; margin-top: clamp(88px,10vw,150px); color: #fff; background: var(--ink); }
.hr-team-band figure { min-height: 520px; margin: 0; overflow: hidden; }
.hr-team-band figure img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.72) contrast(1.04); }
.hr-team-band > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(42px,6vw,90px); }
.hr-team-band > div > span { color: var(--cyan); }
.hr-team-band h2 { color: #fff; }
.hr-team-band p { max-width: 420px; margin: 30px 0 0; color: rgba(255,255,255,.58); font-size: 14px; line-height: 1.9; }
.hr-founder { display: grid; grid-template-columns: minmax(240px,.45fr) minmax(0,1fr); gap: clamp(42px,7vw,110px); align-items: center; margin-top: 54px; padding: clamp(36px,5vw,72px); border: 1px solid var(--line); background: #fff; }
.hr-founder + .hr-founder { margin-top: 24px; }
.hr-founder figure { position: relative; width: min(270px,100%); aspect-ratio: 270 / 310; margin: 0; overflow: hidden; background: var(--ink); }
.hr-founder img { width: 100%; height: auto; aspect-ratio: 270 / 310; object-fit: contain; object-position: center top; filter: saturate(.72) contrast(1.05); }
.hr-founder h3 { margin: 14px 0 20px; font: 500 clamp(38px,4vw,58px)/1.02 var(--display); letter-spacing: 0; }
.hr-founder p { max-width: 790px; margin: 0; color: var(--muted); font-size: 14px; line-height: 2; }
.hr-honors-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-top: clamp(80px,9vw,130px); padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.hr-honors-head span { color: var(--blue); font: 500 9px/1 var(--display); letter-spacing: .16em; }
.hr-honors-head h3 { margin: 0; font: 500 clamp(30px,3.2vw,48px)/1 var(--display); text-transform: uppercase; }
.hr-honor-grid { display: grid; grid-template-columns: repeat(2,1fr); }
.hr-honor-card { border-bottom: 1px solid var(--line); }
.hr-honor-card:nth-child(odd) { border-right: 1px solid var(--line); }
.hr-honor-card summary { display: grid; grid-template-columns: 76px 30px 1fr 24px; gap: 14px; align-items: center; min-height: 132px; padding: 22px 30px; cursor: pointer; list-style: none; transition: background .2s ease; }
.hr-honor-card summary::-webkit-details-marker { display: none; }
.hr-honor-card summary:hover { background: rgba(18,88,255,.035); }
.hr-honor-photo { width: 76px; height: 88px; object-fit: cover; object-position: center top; filter: saturate(.72) contrast(1.04); background: #d7d9d6; }
.hr-honor-photo.is-award { object-fit: contain; object-position: center; background: #a7191d; }
.hr-honor-card summary > span { color: var(--blue); font: 500 9px/1 var(--display); }
.hr-honor-card summary b { display: block; color: var(--ink); font-size: 18px; font-weight: 500; }
.hr-honor-card summary small { display: block; margin-top: 7px; color: var(--muted); font-size: 11px; }
.hr-honor-card summary i { color: var(--blue); font: 300 24px/1 var(--display); font-style: normal; text-align: center; transition: transform .25s ease; }
.hr-honor-card[open] summary i { transform: rotate(45deg); }
.hr-honor-card > p { margin: 0; padding: 0 30px 34px 164px; color: var(--muted); font-size: 13px; line-height: 1.95; }
.hr-subnav { position: sticky; top: 70px; z-index: 24; display: grid; grid-template-columns: repeat(3,1fr); margin: 0 0 clamp(52px,6vw,86px); background: rgba(243,243,239,.94); border: 1px solid var(--line); backdrop-filter: blur(18px); box-shadow: 0 12px 32px rgba(7,17,31,.04); }
.hr-subnav button { position: relative; display: grid; grid-template-columns: 34px 1fr; grid-template-rows: auto auto; gap: 5px 16px; align-items: center; min-height: 92px; padding: 22px 28px; border: 0; border-right: 1px solid var(--line); color: var(--muted); background: transparent; text-align: left; cursor: pointer; transition: color .25s ease, background .25s ease; }
.hr-subnav button:last-child { border-right: 0; }
.hr-subnav button::after { content: ""; position: absolute; left: 26px; right: 100%; bottom: -1px; height: 2px; background: var(--blue); transition: right .3s cubic-bezier(.2,.7,.1,1); }
.hr-subnav button:hover { color: var(--ink); background: rgba(255,255,255,.5); }
.hr-subnav button.active { color: var(--ink); background: #fff; }
.hr-subnav button.active::after { right: 26px; }
.hr-subnav span { grid-row: 1 / 3; color: var(--blue); font: 500 10px/1 var(--display); }
.hr-subnav b { font-size: 17px; font-weight: 500; }
.hr-subnav small { color: inherit; font: 500 9px/1 var(--display); letter-spacing: .14em; opacity: .54; }
.hr-submodule { animation: hr-panel-in .45s cubic-bezier(.2,.7,.1,1) both; }
@keyframes hr-panel-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }

.hr-join-hero { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr); min-height: 650px; color: #fff; background: var(--ink); }
.hr-join-hero figure { min-height: 650px; margin: 0; overflow: hidden; }
.hr-join-hero figure img { width: 100%; height: 100%; min-height: 650px; object-fit: cover; filter: saturate(.74) contrast(1.04); }
.hr-join-hero > div { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(48px,6vw,96px); overflow: hidden; }
.hr-join-hero > div::before { content: "JOIN"; position: absolute; right: -28px; bottom: -34px; color: rgba(255,255,255,.035); font: 600 190px/.72 var(--display); letter-spacing: -.04em; pointer-events: none; }
.hr-join-hero .overline { color: var(--cyan); }
.hr-join-hero h2, .hr-responsibility-hero h2 { position: relative; margin: 24px 0 30px; font: 500 clamp(56px,6.5vw,94px)/.86 var(--display); letter-spacing: -.025em; }
.hr-join-hero .lead { position: relative; max-width: 610px; margin: 0; color: #fff; font-size: 16px; line-height: 1.85; }
.hr-join-hero p:not(.lead) { position: relative; max-width: 610px; margin: 22px 0 32px; color: rgba(255,255,255,.58); font-size: 13px; line-height: 1.95; }
.primary-cta.light { position: relative; align-self: flex-start; color: var(--ink); background: var(--cyan); }
.primary-cta.light i { background: rgba(7,17,31,.1); }
.hr-openings { margin-top: clamp(96px,11vw,160px); }
.job-filter-bar { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; margin: 28px 0 24px; padding: 18px; background: rgba(255,255,255,.78); border: 1px solid var(--line); }
.job-filter-field { display: grid; gap: 8px; min-width: 190px; }
.job-filter-field span { color: var(--muted); font: 500 10px/1 var(--display); letter-spacing: .16em; text-transform: uppercase; }
.job-filter-field select { width: 100%; min-height: 44px; padding: 0 42px 0 14px; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 2px; font: 500 13px/1.2 var(--display); letter-spacing: .02em; outline: 0; appearance: none; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: calc(100% - 18px) 18px, calc(100% - 13px) 18px; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.job-filter-field select:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(18,88,255,.1); }
.job-filter-count { margin-left: auto; padding: 0 4px 6px; color: var(--blue); font: 500 12px/1 var(--display); letter-spacing: .12em; text-transform: uppercase; }
.hr-position-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 1px; margin-top: 0; background: var(--line); border: 1px solid var(--line); }
.job-card { min-height: 320px; padding: 28px; background: #fff; transition: background .22s ease, transform .22s ease; }
.job-card:hover { z-index: 1; background: #fbfcfa; transform: translateY(-3px); }
.job-card-head { display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.job-card-head span { color: var(--blue); font: 500 12px/1 var(--display); letter-spacing: .08em; }
.job-card-head small { color: var(--muted); font: 500 9px/1 var(--display); letter-spacing: .12em; text-align: right; }
.job-card h3 { margin: 25px 0 18px; font-size: clamp(22px,2.3vw,34px); line-height: 1.18; font-weight: 500; }
.job-meta { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 16px; padding: 14px 0 18px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.job-meta span { color: var(--muted); font-size: 11px; line-height: 1.7; }
.job-meta b { color: var(--blue); font-weight: 500; }
.job-meta a { color: var(--ink); text-decoration: underline; text-decoration-color: rgba(18,88,255,.28); text-underline-offset: 3px; }
.job-description { margin: 18px 0 0; color: var(--muted); font-size: 12px; line-height: 1.85; }
.job-description b { display: block; margin-bottom: 7px; color: var(--ink); font-weight: 500; }
.job-requirements { margin-top: 16px; border-top: 1px solid var(--line); }
.job-requirements summary { display: flex; justify-content: space-between; align-items: center; padding: 13px 0 0; color: var(--ink); cursor: pointer; font-size: 12px; font-weight: 500; }
.job-requirements summary::-webkit-details-marker { display: none; }
.job-requirements summary i { color: var(--blue); font-style: normal; transition: transform .2s ease; }
.job-requirements[open] summary i { transform: rotate(45deg); }
.job-requirements p { margin: 12px 0 0; color: var(--muted); font-size: 12px; line-height: 1.85; }
.job-remark { margin: 14px 0 0; color: var(--muted); font-size: 11px; line-height: 1.7; }
.job-remark b { color: var(--blue); font-weight: 500; }
.job-loading { grid-column: 1 / -1; min-height: 180px; display: grid; place-items: center; color: var(--muted); background: #fff; font-size: 12px; }
.hr-apply-band { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(320px,.75fr); min-height: 500px; margin-top: clamp(88px,10vw,148px); background: #fff; border: 1px solid var(--line); }
.hr-submodule[data-hr-panel="join"] > .hr-apply-band:first-child { margin-top: 0; }
.hr-apply-band figure { min-height: 500px; margin: 0; overflow: hidden; }
.hr-apply-band figure img { width: 100%; height: 100%; min-height: 500px; object-fit: cover; filter: saturate(.78); }
.hr-apply-band > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(42px,6vw,84px); }
.hr-apply-band > div > span { color: var(--blue); font: 500 9px/1 var(--display); letter-spacing: .18em; }
.hr-apply-band h2 { margin: 16px 0 26px; font: 500 clamp(44px,5vw,72px)/.9 var(--display); }
.hr-apply-band p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.95; }
.hr-apply-band a { align-self: flex-start; margin-top: 34px; padding-bottom: 8px; color: var(--blue); border-bottom: 1px solid currentColor; font: 500 15px/1 var(--display); letter-spacing: .04em; }
.hr-apply-band a i { margin-left: 30px; font-style: normal; }

.hr-responsibility-hero { display: grid; grid-template-columns: minmax(350px,.78fr) minmax(0,1.22fr); align-items: stretch; min-height: 590px; background: #fff; border: 1px solid var(--line); }
.hr-responsibility-hero > div { display: flex; flex-direction: column; justify-content: center; padding: clamp(48px,6vw,96px); }
.hr-responsibility-hero .overline { color: var(--blue); }
.hr-responsibility-hero h2 { color: var(--ink); }
.hr-responsibility-hero p { max-width: 560px; margin: 0; color: var(--muted); font-size: 14px; line-height: 2; }
.hr-responsibility-hero figure { min-height: 590px; margin: 0; overflow: hidden; }
.hr-responsibility-hero figure img { width: 100%; height: 100%; min-height: 590px; object-fit: cover; filter: saturate(.74) contrast(1.02); }
.hr-policy-section { margin-top: clamp(96px,11vw,160px); }
.hr-policy-title { display: grid; grid-template-columns: 70px 1fr; align-items: end; padding-bottom: 28px; border-bottom: 1px solid var(--line); }
.hr-policy-title > span, .hr-ethics-section > div > span { color: var(--blue); font: 500 10px/1 var(--display); }
.hr-policy-title small, .hr-ethics-section small { display: block; margin-bottom: 12px; color: var(--blue); font: 500 9px/1 var(--display); letter-spacing: .18em; }
.hr-policy-title h3, .hr-ethics-section h3 { margin: 0; font: 500 clamp(42px,5vw,70px)/.9 var(--display); }
.hr-policy-grid { display: grid; grid-template-columns: repeat(2,1fr); }
.hr-policy-grid article { display: grid; grid-template-columns: 44px 1fr; gap: 16px; min-height: 158px; padding: 34px 30px; border-bottom: 1px solid var(--line); }
.hr-policy-grid article:nth-child(odd) { border-right: 1px solid var(--line); }
.hr-policy-grid span { padding-top: 5px; color: var(--blue); font: 500 9px/1 var(--display); }
.hr-policy-grid p { max-width: 560px; margin: 0; color: var(--muted); font-size: 13px; line-height: 1.9; }
.hr-ethics-section { display: grid; grid-template-columns: minmax(300px,.68fr) minmax(0,1.32fr); gap: 8vw; align-items: start; margin-top: clamp(88px,10vw,146px); padding: clamp(52px,7vw,104px); color: #fff; background: var(--ink); }
.hr-ethics-section > div > span, .hr-ethics-section small { color: var(--cyan); }
.hr-ethics-section ul { margin: 0; padding: 0; list-style: none; counter-reset: ethics; border-top: 1px solid rgba(255,255,255,.16); }
.hr-ethics-section li { position: relative; counter-increment: ethics; padding: 24px 20px 24px 56px; color: rgba(255,255,255,.7); border-bottom: 1px solid rgba(255,255,255,.16); font-size: 14px; line-height: 1.75; }
.hr-ethics-section li::before { content: "0" counter(ethics); position: absolute; left: 0; top: 29px; color: var(--cyan); font: 500 9px/1 var(--display); }
.global-company-list { display: grid; grid-template-columns: 180px 1fr; gap: 28px; align-items: start; padding: 26px 0 38px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.56); }
.global-company-list > span { color: var(--cyan); font: 500 11px/1.15 var(--display); letter-spacing: .11em; }
.global-company-list p { margin: 0; color: rgba(255,255,255,.78); font-size: 14px; line-height: 1.9; }
.global-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:42px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.14); }
.global-detail-card { min-height:240px; padding:32px; background:rgba(255,255,255,.035); }
.global-detail-card > span { color:var(--cyan); font:500 9px/1 var(--display); letter-spacing:.16em; }
.global-detail-card h3 { margin:28px 0 14px; color:#fff; font-size:19px; font-weight:500; line-height:1.45; }
.global-detail-card p { margin:0; color:rgba(255,255,255,.57); font-size:12px; line-height:1.9; }
.global-detail-address { display:block; margin-top:18px; color:var(--cyan); font-size:11px; line-height:1.7; }

.news-head { display:flex; justify-content:space-between; align-items:end; gap:40px; }
.news-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:22px; min-height:300px; margin-top:58px; }
.news-card { grid-column:span 4; position:relative; cursor:pointer; }
.news-card.featured { grid-column:span 8; }
.news-card:nth-child(n+4) { grid-column:span 4; }
.news-card-media { position:relative; height:280px; overflow:hidden; background:#c7c9c7; }
.news-card.featured .news-card-media { height:440px; }
.news-card-media img { width:100%; height:100%; object-fit:cover; filter:saturate(.78); transition:transform .7s cubic-bezier(.2,.7,.1,1), filter .4s ease; }
.news-card:hover img { transform:scale(1.035); filter:saturate(1); }
.news-card-media::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,rgba(3,10,18,.36),transparent 45%); }
.news-card-category { position:absolute; z-index:2; left:14px; top:14px; padding:7px 9px; color:#fff; background:rgba(7,17,31,.72); backdrop-filter:blur(8px); font-size:9px; }
.news-card-copy { padding:19px 2px 28px; border-bottom:1px solid var(--line); }
.news-card-meta { display:flex; justify-content:space-between; color:var(--muted); font:500 9px/1 var(--display); letter-spacing:.08em; }
.news-card h3 { max-width:740px; margin:15px 0 10px; font-size:clamp(17px,2vw,26px); line-height:1.45; font-weight:500; }
.news-card:not(.featured) h3 { font-size:17px; }
.news-card p { margin:0; color:var(--muted); font-size:12px; line-height:1.7; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.news-card-arrow { position:absolute; right:4px; bottom:29px; width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; font-size:11px; transition:.2s ease; }
.news-card:hover .news-card-arrow { color:#fff; border-color:var(--blue); background:var(--blue); transform:rotate(45deg); }
.news-loading { grid-column:1 / -1; min-height:300px; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:16px; color:var(--muted); font-size:11px; }
.news-loading i { width:28px; height:28px; border:1px solid var(--line); border-top-color:var(--blue); border-radius:50%; animation:rotate 1s linear infinite; }

/* Content coverage blocks — the long-form details from the official site are kept legible, modular and scannable. */
.about-fact-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:84px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.about-fact-grid > div { display:flex; flex-direction:column; gap:8px; min-height:150px; padding:25px 22px; border-right:1px solid var(--line); }
.about-fact-grid > div:last-child { border-right:0; }
.about-fact-grid strong { color:var(--blue); font:500 clamp(48px,5vw,76px)/.8 var(--display); letter-spacing:-.04em; }
.about-fact-grid span { font-size:14px; font-weight:500; }
.about-fact-grid small, .coverage-heading > span, .innovation-detail > span, .evidence-card > span, .process-technology-band > span { color:var(--blue); font:500 9px/1 var(--display); letter-spacing:.17em; }
.about-fact-grid small { color:var(--muted); }
.about-coverage-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:84px; background:var(--line); border:1px solid var(--line); }
.coverage-panel { padding:clamp(34px,5vw,72px); background:#fff; }
.coverage-panel.dark { color:#fff; background:var(--ink); }
.coverage-panel.dark .coverage-heading > span { color:var(--cyan); }
.coverage-heading h2 { margin:17px 0 0; font:500 clamp(38px,4.5vw,66px)/.9 var(--display); letter-spacing:-.02em; }
.coverage-heading p { max-width:540px; margin:20px 0 0; color:var(--muted); font-size:13px; line-height:1.9; }
.coverage-panel.dark .coverage-heading p { color:rgba(255,255,255,.55); }
.coverage-list { display:grid; grid-template-columns:repeat(2,1fr); gap:0 24px; margin:48px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.coverage-panel.dark .coverage-list { border-color:rgba(255,255,255,.16); }
.coverage-list li { position:relative; padding:17px 0 17px 20px; border-bottom:1px solid var(--line); color:var(--muted); font-size:13px; }
.coverage-panel.dark .coverage-list li { color:rgba(255,255,255,.7); border-color:rgba(255,255,255,.16); }
.coverage-list li::before { content:""; position:absolute; left:0; top:24px; width:5px; height:5px; background:var(--blue); }
.coverage-panel.dark .coverage-list li::before { background:var(--cyan); }
.about-customer-band { display:grid; grid-template-columns:minmax(240px,.58fr) minmax(0,1.42fr); gap:8vw; align-items:start; margin-top:84px; padding:clamp(36px,5vw,72px); color:#fff; background:#0b1928; }
.about-customer-band .coverage-heading > span { color:var(--cyan); }
.about-customer-band .coverage-heading h2 { color:#fff; }
.about-customer-band .coverage-heading p { color:rgba(255,255,255,.52); }
.customer-cloud { display:grid; grid-template-columns:repeat(auto-fit, minmax(148px, 1fr)); gap:12px; padding-top:4px; }
.customer-chip { display:flex; align-items:center; min-height:62px; gap:10px; padding:10px 13px 10px 10px; color:rgba(255,255,255,.82); border:1px solid rgba(255,255,255,.17); background:rgba(255,255,255,.025); transition:color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
.customer-logo { flex:0 0 38px; display:grid; place-items:center; width:38px; height:38px; color:#fff; border:1px solid rgba(46,241,207,.5); border-radius:50%; background:linear-gradient(145deg, rgba(46,241,207,.18), rgba(18,88,255,.08)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); font:600 8px/1 var(--display); letter-spacing:.04em; text-align:center; }
.customer-logo.customer-mark-icon { display:block; flex:0 0 38px; width:38px; height:38px; min-width:38px; min-height:38px; padding:0; color:currentColor; border:0; border-radius:0; background:transparent; box-shadow:none; fill:currentColor; }
.customer-logo.customer-mark-icon > path { fill:currentColor; }
.customer-name { min-width:0; font-size:12px; line-height:1.35; }
.customer-chip:hover { color:var(--ink); background:var(--cyan); border-color:var(--cyan); transform:translateY(-2px); }
.customer-chip:hover .customer-logo { color:var(--ink); border-color:rgba(7,17,31,.16); background:#fff; }
.customer-chip:hover .customer-logo.customer-mark-icon { border-color:transparent; background:transparent; box-shadow:none; }
.customer-logo.customer-mark-icon--wide { flex-basis:38px; width:38px; height:38px; min-width:38px; min-height:38px; }
.customer-logo.customer-mark-icon--wide g { stroke:currentColor; }
.customer-chip:hover .customer-logo.customer-mark-icon--wide { background:transparent; }
.customer-logo.customer-mark-image,
.customer-chip:hover .customer-logo.customer-mark-image { background-color:currentColor; -webkit-mask:url('/assets/official/shacman-mark.png?v=20260831-shacman-mark-v1') center / contain no-repeat; mask:url('/assets/official/shacman-mark.png?v=20260831-shacman-mark-v1') center / contain no-repeat; }
.customer-logo.customer-mark-chery,
.customer-chip:hover .customer-logo.customer-mark-chery { background-color:currentColor; -webkit-mask:url('/assets/official/chery-logo.svg?v=20260831-chery-v3') center / contain no-repeat; mask:url('/assets/official/chery-logo.svg?v=20260831-chery-v3') center / contain no-repeat; }
.customer-logo.customer-mark-sinotruk,
.customer-chip:hover .customer-logo.customer-mark-sinotruk { background-color:currentColor; -webkit-mask:url('/assets/official/sinotruk-logo.svg?v=20260831-sinotruk-v2') center / contain no-repeat; mask:url('/assets/official/sinotruk-logo.svg?v=20260831-sinotruk-v2') center / contain no-repeat; }
.customer-logo.customer-mark-li-auto,
.customer-chip:hover .customer-logo.customer-mark-li-auto { background-color:currentColor; -webkit-mask:url('/assets/official/li-auto-logo.svg?v=20260831-li-auto-v1') center / contain no-repeat; mask:url('/assets/official/li-auto-logo.svg?v=20260831-li-auto-v1') center / contain no-repeat; }
.customer-logo.customer-mark-saic,
.customer-chip:hover .customer-logo.customer-mark-saic { background-color:currentColor; -webkit-mask:url('/assets/official/saic-logo.svg?v=20260831-saic-v2') center / contain no-repeat; mask:url('/assets/official/saic-logo.svg?v=20260831-saic-v2') center / contain no-repeat; }
.customer-logo.customer-mark-faw-jiefang,
.customer-chip:hover .customer-logo.customer-mark-faw-jiefang { background-color:currentColor; -webkit-mask:url('/assets/official/faw-jiefang-logo.svg?v=20260831-faw-jiefang-v1') center / contain no-repeat; mask:url('/assets/official/faw-jiefang-logo.svg?v=20260831-faw-jiefang-v1') center / contain no-repeat; }
.customer-logo.customer-mark-volkswagen,
.customer-chip:hover .customer-logo.customer-mark-volkswagen { background-color:currentColor; -webkit-mask:url('/assets/official/volkswagen-logo.svg?v=20260831-volkswagen-v1') center / contain no-repeat; mask:url('/assets/official/volkswagen-logo.svg?v=20260831-volkswagen-v1') center / contain no-repeat; }
.customer-logo.customer-mark-gac,
.customer-chip:hover .customer-logo.customer-mark-gac { background-color:currentColor; -webkit-mask:url('/assets/official/gac-logo-fixed.svg?v=20260831-gac-v2') center / contain no-repeat; mask:url('/assets/official/gac-logo-fixed.svg?v=20260831-gac-v2') center / contain no-repeat; }
.customer-logo.customer-mark-byd,
.customer-chip:hover .customer-logo.customer-mark-byd { background-color:currentColor; -webkit-mask:url('/assets/official/byd-logo.svg?v=20260831-byd-v1') center / contain no-repeat; mask:url('/assets/official/byd-logo.svg?v=20260831-byd-v1') center / contain no-repeat; }
.customer-logo.customer-mark-nio,
.customer-chip:hover .customer-logo.customer-mark-nio { background-color:currentColor; -webkit-mask:url('/assets/official/nio-logo.svg?v=20260831-nio-v1') center / contain no-repeat; mask:url('/assets/official/nio-logo.svg?v=20260831-nio-v1') center / contain no-repeat; }
.customer-logo.customer-mark-xiaomi,
.customer-chip:hover .customer-logo.customer-mark-xiaomi { background-color:currentColor; -webkit-mask:url('/assets/official/xiaomi-logo.svg?v=20260831-xiaomi-v1') center / contain no-repeat; mask:url('/assets/official/xiaomi-logo.svg?v=20260831-xiaomi-v1') center / contain no-repeat; }
.customer-logo.customer-mark-ford,
.customer-chip:hover .customer-logo.customer-mark-ford { background-color:currentColor; -webkit-mask:url('/assets/official/ford-logo.svg?v=20260831-ford-v1') center / contain no-repeat; mask:url('/assets/official/ford-logo.svg?v=20260831-ford-v1') center / contain no-repeat; }
.customer-logo.customer-mark-great-wall,
.customer-chip:hover .customer-logo.customer-mark-great-wall { background-color:currentColor; -webkit-mask:url('/assets/official/great-wall-logo.svg?v=20260831-great-wall-v1') center / contain no-repeat; mask:url('/assets/official/great-wall-logo.svg?v=20260831-great-wall-v1') center / contain no-repeat; }
.customer-logo.customer-mark-audi,
.customer-chip:hover .customer-logo.customer-mark-audi { background-color:currentColor; -webkit-mask:url('/assets/official/audi-logo.svg?v=20260831-audi-v1') center / contain no-repeat; mask:url('/assets/official/audi-logo.svg?v=20260831-audi-v1') center / contain no-repeat; }
.customer-logo.customer-mark-volvo,
.customer-chip:hover .customer-logo.customer-mark-volvo { background-color:currentColor; -webkit-mask:url('/assets/official/volvo-logo.svg?v=20260831-volvo-v1') center / contain no-repeat; mask:url('/assets/official/volvo-logo.svg?v=20260831-volvo-v1') center / contain no-repeat; }
.customer-logo.customer-mark-bmw,
.customer-chip:hover .customer-logo.customer-mark-bmw { background-color:currentColor; -webkit-mask:url('/assets/official/bmw-logo.svg?v=20260831-bmw-v1') center / contain no-repeat; mask:url('/assets/official/bmw-logo.svg?v=20260831-bmw-v1') center / contain no-repeat; }
.customer-logo.customer-mark-mercedes,
.customer-chip:hover .customer-logo.customer-mark-mercedes { background-color:currentColor; -webkit-mask:url('/assets/official/mercedes-logo.svg?v=20260831-mercedes-v1') center / contain no-repeat; mask:url('/assets/official/mercedes-logo.svg?v=20260831-mercedes-v1') center / contain no-repeat; }
.customer-logo.customer-mark-geely,
.customer-chip:hover .customer-logo.customer-mark-geely { background-color:currentColor; -webkit-mask:url('/assets/official/geely-logo.svg?v=20260831-geely-v1') center / contain no-repeat; mask:url('/assets/official/geely-logo.svg?v=20260831-geely-v1') center / contain no-repeat; }
.customer-logo-image { display:block; flex:0 0 38px; width:38px; height:38px; min-width:38px; min-height:38px; padding:0; object-fit:contain; object-position:center; border:0; border-radius:0; background:transparent; box-shadow:none; }
.customer-chip:hover .customer-logo-image { background:transparent; }
.customer-logo.customer-mark-icon { transform-origin:center; }
.customer-logo.customer-mark-icon[src] { filter:brightness(0) saturate(100%) invert(12%) sepia(24%) saturate(1494%) hue-rotate(176deg) brightness(88%) contrast(103%); }
.customer-logo.customer-mark-image { transform:scale(.92); }
.customer-logo.customer-mark-chery { transform:scale(1.2); }
.customer-logo.customer-mark-li-auto { transform:scale(1.45); }
.customer-logo.customer-mark-saic { transform:scale(.96); }
.customer-logo.customer-mark-faw-jiefang { transform:scale(.98); }
.customer-logo.customer-mark-volkswagen { transform:scale(.88); }
.customer-logo.customer-mark-gac { transform:scale(1.08); }
.customer-logo.customer-mark-byd { transform:scale(1.8); }
.customer-logo.customer-mark-nio { transform:scale(.96); }
.customer-logo.customer-mark-xiaomi { transform:scale(.96); }
.customer-logo.customer-mark-ford { transform:scale(1.45); }
.customer-logo.customer-mark-great-wall { transform:scale(1.08); }
.customer-logo.customer-mark-audi { transform:scale(1.5); }
.customer-logo.customer-mark-volvo { transform:scale(.96); }
.customer-logo.customer-mark-bmw { transform:scale(1.02); }
.customer-logo.customer-mark-mercedes { transform:scale(1.02); }
.customer-logo.customer-mark-geely { transform:scale(1.7); }
.customer-chip--image { flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:84px; padding:8px 10px; }
.customer-chip--image .customer-logo-image { flex-basis:38px; width:128px; height:38px; min-width:128px; min-height:38px; }
.customer-chip--image .customer-name { text-align:center; }
.about-principles-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:1px; background:var(--line); border:1px solid var(--line); border-top:0; }
.principle-card { min-height:210px; padding:30px; background:#fff; }
.principle-card > span { color:var(--blue); font:500 9px/1 var(--display); letter-spacing:.17em; }
.principle-card h3 { margin:42px 0 15px; font:500 33px/1 var(--display); }
.principle-card p { margin:0; color:var(--muted); font-size:13px; line-height:1.8; }
.about-history { margin-top:84px; padding-top:42px; border-top:1px solid var(--line); }
.timeline { display:grid; grid-template-columns:repeat(5,1fr); margin-top:50px; border-top:1px solid var(--line); }
.timeline > div { position:relative; min-height:142px; padding:25px 16px 0 0; border-right:1px solid var(--line); }
.timeline > div:not(:first-child) { padding-left:18px; }
.timeline > div:last-child { border-right:0; }
.timeline b { display:block; color:var(--blue); font:500 30px/1 var(--display); }
.timeline span { display:block; margin-top:18px; color:var(--muted); font-size:12px; line-height:1.7; }
.certificate-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.certificate-row span { padding:10px 13px; color:var(--muted); border:1px solid var(--line); font-size:11px; }
.innovation-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:86px; background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.13); }
.innovation-detail { min-height:420px; padding:clamp(34px,5vw,68px); background:rgba(255,255,255,.025); }
.innovation-detail > span, .innovation-matrix .matrix-heading > span, .process-technology-band > span { color:var(--cyan); }
.innovation-detail h2, .innovation-matrix h2, .process-technology-band h2 { margin:18px 0 0; color:#fff; font:500 clamp(38px,4.2vw,64px)/.92 var(--display); }
.innovation-detail p { max-width:550px; margin:24px 0 0; color:rgba(255,255,255,.58); font-size:13px; line-height:1.9; }
.chip-list { display:flex; flex-wrap:wrap; gap:8px; margin-top:42px; }
.chip-list b { padding:10px 12px; color:rgba(255,255,255,.72); border:1px solid rgba(255,255,255,.18); font-size:11px; font-weight:400; }
.innovation-detail.image-detail { position:relative; min-height:420px; padding:0; overflow:hidden; }
.innovation-detail.image-detail::after { content:""; position:absolute; inset:0; pointer-events: none; background:linear-gradient(0deg,rgba(7,17,31,.96),rgba(7,17,31,.08) 70%); }
.innovation-detail.image-detail img { width:100%; height:100%; min-height:420px; object-fit:cover; opacity:.65; filter:saturate(.7); }
.innovation-detail.image-detail > div { position:absolute; z-index:1; left:clamp(34px,5vw,68px); right:clamp(34px,5vw,68px); bottom:clamp(34px,5vw,68px); pointer-events: none; }
.innovation-matrix { margin-top:1px; padding:clamp(34px,5vw,68px); background:#0d1d2e; }
.matrix-columns { display:grid; grid-template-columns:repeat(2,1fr); gap:7vw; margin-top:45px; }
.matrix-columns small { color:var(--cyan); font:500 9px/1 var(--display); letter-spacing:.16em; }
.matrix-columns p { margin:15px 0 0; color:rgba(255,255,255,.63); font-size:13px; line-height:1.95; }
.process-technology-band { margin-top:1px; padding:clamp(36px,5vw,70px); background:#102a44; }
.process-technology-band p { max-width:920px; margin:24px 0 0; color:rgba(255,255,255,.64); font-size:14px; line-height:2; }
.manufacturing-evidence-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:84px; background:var(--line); border:1px solid var(--line); }
.evidence-card { min-height:360px; padding:34px 30px; background:#fff; }
.evidence-card h2 { margin:48px 0 18px; font:500 38px/.95 var(--display); }
.evidence-card p { margin:0; color:var(--muted); font-size:13px; line-height:1.9; }
.evidence-stat { display:flex; align-items:baseline; gap:12px; margin-top:46px; padding-top:16px; border-top:1px solid var(--line); }
.evidence-stat strong { color:var(--blue); font:500 34px/1 var(--display); }
.evidence-stat small { color:var(--muted); font-size:10px; }
.equipment-gallery { margin-top:84px; }
.equipment-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:14px; margin-top:42px; }
.equipment-grid figure { margin:0; overflow:hidden; background:#d7d9d6; }
.equipment-grid figure:first-child { grid-row:auto; }
.equipment-grid img { width:100%; height:clamp(280px, 26vw, 420px); object-fit:cover; filter:saturate(.78); transition:transform .6s ease,filter .3s ease; }
.equipment-grid figure:hover img { transform:scale(1.035); filter:saturate(1); }
.equipment-grid figcaption { display:flex; align-items:center; min-height:48px; box-sizing:border-box; padding:14px 16px; color:var(--muted); font-size:11px; }
.patent-gallery .coverage-heading { display:block; text-align:left; }
.patent-gallery .coverage-heading p { max-width:420px; margin:0; color:var(--muted); font-size:13px; line-height:1.7; }
.patent-batch-label { flex:0 0 auto; color:var(--blue); font:500 10px/1 var(--display); letter-spacing:.12em; }
.patent-carousel { margin-top:34px; }
.patent-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; min-height:clamp(360px, 35vw, 520px); }
.patent-card { display:grid; grid-template-rows:minmax(0,1fr) auto; margin:0; overflow:hidden; background:#f6f8fb; border:1px solid var(--line); box-shadow:0 18px 50px rgba(7,17,31,.08); }
.patent-card img { align-self:center; justify-self:center; width:100%; height:clamp(320px, 32vw, 470px); object-fit:contain; padding:18px; box-sizing:border-box; background:linear-gradient(180deg,#fff,#f1f4f8); filter:saturate(.96) contrast(1.03); transition:transform .28s ease; }
.patent-card:hover img { transform:translateY(-4px) scale(1.012); }
.patent-card figcaption { display:flex; align-items:center; gap:10px; min-height:50px; padding:13px 15px; color:var(--muted); background:#fff; border-top:1px solid var(--line); font-size:12px; }
.patent-card figcaption span { color:var(--blue); font:500 10px/1 var(--display); letter-spacing:.12em; }
.patent-card figcaption b { color:var(--ink); font-size:12px; font-weight:500; }
.patent-progress { height:2px; margin-top:18px; overflow:hidden; background:rgba(7,17,31,.08); }
.patent-progress i { display:block; width:100%; height:100%; transform-origin:left center; background:var(--blue); animation:patent-progress 3s linear infinite; }
@keyframes patent-progress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.site-footer { padding:78px var(--section-x) 24px; color:#cbd3da; background:#050c15; }
.footer-brand { display:flex; align-items:center; gap:14px; }
.footer-brand div { display:flex; flex-direction:column; }
.footer-brand strong { font-size:22px; }
.footer-brand small { margin-top:6px; font:500 9px/1 var(--display); letter-spacing:.13em; color:rgba(255,255,255,.34); }
.footer-links { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; width:55%; margin:68px 0 70px auto; }
.footer-links div { display:flex; flex-direction:column; gap:12px; }
.footer-links b { margin-bottom:7px; color:#fff; font-size:11px; font-weight:500; }
.footer-links a { color:rgba(255,255,255,.4); font-size:11px; transition:.2s ease; }
.footer-links a:hover { color:var(--cyan); }
.footer-links .footer-business-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; align-items: start; }
.footer-links .footer-business-grid .footer-nav-block { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.footer-nav-parent { color: #fff !important; }
.footer-nav-parent[aria-current="page"] { color: var(--cyan) !important; }
.footer-nav-submenu { display: flex; flex-direction: column; gap: 12px; margin: -4px 0 0 12px; padding-left: 12px; border-left: 1px solid rgba(90,216,194,.3); }
.footer-nav-submenu a { font-size: 10px; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.25); font:500 8px/1 var(--display); letter-spacing:.1em; }
.footer-bottom a { color:rgba(255,255,255,.55); }

dialog { max-width:none; border:0; padding:0; }
dialog::backdrop { background:rgba(3,9,16,.8); backdrop-filter:blur(12px); }
.news-dialog { width:min(1040px,calc(100vw - 32px)); max-height:92vh; color:var(--ink); background:var(--paper); box-shadow:0 30px 100px rgba(0,0,0,.35); overflow:auto; }
.dialog-close { position:absolute; z-index:4; right:16px; top:16px; width:40px; height:40px; border:0; color:#fff; background:rgba(7,17,31,.75); cursor:pointer; font-size:23px; }
.dialog-media { height:380px; background:#bbb; }
.dialog-media img { width:100%; height:100%; object-fit:cover; }
.news-dialog article { padding:44px clamp(24px,7vw,96px) 70px; }
.dialog-meta { display:flex; justify-content:space-between; color:var(--blue); font:500 9px/1 var(--display); letter-spacing:.1em; }
.news-dialog h2 { max-width:780px; margin:22px 0; font:500 clamp(36px,5vw,64px)/1.05 var(--display); }
.dialog-excerpt { max-width:760px; color:var(--ink); font-size:16px; font-weight:500; line-height:1.8; }
.dialog-body { max-width:760px; margin-top:28px; color:var(--muted); font-size:14px; line-height:2; white-space:pre-wrap; }
.translation-note { display:none; margin-top:25px; color:#9b6100; }
.translation-note.visible { display:block; }
.system-dialog { width:min(780px,calc(100vw - 32px)); min-height:420px; padding:60px; color:#fff; background:#07111f; box-shadow:0 30px 100px rgba(0,0,0,.5); }
.system-dialog > div:last-child { position:relative; z-index:2; max-width:490px; margin:190px 0 0; }
.system-dialog small { color:var(--cyan); font:500 9px/1 var(--display); letter-spacing:.14em; }
.system-dialog h2 { margin:15px 0; font:500 40px/1 var(--display); }
.system-dialog p { color:rgba(255,255,255,.52); font-size:13px; line-height:1.8; }
.system-visual { position:absolute; inset:0; overflow:hidden; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:36px 36px; }
.system-visual i { position:absolute; width:240px; height:240px; left:calc(50% - 120px); top:-55px; border:1px solid rgba(46,241,207,.3); border-radius:50%; }
.system-visual i:nth-child(2) { transform:scale(.7); animation:rotate 9s linear infinite; border-style:dashed; }
.system-visual i:nth-child(3) { transform:scale(.4); background:rgba(46,241,207,.08); }
.system-visual span { position:absolute; left:50%; top:62px; transform:translateX(-50%); font:500 28px/1 var(--display); color:var(--cyan); }
.toast { position:fixed; z-index:300; left:50%; bottom:28px; transform:translate(-50%,20px); padding:13px 18px; color:#fff; background:var(--ink); font-size:11px; opacity:0; visibility:hidden; transition:.25s ease; }
.toast.visible { opacity:1; visibility:visible; transform:translate(-50%,0); }

.reveal { opacity:0; transform:translateY(24px); transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.1,1); }
.reveal.visible { opacity:1; transform:none; }
.delay-1 { transition-delay:.12s; }.delay-2 { transition-delay:.24s; }.delay-3 { transition-delay:.36s; }
[dir="rtl"] .hero-media::after { background:linear-gradient(-90deg,rgba(3,10,20,.96) 0%,rgba(3,10,20,.72) 38%,rgba(3,10,20,.06) 72%),linear-gradient(0deg,rgba(3,10,20,.88),transparent 36%,rgba(3,10,20,.3)); }
[dir="rtl"] .hero h1 em { margin-left:0; margin-right:clamp(36px,5vw,90px); }
[dir="rtl"] .stock-ticker { direction:ltr; unicode-bidi:isolate; text-align:left; }
[dir="rtl"] .blueprint-primary i,
[dir="rtl"] .hero-carousel-arrow { transform:rotate(180deg); }
[dir="rtl"] .hero-carousel-arrow:hover,
[dir="rtl"] .hero-carousel-arrow:first-child:hover { transform:rotate(180deg); }

@media (max-width: 1180px) {
  :root { --section-x: clamp(24px,4.5vw,64px); }
  .desktop-nav { gap:18px; }
  .brand { min-width:150px; }
  .desktop-nav a { font-size:11px; }
  .product-stage { grid-template-columns:1fr 270px; }
  .footer-links { width:68%; }
}

@media (max-width: 900px) {
  :root { --header-h:72px; }
  .desktop-nav { display:none; }
  .brand { min-width:0; flex:1; }
  .brand-copy strong { font-size:18px; }
  .menu-trigger { display:block; }
  .header-actions { min-width:100px; }
  .mobile-menu { position:fixed; z-index:90; inset:0; display:flex; flex-direction:column; justify-content:center; padding:100px var(--section-x) 40px; color:#fff; background:#07111f; opacity:0; visibility:hidden; transform:translateY(-20px); transition:.35s ease; }
  .menu-open .mobile-menu { opacity:1; visibility:visible; transform:none; }
  .mobile-menu nav { display:flex; flex-direction:column; }
  .mobile-menu nav a { display:flex; gap:14px; align-items:center; padding:10px 0; font:600 clamp(24px,5.6vw,34px)/1.08 var(--display); text-transform:uppercase; border-bottom:1px solid rgba(255,255,255,.1); }
  .mobile-menu nav a::before { content:attr(data-index); color:var(--cyan); font:500 9px/1 var(--display); }
  .mobile-menu nav a[aria-current="page"] { color:var(--cyan); }
  .mobile-menu nav .mobile-nav-group { display:flex; flex-direction:column; }
  .mobile-menu nav .mobile-nav-parent { display:flex; align-items:center; gap:14px; }
  .mobile-menu nav .mobile-nav-parent .nav-caret { width:8px; height:8px; margin:1px 0 0 2px; border-color:var(--cyan); }
  .mobile-menu nav .mobile-nav-submenu { display:flex; flex-direction:column; margin:0 0 6px 30px; padding-left:14px; border-left:1px solid rgba(90,216,194,.34); }
  .mobile-menu nav .mobile-nav-submenu a { gap:10px; padding:7px 0; color:rgba(255,255,255,.58); font:600 clamp(14px,3.8vw,18px)/1.15 var(--display); border-bottom:0; }
  .mobile-menu nav .mobile-nav-submenu a::before { color:var(--cyan); font:500 8px/1 var(--display); }
  .mobile-menu nav .mobile-nav-submenu a[aria-current="page"] { color:var(--cyan); }
  .mobile-menu-meta { display:flex; justify-content:space-between; margin-top:auto; color:rgba(255,255,255,.3); font:500 8px/1 var(--display); }
  .hero-content { width:100%; padding-top:clamp(145px,22vh,190px); }
  .hero h1 { font-size:clamp(48px,11vw,82px); line-height:.94; }
  .hero-footer { grid-template-columns:repeat(2,1fr); right:auto; width:min(520px,60vw); }
  .scroll-cue { display:none; }
  .intro-grid, .innovation-head, .manufacturing-grid, .sustainability-shell { grid-template-columns:1fr; }
  .sustainability-hero-card { grid-template-columns:1fr; }
  .sustainability-forest { border-right:1px solid rgba(7,17,31,.08); border-bottom:0; }
  .sustainability-hero-card .sustainability-copy { border-top:0; border-left:1px solid rgba(7,17,31,.08); }
  .sustainability-hero-card .sustainability-copy { min-height:0; }
  .sustainability-forest { min-height:320px; }
  .sustainability-forest::after { background:linear-gradient(180deg, rgba(238,245,251,0) 0%, rgba(238,245,251,.88) 100%); }
  .official-details-grid, .official-details-grid:has(.official-media) { grid-template-columns:1fr; gap:42px; }
  .hr-subhead { grid-template-columns:1fr; gap:24px; }
  .hr-pillar-grid { grid-template-columns:repeat(2,1fr); }
  .hr-team-band { grid-template-columns:1fr; }
  .hr-founder { grid-template-columns:minmax(220px,.45fr) 1fr; gap:42px; }
  .hr-join-hero, .hr-responsibility-hero { grid-template-columns:1fr; }
  .hr-join-hero figure, .hr-join-hero figure img { min-height:460px; }
  .hr-responsibility-hero figure, .hr-responsibility-hero figure img { min-height:430px; }
  .hr-apply-band { grid-template-columns:1fr; }
  .hr-apply-band figure, .hr-apply-band figure img { min-height:430px; }
  .hr-ethics-section { grid-template-columns:1fr; gap:54px; }
  .global-company-list { grid-template-columns:1fr; gap:14px; }
  .intro-copy { max-width:620px; margin-left:auto; }
  .material-card { min-height:330px; }
  .material-visual { height:190px; }
  .product-stage { grid-template-columns:1fr; }
  .product-tabs { display:grid; grid-template-columns:repeat(2,1fr); }
  .manufacturing-media { min-height:460px; }
  .manufacturing-media img { height:460px; }
  .sustainability-orbit { height:380px; }
  .sustainability-copy { max-width:690px; }
  .news-card, .news-card.featured, .news-card:nth-child(n+4) { grid-column:span 6; }
  .news-card.featured .news-card-media, .news-card-media { height:320px; }
  .footer-links { width:100%; }
}

@media (max-width: 620px) {
  :root { --section-x:20px; }
  .sustainability-hero-card { --sustainability-module-gap:16px; }
  .site-header { padding:0 18px; }
  .brand { gap:10px; }
  .brand-name { font-size:16px; }
  .brand-mark { width:36px; height:36px; }
  .brand-copy small { display:none; }
  .language-panel { right:20px; padding:18px; }
  .language-list { grid-template-columns:repeat(2,1fr); }
  .hero-media::after { background:linear-gradient(0deg,rgba(3,10,20,.96) 0%,rgba(3,10,20,.7) 62%,rgba(3,10,20,.28) 100%); }
  .hero-slide:first-child img { object-position:44% 48%; }
  .hero-slide:nth-child(2) img { object-position:48% center; }
  .hero-slide:nth-child(3) img { object-position:70% center; }
  .hero-carousel-controls { top:calc(var(--header-h) + 16px); right:18px; }
  .hero-carousel-arrow { display:none; }
  .hero-content { padding:150px 20px 230px; }
  .hero h1 { margin:25px 0; font-size:clamp(40px,13vw,68px); }
  .hero h1 em { margin-left:22px; }
  .hero-summary { font-size:13px; line-height:1.8; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }
  .hero-footer { left:20px; right:20px; bottom:24px; width:auto; gap:18px; }
  .hero-footer div { padding-top:11px; }
  .hero-footer span { font-size:25px; }
  .hero-rail { display:none; }
  .section-light,.section-paper,.section-dark,.section-ink { padding:86px 20px; }
  .display-title { font-size:clamp(32px,9.5vw,48px); line-height:1.08; }
  .intro-grid { gap:42px; }
  .material-strip { grid-template-columns:1fr; margin-top:60px; }
  .material-card { min-height:370px; }
  .material-visual { height:230px; }
  .innovation-head { gap:35px; }
  .product-stage { margin-top:45px; min-height:0; gap:24px; }
  .product-blueprint { min-height:350px; }
  .ring-a { width:360px;height:360px;left:0;top:0; }.ring-b{width:260px;height:260px;left:50px;top:50px}.ring-c{width:130px;height:130px;left:115px;top:115px}
  .cockpit-line { left:5%; right:3%; top:31%; }
  .product-tabs button { padding:17px 5px; }
  .manufacturing-grid { gap:48px; }
  .metric-row { gap:24px; }
  .manufacturing-media, .manufacturing-media img { height:320px; min-height:320px; }
  .process-line { grid-template-columns:1fr 1fr; gap:0; border-top:1px solid var(--line); }
  .process-line i { display:none; }
  .process-line div { padding:15px 0; border-bottom:1px solid var(--line); }
  .country-list { margin-top:54px; }
  .country-row { grid-template-columns:70px 1fr; gap:20px; padding:28px 0; }
  .country-row ul { grid-column:1 / -1; gap:8px; }
  .country-row li { min-width:calc(50% - 4px); padding:11px 10px; }
  .country-name h3 { font-size:29px; }
  .sustainability-shell { gap:40px; }
  .sustainability-orbit { height:310px; }
  .orbit-core { width:136px;height:136px; }.orbit-core span{font-size:60px}.orbit-one{transform-origin:0 130px}.orbit-two{transform-origin:42px 76px}
  .sustainability-facts { grid-template-columns:1fr; }
  .sustainability-facts div { border-right:0; }
  .sustainability-hero-card .sustainability-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .official-facts { grid-template-columns:1fr; }
  .official-facts span, .official-facts span + span { padding:14px 0; border-right:0; border-bottom:1px solid var(--line); }
  .official-facts span:last-child { border-bottom:0; }
  .hr-subnav { top:70px; margin:0 -1px 68px; }
  .hr-subnav button { grid-template-columns:24px 1fr; gap:4px 6px; min-height:76px; padding:14px 10px; }
  .hr-subnav button::after { left:10px; }
  .hr-subnav button.active::after { right:10px; }
  .hr-subnav b { font-size:14px; }
  .hr-subnav small { display:none; }
  .hr-pillars, .hr-model-section { margin-top:86px; }
  .hr-pillar-grid { grid-template-columns:1fr; }
  .hr-pillar-card { min-height:250px; padding:28px 24px; }
  .hr-pillar-card img { margin:36px 0 20px; }
  .hr-team-band { min-height:0; margin-top:86px; }
  .hr-team-band figure { min-height:260px; }
  .hr-team-band > div { padding:42px 24px; }
  .hr-founder { grid-template-columns:1fr; padding:22px; }
  .hr-founder figure, .hr-founder img { min-height:0; }
  .hr-founder h3 { font-size:42px; line-height:1.08; }
  .hr-honors-head { align-items:flex-start; flex-direction:column; }
  .hr-honor-grid { grid-template-columns:1fr; }
  .hr-honor-card:nth-child(odd) { border-right:0; }
  .hr-honor-card summary { grid-template-columns:64px 24px 1fr 18px; gap:10px; min-height:118px; padding:16px 8px; }
  .hr-honor-photo { width:64px; height:82px; }
  .hr-honor-card summary b { font-size:16px; }
  .hr-honor-card > p { padding:0 8px 30px; }
  .hr-join-hero { min-height:0; }
  .hr-join-hero figure, .hr-join-hero figure img { min-height:300px; }
  .hr-join-hero > div { padding:46px 24px 54px; }
  .hr-join-hero > div::before { font-size:120px; }
  .hr-join-hero h2, .hr-responsibility-hero h2 { font-size:58px; }
  .job-filter-bar { align-items: stretch; gap: 12px; padding: 14px; }
  .job-filter-field { flex: 1 1 100%; min-width: 0; }
  .job-filter-count { width: 100%; margin-left: 0; padding: 4px 0 0; }
  .hr-position-grid { grid-template-columns:1fr; }
  .job-card { min-height:auto; padding:24px 18px; }
  .job-meta { grid-template-columns:1fr; }
  .job-card-head small { font-size:8px; }
  .hr-apply-band { min-height:0; }
  .hr-apply-band figure, .hr-apply-band figure img { min-height:280px; }
  .hr-apply-band > div { padding:42px 24px; }
  .hr-responsibility-hero { min-height:0; }
  .hr-responsibility-hero > div { padding:46px 24px 54px; }
  .hr-responsibility-hero figure, .hr-responsibility-hero figure img { min-height:280px; }
  .hr-policy-title { grid-template-columns:42px 1fr; }
  .hr-policy-grid { grid-template-columns:1fr; }
  .hr-policy-grid article:nth-child(odd) { border-right:0; }
  .hr-policy-grid article { min-height:0; padding:28px 8px; }
  .hr-ethics-section { margin-left:-20px; margin-right:-20px; padding:52px 24px; }
  .news-head { align-items:flex-start; flex-direction:column; }
  .news-card,.news-card.featured,.news-card:nth-child(n+4) { grid-column:1 / -1; }
  .news-card.featured .news-card-media,.news-card-media { height:260px; }
  .footer-links { grid-template-columns:repeat(2,1fr); margin:55px 0; }
  .footer-bottom { flex-direction:column; }
  .dialog-media { height:230px; }
  .system-dialog { min-height:520px; padding:35px 24px; }
  .system-dialog > div:last-child { margin-top:240px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .reveal { opacity:1; transform:none; }
}

@media (max-width: 900px) {
  .about-fact-grid { grid-template-columns:repeat(2,1fr); }
  .about-fact-grid > div:nth-child(2) { border-right:0; }
  .about-fact-grid > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .about-coverage-grid, .innovation-detail-grid { grid-template-columns:1fr; }
  .about-customer-band { grid-template-columns:1fr; gap:38px; }
  .about-principles-grid, .manufacturing-evidence-grid { grid-template-columns:1fr; }
  .principle-card { min-height:170px; }
  .timeline { grid-template-columns:repeat(2,1fr); }
  .timeline > div:nth-child(2) { border-right:0; }
  .timeline > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .timeline > div:nth-child(3), .timeline > div:nth-child(5) { padding-left:0; }
  .matrix-columns { grid-template-columns:1fr; gap:28px; }
  .equipment-grid { grid-template-columns:1fr 1fr; }
  .equipment-grid figure:first-child { grid-row:auto; grid-column:1 / -1; }
  .equipment-grid figure:first-child img, .equipment-grid img { height:260px; }
  .patent-grid { grid-template-columns:repeat(2,minmax(0,1fr)); min-height:0; }
  .patent-card img { height:360px; }
  .global-detail-grid { grid-template-columns:1fr; }
}

@media (max-width: 620px) {
  .about-fact-grid { grid-template-columns:1fr 1fr; }
  .about-fact-grid > div { min-height:128px; padding:18px 13px; }
  .about-fact-grid strong { font-size:46px; }
  .about-fact-grid span { font-size:12px; }
  .coverage-list { grid-template-columns:1fr; }
  .coverage-panel, .principle-card, .evidence-card { padding:28px 22px; }
  .about-customer-band { margin-left:-20px; margin-right:-20px; padding:34px 20px; }
  .timeline { grid-template-columns:1fr; }
  .timeline > div, .timeline > div:nth-child(2), .timeline > div:nth-child(3), .timeline > div:nth-child(5) { min-height:112px; padding:18px 0; border-right:0; border-bottom:1px solid var(--line); }
  .timeline > div:last-child { border-bottom:0; }
  .innovation-detail { min-height:0; }
  .innovation-detail.image-detail, .innovation-detail.image-detail img { min-height:330px; }
  .innovation-matrix, .process-technology-band { margin-left:-20px; margin-right:-20px; }
  .equipment-grid { grid-template-columns:1fr; }
  .equipment-grid figure:first-child { grid-column:auto; }
  .equipment-grid figure:first-child img, .equipment-grid img { height:230px; }
  .patent-gallery .coverage-heading { display:block; }
  .patent-gallery .coverage-heading p { margin-top:12px; }
  .patent-batch-label { display:block; margin-top:14px; }
  .patent-grid { grid-template-columns:1fr; }
  .patent-card img { height:380px; }
  .sustainability-hero-card .sustainability-copy { padding:34px 22px; }
  .sustainability-hero-card .sustainability-facts { grid-template-columns:1fr; }
  .global-detail-card { padding:28px 22px; }
}

/* Editorial refinement: a quieter industrial palette, clearer hierarchy and more deliberate breathing room. */
:root {
  --paper: #f7f8f6;
  --ink: #0a1724;
  --ink-2: #122337;
  --muted: #65727e;
  --line: rgba(10, 23, 36, .13);
  --blue: #0d5bea;
  --cyan: #5ad8c2;
  --red: #e45a3a;
  --section-x: clamp(22px, 6vw, 108px);
}

body { background: var(--paper); color: var(--ink); }
.page-noise { opacity: .018; }
.site-header {
  height: 78px;
  background: rgba(250, 251, 249, .94);
  border-bottom-color: rgba(10, 23, 36, .08);
  box-shadow: 0 8px 32px rgba(10, 23, 36, .035);
}
.site-header.scrolled { height: 68px; background: rgba(250, 251, 249, .84); }
.official-logo { width: 44px; height: 44px; }
.brand { min-width: 164px; gap: 11px; }
.brand-name { font-size: 18px; font-weight: 650; letter-spacing: .075em; }
.desktop-nav { gap: clamp(14px, 1.85vw, 32px); }
.desktop-nav a { font-size: 13px; letter-spacing: .01em; opacity: .84; }
.desktop-nav a::after { bottom: -8px; height: 2px; }
.header-actions { min-width: 108px; }
.language-trigger { color: var(--muted); font-size: 12px; }
.language-trigger:hover { color: var(--ink); }
.language-panel { border-color: rgba(255,255,255,.1); box-shadow: 0 24px 70px rgba(10,23,36,.24); }

.hero-media::after {
  background: radial-gradient(circle at 76% 44%, rgba(13,91,234,.12), transparent 36%),
    linear-gradient(0deg, rgba(3,10,20,.76) 0%, rgba(3,10,20,.2) 30%, rgba(3,10,20,.02) 66%, rgba(3,10,20,.2) 100%);
}
.hero-carousel-controls { background: rgba(5,12,21,.32); border-color: rgba(255,255,255,.25); }
.hero-footer { gap: 18px; }
.hero-footer div { border-top-color: rgba(255,255,255,.32); }
.hero-footer span { font-size: 28px; }
.hero-footer small { color: rgba(255,255,255,.76); }
.scroll-cue i { border-color: rgba(255,255,255,.34); }

.section-light, .section-paper, .section-dark, .section-ink { padding-top: clamp(92px, 8vw, 126px); padding-bottom: clamp(92px, 8vw, 126px); }
.section-light, .section-paper { background: var(--paper); }
.section-paper { background: #eef1ef; }
.section-dark { background: #091827; }
.section-ink { background: #0b1a29; }
.display-title { letter-spacing: -.012em; }
.overline { margin-bottom: 20px; letter-spacing: .22em; }

.intro-grid { gap: 8vw; }
.intro-copy p { font-size: 13px; line-height: 1.9; }
.intro-copy .lead { font-size: 16px; line-height: 1.75; }
.material-strip { margin-top: 74px; gap: 12px; background: transparent; border: 0; }
.material-card { min-height: 365px; padding: 22px; border: 1px solid var(--line); border-radius: 3px; background: #fff; }
.material-visual { height: 220px; margin: 18px 0 18px; border-radius: 2px; }
.material-card h3 { font-size: 17px; }
.material-card p { color: #77838c; }

.innovation-head { gap: 7vw; }
.innovation-intro { font-size: 13px; line-height: 1.85; }
.product-stage { margin-top: 68px; gap: 44px; }
.product-blueprint { border-color: rgba(255,255,255,.16); background-size: 42px 42px; }
.product-tabs button { padding-top: 18px; padding-bottom: 18px; }
.product-tabs b { font-size: 14px; }

.manufacturing-grid { gap: 7vw; }
.manufacturing-copy > p:not(.overline) { font-size: 13px; line-height: 1.85; }
.manufacturing-media { border-radius: 3px; }
.manufacturing-media img { filter: saturate(.72) contrast(1.02); }
.process-line { margin-top: 64px; }

.country-list { margin-top: clamp(58px, 6.5vw, 88px); }
.country-row { grid-template-columns: 138px minmax(180px,.48fr) 1fr; gap: clamp(22px, 3.5vw, 54px); padding: 30px 0 30px clamp(26px, 3.2vw, 52px); }
.country-row::before { background: var(--cyan); }
.country-row:hover { background: linear-gradient(90deg, rgba(90,216,194,.055), transparent 78%); }
.country-code-group { gap: 10px; }
.country-code { color: var(--cyan); letter-spacing: .12em; }
.country-identity { gap: 12px; }
.country-flag { width: 34px; height: 26px; font-size: 20px; }
.country-name h3 { font-size: clamp(26px, 2.35vw, 34px); }
.country-name small { margin-top: 8px; letter-spacing: .08em; }
.country-row ul { gap: 8px; }
.country-row li { min-width: 88px; padding: 11px 14px; border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.06); font-size: 13px; }
.global-detail-grid { margin-top: 56px; gap: 12px; background: transparent; border: 0; }
.global-detail-card { min-height: 238px; padding: 30px; border: 1px solid rgba(255,255,255,.13); border-radius: 3px; background: rgba(255,255,255,.035); transition: transform .25s ease, background .25s ease, border-color .25s ease; }
.global-detail-card:hover { transform: translateY(-4px); background: rgba(255,255,255,.06); border-color: rgba(90,216,194,.38); }
.global-detail-card h3 { margin-top: 24px; font-size: 18px; }
.global-detail-card p { font-size: 12px; line-height: 1.85; }
.global-detail-address { color: var(--cyan); font-size: 10px; }

.sustainability-shell { gap: 7vw; }
.sustainability-orbit { border-radius: 3px; }
.orbit-core { box-shadow: 0 18px 48px rgba(7,17,31,.16); }
.official-details-grid:has(.official-media) { gap: 4vw; }
.official-media { border-radius: 3px; }
.official-copy p { font-size: 13px; line-height: 1.9; }
.official-copy .lead { font-size: 16px; line-height: 1.75; }
.hr-subnav { border-radius: 3px; }
.hr-pillar-card, .hr-founder, .hr-apply-band, .hr-responsibility-hero { border-radius: 3px; }

.news-grid { gap: 28px; margin-top: 50px; }
.news-card-media { border-radius: 3px; }
.news-card-copy { padding-top: 17px; }
.news-card h3 { line-height: 1.35; }
.news-card p { line-height: 1.75; }
.news-card-arrow { border-radius: 2px; }
.news-card:hover .news-card-arrow { transform: translate(2px,-2px); }
.site-footer { padding-top: 70px; background: #07131f; }
.footer-links { margin-top: 58px; margin-bottom: 58px; }
.footer-links a { color: rgba(203,211,218,.66); transition: color .2s ease, transform .2s ease; }
.footer-links a:hover { color: #fff; transform: translateX(3px); }

a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }

@media (max-width: 900px) {
  .desktop-nav { gap: 15px; }
  .country-row { grid-template-columns: 118px 1fr; padding-left: 22px; }
  .country-row ul { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
  .site-header { height: 68px; }
  .site-header.scrolled { height: 62px; }
  .official-logo { width: 40px; height: 40px; }
  .hero-media::after { background: linear-gradient(0deg, rgba(3,10,20,.82) 0%, rgba(3,10,20,.26) 56%, rgba(3,10,20,.12) 100%); }
  .hero-footer { gap: 13px; }
  .hero-footer span { font-size: 22px; }
  .hero-footer small { font-size: 10px; line-height: 1.4; }
  .section-light, .section-paper, .section-dark, .section-ink { padding-top: 76px; padding-bottom: 76px; }
  .material-strip { gap: 8px; }
  .material-card { border-radius: 2px; }
  .country-row { grid-template-columns: 1fr; padding: 25px 0 25px 18px; }
  .country-code-group { padding-top: 0; }
  .country-name h3 { font-size: 28px; }
  .country-row li { min-width: calc(50% - 4px); }
  .global-detail-grid { gap: 8px; }
  .global-detail-card { padding: 25px 22px; }
}

/* R&D submodule navigation */
#technology, #laboratory { scroll-margin-top: calc(var(--header-h) + 28px); }
.innovation-subnav { position: relative; z-index: 2; display: inline-flex; gap: 4px; margin: 2px 0 54px; padding: 4px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.035); }
.innovation-subnav a { display: inline-flex; align-items: center; min-height: 34px; padding: 0 15px; color: rgba(255,255,255,.54); font-size: 11px; transition: color .2s ease, background .2s ease; }
.innovation-subnav a::before { content: ""; width: 5px; height: 5px; margin-right: 8px; border: 1px solid var(--cyan); border-radius: 50%; }
.innovation-subnav a:hover, .innovation-subnav a:focus-visible { color: #fff; background: rgba(255,255,255,.08); }
.innovation-subnav a.active, .innovation-subnav a[aria-current="location"] { color: #fff; background: rgba(90,216,194,.15); }

@media (max-width: 620px) {
  .innovation-subnav { display: flex; width: 100%; margin: -8px 0 42px; }
  .innovation-subnav a { flex: 1; justify-content: center; padding: 0 8px; }
}

/* Dedicated R&D pages: editorial technical layout without the old blueprint image. */
.research-local-nav { position:relative; z-index:2; display:flex; align-items:center; gap:4px; width:max-content; max-width:100%; margin:2px 0 58px; padding:4px; color:rgba(255,255,255,.45); border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.035); }
.research-local-nav span { padding:0 14px; font:500 9px/34px var(--display); letter-spacing:.16em; text-transform:uppercase; }
.research-local-nav a { display:inline-flex; align-items:center; min-height:34px; padding:0 16px; color:rgba(255,255,255,.55); font-size:11px; transition:color .2s ease,background .2s ease; }
.research-local-nav a::before { content:""; width:5px; height:5px; margin-right:8px; border:1px solid var(--cyan); border-radius:50%; }
.research-local-nav a:hover, .research-local-nav a:focus-visible, .research-local-nav a.active, .research-local-nav a[aria-current="page"] { color:#fff; background:rgba(90,216,194,.15); }
.research-local-nav-light { color:var(--muted); border-color:var(--line); background:#fff; }
.research-local-nav-light a { color:var(--muted); }
.research-local-nav-light a:hover, .research-local-nav-light a:focus-visible, .research-local-nav-light a.active, .research-local-nav-light a[aria-current="page"] { color:var(--ink); background:#e6eeeb; }
.research-local-nav-light a::before { border-color:var(--blue); }
.research-page-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.76fr); gap:9vw; align-items:end; }
.research-page-hero .display-title { margin-top:20px; }
.research-page-lead { max-width:620px; padding:26px 0 26px 30px; border-left:2px solid var(--cyan); background:linear-gradient(90deg,rgba(90,216,194,.06),transparent 70%); }
.research-page-lead p { margin:0; color:rgba(255,255,255,.66); font-size:15px; line-height:2; }
.research-metric-row, .laboratory-fact-row { display:grid; grid-template-columns:repeat(3,1fr); margin-top:88px; border-top:1px solid rgba(255,255,255,.16); border-bottom:1px solid rgba(255,255,255,.16); }
.research-metric-row > div, .laboratory-fact-row > div { display:flex; flex-direction:column; gap:8px; min-height:145px; padding:24px 24px 20px; border-right:1px solid rgba(255,255,255,.13); }
.research-metric-row > div:last-child, .laboratory-fact-row > div:last-child { border-right:0; }
.research-metric-row strong, .laboratory-fact-row strong { color:var(--cyan); font:500 clamp(36px,4.5vw,68px)/.8 var(--display); letter-spacing:-.04em; }
.research-metric-row span, .laboratory-fact-row span { color:#fff; font-size:13px; font-weight:500; }
.research-metric-row small, .laboratory-fact-row small { color:rgba(255,255,255,.36); font:500 8px/1 var(--display); letter-spacing:.16em; }
.technology-capability-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:1px; margin-top:88px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.14); }
.technology-capability-panel, .technology-organization-panel { min-height:470px; padding:clamp(34px,5vw,70px); background:rgba(255,255,255,.035); }
.technology-organization-panel { color:#07111f; background:var(--cyan); }
.technology-capability-panel > span, .technology-organization-panel > span, .technology-content-grid article > span, .technology-programs > span, .technology-outlook > span, .laboratory-system-card > span, .laboratory-capability-band span { font:500 9px/1 var(--display); letter-spacing:.17em; }
.technology-capability-panel > span, .technology-content-grid article > span, .technology-programs > span, .technology-outlook > span, .laboratory-capability-band span { color:var(--cyan); }
.technology-organization-panel > span { color:rgba(7,17,31,.58); }
.technology-capability-panel h2, .technology-organization-panel h2, .technology-content-grid h2, .technology-programs h2, .technology-outlook h2, .laboratory-system-card h2, .laboratory-capability-band h2 { margin:20px 0 0; font:500 clamp(34px,4vw,60px)/.92 var(--display); letter-spacing:-.025em; }
.technology-organization-panel h2 { color:#07111f; }
.technology-capability-panel p, .technology-organization-panel p, .technology-content-grid p, .technology-programs p, .technology-outlook p, .laboratory-system-card p { margin:28px 0 0; color:rgba(255,255,255,.62); font-size:13px; line-height:2; }
.technology-organization-panel p { color:rgba(7,17,31,.7); }
.capability-chip-cloud { display:flex; flex-wrap:wrap; gap:8px; margin-top:40px; }
.capability-chip-cloud b { padding:10px 13px; color:rgba(255,255,255,.74); border:1px solid rgba(255,255,255,.18); font-size:11px; font-weight:400; }
.technology-organization-panel ol { display:grid; gap:0; margin:38px 0 0; padding:0; list-style:none; border-top:1px solid rgba(7,17,31,.22); }
.technology-organization-panel li { display:grid; grid-template-columns:36px 1fr; gap:12px; align-items:center; padding:16px 0; border-bottom:1px solid rgba(7,17,31,.22); }
.technology-organization-panel li b { font:500 10px/1 var(--display); }
.technology-organization-panel li span { font-size:13px; font-weight:500; }
.technology-content-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:1px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.14); border-top:0; }
.technology-content-grid article { min-height:320px; padding:clamp(34px,5vw,64px); background:#0d1d2e; }
.technology-content-grid article + article { background:#102a44; }
.technology-content-grid p { max-width:620px; }
.technology-programs, .technology-outlook { margin-top:1px; padding:clamp(36px,5vw,70px); background:#102a44; }
.technology-programs h2, .technology-outlook h2 { color:#fff; }
.technology-outlook { background:#0d1d2e; }
.laboratory-page { overflow:hidden; }
.laboratory-hero { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); gap:8vw; align-items:center; }
.laboratory-hero-media { position:relative; min-height:500px; margin:0; overflow:hidden; background:#d7d9d6; }
.laboratory-hero-media::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(7,17,31,.04),rgba(7,17,31,.34)); }
.laboratory-hero-media img { width:100%; height:500px; object-fit:cover; filter:saturate(.74); transition:transform .8s cubic-bezier(.2,.7,.1,1); }
.laboratory-hero-media:hover img { transform:scale(1.025); }
.laboratory-hero-copy { max-width:600px; }
.laboratory-hero-copy .display-title { margin-top:20px; }
.laboratory-lead { margin:30px 0 0; color:var(--muted); font-size:15px; line-height:2; }
.laboratory-fact-row { grid-template-columns:repeat(4,1fr); margin-top:72px; border-color:var(--line); }
.laboratory-fact-row > div { border-color:var(--line); }
.laboratory-fact-row strong { color:var(--blue); }
.laboratory-fact-row span { color:var(--ink); }
.laboratory-fact-row small { color:var(--muted); }
.laboratory-fact-row strong span { display:inline; color:var(--blue); font:500 15px/1 var(--display); }
.laboratory-system-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:1px; margin-top:88px; background:var(--line); border:1px solid var(--line); }
.laboratory-system-card { min-height:430px; padding:clamp(34px,5vw,70px); background:#fff; }
.laboratory-network-card { min-height:430px; padding:clamp(34px,5vw,70px); color:#fff; background:#0b1928; }
.laboratory-system-card > span { color:var(--blue); }
.laboratory-network-card > span { color:var(--cyan); }
.laboratory-system-card h2 { color:var(--ink); }
.laboratory-network-card h2 { color:#fff; }
.laboratory-system-card p { color:var(--muted); }
.laboratory-network-card p { color:rgba(255,255,255,.62); }
.laboratory-network-list { display:flex; flex-wrap:wrap; gap:8px; margin-top:38px; }
.laboratory-network-list b { padding:11px 15px; color:rgba(255,255,255,.82); border:1px solid rgba(255,255,255,.16); font-size:11px; font-weight:400; }
.laboratory-capability-band { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; align-items:center; margin-top:1px; padding:clamp(36px,5vw,70px); color:#fff; background:#102a44; }
.laboratory-capability-band h2 { color:#fff; }
.laboratory-capability-list { display:flex; flex-wrap:wrap; gap:10px; }
.laboratory-capability-list b { padding:13px 15px; color:rgba(255,255,255,.78); border:1px solid rgba(90,216,194,.34); font-size:12px; font-weight:500; }

@media (max-width: 900px) {
  .research-page-hero, .laboratory-hero, .technology-capability-grid, .laboratory-system-grid, .laboratory-capability-band { grid-template-columns:1fr; gap:1px; }
  .research-page-lead { margin-top:32px; }
  .research-metric-row { margin-top:64px; }
  .technology-capability-panel, .technology-organization-panel, .laboratory-system-card, .laboratory-network-card { min-height:0; }
  .technology-content-grid { grid-template-columns:1fr; }
  .laboratory-hero-media, .laboratory-hero-media img { min-height:430px; height:430px; }
  .laboratory-fact-row { grid-template-columns:repeat(2,1fr); }
  .laboratory-fact-row > div:nth-child(2) { border-right:0; }
  .laboratory-fact-row > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
}

@media (max-width: 620px) {
  .research-local-nav { display:flex; width:100%; margin:-8px 0 42px; }
  .research-local-nav span { display:none; }
  .research-local-nav a { flex:1; justify-content:center; padding:0 8px; }
  .research-page-hero { gap:0; }
  .research-page-lead { padding:22px 0 22px 20px; }
  .research-page-lead p, .laboratory-lead { font-size:13px; }
  .research-metric-row, .laboratory-fact-row { margin-top:54px; }
  .research-metric-row { grid-template-columns:1fr; }
  .research-metric-row > div { min-height:0; padding:20px; border-right:0; border-bottom:1px solid rgba(255,255,255,.13); }
  .research-metric-row > div:last-child { border-bottom:0; }
  .laboratory-fact-row { grid-template-columns:1fr; }
  .laboratory-fact-row > div, .laboratory-fact-row > div:nth-child(2) { min-height:0; padding:20px; border-right:0; border-bottom:1px solid var(--line); }
  .laboratory-fact-row > div:last-child { border-bottom:0; }
  .technology-capability-panel, .technology-organization-panel, .technology-content-grid article, .technology-programs, .technology-outlook, .laboratory-system-card, .laboratory-network-card, .laboratory-capability-band { padding:32px 24px; }
  .laboratory-hero-media, .laboratory-hero-media img { min-height:310px; height:310px; }
  .laboratory-system-grid { margin-top:54px; }
}

/* Compact footer: keep the full navigation while giving the page a cleaner, shorter finish. */
.site-footer {
  display: grid;
  grid-template-columns: minmax(140px, .72fr) minmax(0, 1.68fr);
  column-gap: clamp(32px, 8vw, 120px);
  row-gap: 0;
  padding: 42px var(--section-x) 18px;
}
.footer-brand { grid-column: 1; align-self: start; }
.footer-logo { width: 50px; height: 50px; }
.footer-links {
  grid-column: 2;
  width: auto;
  margin: 0;
  gap: clamp(18px, 3vw, 48px);
}
.footer-links div { gap: 7px; }
.footer-links b { margin-bottom: 3px; }
.footer-links .footer-business-grid { gap: clamp(12px, 1.6vw, 22px); }
.footer-links .footer-business-grid .footer-nav-block { gap: 7px; }
.footer-nav-submenu { gap: 7px; margin: -2px 0 0 8px; padding-left: 10px; }
.footer-bottom { grid-column: 1 / -1; margin-top: 34px; padding-top: 14px; }

@media (max-width: 900px) {
  .site-footer { display: block; padding: 44px var(--section-x) 18px; }
  .footer-logo { width: 50px; height: 50px; }
  .footer-links { width: 100%; margin: 32px 0 34px; gap: 24px; }
  .footer-bottom { margin-top: 0; padding-top: 14px; }
}

@media (max-width: 620px) {
  .site-footer { padding: 34px 20px 16px; }
  .footer-logo { width: 46px; height: 46px; }
  .footer-links { margin: 26px 0 28px; gap: 18px 14px; }
  .footer-links div { gap: 7px; }
  .footer-bottom { gap: 10px; padding-top: 12px; line-height: 1.4; letter-spacing: .08em; }
}

/* Subsidiary details: reveal the directory record without making the country list denser. */
.global-section { overflow: visible; }
.country-row ul { align-items: flex-start; }
.country-row li.subsidiary-item {
  position: relative;
  min-width: 132px;
  padding: 0;
  overflow: visible;
  text-align: left;
}
.subsidiary-trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 39px;
  padding: 10px 13px;
  color: inherit;
  background: transparent;
  border: 0;
  cursor: pointer;
  font: inherit;
  line-height: 1.35;
  text-align: left;
}
.subsidiary-trigger span { min-width: 0; }
.subsidiary-trigger i {
  flex: 0 0 auto;
  color: var(--cyan);
  font-style: normal;
  font-size: 14px;
  opacity: .5;
  transition: transform .2s ease, opacity .2s ease;
}
.subsidiary-item:hover,
.subsidiary-item:focus-within,
.subsidiary-item.is-expanded { z-index: 30; }
.subsidiary-item:hover .subsidiary-trigger i,
.subsidiary-item:focus-within .subsidiary-trigger i,
.subsidiary-item.is-expanded .subsidiary-trigger i { opacity: 1; transform: rotate(45deg); }
.subsidiary-detail {
  position: absolute;
  z-index: 40;
  top: calc(100% + 7px);
  left: -1px;
  width: min(340px, 72vw);
  max-height: 0;
  padding: 0 15px;
  overflow: hidden;
  color: rgba(255,255,255,.72);
  background: #10263a;
  border: 1px solid transparent;
  box-shadow: 0 20px 44px rgba(0,0,0,.28);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-6px);
  transition: max-height .3s ease, padding .3s ease, opacity .2s ease, transform .3s ease, border-color .3s ease;
}
.subsidiary-item:hover .subsidiary-detail,
.subsidiary-item:focus-within .subsidiary-detail,
.subsidiary-item.is-expanded .subsidiary-detail {
  max-height: 1000px;
  padding: 15px;
  overflow: visible;
  border-color: rgba(90,216,194,.34);
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.subsidiary-detail-head { display: flex; flex-direction: column; gap: 5px; padding-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.13); }
.subsidiary-detail-head strong { color: #fff; font-size: 13px; font-weight: 500; line-height: 1.45; }
.subsidiary-detail-head small { color: var(--cyan); font: 500 10px/1.35 var(--display); letter-spacing: .06em; }
.subsidiary-detail-fields { display: grid; gap: 10px; margin-top: 12px; }
.subsidiary-detail-fields > div { display: grid; grid-template-columns: 50px 1fr; gap: 10px; align-items: start; }
.subsidiary-detail-fields b { color: var(--cyan); font: 500 10px/1.5 var(--display); letter-spacing: .06em; }
.subsidiary-detail-fields span { color: rgba(255,255,255,.76); font-size: 12px; line-height: 1.65; }
.subsidiary-detail-fields .subsidiary-intro-text {
  max-height: none;
  overflow: visible;
  padding-right: 0;
}
.subsidiary-detail-fields a { color: inherit; text-decoration: none; }
.subsidiary-detail-fields a:hover { color: #fff; }
.subsidiary-contact-values { display: flex; flex-wrap: wrap; gap: 4px 8px; }
.subsidiary-contact-values i { color: rgba(255,255,255,.3); font-style: normal; }
.subsidiary-detail-empty { color: rgba(255,255,255,.38) !important; }

@media (max-width: 900px) {
  .subsidiary-detail { position: relative; top: auto; left: auto; width: auto; box-shadow: none; transform: none; }
  .subsidiary-item:hover .subsidiary-detail,
  .subsidiary-item:focus-within .subsidiary-detail,
  .subsidiary-item.is-expanded .subsidiary-detail { transform: none; }
}

@media (max-width: 620px) {
  .country-row li.subsidiary-item { min-width: calc(50% - 4px); }
  .subsidiary-trigger { min-height: 40px; padding: 10px; font-size: 12px; }
  .subsidiary-detail { padding-left: 10px; padding-right: 10px; }
  .subsidiary-item:hover .subsidiary-detail,
  .subsidiary-item:focus-within .subsidiary-detail,
  .subsidiary-item.is-expanded .subsidiary-detail { padding: 12px 10px; }
  .subsidiary-detail-fields > div { grid-template-columns: 44px 1fr; gap: 8px; }
}

/* Footer alignment: four equal columns share one top baseline; legal text spans the full row. */
.site-footer {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: clamp(24px, 3.2vw, 64px);
  align-items: start;
}
.footer-brand { grid-column: 1; min-width: 0; }
.footer-links {
  grid-column: 2 / 5;
  grid-template-columns: minmax(112px, .78fr) minmax(320px, 1.64fr) minmax(112px, .78fr);
  gap: clamp(20px, 3.2vw, 64px);
  min-width: 0;
}
.footer-links > div { min-width: 0; }
.footer-links .footer-business-column { justify-content: flex-start; }
.footer-links .footer-business-column .footer-business-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2.2vw, 36px);
}
.footer-bottom { grid-column: 1 / -1; }

@media (max-width: 900px) {
  .footer-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .footer-links .footer-business-column .footer-business-grid { gap: 18px; }
}

@media (max-width: 620px) {
  .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-links .footer-business-column {
    grid-column: 1 / -1;
    order: 3;
  }
}


/* News and footer refinements. */
.news-page { position: relative; overflow: hidden; }
.news-head { display: grid; grid-template-columns: minmax(300px, .78fr) minmax(320px, .72fr); align-items: end; gap: clamp(28px, 5vw, 82px); }
.news-head-copy { min-width: 0; }
.news-lead { max-width: 620px; margin: 18px 0 0; color: var(--muted); font-size: 14px; line-height: 1.9; }
.news-head-tools { display: flex; justify-content: flex-end; min-width: 0; }
.news-filter-bar { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.news-filter-bar button { min-height: 34px; padding: 0 14px; border: 1px solid var(--line); color: var(--muted); background: rgba(255,255,255,.72); cursor: pointer; font: 500 11px/1 var(--display); transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease; }
.news-filter-bar button:hover, .news-filter-bar button:focus-visible { color: var(--ink); border-color: var(--ink); transform: translateY(-1px); outline: none; }
.news-filter-bar button.active { color: #fff; border-color: var(--blue); background: var(--blue); }
.news-grid { grid-template-columns: minmax(0, 1.22fr) minmax(320px, .78fr); grid-auto-flow: row dense; align-items: stretch; gap: 16px; margin-top: 44px; }
.news-card, .news-card:nth-child(n+4) { grid-column: 2; display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 0; min-height: 142px; padding: 10px; background: #fff; border: 1px solid var(--line); }
.news-card.featured { grid-column: 1; grid-row: span 4; display: flex; flex-direction: column; min-height: 560px; padding: 0; }
.news-card-media { height: 100%; min-height: 122px; }
.news-card.featured .news-card-media { height: 360px; min-height: 360px; }
.news-card-copy { display: flex; flex-direction: column; min-width: 0; padding: 12px 40px 12px 16px; border-bottom: 0; }
.news-card.featured .news-card-copy { flex: 1; padding: 26px 30px 30px; }
.news-card-meta { gap: 14px; }
.news-card h3 { margin: 12px 0 8px; font-size: clamp(16px, 1.5vw, 22px); line-height: 1.38; }
.news-card.featured h3 { margin-top: 18px; font-size: clamp(28px, 3.2vw, 48px); line-height: 1.14; }
.news-card p { -webkit-line-clamp: 2; }
.news-card.featured p { max-width: 760px; margin-top: auto; -webkit-line-clamp: 3; font-size: 13px; line-height: 1.85; }
.news-card-read { display: none; margin-top: 18px; color: var(--blue); font: 500 10px/1 var(--display); letter-spacing: .12em; text-transform: uppercase; }
.news-card.featured .news-card-read { display: inline-flex; }
.news-card-arrow { right: 16px; bottom: 16px; background: #fff; }
.news-card.featured .news-card-arrow { right: 26px; bottom: 28px; }
.hr-join-hero { grid-template-columns: 1fr; min-height: auto; }
.hr-join-hero > div { min-height: clamp(430px, 42vw, 590px); max-width: 1040px; }
.hr-pillar-card { min-height: 220px; padding: 26px 24px; }
.hr-pillar-card img { width: 42px; height: 42px; margin: 28px 0 18px; }
.hr-pillar-card h3 { margin-bottom: 10px; font-size: 18px; }
.hr-pillar-card p { font-size: 12px; line-height: 1.7; }
.footer-brand strong { color: #fff; font-weight: 600; letter-spacing: .03em; }
.footer-bottom { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; }
.footer-bottom .site-icp-link { justify-self: center; }
.footer-bottom a:last-child { justify-self: end; }
@media (max-width: 980px) {
  .news-head, .news-grid { grid-template-columns: 1fr; }
  .news-head-tools, .news-filter-bar { justify-content: flex-start; }
  .news-card, .news-card:nth-child(n+4), .news-card.featured { grid-column: 1; grid-row: auto; }
  .news-card.featured { min-height: 0; }
  .news-card.featured .news-card-media { height: 320px; min-height: 320px; }
}
@media (max-width: 620px) {
  .news-card, .news-card:nth-child(n+4) { grid-template-columns: 1fr; padding: 0; }
  .news-card-media, .news-card.featured .news-card-media { height: 220px; min-height: 220px; }
  .news-card-copy, .news-card.featured .news-card-copy { padding: 20px 20px 50px; }
  .hr-pillar-card { min-height: 0; padding: 22px 20px; }
  .hr-pillar-card img { width: 38px; height: 38px; margin: 22px 0 16px; }
  .hr-join-hero > div { min-height: 0; }
  .footer-brand { align-items: flex-start; }
  .footer-bottom { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .footer-bottom a:last-child { justify-self: center; }
}

/* Mobile navigation: use the same restrained type scale and active-line
   treatment as the desktop navigation, while keeping the menu touch-friendly. */
@media (max-width: 900px) {
  .site-header .menu-trigger {
    display: block;
    width: 34px;
    height: 34px;
    padding: 8px 2px;
    border: 0;
  }

  .site-header .menu-trigger span {
    position: static;
    width: 28px;
    height: 1px;
    margin: 6px 0;
  }

  .mobile-menu {
    justify-content: flex-start;
    padding: calc(var(--header-h) + 22px) var(--section-x) 28px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .mobile-menu nav {
    width: min(100%, 540px);
    margin: 0 auto;
    padding: 5px 0;
    border-top: 1px solid rgba(7, 17, 31, .12);
    border-bottom: 1px solid rgba(7, 17, 31, .12);
  }

  .mobile-menu nav > a,
  .mobile-menu nav .mobile-nav-parent {
    min-height: 48px;
    padding: 0 12px;
    font: 650 12px/1.25 var(--body);
    letter-spacing: .02em;
    text-transform: none;
    border-bottom: 1px solid rgba(7, 17, 31, .1);
    transition: color .2s ease, background .2s ease, padding .2s ease;
  }

  .mobile-menu nav > a::before,
  .mobile-menu nav .mobile-nav-parent::before {
    flex: 0 0 24px;
    color: var(--cyan);
    font: 600 9px/1 var(--display);
    letter-spacing: .04em;
  }

  .mobile-menu nav > a:last-child,
  .mobile-menu nav .mobile-nav-group:last-child .mobile-nav-parent {
    border-bottom: 0;
  }

  .mobile-menu nav > a:hover,
  .mobile-menu nav > a:focus-visible,
  .mobile-menu nav .mobile-nav-parent:hover,
  .mobile-menu nav .mobile-nav-parent:focus-visible {
    padding-left: 16px;
    background: rgba(90, 216, 194, .08);
  }

  .mobile-menu nav .mobile-nav-parent {
    justify-content: flex-start;
  }

  .mobile-menu nav .mobile-nav-parent .nav-caret {
    width: 6px;
    height: 6px;
    margin: 0 0 0 3px;
  }

  .mobile-menu nav .mobile-nav-submenu {
    gap: 0;
    margin: 0 0 2px 36px;
    padding: 3px 0 5px 12px;
    border-left: 1px solid rgba(90, 216, 194, .34);
  }

  .mobile-menu nav .mobile-nav-submenu a {
    min-height: 36px;
    padding: 0 10px;
    color: rgba(255, 255, 255, .58);
    font: 600 11px/1.25 var(--body);
    letter-spacing: .02em;
    text-transform: none;
    border-bottom: 0;
    transition: color .2s ease, background .2s ease, padding .2s ease;
  }

  .mobile-menu nav .mobile-nav-submenu a:hover,
  .mobile-menu nav .mobile-nav-submenu a:focus-visible {
    padding-left: 14px;
    background: rgba(90, 216, 194, .08);
  }

  .mobile-menu nav .mobile-nav-submenu a::before {
    content: none;
  }

  .mobile-menu-meta {
    width: min(100%, 540px);
    margin: auto auto 0;
    padding-top: 18px;
    border-top: 1px solid rgba(7, 17, 31, .1);
    line-height: 1.4;
  }
}

@media (max-width: 620px) {
  .site-header .menu-trigger {
    width: 34px;
    height: 34px;
    padding: 8px 2px;
  }

  .mobile-menu {
    padding: calc(var(--header-h) + 16px) 20px 22px;
  }

  .mobile-menu nav > a,
  .mobile-menu nav .mobile-nav-parent {
    min-height: 46px;
    padding: 0 9px;
    font-size: 12px;
  }

  .mobile-menu nav .mobile-nav-submenu {
    margin-left: 33px;
    padding-left: 10px;
  }

  .mobile-menu nav .mobile-nav-submenu a {
    min-height: 34px;
    padding: 0 8px;
    font-size: 11px;
  }
}

/* Keep index markers on first-level mobile entries only. */
@media (max-width: 900px) {
  .mobile-menu nav > a::before,
  .mobile-menu nav .mobile-nav-parent::before {
    content: attr(data-index);
  }

  .mobile-menu nav .mobile-nav-submenu a::before {
    content: none;
    display: none;
  }
}
