/*
Theme Name: OLYVENRA Global v107 Global Typography
Theme URI: https://olyvenra.com
Author: OLYVENRA LTD
Description: Multilingual corporate website for OLYVENRA LTD.
Version: 107.0.0
Text Domain: olyvenra
*/

:root {
  --navy-950: #03131e;
  --navy-900: #051c2b;
  --navy-800: #0a2a3e;
  --navy-700: #123d55;
  --gold-500: #cda94a;
  --gold-400: #dfc36d;
  --ink: #102334;
  --slate: #526577;
  --muted: #9db0bf;
  --line-dark: rgba(215, 178, 67, .18);
  --line-light: #d8e1e8;
  --white: #fff;
  --surface: #f5f7f9;
  --surface-warm: #f8fafb;
  --surface-quiet: #eef3f6;
  --success: #2f7d4c;
  --danger: #a54343;
  --shadow-sm: 0 10px 30px rgba(3, 19, 30, .08);
  --shadow-lg: 0 24px 70px rgba(3, 19, 30, .18);
  --radius: 2px;
  --container: 1240px;
  --topbar-height: 0px;
  --site-header-height: 82px;
  --header-safe: calc(var(--topbar-height) + var(--site-header-height));
}

* { box-sizing: border-box; }
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-safe);
  overflow-x: hidden;
}
body {
  margin: 0;
  overflow-x: hidden;
  background: var(--navy-950);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; }
button, input, textarea { font: inherit; }
.container { width: min(var(--container), 90vw); margin: 0 auto; }
section[id], .hero { scroll-margin-top: 0; }
main > section { position: relative; }
main > section > .container > br { display: none; }

.skip-link {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 200000;
  padding: 12px 18px;
  transform: translateY(-170%);
  background: var(--white);
  color: var(--navy-950);
  font-weight: 800;
  transition: transform .2s ease;
}
.skip-link:focus { transform: translateY(0); }
:focus-visible { outline: 3px solid var(--gold-500); outline-offset: 3px; }

/* Header */
.topbar {
  display: none;
  position: fixed;
  inset: 0 0 auto;
  z-index: 100000;
  height: var(--topbar-height);
  background: var(--navy-950);
  border-bottom: 1px solid rgba(215, 178, 67, .16);
  color: #ced9e1;
  font-size: 12px;
  letter-spacing: 0;
}
.topbar .container {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  white-space: nowrap;
  overflow: hidden;
}
.topbar span { overflow: hidden; text-overflow: ellipsis; }
.topbar .contact-link { text-decoration: none; }
.whatsapp-link {
  display: inline-flex !important;
  align-items: center;
  gap: 7px;
  color: #69d89a;
  font-weight: 800;
}
.whatsapp-link span {
  width: 17px;
  height: 17px;
  border: 2px solid currentColor;
  border-radius: 50%;
  position: relative;
  flex: 0 0 auto;
}
.whatsapp-link span::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  left: 4px;
  top: 4px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-35deg);
}
.whatsapp-link span::after {
  content: "";
  position: absolute;
  right: -3px;
  bottom: 0;
  width: 5px;
  height: 5px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(20deg);
}
.whatsapp-link.compact {
  display: inline-flex !important;
  font-size: 12px;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  min-height: var(--site-header-height);
  background: rgba(5, 28, 43, .97);
  border-bottom: 1px solid rgba(215, 178, 67, .16);
  box-shadow: 0 8px 24px rgba(3, 19, 30, .12);
  backdrop-filter: blur(14px);
}
.header-inner {
  position: relative;
  min-height: var(--site-header-height);
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr) auto;
  align-items: center;
  gap: 28px;
}
.logo { display: inline-flex; align-items: center; min-width: 0; }
.logo img { display: block; width: 220px; height: auto; }
.nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  min-width: 0;
  white-space: nowrap;
  color: #f2f6f8;
  font-size: 13.5px;
  font-weight: 700;
}
.nav a {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: var(--site-header-height);
  transition: color .2s ease;
}
.nav a::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 17px;
  left: 0;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--gold-500);
  transition: transform .2s ease;
}
.nav a:hover, .nav a.active { color: var(--gold-400); }
.nav a:hover::after, .nav a.active::after { transform: scaleX(1); }
.lang { display: flex; align-items: center; gap: 5px; white-space: nowrap; }
.lang a {
  min-width: 38px;
  padding: 8px 8px;
  border: 1px solid rgba(255, 255, 255, .2);
  color: #edf3f6;
  text-align: center;
  font-size: 12px;
  font-weight: 800;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.lang a:hover, .lang a.active {
  border-color: var(--gold-500);
  background: var(--gold-500);
  color: var(--navy-950);
}
.oly-menu-toggle {
  display: none;
  width: auto;
  height: 42px;
  min-width: 104px;
  padding: 0 13px;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 0;
  appearance: none;
  background: transparent;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  gap: 10px;
}
.oly-menu-toggle .menu-label {
  color: var(--white);
  font-size: 11px;
  line-height: 1;
  letter-spacing: .12em;
  font-weight: 750;
}
.oly-menu-toggle .menu-bars {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 22px;
}
.oly-menu-toggle .menu-bars i {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 2px;
  background: var(--white);
  transition: transform .2s ease, opacity .2s ease;
}
.site-header.menu-open .oly-menu-toggle .menu-bars i:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.site-header.menu-open .oly-menu-toggle .menu-bars i:nth-child(2) { opacity: 0; }
.site-header.menu-open .oly-menu-toggle .menu-bars i:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Hero */
.hero {
  min-height: calc(610px + var(--header-safe));
  display: flex;
  align-items: center;
  padding-top: var(--header-safe);
  isolation: isolate;
  overflow: hidden;
  border-bottom: 1px solid rgba(255, 255, 255, .1);
  background:
    linear-gradient(90deg, rgba(3, 19, 30, .98) 0%, rgba(3, 19, 30, .9) 48%, rgba(3, 19, 30, .42) 100%),
    url(assets/hero-london-v16.jpg) 72% center / cover no-repeat;
  color: var(--white);
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, transparent 65%, rgba(3, 19, 30, .55));
  pointer-events: none;
}
.hero .container { padding: 72px 0 92px; }
main > .section:first-child { padding-top: calc(84px + var(--header-safe)); }
.kicker {
  margin: 0 0 20px;
  color: var(--gold-400);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}
.hero h1 {
  max-width: 960px;
  margin: 0 0 24px;
  font-size: 62px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.08;
}
.hero p {
  max-width: 860px;
  margin: 0 0 34px;
  color: #dae5ec;
  font-size: 18px;
  line-height: 1.65;
}
.hero .brand-statement {
  max-width: 940px;
  margin-bottom: 18px;
  color: var(--gold-400);
  font-size: 23px;
  font-weight: 800;
  line-height: 1.45;
}
.hero-corridors {
  max-width: 880px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: -12px 0 32px;
}
.hero-corridors span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 11px;
  border: 1px solid rgba(215, 178, 67, .34);
  background: rgba(255, 255, 255, .06);
  color: #edf4f7;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}
.btns { display: flex; flex-wrap: wrap; gap: 12px; }
.btn, button:not(.oly-menu-toggle) {
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 13px 24px;
  border: 1px solid transparent;
  border-radius: var(--radius);
  cursor: pointer;
  font-weight: 800;
  transition: transform .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.btn:hover, button:not(.oly-menu-toggle):hover { transform: translateY(-2px); }
.btn.white { background: var(--white); color: var(--navy-950); }
.btn.white:hover { box-shadow: 0 10px 28px rgba(255, 255, 255, .18); }
.btn.gold, button:not(.oly-menu-toggle) { background: var(--gold-500); color: var(--navy-950); }
.btn.gold:hover, button:not(.oly-menu-toggle):hover { background: var(--gold-400); box-shadow: 0 10px 28px rgba(215, 178, 67, .18); }
.btn.outline { border-color: rgba(255, 255, 255, .34); background: transparent; color: var(--white); }
.btn.outline:hover { border-color: var(--gold-500); }

/* Shared sections */
.section {
  padding: 84px 0;
  border-bottom: 1px solid rgba(16, 35, 52, .08);
  background: var(--white);
  color: var(--ink);
}
.section.alt { background: var(--surface); }
.section h2 {
  max-width: 880px;
  margin: 0 0 20px;
  color: var(--ink);
  font-size: 52px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.08;
}
.section h1 {
  max-width: 900px;
  margin: 0 0 20px;
  color: var(--ink);
  font-size: 58px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.08;
}
.lead {
  max-width: 900px;
  margin: 0;
  color: var(--slate);
  font-size: 18px;
  line-height: 1.72;
}
.section h1,
.section h2,
.section h3,
.lead,
.card,
.market-card,
.legal-content,
.footer {
  overflow-wrap: break-word;
}
.grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 36px; }

/* Market overview */
.market { background: var(--surface); }
.market-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 72px; align-items: start; }
.market-layout > div:first-child { position: sticky; top: calc(var(--header-safe) + 42px); }
.market-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.market-card {
  position: relative;
  min-height: 180px;
  padding: 28px;
  overflow: hidden;
  border: 1px solid var(--line-light);
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.market-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: var(--gold-500);
}
.market-card h3 { margin: 0 0 12px; color: var(--ink); font-size: 22px; line-height: 1.2; }
.market-card p { margin: 0; color: var(--slate); font-size: 14px; }
.market-card:nth-child(5) { grid-column: 1 / -1; min-height: 150px; }

/* Defence focus */
.defence-focus {
  border-color: rgba(212, 166, 63, .2);
  background:
    radial-gradient(circle at 82% 12%, rgba(212, 166, 63, .14), transparent 28rem),
    linear-gradient(135deg, #06111c 0%, #081a27 54%, #10283a 100%);
  color: var(--white);
}
.defence-layout {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  gap: 42px;
  align-items: stretch;
}
.defence-focus h2,
.defence-focus h3 { color: var(--white); }
.defence-focus .lead { color: #d0dde5; }
.defence-copy {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.defence-panel {
  min-width: 0;
  padding: 26px;
  border: 1px solid rgba(212, 166, 63, .28);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, .045);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}
.defence-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.defence-points article {
  min-width: 0;
  min-height: 170px;
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(2, 8, 17, .46);
}
.defence-points span {
  display: block;
  width: 34px;
  height: 3px;
  margin-bottom: 18px;
  background: linear-gradient(90deg, var(--gold-500), rgba(212, 166, 63, .18));
}
.defence-points h3 {
  margin: 0 0 10px;
  font-size: 18px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.defence-points p {
  margin: 0;
  color: #b9c9d4;
  font-size: 13.5px;
  line-height: 1.58;
}
.defence-note {
  margin: 18px 0 0;
  padding: 16px 18px;
  border-left: 4px solid var(--gold-500);
  background: rgba(212, 166, 63, .08);
  color: #dbe6ed;
  font-size: 13.5px;
  line-height: 1.6;
}

/* About */
#about {
  border-color: rgba(215, 178, 67, .14);
  background: linear-gradient(180deg, var(--navy-900), #071f30);
  color: var(--white);
}
#about h2, #about h3 { color: var(--white); }
#about .lead { color: #c8d6df; }
#about .grid2 { align-items: stretch; }
.image-panel {
  min-height: 390px;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(215, 178, 67, .2);
  background-position: center;
  background-size: cover;
  box-shadow: var(--shadow-lg);
}
.image-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgba(3, 19, 30, .32));
}
.about-img { background-image: url(assets/about-boardroom-v16.jpg); }
.company-img { background-image: url(assets/company-office-v16.jpg); background-position: left center; }
.card {
  min-width: 0;
  min-height: 190px;
  padding: 30px;
  border: 1px solid var(--line-light);
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.card h3 { margin: 0 0 14px; color: var(--ink); font-size: 21px; line-height: 1.3; }
.card p { margin: 0; color: var(--slate); }
.credential-badges {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 6px;
}
.credential-badges span {
  min-height: 82px;
  padding: 16px;
  border: 1px solid var(--line-light);
  border-top: 4px solid var(--gold-500);
  background: var(--white);
  box-shadow: var(--shadow-sm);
  color: var(--ink);
  font-size: 18px;
  font-weight: 900;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.credential-badges strong {
  display: block;
  margin-bottom: 7px;
  color: var(--slate);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}
#about .card {
  border-color: rgba(215, 178, 67, .18);
  background: rgba(255, 255, 255, .045);
  box-shadow: none;
}
#about .card p { color: #d1dee6; }
.checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 22px; }
.checks p { position: relative; padding: 12px 0 12px 28px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.checks p::before { content: "✓"; position: absolute; left: 0; color: var(--gold-400); font-weight: 900; }
.why-card { display: flex; flex-direction: column; gap: 16px; }
.why-points {
  display: grid;
  gap: 10px;
  margin-top: 4px;
}
.why-points span {
  position: relative;
  display: block;
  padding: 11px 12px 11px 34px;
  border: 1px solid rgba(215, 178, 67, .16);
  background: rgba(255, 255, 255, .035);
  color: #dce7ed;
  font-size: 14px;
  line-height: 1.45;
}
.why-points span::before {
  content: "";
  position: absolute;
  top: 17px;
  left: 13px;
  width: 7px;
  height: 7px;
  border: 2px solid var(--gold-400);
}

/* Services and sectors */
#services { background: var(--white); }
#services .card {
  position: relative;
  padding-top: 34px;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
#services .card:hover { transform: translateY(-4px); border-color: #c9b66f; box-shadow: 0 18px 42px rgba(3, 19, 30, .11); }
.num { margin-bottom: 24px; color: var(--gold-500); font-size: 13px; font-weight: 900; letter-spacing: 0; }
.num::after { content: ""; display: block; width: 42px; height: 2px; margin-top: 14px; background: var(--gold-500); }
#industries { background: var(--surface); }
#industries .card { box-shadow: none; }
#industries .card::before { content: ""; display: block; width: 32px; height: 3px; margin-bottom: 24px; background: var(--gold-500); }

/* Group */
.group-section {
  border-color: rgba(215, 178, 67, .16);
  background: linear-gradient(135deg, var(--navy-950), #082335 58%, var(--navy-800));
  color: var(--white);
}
.group-section h2 { color: var(--white); }
.group-section .lead { color: #c6d5de; }
.group-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; margin-top: 38px; }
.group-card {
  position: relative;
  min-height: 340px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 34px;
  border: 1px solid rgba(215, 178, 67, .35);
  background: rgba(255, 255, 255, .055);
}
.group-card.olymedica-card { border-color: rgba(68, 188, 197, .4); }
.group-logo { height: 58px; display: flex; align-items: center; margin-bottom: 26px; }
.group-logo img { width: auto; max-width: 290px; max-height: 54px; object-fit: contain; }
.olymedica-card .group-logo { width: min(460px, 72%); height: 86px; padding: 0; background: transparent; }
.olymedica-card .group-logo img {
  width: 100%;
  max-width: 460px;
  max-height: 82px;
  filter: drop-shadow(0 2px 12px rgba(68, 188, 197, .18));
  opacity: 1;
}
.division-status {
  position: absolute;
  top: 24px;
  right: 24px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 10px;
  border: 1px solid rgba(66, 206, 158, .48);
  background: rgba(29, 120, 88, .18);
  color: #a8f1d3;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}
.division-status::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #56d9a9;
  box-shadow: 0 0 0 4px rgba(86, 217, 169, .12);
}
.group-card h3 { margin: 0 0 12px; color: var(--white); font-size: 26px; }
.group-card p { margin: 0 0 26px; color: #d0dde5; }
.group-link {
  min-width: 190px;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  margin-top: auto;
  line-height: 1.1;
}
.group-link span { font-size: 13px; font-weight: 900; letter-spacing: 0; text-transform: uppercase; }
.group-link small { color: #b9c9d3; font-size: 11px; font-weight: 600; }

/* Process */
#process { background: var(--white); }
.process-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin-top: 44px;
}
.process-grid::before {
  content: "";
  position: absolute;
  top: 22px;
  right: 9%;
  left: 9%;
  height: 1px;
  background: #cfd9df;
}
.process-card {
  position: relative;
  min-width: 0;
  padding: 0 18px;
  text-align: center;
}
.process-card > div {
  position: relative;
  z-index: 1;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  margin: 0 auto 22px;
  border: 2px solid var(--gold-500);
  border-radius: 50%;
  background: var(--white);
  color: var(--navy-900);
  font-weight: 900;
}
.process-card h3 { margin: 0 0 10px; color: var(--ink); font-size: 17px; line-height: 1.35; }
.process-card p { margin: 0; color: var(--slate); font-size: 14px; line-height: 1.6; }

/* Markets and company */
#markets { background: var(--surface); }
#markets .grid3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#markets .card { min-height: 230px; padding: 26px; border-color: var(--line-light); box-shadow: none; }
#markets .card h3 { padding-bottom: 14px; border-bottom: 2px solid var(--gold-500); font-size: 19px; }
#markets .card p { font-size: 14px; }
#company { background: var(--white); }
#company .grid2:first-child { align-items: center; margin-bottom: 34px; }
#company .card { min-height: 0; box-shadow: none; }
#company .container > .card:last-child { border-left: 4px solid var(--gold-500); background: var(--surface); }
/* Compliance and document centre */
.documents-section {
  border-color: rgba(16, 35, 52, .08);
  background: linear-gradient(180deg, var(--surface) 0%, var(--surface-quiet) 100%);
  color: var(--ink);
}
.documents-section h2,
.documents-section h3,
.documents-section h4 { color: var(--ink); }
.documents-section .lead { color: var(--slate); }
.documents-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 34px;
  align-items: end;
  margin-bottom: 34px;
}
.documents-notice {
  border: 1px solid var(--line-light);
  border-left: 4px solid var(--gold-500);
  padding: 20px;
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.documents-notice strong {
  display: block;
  margin-bottom: 8px;
  color: var(--gold-400);
  font-size: 14px;
  letter-spacing: 0;
  text-transform: uppercase;
}
.documents-notice span {
  display: block;
  color: var(--slate);
  font-size: 14px;
  line-height: 1.6;
}
.document-hub {
  overflow: hidden;
  border: 1px solid var(--line-light);
  border-top: 4px solid var(--gold-500);
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.document-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-bottom: 1px solid var(--line-light);
  background: #fbfcfd;
}
button.document-tab {
  min-height: 92px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 6px;
  padding: 22px 24px;
  border: 0;
  border-right: 1px solid var(--line-light);
  border-radius: 0;
  background: transparent;
  color: var(--ink);
  text-align: left;
  box-shadow: none;
  transform: none;
}
button.document-tab:last-child { border-right: 0; }
button.document-tab:hover {
  transform: none;
  background: var(--surface);
  box-shadow: none;
}
button.document-tab.active {
  background: var(--navy-900);
  color: var(--white);
}
button.document-tab span {
  font-size: 18px;
  font-weight: 900;
  line-height: 1.22;
}
button.document-tab small {
  color: var(--slate);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: uppercase;
}
button.document-tab.active small { color: var(--gold-400); }
.document-panels { background: var(--white); }
.documents-panel[hidden] { display: none; }
.documents-panel-head {
  display: grid;
  grid-template-columns: minmax(0, .42fr) minmax(0, .58fr);
  gap: 24px;
  align-items: end;
  padding: 28px 28px 22px;
  border-bottom: 1px solid var(--line-light);
}
.documents-panel-head h3 {
  margin: 0;
  font-size: 30px;
  line-height: 1.1;
}
.documents-panel-head p {
  margin: 0;
  color: var(--slate);
  font-size: 14px;
  line-height: 1.6;
}
.document-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.document-card {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  min-height: 126px;
  padding: 20px 24px;
  border-bottom: 1px solid var(--line-light);
  transition: background .2s ease;
}
.document-card:hover { background: #fbfcfd; }
.document-card:nth-child(odd) { border-right: 1px solid var(--line-light); }
.document-card h4 {
  margin: 8px 0 6px;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.25;
}
.document-card p {
  margin: 0;
  color: var(--slate);
  font-size: 13px;
  line-height: 1.5;
}
.document-card.controlled-card { background: #fffdf8; }
.documents-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: start;
}
.documents-column {
  min-width: 0;
  border: 1px solid var(--line-light);
  background: var(--white);
  box-shadow: var(--shadow-sm);
}
.documents-column > h3 {
  margin: 0;
  padding: 22px 22px 6px;
  font-size: 23px;
}
.documents-column > p {
  margin: 0;
  padding: 0 22px 18px;
  color: var(--slate);
  font-size: 14px;
}
.documents-column.controlled {
  border-color: rgba(205, 169, 74, .45);
  background: #fbfcfd;
}
.document-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  min-height: 124px;
  padding: 18px 20px;
  border-top: 1px solid var(--line-light);
}
.document-row h4 {
  margin: 8px 0 6px;
  font-size: 16px;
  line-height: 1.28;
}
.document-row p {
  margin: 0;
  color: var(--slate);
  font-size: 13px;
  line-height: 1.55;
}
.doc-pill {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  padding: 4px 8px;
  border: 1px solid var(--line-light);
  color: var(--slate);
  background: var(--surface);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}
.doc-pill.public { border-color: rgba(47, 125, 76, .36); color: #286c43; background: #eef8f2; }
.doc-pill.form { border-color: rgba(205, 169, 74, .55); color: #836611; background: #fbf7e8; }
.doc-pill.controlled { border-color: rgba(165, 67, 67, .4); color: #8f3535; background: #fff1f1; }
.doc-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 128px;
  min-height: 42px;
  padding: 10px 14px;
  border: 1px solid var(--gold-500);
  background: var(--gold-500);
  color: var(--navy-950);
  font-size: 13px;
  font-weight: 900;
  text-align: center;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.doc-actions {
  display: grid;
  gap: 8px;
  min-width: 132px;
}
.doc-action:hover {
  transform: translateY(-2px);
  background: var(--gold-400);
  border-color: var(--gold-400);
}
.doc-action.secondary {
  background: transparent;
  color: #8b6d13;
}
.doc-action.secondary:hover {
  background: rgba(205, 169, 74, .12);
  color: var(--navy-950);
}
.doc-action.request {
  background: transparent;
  color: #8b6d13;
}
.doc-action.request:hover {
  background: rgba(205, 169, 74, .12);
  color: var(--navy-950);
}

/* Arabic / RTL */
html[dir="rtl"] body { direction: rtl; text-align: right; }
html[dir="rtl"] .topbar .container,
html[dir="rtl"] .header-inner,
html[dir="rtl"] .footer-grid { direction: ltr; }
html[dir="rtl"] .topbar span:first-child,
html[dir="rtl"] .footer-grid > * { direction: rtl; text-align: right; }
html[dir="rtl"] .nav,
html[dir="rtl"] .lang,
html[dir="rtl"] main,
html[dir="rtl"] .footer { direction: rtl; }
html[dir="rtl"] .hero {
  background:
    linear-gradient(270deg, rgba(3, 19, 30, .97) 0%, rgba(3, 19, 30, .88) 48%, rgba(3, 19, 30, .38) 100%),
    url(assets/hero-london-v16.jpg) 28% center / cover no-repeat;
}
html[dir="rtl"] .market-card::before { right: 0; left: auto; }
html[dir="rtl"] .documents-notice {
  border-left-width: 1px;
  border-right: 4px solid var(--gold-500);
}
html[dir="rtl"] button.document-tab {
  align-items: flex-end;
  border-right: 0;
  border-left: 1px solid var(--line-light);
  text-align: right;
}
html[dir="rtl"] button.document-tab:last-child { border-left: 0; }
html[dir="rtl"] .document-card {
  direction: rtl;
  border-right: 0;
}
html[dir="rtl"] .document-card:nth-child(odd) { border-left: 1px solid var(--line-light); }
html[dir="rtl"] .document-row {
  direction: rtl;
}
html[dir="rtl"] .checks p { padding-right: 28px; padding-left: 0; }
html[dir="rtl"] .checks p::before { right: 0; left: auto; }
html[dir="rtl"] .why-points span { padding-right: 34px; padding-left: 12px; }
html[dir="rtl"] .why-points span::before { right: 13px; left: auto; }
html[dir="rtl"] .defence-note {
  border-right: 4px solid var(--gold-500);
  border-left: 1px solid rgba(212, 166, 63, .18);
}
html[dir="rtl"] #company .container > .card:last-child {
  border-right: 4px solid var(--gold-500);
  border-left: 1px solid var(--line-light);
}
html[dir="rtl"] .group-card,
html[dir="rtl"] .group-link { align-items: flex-start; }
html[dir="rtl"] .division-status { right: auto; left: 24px; }

/* Contact */
#contact {
  border-color: rgba(215, 178, 67, .16);
  background: linear-gradient(180deg, #061b2a 0%, #092437 100%);
  color: var(--white);
}
#contact h2, #contact h3, #contact h4, #contact label { color: var(--white); }
#contact .lead { color: #c5d4dd; }
.contact-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 32px; margin-top: 34px; align-items: stretch; }
#contact .card {
  position: relative;
  overflow: hidden;
  border-color: rgba(215, 178, 67, .2);
  background: rgba(255, 255, 255, .045);
  box-shadow: 0 22px 58px rgba(3, 19, 30, .16);
}
#contact .card::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--gold-500), rgba(215, 178, 67, .18));
}
#contact .card p { color: #d0dde5; }
.info-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 24px; }
.info-card h4 { margin: 20px 0 5px; color: var(--white); font-size: 12px; letter-spacing: 0; text-transform: uppercase; }
.contact-link {
  display: inline-block;
  color: inherit;
  text-decoration: underline;
  text-decoration-color: rgba(215, 178, 67, .65);
  text-underline-offset: 4px;
}
.contact-link:hover { color: var(--gold-400); }
.form-card label { display: block; margin: 0 0 6px; font-size: 13px; font-weight: 700; }
.form-card input, .form-card textarea {
  width: 100%;
  display: block;
  margin: 0 0 15px;
  padding: 14px 15px;
  border: 1px solid #cfdae2;
  border-radius: 0;
  background: #f8fafb;
  color: #132634;
  outline: 0;
}
.form-card input:focus, .form-card textarea:focus { border-color: var(--gold-500); box-shadow: 0 0 0 3px rgba(215, 178, 67, .16); }
.form-card textarea { min-height: 132px; resize: vertical; }
.form-card button { width: 100%; margin-top: 4px; }
.form-card .hp-field {
  position: fixed;
  top: -10000px;
  left: 0;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}
.success, .form-error { margin-bottom: 16px; padding: 12px 14px; border: 1px solid; }
.success { border-color: #4d9a68; background: rgba(47, 125, 76, .25); color: #e2f6e9; }
.form-error { border-color: #c66c6c; background: rgba(165, 67, 67, .25); color: #ffe7e7; }

/* Legal */
.legal-grid { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 28px; }
.legal-menu { padding: 14px; border: 1px solid var(--line-light); background: var(--surface); }
.legal-menu a { display: block; padding: 12px 10px; border-bottom: 1px solid var(--line-light); color: var(--slate); font-size: 14px; }
.legal-menu a:last-child { border-bottom: 0; }
.legal-menu a:hover, .legal-menu a.current { color: #8b6d13; font-weight: 700; }
.legal-content { padding: 40px; border: 1px solid var(--line-light); background: var(--white); box-shadow: var(--shadow-sm); }
.legal-content p { margin: 0 0 18px; color: var(--slate); }
.legal-content h2 { margin-top: 34px; font-size: 24px; }

/* Footer */
.footer {
  padding: 62px 0 24px;
  border-top: 1px solid rgba(255, 255, 255, .1);
  background: var(--navy-950);
  color: #cbd7df;
}
.footer-grid { display: grid; grid-template-columns: 1.25fr .75fr 1.05fr 1fr; gap: 42px; }
.footer-logo { width: 230px; height: auto; margin-bottom: 22px; }
.footer h3 { margin: 0 0 16px; color: var(--white); font-size: 14px; letter-spacing: 0; text-transform: uppercase; }
.footer p { margin: 0; color: #b8c8d2; font-size: 14px; }
.footer a { display: block; margin: 7px 0; color: #d5e0e6; font-size: 14px; }
.footer a:hover, .footer a.current, .footer a.active { color: var(--gold-400); }
.footer-group-links { margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .12); }
.footer-group-links a { margin: 0 0 4px; color: var(--gold-400); font-weight: 900; }
.footer-group-links span { display: block; color: #9fb1bd; font-size: 12px; }
.footer-bottom { margin-top: 42px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .12); color: #8fa3b0; font-size: 12px; }

/* Consent preferences */
.consent-banner {
  position: fixed;
  left: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 120000;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px 24px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 22px;
  border: 1px solid rgba(215, 178, 67, .35);
  border-top: 4px solid var(--gold-500);
  background: rgba(5, 28, 43, .98);
  box-shadow: var(--shadow-lg);
  color: #d8e5ec;
}
.consent-banner[hidden] { display: none; }
.consent-copy strong {
  display: block;
  margin-bottom: 6px;
  color: var(--white);
  font-size: 17px;
}
.consent-copy p {
  margin: 0;
  max-width: 780px;
  color: #c4d3dc;
  font-size: 13.5px;
  line-height: 1.55;
}
.consent-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 10px;
}
.consent-links a {
  color: var(--gold-400);
  font-size: 12px;
  font-weight: 800;
}
.consent-actions {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.consent-btn {
  min-height: 42px !important;
  padding: 9px 13px !important;
  font-size: 12px !important;
}
.consent-btn.secondary {
  border-color: rgba(255, 255, 255, .2) !important;
  background: transparent !important;
  color: var(--white) !important;
}
.consent-panel {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, .12);
}
.consent-panel[hidden] { display: none; }
.consent-panel label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .045);
  color: #c9d7df;
  font-size: 12px;
  line-height: 1.4;
}
.consent-panel label strong {
  display: block;
  color: var(--white);
  font-size: 12.5px;
}

/* Laptop and tablet navigation */
@media (max-width: 1280px) {
  :root {
    --topbar-height: 0px;
    --site-header-height: 82px;
    --header-safe: var(--site-header-height);
  }
  .topbar { display: none; }
  .site-header { top: 0; }
  .header-inner {
    min-height: var(--site-header-height);
    grid-template-columns: minmax(190px, 1fr) auto auto;
    grid-template-rows: auto;
    gap: 0 14px;
    padding: 10px 0;
  }
  .logo { grid-column: 1; grid-row: 1; }
  .logo img { width: 230px; }
  .oly-menu-toggle { display: flex; grid-column: 3; grid-row: 1; }
  .lang {
    grid-column: 2;
    grid-row: 1;
    justify-content: flex-end;
  }
  .lang a { min-width: 40px; padding: 7px 8px; }
  .nav {
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    z-index: 100001;
    grid-column: auto;
    grid-row: auto;
    display: none;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    padding: 12px;
    border: 1px solid rgba(215, 178, 67, .2);
    background: rgba(5, 28, 43, .985);
    box-shadow: 0 18px 42px rgba(3, 19, 30, .28);
    backdrop-filter: blur(14px);
    white-space: normal;
  }
  .site-header.menu-open .nav { display: grid; }
  .nav a {
    min-height: 42px;
    display: block;
    padding: 10px 12px;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(255, 255, 255, .035);
  }
  .nav a::after { display: none; }
}

@media (max-width: 1080px) {
  .section { padding: 68px 0; }
  .market-layout { grid-template-columns: 1fr; gap: 34px; }
  .market-layout > div:first-child { position: static; }
  .defence-layout { grid-template-columns: 1fr; gap: 24px; }
  .grid3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .credential-badges { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .documents-head,
  .documents-grid { grid-template-columns: 1fr; }
  .document-list { grid-template-columns: 1fr; }
  .document-card:nth-child(odd) { border-right: 0; }
  html[dir="rtl"] .document-card:nth-child(odd) { border-left: 0; }
  .process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 18px; }
  .process-grid::before { display: none; }
  .process-card { padding: 0 14px; text-align: left; }
  .process-card > div { margin: 0 0 18px; }
  #markets .grid3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  :root { --site-header-height: 76px; }
  .container { width: min(92vw, 560px); }
  .header-inner { padding: 9px 0; gap: 0 9px; }
  .logo img { width: min(190px, 48vw); }
  .lang a { min-width: 32px; padding: 5px 6px; font-size: 10px; }
  .site-header.menu-open .nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hero { min-height: 0; background-position: 62% center; }
  .hero .container { padding: 58px 0 68px; }
  .hero h1 { max-width: 16ch; font-size: 42px; line-height: 1.08; }
  .hero .brand-statement { font-size: 19px; }
  .hero p { font-size: 16px; }
  .btns { display: grid; grid-template-columns: 1fr; max-width: 390px; }
  .btn { width: 100%; }
  .section { padding: 54px 0; }
  .section h2 { font-size: 36px; }
  .lead { font-size: 17px; }
  .grid2, .grid3, .group-grid, .contact-grid, .footer-grid { grid-template-columns: 1fr; }
  .credential-badges { grid-template-columns: 1fr; }
  .credential-badges span { min-height: 0; }
  .contact-grid { gap: 18px; }
  .market-grid { grid-template-columns: 1fr; }
  .market-card:nth-child(5) { grid-column: auto; }
  .market-card { min-height: 0; }
  .defence-panel { padding: 18px; }
  .defence-points { grid-template-columns: 1fr; }
  .defence-points article { min-height: 0; }
  .image-panel { min-height: 290px; }
  .checks, .info-columns { grid-template-columns: 1fr; }
  .group-card { min-height: 0; padding: 26px; }
  .division-status { position: static; margin: 0 0 20px; }
  .olymedica-card .group-logo { width: 100%; height: 70px; }
  .olymedica-card .group-logo img { max-width: 360px; max-height: 66px; }
  .group-link { width: 100%; min-width: 0; }
  .process-grid, #markets .grid3 { grid-template-columns: 1fr; }
  .process-card { padding: 0; }
  #markets .card { min-height: 0; }
  .legal-grid { grid-template-columns: 1fr; }
  .legal-content { padding: 26px; }
  .documents-head { gap: 22px; }
  .documents-notice { padding: 18px; }
  .document-tabs { grid-template-columns: 1fr; }
  button.document-tab {
    min-height: 74px;
    padding: 16px 18px;
    border-right: 0;
    border-bottom: 1px solid var(--line-light);
  }
  button.document-tab:last-child { border-bottom: 0; }
  .documents-panel-head {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 22px 18px 18px;
  }
  .documents-panel-head h3 { font-size: 24px; }
  .document-card {
    grid-template-columns: 1fr;
    gap: 14px;
    min-height: 0;
    padding: 18px;
  }
  .documents-column > h3 { font-size: 21px; }
  .document-row {
    grid-template-columns: 1fr;
    align-items: start;
    min-height: 0;
  }
  .doc-action {
    width: 100%;
    min-width: 0;
  }
  .doc-actions {
    width: 100%;
    min-width: 0;
  }
  .consent-banner {
    left: 12px;
    right: 12px;
    bottom: 12px;
    grid-template-columns: 1fr;
    padding: 18px;
  }
  .consent-actions {
    justify-content: stretch;
  }
  .consent-actions .consent-btn,
  .consent-panel .consent-btn {
    width: 100%;
  }
  .consent-panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  :root { --site-header-height: 108px; }
  .header-inner {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    gap: 7px 10px;
  }
  .logo { grid-column: 1; grid-row: 1; }
  .logo img { width: min(205px, 60vw); }
  .oly-menu-toggle { grid-column: 2; grid-row: 1; }
  .lang { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; }
  .nav { top: calc(100% + 1px); }
  .site-header.menu-open .nav { grid-template-columns: 1fr; }
  .oly-menu-toggle { width: 42px; height: 40px; min-width: 42px; }
  .hero h1 { font-size: 34px; }
  .hero .brand-statement { font-size: 17px; }
  .section h2 { font-size: 32px; }
  .card { padding: 24px; }
  .lang { flex-wrap: wrap; }
}

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

/* v32 Global Impact visual system */
:root {
  --navy-950: #020811;
  --navy-925: #06111c;
  --navy-900: #081a27;
  --navy-850: #0b2233;
  --navy-800: #123149;
  --gold-500: #d4a63f;
  --gold-400: #e5c36d;
  --cyan-500: #27b8c4;
  --blue-500: #2c8cf4;
  --ink: #edf5f8;
  --slate: #b6c6d1;
  --muted: #8799a8;
  --line-dark: rgba(212, 166, 63, .24);
  --line-light: rgba(255, 255, 255, .12);
  --surface: #07131f;
  --surface-warm: #0a1a29;
  --surface-quiet: #0d2030;
  --shadow-sm: 0 18px 42px rgba(0, 0, 0, .2);
  --shadow-lg: 0 34px 90px rgba(0, 0, 0, .34);
  --radius: 6px;
}

body {
  background:
    radial-gradient(circle at 86% 2%, rgba(44, 140, 244, .16), transparent 34rem),
    linear-gradient(180deg, var(--navy-950) 0%, #020710 100%);
  color: var(--ink);
}

.site-header {
  background: rgba(2, 8, 17, .88);
  border-bottom: 1px solid rgba(212, 166, 63, .28);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .26);
}
.header-inner { grid-template-columns: 248px minmax(0, 1fr) auto; }
.logo img {
  width: 238px;
  filter: drop-shadow(0 0 14px rgba(255, 255, 255, .08));
}
.nav {
  gap: 18px;
  font-size: 12px;
  text-transform: uppercase;
}
.nav a { color: #f2f6f7; }
.nav a::after {
  bottom: 19px;
  background: linear-gradient(90deg, var(--gold-500), transparent);
}
.lang a {
  border-color: rgba(212, 166, 63, .36);
  background: rgba(255, 255, 255, .03);
}

.hero {
  min-height: calc(690px + var(--header-safe));
  background:
    radial-gradient(circle at 83% 20%, rgba(212, 166, 63, .2), transparent 24rem),
    linear-gradient(90deg, rgba(2, 8, 17, .98) 0%, rgba(2, 8, 17, .91) 43%, rgba(2, 8, 17, .38) 100%),
    url(assets/hero-london-v16.jpg) 74% center / cover no-repeat;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(rgba(255, 255, 255, .018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .018) 1px, transparent 1px);
  background-size: 54px 54px;
  mask-image: linear-gradient(90deg, rgba(0, 0, 0, .45), transparent 80%);
}
.hero::after {
  background:
    linear-gradient(180deg, transparent 58%, var(--navy-950) 100%),
    radial-gradient(circle at 76% 32%, rgba(39, 184, 196, .12), transparent 26rem);
}
.hero .container { padding: 76px 0 96px; }
.hero h1 {
  max-width: 760px;
  margin-bottom: 18px;
  font-size: 54px;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.hero .brand-statement {
  max-width: 760px;
  color: var(--gold-400);
  font-size: 20px;
  text-transform: uppercase;
  overflow-wrap: break-word;
}
.hero p {
  max-width: 760px;
  color: #d7e3ea;
}
.hero-corridors span {
  border-color: rgba(212, 166, 63, .38);
  background: rgba(6, 17, 28, .72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}
.btn.white {
  border-color: rgba(255, 255, 255, .32);
  background: transparent;
  color: var(--white);
}
.btn.gold,
button:not(.oly-menu-toggle) {
  background: var(--gold-500);
  color: #06111c;
}

.section,
.section.alt,
.market,
#services,
#industries,
#markets,
#company,
.documents-section {
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .018), transparent),
    var(--navy-925);
  color: var(--ink);
}
.section.alt,
#industries,
#markets,
.documents-section {
  background:
    radial-gradient(circle at 12% 0%, rgba(39, 184, 196, .08), transparent 28rem),
    var(--navy-900);
}
.section h1,
.section h2,
.section h3,
.documents-section h2,
.documents-section h3,
.documents-section h4 {
  color: var(--white);
}
.lead,
.section p,
.card p,
.market-card p,
.process-card p,
.documents-section .lead,
.documents-notice span,
.documents-panel-head p,
.document-card p,
.legal-content p {
  color: var(--slate);
}
.kicker {
  color: var(--gold-400);
  text-transform: uppercase;
}

.card,
.market-card,
.process-card,
.legal-content,
.legal-menu,
.documents-notice,
.document-hub,
.documents-column {
  border-color: rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .045);
  box-shadow: none;
}
.card,
.market-card,
.document-hub,
.documents-notice,
.legal-content,
.legal-menu,
.group-card {
  border-radius: var(--radius);
}
.card h3,
.market-card h3,
.process-card h3,
.document-card h4,
.legal-content h2 { color: var(--white); }
.market-layout { align-items: start; }
.market-card::before,
#industries .card::before,
.num::after {
  background: linear-gradient(180deg, var(--gold-500), rgba(212, 166, 63, .24));
}
#services .card:hover {
  border-color: rgba(212, 166, 63, .55);
  box-shadow: 0 22px 52px rgba(0, 0, 0, .22);
}
.image-panel {
  border-color: rgba(212, 166, 63, .26);
  border-radius: var(--radius);
}
.checks p,
.why-points span {
  border-color: rgba(255, 255, 255, .12);
}

.group-section {
  background:
    radial-gradient(circle at 78% 12%, rgba(44, 140, 244, .17), transparent 30rem),
    linear-gradient(135deg, #020811 0%, #06111c 54%, #0c2436 100%);
}
.group-section .container {
  width: min(1380px, 92vw);
}
.group-section h2,
.group-section .lead {
  margin-inline: auto;
  text-align: center;
}
.group-section .kicker {
  text-align: center;
}
.group-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.group-card {
  min-width: 0;
  min-height: 390px;
  padding: 26px;
  border-color: rgba(255, 255, 255, .16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .025)),
    rgba(6, 17, 28, .88);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
  overflow: hidden;
}
.group-card:hover {
  transform: translateY(-4px);
  border-color: rgba(212, 166, 63, .55);
}
.company-mark {
  width: 74px;
  height: 74px;
  display: grid;
  place-items: center;
  margin-bottom: 22px;
  border: 1px solid rgba(212, 166, 63, .52);
  background: rgba(212, 166, 63, .08);
  color: var(--gold-400);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .04);
}
.company-mark span {
  font-size: 23px;
  font-weight: 900;
  line-height: 1;
}
.company-logo-wrap {
  width: 100%;
  min-height: 74px;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.company-logo-wrap img {
  display: block;
  width: auto;
  max-width: 100%;
  max-height: 58px;
  object-fit: contain;
  filter: drop-shadow(0 12px 24px rgba(0, 0, 0, .32));
}
.company-olydefence .company-logo-wrap img,
.company-olymedica .company-logo-wrap img,
.company-olyelectra .company-logo-wrap img,
.company-olyaerospace .company-logo-wrap img {
  max-height: 64px;
}
.company-olyvenra-ltd .company-logo-wrap img {
  max-height: 46px;
}
.company-sector {
  display: block;
  min-height: 0;
  margin-bottom: 12px;
  color: var(--gold-400);
  font-size: 10.5px;
  font-weight: 900;
  line-height: 1.35;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
.group-card h3 {
  max-width: 100%;
  font-size: 22px;
  line-height: 1.08;
  overflow-wrap: anywhere;
  word-break: normal;
}
.group-card p {
  color: #b9c9d4;
  font-size: 13.5px;
  line-height: 1.58;
  overflow-wrap: break-word;
}
.company-olydefence {
  grid-column: span 2;
  border-color: rgba(212, 166, 63, .58);
  background:
    radial-gradient(circle at 92% 0%, rgba(212, 166, 63, .18), transparent 18rem),
    linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .025)),
    rgba(6, 17, 28, .9);
}
.company-olydefence h3,
.company-olyvenra-ltd h3 {
  font-size: 26px;
}
.company-olyvenra-ltd {
  grid-column: span 2;
}
.company-olymedica .company-mark {
  border-color: rgba(39, 184, 196, .74);
  background: rgba(39, 184, 196, .1);
  color: #55d7dd;
}
.company-olyelectra .company-mark {
  border-color: rgba(44, 140, 244, .78);
  background: rgba(44, 140, 244, .12);
  color: #66b2ff;
}
.company-olyaerospace .company-mark {
  border-color: rgba(143, 165, 193, .72);
  background: rgba(143, 165, 193, .1);
  color: #b8c7dc;
}
.company-olydefence .company-mark {
  border-color: rgba(222, 230, 238, .72);
  background: rgba(222, 230, 238, .08);
  color: #eef4f8;
}
.company-olyvenra-ltd { border-color: rgba(212, 166, 63, .42); }
.group-link {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.group-link span,
.group-link small {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.process-grid::before { background: rgba(212, 166, 63, .26); }
.process-card {
  background: transparent;
  border: 0;
}
.process-card > div {
  background: var(--navy-950);
  color: var(--gold-400);
}
.credential-badges span {
  border-color: rgba(255, 255, 255, .12);
  border-top-color: var(--gold-500);
  background: rgba(255, 255, 255, .045);
  color: var(--white);
}
.credential-badges strong { color: var(--gold-400); }
#company .container > .card:last-child {
  background: rgba(255, 255, 255, .045);
}

.document-hub {
  border-top-color: var(--gold-500);
  background: rgba(255, 255, 255, .045);
}
.document-tabs,
.document-panels {
  background: transparent;
}
button.document-tab {
  border-color: rgba(255, 255, 255, .12);
  color: var(--white);
}
button.document-tab:hover,
button.document-tab.active {
  background: rgba(212, 166, 63, .14);
}
button.document-tab small { color: var(--muted); }
.documents-panel-head,
.document-card {
  border-color: rgba(255, 255, 255, .12);
}
.document-card {
  background: rgba(255, 255, 255, .02);
}
.document-card:hover {
  background: rgba(255, 255, 255, .05);
}
.document-card.controlled-card {
  background: rgba(212, 166, 63, .055);
}
.doc-pill {
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .06);
}
.doc-action.secondary,
.doc-action.request {
  color: var(--gold-400);
}

#contact {
  background:
    radial-gradient(circle at 80% 0%, rgba(212, 166, 63, .12), transparent 30rem),
    #06111c;
}
.form-card input,
.form-card textarea {
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .92);
}
.footer {
  background: #020811;
}
.footer-grid {
  grid-template-columns: 1.1fr .72fr .88fr 1.12fr;
}
.footer-group-links {
  display: grid;
  gap: 5px;
}
.footer-group-links span {
  margin-bottom: 4px;
  color: var(--gold-400);
  font-weight: 900;
  text-transform: uppercase;
}
.footer-group-links a {
  color: #dce7ed;
  font-weight: 700;
}

html[dir="rtl"] .hero {
  background:
    radial-gradient(circle at 18% 20%, rgba(212, 166, 63, .2), transparent 24rem),
    linear-gradient(270deg, rgba(2, 8, 17, .98) 0%, rgba(2, 8, 17, .91) 43%, rgba(2, 8, 17, .38) 100%),
    url(assets/hero-london-v16.jpg) 28% center / cover no-repeat;
}
html[dir="rtl"] .group-section .kicker,
html[dir="rtl"] .group-section h2,
html[dir="rtl"] .group-section .lead {
  text-align: center;
}

@media (max-width: 1280px) {
  .header-inner { grid-template-columns: minmax(190px, 1fr) auto auto; }
  .nav { font-size: 12px; text-transform: none; }
}

@media (max-width: 1180px) {
  .group-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .company-olydefence,
  .company-olyvenra-ltd { grid-column: span 2; }
}

@media (max-width: 900px) {
  .group-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .company-olydefence,
  .company-olyvenra-ltd { grid-column: span 2; }
  .hero h1 { font-size: 48px; }
}

@media (max-width: 760px) {
  .hero {
    background:
      linear-gradient(180deg, rgba(2, 8, 17, .86), rgba(2, 8, 17, .95)),
      url(assets/hero-london-v16.jpg) 60% center / cover no-repeat;
  }
  .hero h1 {
    max-width: 13ch;
    font-size: 38px;
  }
  .hero .brand-statement {
    font-size: 16px;
  }
  .group-grid { grid-template-columns: 1fr; }
  .company-olydefence,
  .company-olyvenra-ltd { grid-column: auto; }
  .group-card {
    min-height: 0;
    padding: 24px;
  }
  .company-logo-wrap {
    min-height: 60px;
    margin-bottom: 18px;
  }
  .company-logo-wrap img {
    max-height: 50px;
  }
  .company-mark {
    width: 64px;
    height: 64px;
  }
  .footer-grid { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .hero h1 { font-size: 33px; }
}

/* v33.1 deep QA fixes: contrast, anchors and document tabs */
section[id],
.hero {
  scroll-margin-top: calc(var(--header-safe) + 28px);
}

#process {
  background:
    radial-gradient(circle at 14% 0%, rgba(39, 184, 196, .09), transparent 26rem),
    linear-gradient(180deg, #06111c 0%, #081a27 100%);
  color: var(--white);
}
#process h2,
#process h3 {
  color: var(--white);
}
#process .lead {
  max-width: 980px;
  color: #d4e0e8;
}
#process .process-grid::before {
  background: rgba(212, 166, 63, .42);
}
#process .process-card {
  background: transparent;
  border: 0;
}
#process .process-card > div {
  border-color: var(--gold-500);
  background: #020811;
  color: var(--gold-400);
  box-shadow: 0 0 0 5px rgba(212, 166, 63, .08);
}
#process .process-card h3 {
  font-size: 18px;
}
#process .process-card p {
  color: #c5d3dd;
  font-size: 14.5px;
  line-height: 1.62;
}

.document-tabs {
  background: rgba(2, 8, 17, .7);
}
button.document-tab {
  border-color: rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .035);
  color: var(--white);
}
button.document-tab:hover {
  background: rgba(212, 166, 63, .12);
}
button.document-tab.active {
  background: var(--gold-500);
  color: #06111c;
}
button.document-tab.active small {
  color: rgba(6, 17, 28, .72);
}
button.document-tab small {
  color: #aebfca;
}

@media (max-width: 760px) {
  section[id],
  .hero {
    scroll-margin-top: calc(var(--header-safe) + 18px);
  }
}

/* v33.5 group-company polish: OLYVENRA parent row, operating companies below */
.group-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}
.group-card,
.company-olydefence,
.company-olyvenra-ltd {
  grid-column: auto;
}
.group-card {
  min-height: 450px;
  display: flex;
  flex-direction: column;
  padding: 24px;
  border-color: rgba(255, 255, 255, .14);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .018)),
    rgba(5, 17, 28, .86);
}
.company-olydefence {
  border-color: rgba(212, 166, 63, .58);
  background:
    radial-gradient(circle at 88% 2%, rgba(212, 166, 63, .15), transparent 16rem),
    linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .018)),
    rgba(5, 17, 28, .88);
}
.company-olyvenra-ltd {
  order: -1;
  grid-column: 1 / -1;
  min-height: 250px;
  display: grid;
  grid-template-columns: minmax(260px, .85fr) minmax(320px, 1.4fr) minmax(230px, .55fr);
  grid-template-rows: auto auto;
  column-gap: 34px;
  row-gap: 8px;
  align-items: center;
  padding: 32px 34px;
  border-color: rgba(212, 166, 63, .38);
  background:
    radial-gradient(circle at 8% 0%, rgba(212, 166, 63, .12), transparent 18rem),
    linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .018)),
    rgba(5, 17, 28, .9);
}
.company-logo-wrap {
  min-height: 68px;
  justify-content: center;
  margin-bottom: 22px;
}
.company-logo-wrap img {
  max-width: 92%;
  max-height: 46px;
  filter: drop-shadow(0 10px 20px rgba(0, 0, 0, .24));
}
.company-olydefence .company-logo-wrap img,
.company-olymedica .company-logo-wrap img,
.company-olyelectra .company-logo-wrap img,
.company-olyaerospace .company-logo-wrap img {
  max-height: 48px;
}
.company-olyvenra-ltd .company-logo-wrap img {
  max-width: 88%;
  max-height: 44px;
}
.company-olyvenra-ltd .company-logo-wrap {
  grid-column: 1;
  grid-row: 1 / 3;
  justify-content: flex-start;
  min-height: 0;
  margin: 0;
}
.company-olyvenra-ltd .company-logo-wrap img {
  max-width: 100%;
  max-height: 52px;
}
.company-name-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.group-card .company-sector {
  min-height: 32px;
  margin-bottom: 16px;
  letter-spacing: .02em;
}
.company-olyvenra-ltd .company-sector {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  min-height: 0;
  margin: 0 0 6px;
}
.group-card p {
  margin-bottom: 24px;
  color: #c0ced8;
  font-size: 13.8px;
  line-height: 1.6;
}
.company-olyvenra-ltd p {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  margin: 0;
  max-width: 760px;
}
.group-link {
  margin-top: auto;
  min-height: 78px;
}
.company-olyvenra-ltd .group-link {
  grid-column: 3;
  grid-row: 1 / 3;
  align-self: center;
  width: 100%;
  max-width: 280px;
  justify-self: end;
  margin-top: 0;
}

@media (max-width: 1500px) {
  .group-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .company-olyvenra-ltd {
    grid-template-columns: minmax(220px, .8fr) minmax(280px, 1fr);
  }
  .company-olyvenra-ltd .group-link {
    grid-column: 1;
    grid-row: 3;
    justify-self: start;
    margin-top: 18px;
  }
}

@media (max-width: 980px) {
  .group-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .group-grid {
    grid-template-columns: 1fr;
  }
  .company-olyvenra-ltd {
    display: flex;
    grid-column: auto;
    min-height: 0;
    padding: 24px;
  }
  .company-olyvenra-ltd .company-logo-wrap {
    justify-content: center;
    margin-bottom: 18px;
  }
  .company-olyvenra-ltd .company-sector,
  .company-olyvenra-ltd p,
  .company-olyvenra-ltd .group-link {
    grid-column: auto;
    grid-row: auto;
    max-width: 100%;
    justify-self: auto;
  }
  .group-card {
    min-height: 0;
  }
  .company-logo-wrap {
    min-height: 70px;
  }
}

/* v33.6 final group-company layout: parent company first, operating companies balanced below */
.group-section .lead {
  max-width: 960px;
}
.group-parent-card {
  display: grid;
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1.45fr) minmax(210px, .48fr);
  grid-template-rows: auto;
  align-items: center;
  gap: 24px;
  min-height: 0;
  margin: 30px 0 18px;
  padding: 26px 28px;
  border-color: rgba(212, 166, 63, .42);
  background:
    radial-gradient(circle at 8% 0%, rgba(212, 166, 63, .1), transparent 18rem),
    linear-gradient(180deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .02)),
    rgba(5, 17, 28, .9);
}
.group-parent-card .company-logo-wrap {
  grid-column: auto;
  grid-row: auto;
  min-height: 0;
  margin: 0;
  justify-content: flex-start;
}
.group-parent-card .company-logo-wrap img {
  max-width: 100%;
  max-height: 46px;
}
.group-parent-copy h3 {
  margin: 0 0 8px;
  color: #fff;
  font-size: 24px;
  line-height: 1.1;
}
.group-parent-card .company-sector {
  grid-column: auto;
  grid-row: auto;
  min-height: 0;
  margin: 0 0 10px;
}
.group-parent-card p {
  grid-column: auto;
  grid-row: auto;
  align-self: auto;
  margin: 0;
  max-width: 760px;
  color: #c5d3dd;
  font-size: 14px;
  line-height: 1.55;
}
.group-parent-card .group-link {
  grid-column: auto;
  grid-row: auto;
  justify-self: end;
  align-self: center;
  width: 100%;
  max-width: 250px;
  min-height: 70px;
  margin: 0;
}
.operating-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}
.operating-grid .group-card {
  min-height: 340px;
  padding: 22px;
}
.operating-grid .company-logo-wrap {
  min-height: 56px;
  margin-bottom: 18px;
}
.operating-grid .company-logo-wrap img {
  max-width: 94%;
  max-height: 38px;
}
.operating-grid .company-sector {
  min-height: 34px;
  margin-bottom: 14px;
  font-size: 10px;
}
.operating-grid .group-card p {
  margin-bottom: 18px;
  font-size: 13.2px;
  line-height: 1.52;
}
.operating-grid .group-link {
  min-height: 64px;
}
@media (max-width: 1280px) {
  .operating-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .group-parent-card {
    grid-template-columns: 1fr;
  }
  .group-parent-card .group-link {
    justify-self: start;
    max-width: 280px;
  }
}
@media (max-width: 680px) {
  .operating-grid {
    grid-template-columns: 1fr;
  }
  .group-parent-card {
    padding: 24px;
  }
  .group-parent-card .company-logo-wrap {
    justify-content: center;
  }
  .group-parent-copy h3,
  .group-parent-card .company-sector,
  .group-parent-card p {
    text-align: center;
  }
  .group-parent-card .group-link {
    justify-self: stretch;
    max-width: 100%;
  }
}

/* v38 release refinements */
.group-link{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;line-height:1.2;text-align:center;white-space:normal}
.group-link small{display:block;opacity:.72;font-size:.76rem;letter-spacing:.02em}
.why-grid,.group-grid,.capability-grid,.contact-grid{gap:clamp(1rem,2vw,1.5rem)}
.why-card p,.group-card p{margin-bottom:1.15rem}
[dir="rtl"] .company-sector,[dir="rtl"] .group-card p,[dir="rtl"] .contact-card{text-align:right}
[dir="rtl"] .ltr,[dir="rtl"] a[href^="tel:"],[dir="rtl"] a[href^="mailto:"]{direction:ltr;unicode-bidi:embed}
@media(max-width:700px){.btn-row,.hero-actions{gap:.7rem}.group-link{width:100%}.nav-links{gap:.8rem}}


/* v38 final — premium group platform cards */
.group-section { overflow: hidden; }
.group-section .lead { max-width: 980px; }
.operating-grid { align-items: stretch; }
.operating-grid .group-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 430px;
  padding: 28px;
  border: 1px solid rgba(151, 173, 188, .24);
  background:
    linear-gradient(155deg, rgba(16, 31, 43, .98), rgba(7, 19, 29, .99));
  box-shadow: 0 18px 48px rgba(0,0,0,.18);
}
.operating-grid .group-card::before,
.group-parent-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  opacity: .26;
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 74% auto;
}
.operating-grid .group-card::after,
.group-parent-card::after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -110px;
  width: 250px;
  height: 250px;
  z-index: -1;
  border: 1px solid rgba(214, 173, 65, .13);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(214, 173, 65, .025), 0 0 0 72px rgba(214, 173, 65, .018);
  pointer-events: none;
}
.company-olydefence::before {
  background-image:
    radial-gradient(circle at 80% 18%, rgba(214,173,65,.18) 0 1px, transparent 2px),
    linear-gradient(90deg, transparent 49.5%, rgba(214,173,65,.08) 50%, transparent 50.5%),
    linear-gradient(0deg, transparent 49.5%, rgba(214,173,65,.08) 50%, transparent 50.5%);
  background-size: 22px 22px, 88px 88px, 88px 88px;
}
.company-olymedica::before {
  background-image:
    radial-gradient(circle at 75% 20%, rgba(68,188,197,.18) 0 3px, transparent 4px),
    linear-gradient(35deg, transparent 48%, rgba(68,188,197,.08) 49%, rgba(68,188,197,.08) 51%, transparent 52%);
  background-size: 42px 42px, 86px 86px;
}
.company-olyelectra::before {
  background-image:
    linear-gradient(120deg, transparent 0 34%, rgba(88,194,93,.11) 35% 36%, transparent 37% 58%, rgba(88,194,93,.08) 59% 60%, transparent 61%);
  background-size: 150px 120px;
}
.company-olyaerospace::before {
  background-image:
    radial-gradient(ellipse at 78% 18%, transparent 0 38%, rgba(120,166,207,.13) 39% 39.8%, transparent 40.5%),
    radial-gradient(circle at 82% 18%, rgba(120,166,207,.22) 0 3px, transparent 4px);
}
.group-parent-card::before {
  background-image:
    radial-gradient(circle at 80% 18%, rgba(214,173,65,.17) 0 2px, transparent 3px),
    radial-gradient(ellipse at 80% 18%, transparent 0 30%, rgba(214,173,65,.08) 31% 31.8%, transparent 32.5%);
}
.operating-grid .company-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 72px;
  margin-bottom: 20px;
}
.operating-grid .company-logo-wrap img {
  width: auto;
  max-width: 92%;
  max-height: 52px;
  object-fit: contain;
  object-position: left center;
}
.operating-grid .company-name-text { display: none; }
.operating-grid .company-sector {
  display: block;
  min-height: 0;
  margin: 0 0 18px;
  color: #dfbd59;
  font-size: 11px;
  line-height: 1.45;
  letter-spacing: .095em;
  font-weight: 800;
  text-transform: uppercase;
}
.operating-grid .group-card p {
  flex: 1 1 auto;
  margin: 0 0 24px;
  color: #d4dee5;
  font-size: 14.5px;
  line-height: 1.7;
}
.operating-grid .group-link,
.group-parent-card .group-link {
  width: 100%;
  min-height: 58px;
  margin-top: auto;
  padding: 13px 18px;
  border-color: rgba(151,173,188,.45);
  background: rgba(4,14,23,.34);
  font-size: 14px;
  letter-spacing: .025em;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.operating-grid .group-link:hover,
.group-parent-card .group-link:hover {
  transform: translateY(-2px);
  border-color: rgba(214,173,65,.72);
  background: rgba(214,173,65,.08);
}
.operating-grid .group-link small,
.group-parent-card .group-link small {
  margin-top: 2px;
  font-size: 11.5px;
  opacity: .68;
}
.group-parent-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-color: rgba(214,173,65,.32);
  background: linear-gradient(145deg, rgba(18,34,47,.98), rgba(7,19,29,.99));
}
@media (min-width: 1281px) {
  .operating-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 1280px) and (min-width: 701px) {
  .operating-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .operating-grid .group-card { min-height: 390px; }
}
@media (max-width: 700px) {
  .operating-grid { gap: 18px; }
  .operating-grid .group-card {
    min-height: 0;
    padding: 26px 24px;
    border-radius: 14px;
  }
  .operating-grid .company-logo-wrap {
    justify-content: center;
    min-height: 66px;
    margin-bottom: 18px;
  }
  .operating-grid .company-logo-wrap img {
    max-width: 88%;
    max-height: 48px;
    object-position: center;
  }
  .operating-grid .company-sector {
    margin-bottom: 16px;
    text-align: left;
    font-size: 10.5px;
  }
  .operating-grid .group-card p {
    margin-bottom: 22px;
    font-size: 14.5px;
    line-height: 1.62;
  }
  .operating-grid .group-link,
  .group-parent-card .group-link {
    min-height: 56px;
    padding: 12px 16px;
  }
  [dir="rtl"] .operating-grid .company-sector,
  [dir="rtl"] .operating-grid .group-card p { text-align: right; }
}


/* v39 live release - group-card consistency and mobile polish */
.group-grid.operating-grid { align-items: stretch; }
.group-grid.operating-grid .group-card { display:flex; flex-direction:column; min-height:100%; }
.group-grid.operating-grid .group-card > p { flex:1 1 auto; }
.group-card .group-link { min-height:70px; padding:14px 18px; justify-content:center; }
.group-card .group-link span { display:block; line-height:1.25; }
.group-card .group-link small { display:block; margin-top:4px; line-height:1.25; opacity:.74; }
.company-logo-wrap { min-height:112px; display:flex; align-items:center; justify-content:center; }
.company-logo-wrap img { max-height:76px; width:auto; object-fit:contain; }
@media (max-width:720px){
 .group-card,.group-parent-card{padding:28px 24px;}
 .company-logo-wrap{min-height:88px;margin-bottom:18px;}
 .company-logo-wrap img{max-height:62px;max-width:92%;}
 .group-card p{font-size:17px;line-height:1.62;}
 .group-card .group-link{min-height:60px;padding:12px 16px;}
}
[dir="rtl"] .group-card .group-link,[dir="rtl"] .group-card p,[dir="rtl"] .company-sector{text-align:right;}


/* v40 global editorial typography system */
:root {
  --type-display: clamp(42px, 5.25vw, 74px);
  --type-section: clamp(31px, 3.25vw, 48px);
  --type-card-title: clamp(19px, 1.5vw, 23px);
  --type-lead: clamp(17px, 1.45vw, 20px);
  --type-body: 16px;
}
body { font-size: var(--type-body); line-height: 1.65; }
.hero .container { padding-top: 64px; padding-bottom: 78px; }
.hero h1 {
  max-width: 14.5ch;
  font-size: var(--type-display);
  line-height: 1.02;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.hero .brand-statement {
  max-width: 800px;
  font-size: clamp(18px, 1.7vw, 21px);
  line-height: 1.48;
  font-weight: 700;
  text-wrap: pretty;
}
.hero p:not(.brand-statement) {
  max-width: 760px;
  font-size: clamp(16px, 1.35vw, 18px);
  line-height: 1.7;
  text-wrap: pretty;
}
.section h2 { font-size: var(--type-section); line-height: 1.12; letter-spacing: -.025em; text-wrap: balance; }
.section .lead { max-width: 900px; font-size: var(--type-lead); line-height: 1.72; text-wrap: pretty; }
.card h3,.group-card h3 { font-size: var(--type-card-title); line-height: 1.25; }
.card p,.group-card p { line-height: 1.68; text-wrap: pretty; }
.nav a { font-size: 13px; letter-spacing: .035em; }
html[lang="ru"] .hero h1, html[lang="fr"] .hero h1 { font-size: clamp(39px, 4.8vw, 68px); max-width: 16ch; }
html[lang="tr"] .hero h1 { font-size: clamp(40px, 5vw, 70px); max-width: 15ch; }
html[lang="ar"] .hero h1 { font-size: clamp(40px, 5vw, 69px); line-height: 1.16; letter-spacing: 0; max-width: 15ch; }
html[lang="ar"] .hero .brand-statement, html[lang="ar"] .hero p { line-height: 1.85; }
@media (max-width: 900px) {
  .hero .container { padding-top: 52px; padding-bottom: 66px; }
  .hero h1 { max-width: 15ch; }
}
@media (max-width: 700px) {
  :root { --type-display: clamp(36px, 10.5vw, 46px); --type-section: clamp(28px, 8vw, 37px); }
  .hero .container { padding-top: 42px; padding-bottom: 56px; }
  .hero h1 { max-width: 100%; line-height: 1.06; letter-spacing: -.025em; }
  .hero .brand-statement { font-size: 17px; line-height: 1.55; }
  .hero p:not(.brand-statement) { font-size: 16px; line-height: 1.65; }
  html[lang="ru"] .hero h1, html[lang="fr"] .hero h1, html[lang="tr"] .hero h1, html[lang="ar"] .hero h1 { font-size: clamp(34px, 9.4vw, 42px); max-width: 100%; }
}


/* v41 visual balance correction — hero, platform cards and consent */
:root {
  --type-display: clamp(40px, 4.25vw, 62px);
  --type-section: clamp(29px, 2.8vw, 43px);
  --type-card-title: clamp(18px, 1.3vw, 21px);
}
.hero .container {
  padding-top: clamp(44px, 5vw, 66px);
  padding-bottom: clamp(58px, 6vw, 82px);
}
.hero h1 {
  max-width: 17.5ch;
  line-height: 1.06;
  letter-spacing: -.026em;
}
.hero .brand-statement {
  max-width: 760px;
  font-size: clamp(16px, 1.35vw, 19px);
  line-height: 1.52;
  letter-spacing: .005em;
}
.hero p:not(.brand-statement) {
  max-width: 800px;
  font-size: clamp(15px, 1.15vw, 17px);
  line-height: 1.68;
}
html[lang="tr"] .hero h1,
html[lang="ru"] .hero h1,
html[lang="fr"] .hero h1 {
  font-size: clamp(38px, 3.9vw, 58px);
  max-width: 18.5ch;
}
html[lang="ar"] .hero h1 {
  font-size: clamp(38px, 3.9vw, 58px);
  max-width: 18ch;
  line-height: 1.22;
}

.group-section .container { width: min(1280px, 92vw); }
.group-parent-card {
  grid-template-columns: minmax(190px,.58fr) minmax(0,1.65fr) minmax(180px,.43fr);
  gap: 20px;
  padding: 22px 24px;
}
.group-parent-card .company-logo-wrap img { max-height: 38px; }
.group-parent-copy h3 { font-size: 21px; }
.group-parent-card p { font-size: 13.5px; line-height: 1.55; }
.group-parent-card .group-link { min-height: 58px; max-width: 220px; }

.operating-grid { gap: 18px; }
.operating-grid .group-card {
  min-height: 360px;
  padding: 24px;
}
.operating-grid .company-logo-wrap {
  min-height: 60px;
  margin-bottom: 16px;
}
.operating-grid .company-logo-wrap img {
  max-height: 42px;
  max-width: 86%;
}
.operating-grid .company-sector {
  margin-bottom: 14px;
  font-size: 10px;
  letter-spacing: .08em;
}
.operating-grid .group-card p {
  font-size: 14px;
  line-height: 1.62;
  margin-bottom: 20px;
}
.operating-grid .group-link,
.group-parent-card .group-link {
  min-height: 54px;
  padding: 10px 15px;
  font-size: 13px;
}
.operating-grid .group-link small,
.group-parent-card .group-link small { font-size: 10.5px; }

.consent-banner {
  max-width: 1040px;
  padding: 16px 18px;
  gap: 12px 18px;
  border-top-width: 3px;
}
.consent-copy strong { font-size: 15px; margin-bottom: 4px; }
.consent-copy p { font-size: 12.5px; line-height: 1.45; }
.consent-links { margin-top: 7px; }
.consent-actions { align-items: center; }
.consent-btn { min-height: 36px !important; padding: 7px 11px !important; font-size: 11px !important; }

@media (max-width: 1280px) and (min-width: 701px) {
  .operating-grid .group-card { min-height: 340px; }
  .operating-grid .company-logo-wrap img { max-height: 40px; }
}
@media (max-width: 900px) {
  .hero h1,
  html[lang="tr"] .hero h1,
  html[lang="ru"] .hero h1,
  html[lang="fr"] .hero h1,
  html[lang="ar"] .hero h1 { max-width: 100%; }
  .group-parent-card { grid-template-columns: 1fr; }
  .group-parent-card .company-logo-wrap { justify-content: center; }
  .group-parent-copy h3,
  .group-parent-card .company-sector,
  .group-parent-card p { text-align: center; }
  .group-parent-card .group-link { justify-self: center; width: min(100%,280px); }
}
@media (max-width: 700px) {
  :root { --type-display: clamp(32px, 8.8vw, 40px); --type-section: clamp(26px, 7.2vw, 34px); }
  .hero .container { padding-top: 36px; padding-bottom: 48px; }
  .hero h1,
  html[lang="tr"] .hero h1,
  html[lang="ru"] .hero h1,
  html[lang="fr"] .hero h1,
  html[lang="ar"] .hero h1 {
    font-size: clamp(32px, 8.8vw, 40px);
    line-height: 1.09;
  }
  .hero .brand-statement { font-size: 15.5px; line-height: 1.5; }
  .hero p:not(.brand-statement) { font-size: 15px; line-height: 1.62; }
  .operating-grid .group-card { padding: 22px 20px; }
  .operating-grid .company-logo-wrap { min-height: 54px; margin-bottom: 14px; }
  .operating-grid .company-logo-wrap img { max-height: 38px; max-width: 82%; }
  .operating-grid .group-card p { font-size: 14px; line-height: 1.58; }
  .consent-banner { padding: 14px; max-height: min(72vh,520px); overflow:auto; }
}


/* v42 executive visual refinement */
:root{--v42-gold:#d4a63f;--v42-line:rgba(212,166,63,.24)}
.hero{min-height:auto;background-position:76% center}
.hero::before{background:linear-gradient(90deg,rgba(2,12,22,.97) 0%,rgba(2,12,22,.90) 41%,rgba(2,12,22,.52) 66%,rgba(2,12,22,.34) 100%)}
.hero .container{padding-top:58px;padding-bottom:70px}
.hero h1{font-size:clamp(46px,4.6vw,66px);line-height:1.04;max-width:13.5ch;letter-spacing:-.035em;margin-bottom:22px}
.hero .brand-statement{max-width:760px;font-size:clamp(17px,1.45vw,20px);line-height:1.48;text-transform:none;letter-spacing:.01em;margin-bottom:20px}
.hero p:not(.brand-statement){max-width:770px;font-size:17px;line-height:1.7}
.hero-corridors{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:900px;gap:10px}
.hero-corridors span{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;text-align:center;font-size:12px;line-height:1.25}

#defence-focus .grid2{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:42px;align-items:center}
#defence-focus .grid2>.card{padding:28px}
#defence-focus .grid2>.card .grid2{gap:14px}
#defence-focus .grid2>.card .card{padding:22px;min-height:174px}
#defence-focus .notice{border-left:3px solid var(--v42-gold);background:rgba(212,166,63,.08);padding:18px 20px}

#process .lead{max-width:900px}
#process .process-grid{gap:18px}
#process .process-card{padding:0 10px}
#process .process-card h3{font-size:16px;min-height:42px}
#process .process-card p{font-size:13.5px;line-height:1.55}
#process .process-card>div{width:48px;height:48px;font-size:18px}

.operating-grid{gap:18px}
.operating-grid .group-card{min-height:365px;padding:26px 24px}
.operating-grid .group-card .company-logo{height:58px;margin-bottom:20px}
.operating-grid .group-card .company-sector{font-size:11px;line-height:1.35;margin-bottom:16px}
.operating-grid .group-card p{font-size:14px;line-height:1.6;margin-bottom:20px}
.operating-grid .group-card .group-link{min-height:56px;padding:11px 14px;margin-top:auto;font-size:13px}

#contact .lead{max-width:980px}
#contact .contact-grid{grid-template-columns:.92fr 1.08fr;gap:26px}
#contact .card{padding:30px}
.form-error,.success{border-radius:2px;padding:16px 18px;font-size:15px;line-height:1.55}
.form-error{background:rgba(165,67,67,.16);border:1px solid rgba(224,112,112,.48);border-left:4px solid #cf6b6b}
.success{background:rgba(47,125,76,.16);border:1px solid rgba(84,172,113,.45);border-left:4px solid #54ac71}

.footer{padding:64px 0 0}
.footer-grid{grid-template-columns:1.2fr .72fr 1fr 1.15fr;gap:44px;align-items:start}
.footer-brand p{max-width:300px}
.footer-office{margin-top:18px!important;color:#8799a5!important;font-size:13px!important;line-height:1.65}
.footer h3{padding-bottom:12px;margin-bottom:18px;border-bottom:1px solid var(--v42-line);color:var(--gold-400)}
.footer a{margin:8px 0;line-height:1.45}
.credential-list{display:grid;gap:6px}
.credential-list span{display:block}
.footer-contact-links{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}
.footer-contact-links a{display:block}
.footer-platforms{margin-top:44px;padding:30px 0;border-top:1px solid var(--v42-line);border-bottom:1px solid var(--v42-line)}
.footer-platforms>h3{text-align:center;border:0;margin-bottom:24px;padding:0}
.footer-platform-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.footer-platform-grid a{display:flex;flex-direction:column;align-items:center;text-align:center;margin:0;padding:10px 20px;border-right:1px solid rgba(212,166,63,.2)}
.footer-platform-grid a:last-child{border-right:0}
.footer-platform-grid strong{color:#fff;font-size:14px;letter-spacing:.04em}
.footer-platform-grid small{margin-top:7px;color:#9fb1bd;font-size:11px;line-height:1.35}
.footer-bottom{margin-top:0;padding:22px 0 26px;text-align:center}

@media(max-width:1100px){
 .hero-corridors{grid-template-columns:repeat(3,minmax(0,1fr))}
 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
 .footer-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0}
 .footer-platform-grid a:nth-child(2){border-right:0}
}
@media(max-width:760px){
 .hero .container{padding-top:42px;padding-bottom:52px}
 .hero h1{font-size:clamp(35px,10vw,45px);max-width:100%;line-height:1.06}
 .hero .brand-statement{font-size:16px}
 .hero p:not(.brand-statement){font-size:15.5px;line-height:1.62}
 .hero-corridors{grid-template-columns:1fr 1fr;gap:8px}
 #defence-focus .grid2,#contact .contact-grid{grid-template-columns:1fr}
 .operating-grid .group-card{min-height:0}
 .footer{padding-top:48px}
 .footer-grid{grid-template-columns:1fr;gap:30px}
 .footer-platform-grid{grid-template-columns:1fr 1fr}
 .footer-platform-grid a{padding:12px 8px}
}
@media(max-width:480px){
 .hero-corridors{grid-template-columns:1fr}
 .footer-platform-grid{grid-template-columns:1fr}
 .footer-platform-grid a{border-right:0;border-bottom:1px solid rgba(212,166,63,.16)}
 .footer-platform-grid a:last-child{border-bottom:0}
}
html[dir="rtl"] .footer-platform-grid a{border-right:0;border-left:1px solid rgba(212,166,63,.2)}
html[dir="rtl"] .footer-platform-grid a:last-child{border-left:0}


/* =========================================================
   V43 — multilingual editorial, hero scale and release fixes
   ========================================================= */
.hero .container{padding:60px 0 72px;max-width:1280px}
.hero h1{max-width:790px;font-size:clamp(42px,3.65vw,54px);line-height:1.06;letter-spacing:-.025em;margin-bottom:18px;text-wrap:balance}
.hero .brand-statement{max-width:820px;font-size:clamp(17px,1.35vw,20px);line-height:1.45;font-weight:700;text-transform:none;margin-bottom:14px}
.hero p:not(.brand-statement){max-width:820px;font-size:16px;line-height:1.65;margin-bottom:26px}
.hero-corridors{max-width:820px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:-4px 0 24px}
.hero-corridors span{min-height:42px;justify-content:center;text-align:center;padding:7px 10px;font-size:11px}
.hero .btn{min-height:46px;padding:11px 20px;font-size:14px}
html[lang="tr"] .hero h1,html[lang="ru"] .hero h1,html[lang="fr"] .hero h1{font-size:clamp(39px,3.35vw,50px);max-width:850px}
html[lang="ar"] .hero h1{font-size:clamp(38px,3.25vw,49px);line-height:1.18;letter-spacing:0;max-width:860px}
html[lang="ar"] .hero .brand-statement,html[lang="ar"] .hero p{line-height:1.8}
@media(max-width:1100px){
 .hero h1{font-size:46px;max-width:720px}.hero .brand-statement{font-size:18px}.hero-corridors{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .hero .container{padding:42px 0 58px}.hero h1,html[lang="tr"] .hero h1,html[lang="ru"] .hero h1,html[lang="fr"] .hero h1,html[lang="ar"] .hero h1{font-size:clamp(32px,10vw,40px);max-width:none;line-height:1.08}
 .hero .brand-statement{font-size:16px}.hero p:not(.brand-statement){font-size:15px}.hero-corridors{grid-template-columns:1fr 1fr}.hero-corridors span:last-child{grid-column:1/-1}.hero .btns{display:grid;grid-template-columns:1fr}.hero .btn{width:100%}
}
@media(max-width:420px){.hero h1,html[lang] .hero h1{font-size:30px}.hero-corridors{grid-template-columns:1fr}.hero-corridors span:last-child{grid-column:auto}}

/* Footer balance */
.site-footer .footer-grid{align-items:start;gap:44px}
.site-footer .footer-brand{max-width:290px}
.site-footer .footer-brand p{max-width:260px;line-height:1.7}
.site-footer .footer-column a,.site-footer .footer-column li{line-height:1.55}
@media(max-width:980px){.site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}}
@media(max-width:620px){.site-footer .footer-grid{grid-template-columns:1fr;gap:28px}}

/* Document-centre language clarity */
.document-language-note{margin:0 0 22px;padding:12px 14px;border-left:3px solid var(--gold-500);background:rgba(215,178,67,.08);font-size:14px;line-height:1.55}


/* V44 Executive Architecture — concise, evidence-led and globally scalable */
.hero { min-height: 690px; display:flex; align-items:center; }
.hero .container { max-width:1240px; }
.hero h1 { max-width: 820px; font-size: clamp(48px, 5.1vw, 70px); line-height: .99; letter-spacing: -.045em; text-wrap: balance; }
.hero .brand-statement { max-width: 760px; font-size: clamp(18px, 1.7vw, 23px); line-height: 1.42; text-transform:none; letter-spacing:0; }
.hero > .container > p:not(.brand-statement) { max-width: 760px; font-size: 17px; line-height: 1.68; }
.hero-corridors { max-width:900px; gap:8px; }
.hero-corridors span { min-height:44px; display:flex; align-items:center; justify-content:center; padding:9px 14px; font-size:12px; }
.trust-strip { background:#071621; border-top:1px solid rgba(212,166,63,.22); border-bottom:1px solid rgba(212,166,63,.22); }
.trust-strip-inner { min-height:72px; display:grid; grid-template-columns:repeat(5,1fr); align-items:center; gap:1px; }
.trust-strip span { padding:16px 20px; text-align:center; color:#dbe5eb; font-size:12px; font-weight:700; letter-spacing:.055em; text-transform:uppercase; border-right:1px solid rgba(255,255,255,.08); }
.trust-strip span:last-child { border-right:0; }
.section { padding-top:88px; padding-bottom:88px; }
.section h2 { max-width:860px; text-wrap:balance; }
.lead { max-width:880px; }
.market-text-only .market-layout { gap:44px; }
.market-text-only .market-grid { gap:14px; }
#services .grid3 { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:1120px; }
#services .card { min-height:245px; }
#industries .grid3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.operating-grid .group-card { min-height:330px; }
.operating-grid .group-card p { max-width:34ch; }
#process .process-card p { max-width:26ch; margin-inline:auto; }
.documents-section .documents-head { align-items:end; }
.document-card p { max-width:74ch; }
.footer-grid { grid-template-columns:1.15fr .75fr 1fr 1.1fr; }
.footer-brand p { max-width:31ch; }
@media (max-width: 980px) {
 .hero { min-height:620px; }
 .hero h1 { font-size:clamp(44px,7vw,60px); }
 .trust-strip-inner { grid-template-columns:repeat(3,1fr); }
 .trust-strip span:nth-child(3){border-right:0}
 #industries .grid3 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
 .hero { min-height:auto; padding-top:100px; padding-bottom:64px; }
 .hero h1 { font-size:clamp(38px,11vw,50px); line-height:1.02; }
 .hero .brand-statement { font-size:18px; }
 .hero > .container > p:not(.brand-statement) { font-size:16px; }
 .hero-corridors { grid-template-columns:1fr 1fr; }
 .trust-strip-inner { grid-template-columns:1fr 1fr; }
 .trust-strip span { min-height:56px; display:flex; align-items:center; justify-content:center; padding:12px 8px; font-size:10px; }
 .trust-strip span:nth-child(3){border-right:1px solid rgba(255,255,255,.08)}
 .trust-strip span:nth-child(even){border-right:0}
 #services .grid3, #industries .grid3 { grid-template-columns:1fr; }
 .section { padding-top:64px; padding-bottom:64px; }
}
html[dir="rtl"] .hero h1, html[dir="rtl"] .hero .brand-statement, html[dir="rtl"] .hero > .container > p { max-width:860px; }


/* V45 Precision Layout — navigation collision prevention and information de-duplication */
@media (min-width: 1501px) {
  .header-inner {
    grid-template-columns: 190px minmax(0, 1fr) auto;
    gap: 16px;
  }
  .logo img { width: 188px; }
  .nav { gap: 11px; font-size: 12px; letter-spacing: .018em; }
  .nav a { padding-inline: 1px; }
  .lang a { min-width: 36px; padding: 7px 6px; }
}
/* Switch to the collision-proof menu before navigation reaches the logo. */
@media (max-width: 1500px) {
  :root { --topbar-height: 0px; --site-header-height: 82px; --header-safe: var(--site-header-height); }
  .topbar { display:none; }
  .site-header { top:0; }
  .header-inner {
    grid-template-columns:minmax(180px,1fr) auto auto;
    grid-template-rows:auto;
    gap:0 14px;
    min-height:var(--site-header-height);
    padding:10px 0;
  }
  .logo { grid-column:1; grid-row:1; }
  .logo img { width:205px; max-width:100%; }
  .lang { grid-column:2; grid-row:1; justify-content:flex-end; }
  .oly-menu-toggle { display:flex; grid-column:3; grid-row:1; }
  .nav {
    position:absolute;
    top:calc(100% + 1px);
    left:0; right:0;
    z-index:100001;
    display:none;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    padding:12px;
    border:1px solid rgba(215,178,67,.2);
    background:rgba(5,28,43,.99);
    box-shadow:0 18px 42px rgba(3,19,30,.32);
    white-space:normal;
  }
  .site-header.menu-open .nav { display:grid; }
  .nav a { min-height:42px; display:block; padding:10px 12px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.035); }
  .nav a::after { display:none; }
}
@media (max-width: 760px) {
  .header-inner { grid-template-columns:minmax(145px,1fr) auto; gap:8px; }
  .logo img { width:175px; }
  .lang { display:none; }
  .oly-menu-toggle { grid-column:2; }
  .site-header.menu-open .nav { grid-template-columns:1fr; }
}
.footer-grid-simplified { grid-template-columns:1.05fr .75fr 1fr .9fr; }
.footer-contact-links-clean { margin-top:0; padding-top:0; border-top:0; }
.footer-contact-links-clean a { margin:0 0 12px; }
.footer-office,.credential-list { display:none !important; }
@media(max-width:980px){.footer-grid-simplified{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:620px){.footer-grid-simplified{grid-template-columns:1fr;}}


/* V50 Enterprise Final — restrained global corporate system */
.topbar,.trust-strip{display:none!important}
.site-header{top:0!important;background:rgba(3,13,24,.97);backdrop-filter:blur(16px)}
.header-inner{min-height:86px;display:grid!important;grid-template-columns:minmax(190px,250px) minmax(0,1fr) auto;gap:26px;align-items:center}
.logo{position:relative;z-index:4;display:block;max-width:240px;overflow:hidden}
.logo img{display:block;width:100%;height:auto;max-height:32px;object-fit:contain;object-position:left center}
.nav{display:flex;justify-content:center;align-items:center;gap:clamp(14px,1.25vw,25px);min-width:0}
.nav a{font-size:12.5px;letter-spacing:.055em;white-space:nowrap}
.lang{gap:5px;flex-shrink:0}.lang a{width:40px;height:40px;font-size:12px}
.hero{min-height:720px;padding:clamp(120px,14vh,168px) 0 86px;background-position:center right}
.hero .container{max-width:1320px}.hero h1{max-width:820px;font-size:clamp(48px,5.1vw,72px);line-height:.98;letter-spacing:-.045em;text-wrap:balance}
.hero .brand-statement{max-width:760px;font-size:clamp(18px,1.5vw,22px);line-height:1.42;text-transform:none;letter-spacing:0}
.hero p:not(.brand-statement){max-width:730px;font-size:17px;line-height:1.65}
.hero-corridors{display:none!important}
.btns{margin-top:30px}.btn{min-height:50px;padding:14px 24px}
.section{padding:clamp(72px,8vw,112px) 0}.section h2{font-size:clamp(34px,3.8vw,52px);line-height:1.08;letter-spacing:-.035em}.lead{max-width:820px;font-size:19px;line-height:1.65}
.grid3{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grid3 .card{min-height:250px;padding:34px}
.group-parent-card{padding:30px 34px}.group-card{padding:30px}.group-card p{font-size:15.5px;line-height:1.58}.group-card .group-link{margin-top:24px}
.process-grid p{font-size:14.5px;line-height:1.55}.process-grid h3{font-size:18px}
.footer{padding-top:70px}.footer-grid-simplified{grid-template-columns:1.15fr .9fr 1.15fr .9fr;gap:54px}.footer-brand p{max-width:300px}.footer-platforms{margin-top:46px;padding-top:32px}.footer-platform-grid a{padding:18px 12px}.footer-platform-grid small{font-size:11px}
.info-columns-single{grid-template-columns:1fr!important}.contact-summary{max-width:520px;line-height:1.65}.contact-grid{align-items:start}.form-error{font-size:15px;line-height:1.55}
.documents-head{align-items:end}.document-card{padding:24px}.document-card h4{font-size:18px}
[dir="rtl"] .logo img{object-position:right center}
@media(max-width:1420px){.header-inner{grid-template-columns:minmax(180px,220px) 1fr auto;gap:18px}.nav{gap:14px}.nav a{font-size:11.5px}.lang a{width:36px;height:36px}.logo{max-width:215px}}
@media(max-width:1180px){.oly-menu-toggle{display:flex!important}.nav{display:none!important}.site-header.menu-open .nav{display:flex!important}.header-inner{grid-template-columns:1fr auto auto}.logo{max-width:225px}.hero{min-height:auto}.hero h1{font-size:clamp(46px,7vw,64px)}}
@media(max-width:760px){.header-inner{min-height:74px;gap:12px}.logo{max-width:175px}.lang{display:none}.hero{padding:112px 0 64px;background-position:64% center}.hero h1{font-size:clamp(38px,11vw,52px);line-height:1.01}.hero .brand-statement{font-size:18px}.hero p:not(.brand-statement){font-size:16px}.btns{display:grid;grid-template-columns:1fr}.btn{width:100%}.grid3{grid-template-columns:1fr}.grid3 .card{min-height:0;padding:26px}.footer-grid-simplified{grid-template-columns:1fr;gap:34px}.footer-platform-grid{grid-template-columns:1fr 1fr}.section{padding:66px 0}.section h2{font-size:36px}}
@media(max-width:430px){.logo{max-width:150px}.footer-platform-grid{grid-template-columns:1fr}.hero h1{font-size:39px}}


/* V52 Smart Navigation — final responsive header behaviour */
:root{--site-header-height:86px;--header-safe:86px}
html{scroll-padding-top:calc(var(--site-header-height) + 16px)}
body.navigation-open{overflow:hidden}
.site-header{
  transform:translateY(0);
  transition:transform .32s cubic-bezier(.22,.61,.36,1),background-color .25s ease,box-shadow .25s ease;
  will-change:transform;
}
.site-header.header-hidden{transform:translateY(calc(-100% - 2px))}
.header-inner{
  grid-template-columns:minmax(180px,1fr) auto auto!important;
  min-height:var(--site-header-height)!important;
  gap:14px!important;
}
.logo{grid-column:1;grid-row:1;max-width:235px!important}
.lang{grid-column:2;grid-row:1;display:flex!important;justify-content:flex-end}
.oly-menu-toggle{display:flex!important;grid-column:3;grid-row:1;z-index:100004}
.nav{
  position:absolute!important;
  top:calc(100% + 1px)!important;
  left:max(24px,calc((100vw - 1440px)/2))!important;
  right:max(24px,calc((100vw - 1440px)/2))!important;
  z-index:100003!important;
  display:none!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:16px!important;
  border:1px solid rgba(215,178,67,.28)!important;
  background:rgba(4,19,31,.985)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.48)!important;
  backdrop-filter:blur(18px)!important;
  white-space:normal!important;
}
.site-header.menu-open .nav{display:grid!important}
.nav a{
  min-height:52px!important;
  padding:14px 16px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  background:rgba(255,255,255,.035)!important;
  font-size:13px!important;
  letter-spacing:.07em!important;
  justify-content:flex-start!important;
}
.nav a::after{display:none!important}
.nav a:hover,.nav a.active{background:rgba(215,178,67,.12)!important;border-color:rgba(215,178,67,.5)!important}
.menu-backdrop{
  position:fixed;
  inset:0;
  z-index:99997;
  background:rgba(0,8,15,.58);
  backdrop-filter:blur(3px);
  opacity:1;
}
.menu-backdrop[hidden]{display:none!important}
@media(max-width:900px){
  .logo{max-width:205px!important}
  .lang a{width:36px;height:36px;padding:6px;font-size:11px}
  .nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;left:18px!important;right:18px!important}
}
@media(max-width:680px){
  :root{--site-header-height:74px;--header-safe:74px}
  .header-inner{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
  .logo{max-width:170px!important}
  .lang{display:none!important}
  .oly-menu-toggle{grid-column:2!important}
  .nav{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    width:min(88vw,380px)!important;
    height:100dvh!important;
    grid-template-columns:1fr!important;
    align-content:start!important;
    overflow-y:auto!important;
    padding:calc(var(--site-header-height) + 22px) 18px 28px!important;
    border-width:0 0 0 1px!important;
    transform:translateX(0);
  }
  .nav a{min-height:50px!important}
  .site-header.menu-open .oly-menu-toggle{position:fixed;right:18px;top:16px}
}
@media(prefers-reduced-motion:reduce){
  .site-header{transition:none!important}
}


/* V53 — visible menu affordance and corporate contact refinement */
.oly-menu-toggle:hover,.oly-menu-toggle:focus-visible{
  border-color:var(--gold-500);
  background:rgba(205,169,74,.10);
}
.oly-menu-toggle:focus-visible{outline:2px solid var(--gold-400);outline-offset:3px}
.info-card address{
  margin:0 0 24px;
  color:rgba(255,255,255,.78);
  font-style:normal;
  font-size:16px;
  line-height:1.65;
}
.contact-summary{max-width:48ch;color:rgba(255,255,255,.78)}
@media(max-width:680px){
  .oly-menu-toggle{min-width:94px!important;width:auto!important;height:40px!important;padding:0 11px!important}
  .oly-menu-toggle .menu-label{font-size:10px}
  .site-header.menu-open .oly-menu-toggle{right:14px;top:17px}
}

/* V54 Products & Solutions — searchable supply catalogue */
.nav-products{position:relative;display:flex;align-items:center;min-height:var(--site-header-height)}
.nav-products-trigger span{font-size:14px;margin-left:4px;color:var(--gold-400)}
.nav-products-menu{position:absolute;top:calc(100% - 8px);left:50%;transform:translateX(-50%) translateY(8px);width:min(940px,82vw);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:22px;background:#061c2b;border:1px solid rgba(215,178,67,.28);box-shadow:0 24px 55px rgba(0,0,0,.35);opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease;white-space:normal}
.nav-products:hover .nav-products-menu,.nav-products:focus-within .nav-products-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.nav-product-group{padding:4px 18px;border-right:1px solid rgba(255,255,255,.1)}
.nav-product-group:nth-child(4){border-right:0}.nav-product-group strong{display:block;color:var(--gold-400);font-size:12px;line-height:1.35;letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px}
.nav-products-menu .nav-product-group a{display:block;min-height:0!important;padding:6px 0;color:#dce7ec;font-size:12px;line-height:1.35;letter-spacing:0;white-space:normal}
.nav-products-menu .nav-product-group a::after,.nav-products-rfq::after{display:none!important}.nav-products-menu .nav-product-group a:hover{color:#fff}
.nav-products-rfq{grid-column:1/-1!important;min-height:0!important;margin-top:16px;padding:13px 18px!important;background:rgba(215,178,67,.12);border:1px solid rgba(215,178,67,.3);color:var(--gold-400)!important;justify-content:center}
.products-section{background:#f4f6f7}.product-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px}.product-category-card{background:#fff;border:1px solid rgba(5,28,43,.12);padding:30px}.product-category-card h3{margin:0 0 20px;font-size:22px;color:var(--navy-950)}.product-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.product-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid rgba(5,28,43,.1);background:#f8fafb;color:var(--navy-900);font-size:14px;line-height:1.3;scroll-margin-top:110px}.product-links a:hover{border-color:rgba(215,178,67,.65);background:#fff}.product-links small{color:#8a6b16;font-size:10px;font-weight:800;white-space:nowrap}.product-cta{margin-top:24px;padding:28px 30px;background:var(--navy-950);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.product-cta strong{font-size:20px}.product-cta p{margin:7px 0 0;max-width:850px;color:#cbd8de;font-size:14px;line-height:1.5}.product-cta .btn{flex-shrink:0}
@media(max-width:1180px){.nav-products{display:block;min-height:0}.nav-products-trigger{width:100%}.nav-products-menu{position:static;transform:none!important;width:100%;display:none;grid-template-columns:repeat(2,minmax(0,1fr));opacity:1;visibility:visible;pointer-events:auto;padding:12px;margin-top:6px;box-shadow:none}.nav-products:hover .nav-products-menu,.nav-products:focus-within .nav-products-menu{display:grid}.nav-product-group{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);padding:10px}.nav-products-menu .nav-product-group a{border:0;background:transparent;padding:5px 0}.nav-products-rfq{display:flex!important}.product-category-grid{grid-template-columns:1fr}}
@media(max-width:700px){.product-links{grid-template-columns:1fr}.product-category-card{padding:22px}.product-cta{align-items:flex-start;flex-direction:column;padding:24px}.product-cta .btn{width:100%}.nav-products-menu{grid-template-columns:1fr;max-height:55vh;overflow:auto}}

/* V56 — critical supply positioning */
.nav-products-menu{width:min(1120px,90vw)}
.product-category-card{scroll-margin-top:110px}
@media(max-width:1180px){.nav-products-menu{width:100%}}

/* V57 — product discovery, accessible mega navigation, compact mobile experience */
:root{--mega-panel-max:760px}
.header-inner{grid-template-columns:minmax(190px,1fr) auto auto auto!important}
.products-menu-toggle{
  grid-column:3;grid-row:1;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:42px;padding:0 14px;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.03);
  color:#f5f8fa;font-size:11px;font-weight:800;letter-spacing:.065em;cursor:pointer;white-space:nowrap
}
.products-menu-toggle:hover,.products-menu-toggle:focus-visible,.products-menu-toggle[aria-expanded="true"]{border-color:var(--gold-500);background:rgba(205,169,74,.10);color:var(--gold-400)}
.products-menu-toggle i,.mobile-products-toggle i{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s ease}
.products-menu-toggle[aria-expanded="true"] i,.mobile-products-toggle[aria-expanded="true"] i{transform:rotate(225deg) translate(-1px,-1px)}
.oly-menu-toggle{grid-column:4!important}
.lang{grid-column:2!important}
.products-mega{
  position:fixed;z-index:100002;top:var(--site-header-height);left:0;right:0;max-height:calc(100dvh - var(--site-header-height));overflow:auto;
  background:rgba(4,19,31,.995);border-top:1px solid rgba(215,178,67,.18);border-bottom:1px solid rgba(215,178,67,.32);box-shadow:0 30px 80px rgba(0,0,0,.46)
}
.products-mega[hidden]{display:none!important}
.products-mega-inner{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;padding-top:24px;padding-bottom:28px}
.mega-heading{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:end;gap:16px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.11)}
.mega-heading .mega-kicker{color:var(--gold-400);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.mega-heading strong{color:#fff;font-size:22px;line-height:1.2}
.mega-heading>a{color:var(--gold-400);font-size:12px;font-weight:800}
.mega-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mega-group{padding:18px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.025)}
.mega-group-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:var(--gold-400);font-size:13px;font-weight:850;line-height:1.3}
.mega-group-title span{font-size:13px}
.mega-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.mega-links a{display:block;padding:5px 0;color:#d9e4ea;font-size:11.5px;line-height:1.4}
.mega-links a:hover,.mega-links a:focus-visible{color:#fff}
.mega-rfq{align-self:stretch;padding:22px;border:1px solid rgba(215,178,67,.32);background:linear-gradient(180deg,rgba(205,169,74,.12),rgba(205,169,74,.04));color:#fff}
.mega-rfq>span{display:block;margin-bottom:10px;color:var(--gold-400);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.mega-rfq p{margin:0 0 20px;color:#cbd8de;font-size:13px;line-height:1.6}
.mega-rfq .btn{width:100%;min-width:0}
.mega-backdrop{position:fixed;inset:var(--site-header-height) 0 0;z-index:100001;background:rgba(0,8,15,.54);backdrop-filter:blur(2px)}
.mega-backdrop[hidden]{display:none!important}
.mobile-products-nav,.nav-lang-mobile{display:none}

/* Main menu stays concise; products have their own discovery surface. */
.nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Home: premium overview rather than a long product catalogue. */
.products-section-compact{background:linear-gradient(180deg,#071b29 0%,#04131f 100%);color:#fff;border-top:1px solid rgba(215,178,67,.16);border-bottom:1px solid rgba(215,178,67,.16)}
.products-section-compact .kicker{color:var(--gold-400)}
.products-section-compact h2{color:#fff}
.products-section-compact .lead{max-width:780px;color:#c5d3dc}
.products-overview-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end}
.text-link-arrow{display:inline-flex;align-items:center;min-height:42px;color:var(--gold-400);font-size:13px;font-weight:850;border-bottom:1px solid rgba(205,169,74,.45)}
.product-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:34px}
.product-overview-card{position:relative;min-height:300px;padding:28px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.03);overflow:hidden}
.product-overview-card::before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:var(--gold-500);transform:scaleY(.25);transform-origin:top;transition:transform .25s ease}
.product-overview-card:hover::before{transform:scaleY(1)}
.product-overview-num{margin-bottom:28px;color:rgba(223,195,109,.6);font-size:11px;font-weight:900;letter-spacing:.12em}
.product-overview-card h3{margin:0 0 12px;color:#fff;font-size:23px;line-height:1.2}
.product-overview-card p{margin:0;color:#afc0cb;font-size:14px;line-height:1.6}
.product-overview-samples{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 24px}
.product-overview-samples span{padding:6px 9px;border:1px solid rgba(255,255,255,.11);color:#d7e1e7;font-size:10.5px;line-height:1.25}
.product-overview-card>a{position:absolute;left:28px;bottom:25px;color:var(--gold-400);font-size:12px;font-weight:850}
[dir="rtl"] .product-overview-card>a{left:auto;right:28px}

/* SEO-friendly catalogue and service pages. */
.catalog-main{background:#f5f7f9}
.catalog-hero{padding:calc(var(--site-header-height) + 74px) 0 72px;background:linear-gradient(135deg,#03131e 0%,#08283b 72%,#0b3147 100%);color:#fff;border-bottom:1px solid rgba(215,178,67,.24)}
.catalog-hero h1{max-width:980px;margin:10px 0 18px;font-size:clamp(42px,5vw,68px);line-height:1.03;letter-spacing:-.035em}
.catalog-hero-lead{max-width:830px;margin:0;color:#cfdae1;font-size:18px;line-height:1.65}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:28px;color:#a9bbc6;font-size:11px}
.breadcrumbs a:hover{color:#fff}.breadcrumbs strong{color:#fff;font-weight:700}
.catalog-product-section{background:#f5f7f9}
.catalog-product-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:18px}
.catalog-content-card,.catalog-list-card,.catalog-rfq-card{padding:30px;border:1px solid #d9e2e8;background:#fff;box-shadow:0 10px 30px rgba(3,19,30,.05)}
.catalog-content-card h2{margin:8px 0 16px;font-size:30px}.catalog-content-card p{color:#4d6271}
.catalog-rfq-card{background:#061c2b;color:#fff;border-color:rgba(215,178,67,.28)}
.catalog-rfq-card>span{display:block;color:var(--gold-400);font-size:19px;font-weight:850}.catalog-rfq-card p{color:#c6d4dc}.catalog-rfq-card .btn{width:100%}
.catalog-label{display:block;color:#8f711e;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.catalog-list-card h3{margin:0 0 18px;font-size:22px}.catalog-list-card ul{margin:0;padding:0;list-style:none}.catalog-list-card li{position:relative;padding:10px 0 10px 22px;border-bottom:1px solid #e6ecef;color:#435867}.catalog-list-card li:last-child{border-bottom:0}.catalog-list-card li::before{content:"";position:absolute;left:0;top:20px;width:7px;height:7px;border:1px solid var(--gold-500);transform:rotate(45deg)}
[dir="rtl"] .catalog-list-card li{padding:10px 22px 10px 0}[dir="rtl"] .catalog-list-card li::before{left:auto;right:0}
.catalog-related{padding-top:20px;background:#eef3f6}.section-head-inline{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.section-head-inline h2{margin:6px 0 0}.section-head-inline>a{color:#8f711e;font-size:12px;font-weight:850}
.catalog-index-section{background:#f5f7f9}.catalog-index-grid{display:grid;gap:22px}.catalog-index-group{padding:30px;border:1px solid #d8e2e8;background:#fff}.catalog-index-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:start;margin-bottom:24px}.catalog-index-head h2{margin:5px 0 10px;font-size:30px}.catalog-index-head p{max-width:820px;margin:0;color:#526777}.catalog-index-head>a{color:#8f711e;font-size:12px;font-weight:850;white-space:nowrap}
.catalog-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.catalog-link-grid>a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:13px 15px;border:1px solid #e0e7eb;background:#f8fafb;color:#0d293b;font-size:13px;line-height:1.3}.catalog-link-grid>a:hover{border-color:rgba(205,169,74,.75);background:#fff}.catalog-link-grid i{color:#9c7a1d;font-style:normal}
.catalog-bottom-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:28px 30px;background:#061c2b;color:#fff}.catalog-bottom-cta strong{font-size:20px}.catalog-bottom-cta p{max-width:780px;margin:6px 0 0;color:#c6d4dc}.catalog-bottom-cta .btn{flex:0 0 auto}

/* Compact consent: preserve choice without covering the page. */
.consent-banner{left:auto!important;right:18px!important;bottom:18px!important;width:min(520px,calc(100vw - 36px))!important;max-width:520px!important;padding:14px 15px!important;grid-template-columns:1fr!important;gap:10px!important;border:1px solid rgba(215,178,67,.42)!important;border-top-width:3px!important;box-shadow:0 18px 58px rgba(0,0,0,.38)!important}
.consent-copy strong{font-size:14px!important}.consent-copy p{margin:4px 0!important;font-size:11.5px!important;line-height:1.45!important}.consent-links{margin-top:4px!important;font-size:11px!important}.consent-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.consent-btn{min-height:34px!important;padding:6px 8px!important;font-size:10.5px!important}.consent-panel{margin-top:2px!important;padding-top:9px!important}.consent-panel label{font-size:11px!important}

@media(max-width:1080px){
  .products-mega-inner{grid-template-columns:1fr}.mega-rfq{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.mega-rfq>span,.mega-rfq p{grid-column:1}.mega-rfq .btn{grid-column:2;grid-row:1/3;width:auto;min-width:190px}
  .catalog-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .header-inner{grid-template-columns:minmax(170px,1fr) auto auto!important}.lang{display:none!important}.products-menu-toggle{grid-column:2}.oly-menu-toggle{grid-column:3!important}
  .products-mega-inner{width:min(94vw,var(--container))}.mega-links{grid-template-columns:1fr}
}
@media(max-width:680px){
  .header-inner{grid-template-columns:minmax(0,1fr) auto!important}.products-menu-toggle{display:none!important}.oly-menu-toggle{grid-column:2!important}
  .nav{padding-top:calc(var(--site-header-height) + 16px)!important;gap:7px!important}.nav>a{min-height:46px!important;padding:12px 14px!important;font-size:12px!important}
  .mobile-products-nav{display:block}.mobile-products-toggle{width:100%;min-height:50px;display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border:1px solid rgba(215,178,67,.42);background:rgba(205,169,74,.08);color:var(--gold-400);font:inherit;font-size:12px;font-weight:850;letter-spacing:.05em;text-align:left}
  .mobile-products-panel{padding:7px 0 2px}.mobile-products-panel[hidden]{display:none!important}.mobile-product-group{border-bottom:1px solid rgba(255,255,255,.08)}.mobile-product-group summary{padding:12px 8px;color:#fff;font-size:12px;font-weight:800;cursor:pointer}.mobile-product-group>div{padding:0 8px 9px}.mobile-product-group a{display:block!important;min-height:0!important;padding:7px 0!important;border:0!important;background:transparent!important;color:#c8d6de!important;font-size:11.5px!important;letter-spacing:0!important}.mobile-product-group .mobile-category-link{color:var(--gold-400)!important;font-weight:800!important}.mobile-catalog-link{display:block!important;margin:10px 8px 4px!important;padding:11px 12px!important;border:1px solid rgba(215,178,67,.36)!important;color:var(--gold-400)!important;font-size:11.5px!important;font-weight:850!important}
  .nav-lang-mobile{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:7px}.nav-lang-mobile a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:36px!important;padding:5px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(255,255,255,.03)!important;font-size:10px!important;letter-spacing:0!important}.nav-lang-mobile a.active{border-color:var(--gold-500)!important;background:var(--gold-500)!important;color:#071521!important}
  .hero{padding:var(--site-header-height) 0 0!important;background-position:67% center}.hero .container{padding-top:42px!important;padding-bottom:56px!important}.hero h1,html[lang="tr"] .hero h1,html[lang="ua"] .hero h1,html[lang="ru"] .hero h1,html[lang="fr"] .hero h1,html[lang="ar"] .hero h1{max-width:12ch!important;font-size:clamp(34px,9.4vw,42px)!important;line-height:1.04!important;letter-spacing:-.035em!important;margin-bottom:18px!important}.hero .brand-statement{font-size:15px!important;line-height:1.48!important}.hero p:not(.brand-statement){font-size:14.5px!important;line-height:1.62!important}.hero .btns{margin-top:4px}
  .products-overview-head{grid-template-columns:1fr}.products-overview-head .text-link-arrow{justify-self:start}.product-overview-grid{grid-template-columns:1fr}.product-overview-card{min-height:285px;padding:24px}.product-overview-card>a{left:24px;bottom:22px}[dir="rtl"] .product-overview-card>a{left:auto;right:24px}.product-overview-card h3{font-size:21px}
  .catalog-hero{padding:calc(var(--site-header-height) + 48px) 0 52px}.catalog-hero h1{font-size:clamp(34px,10vw,46px);line-height:1.04}.catalog-hero-lead{font-size:15.5px}.breadcrumbs{font-size:10px;margin-bottom:20px}
  .catalog-product-grid{grid-template-columns:1fr}.catalog-content-card,.catalog-list-card,.catalog-rfq-card,.catalog-index-group{padding:23px}.catalog-link-grid{grid-template-columns:1fr}.catalog-index-head{grid-template-columns:1fr}.catalog-index-head h2{font-size:25px}.catalog-bottom-cta{align-items:flex-start;flex-direction:column;padding:23px}.catalog-bottom-cta .btn{width:100%}.section-head-inline{align-items:flex-start;flex-direction:column}
  .consent-banner{right:10px!important;bottom:10px!important;width:calc(100vw - 20px)!important;max-height:min(48vh,370px)!important;padding:12px!important;overflow:auto!important}.consent-copy p{display:none}.consent-actions{grid-template-columns:1fr 1fr!important}.consent-actions .consent-btn.primary{grid-column:1/-1}.consent-panel{max-height:180px;overflow:auto}
}
@media(max-width:420px){
  .logo{max-width:155px!important}.oly-menu-toggle{min-width:88px!important}.hero h1,html[lang="tr"] .hero h1,html[lang="ua"] .hero h1,html[lang="ru"] .hero h1,html[lang="fr"] .hero h1,html[lang="ar"] .hero h1{font-size:34px!important}.nav-lang-mobile{grid-template-columns:repeat(3,1fr)}
}
@media(prefers-reduced-motion:reduce){.products-menu-toggle i,.mobile-products-toggle i,.product-overview-card::before{transition:none!important}}

/* V58 content-depth and homepage density refinements */
.technical-parameter-list{margin:16px 0 0;padding:0;list-style:none;display:grid;gap:10px}.technical-parameter-list li{position:relative;padding-left:22px;line-height:1.65}.technical-parameter-list li:before{content:"";position:absolute;left:0;top:.7em;width:7px;height:7px;border-radius:50%;background:var(--gold,#c7a55b)}.catalog-content-card h3{margin-top:24px;margin-bottom:8px;font-size:1.05rem;letter-spacing:.01em}.documents-section-compact .compact-document-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.documents-section-compact .document-card{min-height:220px}.resource-more{margin-top:24px;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;gap:20px}.resource-more p{margin:0;max-width:720px}.resource-more .btn.outline{white-space:nowrap}@media(max-width:900px){.documents-section-compact .compact-document-list{grid-template-columns:1fr 1fr}.resource-more{align-items:flex-start;flex-direction:column}}@media(max-width:620px){.documents-section-compact .compact-document-list{grid-template-columns:1fr}.documents-section-compact .document-card{min-height:0}.catalog-content-card h3{font-size:1rem}}


/* V59 editorial + mobile readability QA */
.catalog-content-card,.catalog-list-card{color:#263f50!important}
.catalog-content-card p,.catalog-content-card li,.technical-parameter-list li{color:#405a6b!important;opacity:1!important}
.catalog-content-card h2,.catalog-content-card h3{color:#0a2131!important}
.catalog-label{color:#9b7626!important}
.technical-parameter-list li:before{background:#c6a452!important}
@media(max-width:620px){
 .catalog-content-card{padding:24px 22px!important}
 .catalog-content-card p,.technical-parameter-list li{font-size:16px!important;line-height:1.65!important}
 .catalog-content-card h2{font-size:26px!important;line-height:1.18!important}
 .catalog-content-card h3{font-size:18px!important;line-height:1.3!important}
 .technical-parameter-list{gap:14px!important}
 .catalog-bottom-cta h2{font-size:27px!important;line-height:1.18!important}
}

/* V60 catalogue readability and editorial QA */
.catalog-related{background:#eef3f6!important;color:#0a2131!important}
.catalog-related .section-head-inline h2,.catalog-index-section h2,.catalog-index-group h2{color:#0a2131!important;opacity:1!important}
.catalog-related .section-head-inline>a,.catalog-index-head>a{color:#8a6718!important}
.catalog-related .catalog-label,.catalog-index-section .catalog-label{color:#8a6718!important}
.catalog-related .catalog-link-grid>a,.catalog-index-section .catalog-link-grid>a{color:#0d293b!important;background:#fff!important}
.catalog-related .catalog-link-grid>a span,.catalog-index-section .catalog-link-grid>a span{color:#0d293b!important;opacity:1!important}
.catalog-related .catalog-link-grid i,.catalog-index-section .catalog-link-grid i{color:#8a6718!important}
@media(max-width:700px){
 .catalog-related .section-head-inline h2{font-size:clamp(30px,9vw,42px)!important;line-height:1.08!important;letter-spacing:-.025em!important}
 .catalog-related .section-head-inline{margin-bottom:20px!important}
 .catalog-related .catalog-link-grid>a{font-size:16px!important;min-height:64px!important;padding:16px 18px!important}
 .catalog-list-card li{font-size:16px!important;line-height:1.55!important}
}


/* V61 final visual QA hardening — catalogue, mobile, RTL */
.catalog-related,
.catalog-index-section,
.products-section { background:#eef3f6 !important; color:#102b3d !important; }
.catalog-related .section-head-inline h2,
.catalog-index-section .catalog-index-head h2,
.catalog-index-group h2,
.product-category-card h3 { color:#102b3d !important; opacity:1 !important; text-shadow:none !important; }
.catalog-related .catalog-label,
.catalog-index-section .catalog-label { color:#8a6718 !important; opacity:1 !important; }
.catalog-related .section-head-inline>a,
.catalog-index-head>a { color:#7b5c12 !important; font-weight:850 !important; }
.catalog-link-grid>a,
.product-links>a { color:#102b3d !important; background:#fff !important; border-color:#d7e0e6 !important; }
.catalog-link-grid>a span,
.product-links>a span { color:#102b3d !important; opacity:1 !important; }
.catalog-link-grid>a:hover,
.product-links>a:hover { border-color:#b68b28 !important; background:#fbfaf6 !important; }
.catalog-content-card,
.catalog-list-card { background:#fff !important; color:#263f50 !important; }
.catalog-content-card p,
.catalog-content-card li,
.catalog-list-card li,
.technical-parameter-list li { color:#405a6b !important; opacity:1 !important; }
.catalog-bottom-cta { background:#071f2e !important; }
.catalog-bottom-cta h2 { color:#d9b75a !important; }
.catalog-bottom-cta p { color:#d5e0e6 !important; }
@media(max-width:700px){
 .catalog-related .section-head-inline h2,
 .catalog-index-section .catalog-index-head h2{font-size:clamp(29px,8.2vw,39px)!important;line-height:1.08!important;letter-spacing:-.025em!important}
 .catalog-related .section-head-inline{gap:12px!important;margin-bottom:20px!important}
 .catalog-related .catalog-link-grid>a,.catalog-index-section .catalog-link-grid>a{font-size:16px!important;line-height:1.35!important;min-height:64px!important;padding:16px 18px!important}
 .catalog-content-card p,.catalog-content-card li,.catalog-list-card li,.technical-parameter-list li{font-size:16px!important;line-height:1.6!important}
 .catalog-bottom-cta{padding:28px 22px!important}
 .catalog-bottom-cta .btn{min-height:54px!important;white-space:normal!important;text-align:center!important}
}
html[dir="rtl"] .technical-parameter-list li{padding-left:0!important;padding-right:22px!important}
html[dir="rtl"] .technical-parameter-list li:before{left:auto!important;right:0!important}
html[dir="rtl"] .catalog-link-grid>a i{transform:scaleX(-1)}

/* v62 editorial architecture */
.resource-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.resource-page-hero{padding-top:clamp(110px,12vw,160px)}
.resource-full-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.resource-full-cta{margin-top:28px}
.catalog-index-group .catalog-index-head p{max-width:78ch;line-height:1.72}
.catalog-product-section .catalog-content-card>h2:first-child{margin-top:0}
@media(max-width:780px){
 .resource-full-list{grid-template-columns:1fr}
 .resource-actions{display:grid;grid-template-columns:1fr;width:100%}
 .resource-actions .btn{width:100%;justify-content:center}
 .catalog-index-group .catalog-index-head p{font-size:16px;line-height:1.65}
}


/* ==========================================================
   V63 DESIGN SYSTEM — COLOR + RESPONSIVE HARDENING
   One authoritative palette. Appended last intentionally.
   ========================================================== */
:root{
  --ds-navy:#03131e;
  --ds-navy-2:#071f2e;
  --ds-navy-3:#0d293b;
  --ds-ink:#102b3d;
  --ds-copy:#40566a;
  --ds-muted:#5b7080;
  --ds-surface:#f5f7f9;
  --ds-surface-2:#eef3f6;
  --ds-card:#ffffff;
  --ds-line:#d6e0e6;
  --ds-gold:#cda94a;
  --ds-gold-light:#dfc36d;
  --ds-gold-dark:#7b5c12;
  --ds-on-dark:#ffffff;
  --ds-on-dark-soft:#cbd8de;
}

/* Light surfaces: never inherit white text from a dark parent/component. */
.section.alt,
.catalog-main,
.catalog-related,
.catalog-index-section,
.catalog-product-section,
.resource-page-hero{
  background:var(--ds-surface-2)!important;
  color:var(--ds-ink)!important;
}
.section.alt h1,.section.alt h2,.section.alt h3,.section.alt h4,
.catalog-main h1,.catalog-main h2,.catalog-main h3,.catalog-main h4,
.catalog-related h1,.catalog-related h2,.catalog-related h3,.catalog-related h4,
.catalog-index-section h1,.catalog-index-section h2,.catalog-index-section h3,.catalog-index-section h4,
.catalog-product-section h1,.catalog-product-section h2,.catalog-product-section h3,.catalog-product-section h4,
.resource-page-hero h1,.resource-page-hero h2{
  color:var(--ds-ink)!important;
  opacity:1!important;
  text-shadow:none!important;
}
.section.alt p,.section.alt li,
.catalog-related p,.catalog-related li,
.catalog-index-section p,.catalog-index-section li,
.catalog-product-section p,.catalog-product-section li,
.resource-page-hero p{
  color:var(--ds-copy)!important;
  opacity:1!important;
}
.section.alt .kicker,.catalog-related .kicker,.catalog-index-section .kicker,
.catalog-product-section .kicker,.resource-page-hero .kicker,
.catalog-label{
  color:var(--ds-gold-dark)!important;
}

/* Home product overview is an explicitly DARK component. This overrides
   the older generic .products-section light rule that caused white-on-white. */
.products-section.products-section-compact{
  background:linear-gradient(180deg,#071b29 0%,#04131f 100%)!important;
  color:var(--ds-on-dark)!important;
  border-top:1px solid rgba(205,169,74,.28)!important;
  border-bottom:1px solid rgba(205,169,74,.28)!important;
}
.products-section.products-section-compact h2,
.products-section.products-section-compact h3{
  color:var(--ds-on-dark)!important;
  opacity:1!important;
  text-shadow:none!important;
}
.products-section.products-section-compact .lead,
.products-section.products-section-compact .product-overview-card p{
  color:var(--ds-on-dark-soft)!important;
  opacity:1!important;
}
.products-section.products-section-compact .kicker,
.products-section.products-section-compact .text-link-arrow,
.products-section.products-section-compact .product-overview-num,
.products-section.products-section-compact .product-overview-card>a{
  color:var(--ds-gold-light)!important;
  opacity:1!important;
}
.products-section.products-section-compact .product-overview-card{
  background:rgba(255,255,255,.035)!important;
  border-color:rgba(255,255,255,.14)!important;
  color:var(--ds-on-dark)!important;
}
.products-section.products-section-compact .product-overview-samples span{
  color:#dbe5eb!important;
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(255,255,255,.12)!important;
  opacity:1!important;
}

/* Catalogue cards and links: dark text on white, gold only for emphasis. */
.catalog-content-card,.catalog-list-card,.catalog-index-group,.product-category-card,
.document-card{
  background:var(--ds-card)!important;
  color:var(--ds-ink)!important;
  border-color:var(--ds-line)!important;
}
.catalog-content-card h2,.catalog-content-card h3,.catalog-list-card h2,.catalog-list-card h3,
.catalog-index-group h2,.catalog-index-group h3,.product-category-card h3,.document-card h4{
  color:var(--ds-ink)!important;
}
.catalog-content-card p,.catalog-content-card li,.catalog-list-card p,.catalog-list-card li,
.catalog-index-group p,.product-category-card p,.document-card p,.technical-parameter-list li{
  color:var(--ds-copy)!important;
  opacity:1!important;
}
.catalog-link-grid>a,.product-links>a{
  color:var(--ds-ink)!important;
  background:var(--ds-card)!important;
  border-color:var(--ds-line)!important;
}
.catalog-link-grid>a span,.product-links>a span{color:var(--ds-ink)!important;opacity:1!important}
.catalog-link-grid>a:hover,.catalog-link-grid>a:focus-visible,
.product-links>a:hover,.product-links>a:focus-visible{
  color:var(--ds-ink)!important;
  background:#fbfaf6!important;
  border-color:#a98225!important;
}
.catalog-link-grid i,.product-links small,.catalog-index-head>a,.section-head-inline>a{
  color:var(--ds-gold-dark)!important;
}
.technical-parameter-list li:before{background:#b28a2c!important}

/* Dark call-outs: explicit foregrounds, immune from generic light-section rules. */
.catalog-bottom-cta,.product-cta,.mega-rfq{
  background:var(--ds-navy-2)!important;
  color:var(--ds-on-dark)!important;
}
.catalog-bottom-cta h2,.catalog-bottom-cta strong,.product-cta strong,.mega-rfq>span{
  color:var(--ds-gold-light)!important;
}
.catalog-bottom-cta p,.product-cta p,.mega-rfq p{color:var(--ds-on-dark-soft)!important}

/* Buttons: deterministic contrast. */
.btn.gold,.consent-btn.primary{
  background:var(--ds-gold)!important;
  border-color:var(--ds-gold)!important;
  color:var(--ds-navy)!important;
}
.btn.gold:hover,.btn.gold:focus-visible,.consent-btn.primary:hover,.consent-btn.primary:focus-visible{
  background:var(--ds-gold-light)!important;
  border-color:var(--ds-gold-light)!important;
  color:var(--ds-navy)!important;
}
.section.alt .btn.outline,.catalog-main .btn.outline,.resource-page-hero .btn.outline{
  color:var(--ds-ink)!important;
  border-color:#8ea1ae!important;
  background:transparent!important;
}

/* Header / menu are always dark. */
.site-header,.nav,.products-mega{
  background:rgba(3,19,30,.992)!important;
  color:var(--ds-on-dark)!important;
}
.nav>a,.mobile-products-toggle,.mobile-product-group summary,.mobile-catalog-link,
.mega-group-title,.mega-links a{
  color:var(--ds-on-dark)!important;
}
.nav>a:hover,.nav>a:focus-visible,.nav>a.active{
  color:var(--ds-on-dark)!important;
  border-color:rgba(205,169,74,.62)!important;
  background:rgba(205,169,74,.12)!important;
}
.mobile-products-toggle,.mobile-catalog-link,.mega-group-title{
  color:var(--ds-gold-light)!important;
}
.mobile-product-group a{color:#d4e0e6!important}
.nav-lang-mobile a{color:#f2f6f8!important}
.nav-lang-mobile a.active{background:var(--ds-gold)!important;color:var(--ds-navy)!important;border-color:var(--ds-gold)!important}

/* Desktop mega menu remains structured and readable. */
.mega-group{background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.13)!important}
.mega-heading strong{color:#fff!important}.mega-heading>a,.mega-heading .mega-kicker{color:var(--ds-gold-light)!important}

/* MOBILE MENU: one full-width panel. No desktop grid squeezed into a phone. */
@media(max-width:760px){
  body.navigation-open{overflow:hidden!important}
  .site-header.menu-open .nav{
    display:flex!important;
    flex-direction:column!important;
  }
  .nav{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    max-width:none!important;
    height:100dvh!important;
    min-height:100dvh!important;
    padding:calc(var(--site-header-height) + 22px) 18px 34px!important;
    border:0!important;
    border-radius:0!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    align-content:start!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    box-shadow:none!important;
  }
  .nav>a{
    display:flex!important;
    width:100%!important;
    min-height:50px!important;
    padding:13px 15px!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.12)!important;
    background:rgba(255,255,255,.025)!important;
    font-size:13px!important;
    line-height:1.3!important;
    letter-spacing:.045em!important;
  }
  .mobile-products-nav{order:-1;display:block!important;width:100%!important}
  .mobile-products-toggle{
    width:100%!important;
    min-height:52px!important;
    padding:13px 15px!important;
    border:1px solid rgba(205,169,74,.62)!important;
    background:rgba(205,169,74,.12)!important;
    font-size:13px!important;
  }
  .mobile-products-panel{width:100%!important}
  .mobile-product-group summary{font-size:13px!important;padding:13px 10px!important}
  .mobile-product-group a{font-size:12.5px!important;line-height:1.45!important;padding:8px 10px!important}
  .nav-lang-mobile{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    margin:10px 0 0!important;
  }
  .nav-lang-mobile a{min-height:42px!important;font-size:11px!important}
  .site-header.menu-open .oly-menu-toggle{
    position:fixed!important;
    top:16px!important;
    right:16px!important;
    z-index:100006!important;
  }
  html[dir="rtl"] .site-header.menu-open .oly-menu-toggle{right:auto!important;left:16px!important}
  .menu-backdrop{display:none!important}

  /* Home critical-supply overview: compact, high-contrast mobile layout. */
  .products-section.products-section-compact{padding:60px 0!important}
  .products-overview-head{gap:16px!important}
  .products-section.products-section-compact h2{
    font-size:clamp(31px,8.4vw,40px)!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  .products-section.products-section-compact .lead{font-size:16px!important;line-height:1.6!important}
  .product-overview-grid{gap:12px!important;margin-top:28px!important}
  .product-overview-card{min-height:0!important;padding:24px 22px 70px!important}
  .product-overview-card h3{font-size:23px!important;line-height:1.2!important}
  .product-overview-card p{font-size:15px!important;line-height:1.6!important}
  .product-overview-card>a{left:22px!important;bottom:22px!important}
  html[dir="rtl"] .product-overview-card>a{left:auto!important;right:22px!important}

  /* Catalogue / category pages on phone. */
  .catalog-related,.catalog-index-section,.catalog-product-section{padding-top:54px!important;padding-bottom:54px!important}
  .catalog-related .section-head-inline h2,.catalog-index-head h2{
    color:var(--ds-ink)!important;
    font-size:clamp(29px,8vw,38px)!important;
  }
  .catalog-index-group,.catalog-content-card,.catalog-list-card{padding:22px 20px!important}
  .catalog-link-grid>a{font-size:16px!important;line-height:1.35!important;min-height:62px!important;padding:15px 16px!important}
}

/* Arabic / RTL keeps the same palette, with mirrored affordances only. */
html[dir="rtl"] .product-overview-card::before{left:auto;right:0}
html[dir="rtl"] .text-link-arrow,html[dir="rtl"] .mega-heading,html[dir="rtl"] .nav{text-align:right}

/* Footer/document/contact dark surfaces — lock readable text. */
.footer,.documents-section,.group-section{
  color:var(--ds-on-dark)!important;
}
.footer h2,.footer h3,.footer h4,.documents-section h2,.documents-section h3,.group-section h2,.group-section h3{color:var(--ds-on-dark)!important}
.footer p,.footer li,.documents-section .lead,.group-section p{color:var(--ds-on-dark-soft)!important}
.footer a{color:#e5edf1}
.footer a:hover,.footer a:focus-visible{color:var(--ds-gold-light)}

/* Consent banner: dark panel, guaranteed contrast. */
.consent-banner{background:var(--ds-navy-2)!important;color:#fff!important}
.consent-copy strong{color:#fff!important}.consent-copy p{color:#d4e0e6!important}.consent-links a{color:var(--ds-gold-light)!important}
.consent-btn:not(.primary){background:transparent!important;color:#fff!important;border-color:#627786!important}

/* v64 — final content simplification and semantic spacing */
.why-points{margin:1.1rem 0 0;padding:0;list-style:none;display:grid;gap:.72rem}
.why-points li{display:block;margin:0;padding:.72rem .85rem;border-left:2px solid var(--gold,#d6ad4f);line-height:1.55}
.footer-contact-links-clean{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem}
.footer-contact-links-clean a{display:block;margin:0!important}
.topbar .container>span:last-child{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.documents-section-compact .compact-document-list{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.documents-section-compact .compact-document-list{grid-template-columns:1fr}.footer-contact-links-clean{gap:.7rem}}

/* v65 semantic + visual QA */
.product-overview-samples{list-style:none;padding:0}
.product-overview-samples li{padding:6px 9px;border:1px solid rgba(255,255,255,.14);color:#e7edf1;font-size:10.5px;line-height:1.35;background:rgba(255,255,255,.025)}
.products-section.products-section-compact .product-overview-samples li{color:#e7edf1;border-color:rgba(255,255,255,.14)}
.footer-contact-links-clean{list-style:none;padding-left:0;padding-right:0;margin-left:0;margin-right:0}
.footer-contact-links-clean li{margin:0;padding:0}
.footer-contact-links-clean a{display:block;margin:0!important}

@media (max-width: 720px){
  .product-overview-samples{gap:8px;margin:16px 0 20px}
  .product-overview-samples li{font-size:11px;padding:7px 9px}
  .why-points{display:grid;gap:10px;padding-left:1.1rem}
  [dir="rtl"] .why-points{padding-left:0;padding-right:1.1rem}
}

/* V66 — PDF strategy applied on the existing V65 design system */
.nav-rfq-primary{background:var(--gold,#a98c55);color:#071b2a!important;padding:11px 15px!important;border:1px solid var(--gold,#a98c55)!important}
.v66-hero .container{max-width:1180px}.v66-hero h1{max-width:980px}.v66-hero p{max-width:820px}
.v66-routes{background:#f1eee7;border-block:1px solid #d7d0c2}.v66-route-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.v66-route-grid>a{display:grid;grid-template-columns:64px 1fr auto;gap:16px;align-items:center;padding:24px 20px;border-right:1px solid #c9b990;color:#10212e}.v66-route-grid>a:first-child{padding-left:0}.v66-route-grid>a:last-child{border-right:0}.v66-route-grid strong{font-family:Georgia,serif;color:#a98c55;font-size:38px;font-weight:400}.v66-route-grid h2{font-size:16px;margin:0 0 4px}.v66-route-grid p{font-size:12px;line-height:1.45;margin:0;color:#596872}
.v66-sector-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:28px;border-top:1px solid var(--line)}.v66-sector-grid>a{position:relative;padding:24px;border-bottom:1px solid var(--line);min-height:160px}.v66-sector-grid>a:nth-child(odd){border-right:1px solid var(--line)}.v66-sector-grid>a:last-child{grid-column:1/-1;border-right:0}.v66-sector-grid span{font-family:Georgia,serif;color:#a98c55;font-size:29px}.v66-sector-grid h3{font-size:18px;margin:8px 0}.v66-sector-grid p{font-size:12px;color:var(--muted)}.v66-sector-grid i{position:absolute;right:20px;bottom:20px;font-style:normal}
.v66-service-grid{margin-top:28px}.v66-service-grid .text-link{display:inline-block;margin-top:14px;font-weight:700;font-size:12px}
.v66-project{background:#082b40;color:#fff}.v66-project-grid{display:grid;grid-template-columns:1fr .75fr;gap:65px;align-items:center}.v66-project h2{font-size:48px;max-width:650px}.v66-project .lead{color:#d6e0e5}.v66-project-card{border:1px solid rgba(255,255,255,.16);padding:28px;background:rgba(255,255,255,.05)}.v66-project-card span{display:block;font-size:11px;letter-spacing:.11em;color:#b9c8d0;margin-bottom:25px}
.v66-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.v66-trust-grid>div{background:#fff;border:1px solid var(--line);padding:18px}.v66-trust-grid span{display:block;font-size:10px;color:var(--muted);margin-bottom:7px}.v66-trust-grid strong{font-size:16px}.v66-trust-actions{display:flex;gap:25px;margin-top:18px}.v66-trust-actions a{font-size:12px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:4px}
.v66-contact-actions{display:flex;gap:12px;margin-top:25px;flex-wrap:wrap}
.v66-form-page h1{max-width:900px}.v66-form-steps{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-bottom:22px}.v66-form-steps span{padding:15px;border-right:1px solid var(--line);font-size:11px;font-weight:800}.v66-form-steps span:last-child{border-right:0}
.v66-rfq-form,.v66-supplier-form{display:grid;gap:16px}.v66-form-section{background:#fff;border:1px solid var(--line);padding:24px}.v66-form-section h2{font-size:22px;margin:0 0 18px}.v66-rfq-item{display:grid;grid-template-columns:1.4fr 1.2fr .55fr .55fr;gap:12px;border:1px solid #d9dfe1;background:#fafbfa;padding:16px;margin-bottom:12px}.v66-rfq-item .wide{grid-column:1/-1}
.v66-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v66-field-grid .wide{grid-column:1/-1}
.v66-rfq-form label,.v66-supplier-form label{font-size:11px;font-weight:700}.v66-rfq-form input,.v66-rfq-form textarea,.v66-supplier-form input,.v66-supplier-form textarea,.v66-supplier-form select{display:block;width:100%;margin-top:6px;border:1px solid #cbd4d8;background:#fff;min-height:45px;padding:10px 12px;font:inherit}.v66-file-label{display:block;border:1px dashed #9baab1;padding:18px;margin-top:14px}.v66-add-item{margin-top:4px}.v66-form-section.review{background:#eef2f3}.v66-form-section.review p{font-size:11px;color:#53636c}.v66-success{margin-bottom:20px}
@media(max-width:900px){.v66-route-grid,.v66-project-grid{grid-template-columns:1fr}.v66-route-grid>a{border-right:0;border-bottom:1px solid #c9b990;padding:20px 0}.v66-sector-grid{grid-template-columns:1fr}.v66-sector-grid>a,.v66-sector-grid>a:nth-child(odd){border-right:0}.v66-sector-grid>a:last-child{grid-column:auto}.v66-trust-grid{grid-template-columns:1fr 1fr}.v66-form-steps{grid-template-columns:1fr 1fr}.v66-form-steps span:nth-child(2){border-right:0}.v66-form-steps span:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:620px){.v66-project h2{font-size:38px}.v66-trust-grid,.v66-field-grid,.v66-rfq-item{grid-template-columns:1fr}.v66-field-grid .wide,.v66-rfq-item .wide{grid-column:auto}.v66-form-section{padding:18px}.v66-form-steps{margin-inline:0}.v66-route-grid strong{font-size:34px}}

/* V67 — Full PDF-plan visual repair and component contrast isolation */
:root{--v67-navy:#091e2c;--v67-ink:#102b3d;--v67-bg:#f6f7f5;--v67-soft:#eef3f6;--v67-line:#d6dee2;--v67-gold:#a98c55;--v67-muted:#667b89}
.products-section,
.catalog-index-section,
.catalog-related,
.v67-resource-page .section:not(.alt),
.v66-form-page .section:not(.alt){background:var(--v67-soft)!important;color:var(--v67-ink)!important}
.products-section h2,.products-section h3,.products-section h4,
.catalog-index-section h1,.catalog-index-section h2,.catalog-index-section h3,
.catalog-related h2,.catalog-related h3,
.v67-resource-page .section:not(.alt) h2,.v67-resource-page .section:not(.alt) h3,.v67-resource-page .section:not(.alt) h4,
.v66-form-page .section:not(.alt) h1,.v66-form-page .section:not(.alt) h2,.v66-form-page .section:not(.alt) h3{color:var(--v67-ink)!important;text-shadow:none!important;opacity:1!important}
.products-section .lead,.products-section p,.products-section a,
.catalog-index-section p,.catalog-index-section a,
.v67-resource-page .section:not(.alt) p{color:var(--v67-muted)!important}
.products-section .v66-sector-grid>a{background:#fff!important;color:var(--v67-ink)!important}
.products-section .v66-sector-grid h3{color:var(--v67-ink)!important}
.products-section .v66-sector-grid p{color:var(--v67-muted)!important}
.products-section .v66-sector-grid i{color:var(--v67-ink)!important}
.products-section .kicker,.catalog-label{color:#8a6718!important}
.v66-hero,.v66-project{background:var(--v67-navy)!important;color:#fff!important}
.v66-hero h1,.v66-hero .brand-statement,.v66-hero p,.v66-project h2{color:#fff!important}
.v66-hero .kicker,.v66-project .kicker{color:#d3ad55!important}
.section.alt{background:#f4f1e9!important;color:var(--v67-ink)!important}
.section.alt h1,.section.alt h2,.section.alt h3,.section.alt h4{color:var(--v67-ink)!important}
.section.alt p,.section.alt .lead{color:#60717c!important}
.v66-service-grid .card{background:#fff!important;color:var(--v67-ink)!important;border-color:var(--v67-line)!important}
.v66-service-grid .card h3{color:var(--v67-ink)!important}.v66-service-grid .card p{color:var(--v67-muted)!important}
.v66-trust-grid>div{background:#fff!important}.v66-trust-grid strong{color:var(--v67-ink)!important}
.v67-resource-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}.v67-resource-tabs a{border:1px solid #b9c4ca;background:#fff;color:var(--v67-ink)!important;padding:10px 14px;font-size:11px;font-weight:800}
.v67-doc-actions{display:flex;gap:8px;flex-wrap:wrap}.doc-action.secondary{background:transparent!important;color:var(--v67-ink)!important;border:1px solid #aebbc2!important}
.v67-controlled-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.v67-controlled-grid article{background:#fff;border:1px solid var(--v67-line);padding:20px}.v67-controlled-grid article span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#8a6718}.v67-controlled-grid h3{font-size:17px;margin:8px 0}.v67-controlled-grid p{font-size:12px;line-height:1.55}
.v67-product-rfq{background:#fff;border:1px solid var(--v67-line);padding:22px;margin-top:14px}.v67-product-rfq h2{font-size:22px!important;color:var(--v67-ink)!important}.v67-product-rfq p{color:var(--v67-muted)!important;font-size:12px}.v67-product-rfq label{display:block;font-size:10px;font-weight:800;margin-top:12px}.v67-product-rfq input,.v67-product-rfq textarea{display:block;width:100%;border:1px solid #c9d3d8;margin-top:5px;padding:10px;background:#fff;color:var(--v67-ink)}.v67-product-rfq button{margin-top:14px;border:0;background:var(--v67-navy);color:#fff;padding:12px 16px;font-weight:800}
.v67-catalog-search{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;background:#fff;border:1px solid var(--v67-line);padding:16px;margin-bottom:22px}.v67-catalog-search label{font-size:10px;font-weight:800;color:var(--v67-ink)}.v67-catalog-search input{display:block;width:100%;min-height:46px;border:1px solid #cbd6da;margin-top:6px;padding:0 12px;color:var(--v67-ink);background:#fff}.v67-catalog-search>a{min-height:46px;display:flex;align-items:center;background:var(--v67-navy);color:#fff!important;padding:0 16px;font-weight:800}
.nav-solution-wrap{display:flex;align-items:center;gap:3px}.nav-supplier-mini{font-size:8px!important;letter-spacing:.05em!important;opacity:.72!important;padding-left:4px!important}
@media(max-width:900px){.v67-controlled-grid{grid-template-columns:1fr 1fr}.nav-supplier-mini{display:none!important}}
@media(max-width:680px){
 .products-section{padding:56px 0!important}.products-section h2{font-size:clamp(34px,10vw,48px)!important;line-height:1.04!important}.products-section .lead{font-size:16px!important;line-height:1.6!important}
 .v66-sector-grid>a{min-height:auto!important;padding:22px 14px!important}.v66-sector-grid h3{font-size:19px!important;line-height:1.25!important}.v66-sector-grid p{font-size:14px!important;line-height:1.55!important}
 .v67-controlled-grid{grid-template-columns:1fr}.v67-catalog-search{grid-template-columns:1fr}.v67-resource-tabs{display:grid;grid-template-columns:1fr}.v67-resource-tabs a{text-align:center}
 .document-card{align-items:flex-start!important}.v67-doc-actions{width:100%}.v67-doc-actions .doc-action{flex:1;text-align:center}
}

/* V68 — live mobile repair based on 9 Sep screenshots */

/* Header / mobile navigation becomes a truly opaque application layer. */
@media(max-width:760px){
  .site-header.menu-open .nav,
  .site-header .nav{
    background:#071925!important;
    color:#fff!important;
  }
  .site-header.menu-open .nav:before{
    content:"";
    position:fixed;
    inset:0;
    background:#071925;
    z-index:-1;
  }
  .site-header.menu-open .nav>a,
  .site-header.menu-open .nav-solution-wrap,
  .site-header.menu-open .mobile-products-nav,
  .site-header.menu-open .nav-lang-mobile{
    opacity:1!important;
    visibility:visible!important;
  }
  .site-header.menu-open .nav>a{
    background:#0a1f2d!important;
    color:#fff!important;
    border-color:#334651!important;
    justify-content:flex-start!important;
    text-align:left!important;
  }
  .site-header.menu-open .mobile-products-toggle{
    background:#132a2d!important;
    color:#d7b65c!important;
    border-color:#9b813e!important;
  }
  .site-header.menu-open .nav-lang-mobile a{
    background:#0a1f2d!important;
    color:#fff!important;
    border:1px solid #334651!important;
  }
  .site-header.menu-open .nav-lang-mobile a.active{
    background:#d0ae59!important;
    color:#071925!important;
    border-color:#d0ae59!important;
  }
  .nav-solution-wrap{
    display:block!important;
    width:100%!important;
  }
  .nav-solution-wrap>a:first-child{
    display:flex!important;
    min-height:50px!important;
    padding:13px 15px!important;
    background:#0a1f2d!important;
    color:#fff!important;
    border:1px solid #334651!important;
  }
}

/* RFQ: stop desktop headline scale from leaking into phones. */
.v68-rfq-hero{padding-top:calc(var(--site-header-height) + 38px)!important;padding-bottom:32px!important}
.v68-rfq-hero h1{
  max-width:780px!important;
  color:#102b3d!important;
  font-size:clamp(42px,5vw,62px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.v68-rfq-hero .lead{max-width:720px!important}
.v66-form-steps{background:#fff!important;color:#102b3d!important}
.v66-form-steps span{color:#102b3d!important;background:#fff!important}
@media(max-width:680px){
  .v68-rfq-hero{padding-top:calc(var(--site-header-height) + 26px)!important;padding-bottom:26px!important}
  .v68-rfq-hero h1{
    font-size:clamp(36px,10.5vw,46px)!important;
    line-height:1.04!important;
    max-width:11ch!important;
    letter-spacing:-.03em!important;
  }
  .v68-rfq-hero .lead{font-size:17px!important;line-height:1.58!important}
  .v66-form-steps{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    margin:0 0 18px!important;
    border-color:#cbd6da!important;
  }
  .v66-form-steps span{
    min-height:48px!important;
    padding:13px 12px!important;
    font-size:12px!important;
    color:#102b3d!important;
    border-color:#cbd6da!important;
  }
}

/* Product/category pages: all text on navy must be legible. */
.v68-catalog-hero{
  background:linear-gradient(135deg,#041824 0%,#08324a 72%,#0b3d57 100%)!important;
  color:#fff!important;
}
.v68-catalog-hero h1{
  color:#fff!important;
  opacity:1!important;
  text-shadow:none!important;
}
.v68-catalog-hero .catalog-hero-lead,
.v68-catalog-hero .breadcrumbs,
.v68-catalog-hero .breadcrumbs a,
.v68-catalog-hero .breadcrumbs strong{
  color:#d9e5eb!important;
  opacity:1!important;
}
.v68-catalog-hero .kicker{color:#ddb957!important}
@media(max-width:680px){
  .v68-catalog-hero{padding-top:calc(var(--site-header-height) + 34px)!important;padding-bottom:42px!important}
  .v68-catalog-hero h1{
    font-size:clamp(34px,10vw,44px)!important;
    line-height:1.05!important;
    max-width:12ch!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .v68-catalog-hero .catalog-hero-lead{font-size:16px!important;line-height:1.55!important}
}

/* Resource Centre: clearer download behavior and touch targets. */
.v68-download-note{
  max-width:800px;
  margin-top:14px;
  font-size:12px!important;
  line-height:1.55!important;
  color:#6a7a84!important;
}
.document-card .doc-action{
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media(max-width:680px){
  .document-card{gap:16px!important}
  .document-card .doc-action{width:100%!important}
}

/* Prevent third-party floating widgets from covering forms/content when identifiable by common attributes. */
iframe[src*="chat" i],
iframe[src*="assistant" i],
iframe[src*="ai-widget" i],
[id*="ai-widget" i],
[class*="ai-widget" i],
[id*="chat-widget" i],
[class*="chat-widget" i]{
  display:none!important;
}

/* Ensure mobile content does not sit under Safari controls / fixed third-party buttons. */
@media(max-width:680px){
  .v66-form-page main,.v66-form-page{padding-bottom:24px!important}
  .v66-form-section.review{margin-bottom:20px!important}
}

/* V69 live final repair */
@media(max-width:760px){
 .site-header.menu-open .nav{
   position:fixed!important;
   top:var(--site-header-height)!important;
   left:0!important;right:0!important;bottom:0!important;
   width:100%!important;height:auto!important;min-height:0!important;
   overflow-y:auto!important;
   overscroll-behavior:contain;
   z-index:9998!important;
   padding:20px 18px max(34px,env(safe-area-inset-bottom))!important;
   background:#071925!important;
 }
 .site-header.menu-open{z-index:9999!important}
 body:has(.site-header.menu-open){overflow:hidden!important}
}
[id*="hostinger" i][style*="fixed" i],
[class*="hostinger" i][style*="fixed" i],
[id*="h-ai" i],
[class*="h-ai" i],
[data-testid*="ai" i],
[data-testid*="assistant" i],
button[aria-label*="Ask AI" i],
button[title*="Ask AI" i]{display:none!important}

/* V71 fail-safe mobile menu */
@media(max-width:1180px){
  .site-header.menu-open #primary-navigation{
    display:grid!important;
    position:fixed!important;
    top:var(--site-header-height,82px)!important;
    left:0!important;right:0!important;bottom:0!important;
    z-index:99998!important;
    background:#071925!important;
    padding:22px 18px max(30px,env(safe-area-inset-bottom))!important;
    overflow-y:auto!important;
    align-content:start!important;
  }
}

/* V72 — deep site cleanup */

/* Pure-CSS mobile menu: first tap opens immediately, no JS timing dependency. */
.oly-nav-checkbox{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
@media(max-width:1180px){
 .oly-menu-toggle{cursor:pointer!important;user-select:none!important}
 .oly-nav-checkbox:checked ~ #primary-navigation{
   display:grid!important;
   position:fixed!important;
   top:var(--site-header-height,82px)!important;
   left:0!important;right:0!important;bottom:0!important;
   width:100%!important;
   z-index:99998!important;
   background:#071925!important;
   padding:20px 18px max(34px,env(safe-area-inset-bottom))!important;
   overflow-y:auto!important;
   align-content:start!important;
 }
 .oly-nav-checkbox:checked + .oly-menu-toggle{border-color:#c9a94f!important}
 .oly-nav-checkbox:checked + .oly-menu-toggle .menu-bars i:nth-child(1){transform:translateY(8px) rotate(45deg)}
 .oly-nav-checkbox:checked + .oly-menu-toggle .menu-bars i:nth-child(2){opacity:0}
 .oly-nav-checkbox:checked + .oly-menu-toggle .menu-bars i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
 #primary-navigation{background:#071925!important}
}

/* Product detail pages: fewer headings, stronger hierarchy, no low-contrast copy. */
.v72-product-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:18px;align-items:start}
.v72-primary-card,.v72-quick-rfq,.v72-checklist{background:#fff;border:1px solid #cfd8dc;padding:28px;color:#102b3d}
.v72-primary-card{grid-row:span 2}
.v72-card-eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#8a6718;margin-bottom:12px}
.v72-scope-copy{font-size:18px!important;line-height:1.68!important;color:#405565!important;margin:0 0 24px!important}
.v72-primary-card h3,.v72-checklist h3{font-size:22px!important;line-height:1.25!important;color:#102b3d!important;margin:24px 0 14px!important}
.v72-primary-card .technical-parameter-list{margin:0;padding:0;list-style:none}
.v72-primary-card .technical-parameter-list li{position:relative;padding:11px 0 11px 24px;border-top:1px solid #e0e6e9;color:#405565;font-size:14px;line-height:1.5}
.v72-primary-card .technical-parameter-list li:before{content:"◇";position:absolute;left:0;color:#b2872f}
.v72-availability{margin-top:20px!important;padding:12px 14px;background:#f2f5f6;border-left:3px solid #a98c55;font-size:12px!important;line-height:1.5!important;color:#5f707b!important}
.v72-quick-rfq{background:#081e2c!important;color:#fff!important;border-color:#a98c55}
.v72-quick-rfq .catalog-label{color:#d7b65c!important}
.v72-quick-rfq h2{color:#fff!important;font-size:28px!important;line-height:1.15!important;margin:8px 0 18px!important}
.v72-quick-rfq label{display:block;color:#e6edf0!important;font-size:11px;font-weight:800;margin:10px 0}
.v72-quick-rfq input,.v72-quick-rfq textarea{width:100%;display:block;margin-top:6px;background:#fff;color:#102b3d;border:1px solid #b8c4c9;padding:11px;min-height:44px}
.v72-quick-rfq button{width:100%;min-height:48px;margin-top:12px;background:#d0ae59;color:#071925;border:0;font-weight:900}
.v72-checklist h3{margin-top:0!important}.v72-checklist ul{margin:0;padding-left:18px}.v72-checklist li{color:#405565;margin:8px 0;font-size:13px;line-height:1.5}
.v72-related{padding-top:46px!important}.v72-related .section-head-inline h2{font-size:34px!important;line-height:1.12!important}
.catalog-rfq-card{color:#fff!important}.catalog-rfq-card p{color:#dce6eb!important}
.v68-catalog-hero{padding-top:calc(var(--site-header-height,82px) + 58px)!important}
.v68-catalog-hero h1{max-width:16ch!important;overflow:visible!important}
@media(max-width:680px){
 .topbar{display:none!important}
 .v68-catalog-hero{padding-top:calc(var(--site-header-height,82px) + 40px)!important}
 .v68-catalog-hero .breadcrumbs{font-size:11px!important;line-height:1.45!important}
 .v68-catalog-hero h1{font-size:clamp(34px,9.6vw,44px)!important;line-height:1.04!important;max-width:14ch!important}
 .v72-product-layout{grid-template-columns:1fr;gap:14px}
 .v72-primary-card{grid-row:auto;padding:22px}
 .v72-quick-rfq,.v72-checklist{padding:22px}
 .v72-scope-copy{font-size:16px!important;line-height:1.62!important}
 .v72-primary-card h3,.v72-checklist h3{font-size:20px!important}
 .v72-quick-rfq h2{font-size:24px!important}
 .v72-related .section-head-inline{display:block!important}
 .v72-related .section-head-inline h2{font-size:30px!important;margin-bottom:10px!important}
 .v72-related .catalog-link-grid a{min-height:56px!important}
}
/* Hide known injected Hostinger AI bubble families without touching page containers. */
iframe[src*="hostinger" i], iframe[src*="assistant" i],
[id^="hostinger-ai" i],[class^="hostinger-ai" i],
[id*="ai-assistant" i],[class*="ai-assistant" i],
[data-testid*="ai-assistant" i],[aria-label*="Ask AI" i]{display:none!important}

/* V73 — researched navigation + content system */
.topbar{display:none!important}
.oly-mobile-menu{display:none}
@media(min-width:1181px){
 .desktop-primary-nav{display:flex!important}
}
@media(max-width:1180px){
 .desktop-primary-nav,.products-menu-toggle{display:none!important}
 .oly-mobile-menu{display:block;margin-left:auto}
 .oly-mobile-menu>summary{
   list-style:none;display:flex;align-items:center;gap:13px;min-height:54px;
   border:1px solid rgba(255,255,255,.28);padding:0 17px;color:#fff;
   cursor:pointer;font-weight:800;letter-spacing:.08em
 }
 .oly-mobile-menu>summary::-webkit-details-marker{display:none}
 .oly-mobile-menu[open]>summary{border-color:#d0ae59}
 .oly-mobile-menu[open] .menu-bars i:nth-child(1){transform:translateY(8px) rotate(45deg)}
 .oly-mobile-menu[open] .menu-bars i:nth-child(2){opacity:0}
 .oly-mobile-menu[open] .menu-bars i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
 .oly-mobile-menu-panel{
   position:fixed;top:var(--site-header-height,82px);left:0;right:0;bottom:0;
   z-index:99998;background:#071925;padding:20px 18px max(34px,env(safe-area-inset-bottom));
   overflow-y:auto;display:grid;align-content:start;gap:10px
 }
 .oly-mobile-menu-panel>a,.mobile-products-native>summary{
   min-height:54px;display:flex;align-items:center;padding:13px 16px;
   border:1px solid #334651;background:#0a1f2d;color:#fff;font-weight:800
 }
 .mobile-products-native>summary{list-style:none;color:#d8b75c;border-color:#8e773d}
 .mobile-products-native>summary::-webkit-details-marker{display:none}
 .mobile-products-native-panel{padding:8px 0;display:grid;gap:8px}
 .mobile-products-native-panel>details{border:1px solid #263d49;background:#091c29}
 .mobile-products-native-panel>details>summary{list-style:none;padding:13px 14px;color:#fff;font-weight:700}
 .mobile-products-native-panel>details>summary::-webkit-details-marker{display:none}
 .mobile-products-native-panel>details>div{display:grid;padding:0 12px 12px}
 .mobile-products-native-panel a{color:#d9e4e9;padding:10px 4px;border-bottom:1px solid #203640}
 .mobile-rfq-strong{background:#d0ae59!important;color:#071925!important;border-color:#d0ae59!important}
 .nav-lang-mobile{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
 .nav-lang-mobile a{min-height:48px;display:grid;place-items:center;background:#0a1f2d;color:#fff;border:1px solid #334651;font-weight:800}
 .nav-lang-mobile a.active{background:#d0ae59;color:#071925}
 body:has(.oly-mobile-menu[open]){overflow:hidden}
}
.v72-primary-card,.v72-quick-rfq,.v72-checklist{box-shadow:none!important}
.v72-primary-card h3{font-size:20px!important}
.v72-primary-card .technical-parameter-list li{font-size:14px!important}
.v72-related .catalog-link-grid a{background:#fff!important}
.catalog-product-section{padding-top:34px!important}
@media(max-width:680px){
 .site-header{min-height:82px!important}
 .header-inner{min-height:82px!important}
 .logo img{max-width:255px!important;width:100%!important}
 .oly-mobile-menu>summary{min-height:52px;padding:0 14px}
 .v68-catalog-hero{padding-top:calc(var(--site-header-height,82px) + 26px)!important}
 .v68-catalog-hero h1{font-size:clamp(32px,9vw,40px)!important;max-width:15ch!important}
 .v72-primary-card,.v72-quick-rfq,.v72-checklist{padding:20px!important}
 .v72-scope-copy{font-size:15.5px!important}
 .v72-primary-card .technical-parameter-list li{font-size:13.5px!important;padding-block:10px!important}
 .v72-related{padding-top:34px!important}
}

/* V74 — production visual hardening */
:focus-visible{outline:3px solid #d3ad55!important;outline-offset:3px!important}
a,button,summary,input,select,textarea{scroll-margin-top:110px}
.v74-category-rfq{margin-top:24px;background:#081e2c;color:#fff;padding:20px 22px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.v74-category-rfq strong{display:block;color:#fff;font-size:18px}.v74-category-rfq p{margin:5px 0 0!important;color:#d5e0e5!important;font-size:12px!important;line-height:1.5!important}
.v74-category-rfq>a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px;background:#d0ae59;color:#071925!important;font-weight:900}
@media(max-width:680px){
 .v74-category-rfq{grid-template-columns:1fr;padding:18px}
 .v74-category-rfq>a{width:100%}
 .catalog-index-head p{font-size:14px!important;line-height:1.55!important}
 .catalog-index-head h2{font-size:28px!important;line-height:1.1!important}
 .catalog-link-grid a{font-size:14px!important}
}

/* V75 — mobile/iPad header + RFQ context repair */
@media(max-width:1180px){
 .oly-mobile-menu>summary{
   min-width:142px!important;
   min-height:58px!important;
   justify-content:space-between!important;
   gap:16px!important;
   padding:0 18px!important;
   box-sizing:border-box!important;
 }
 .oly-mobile-menu>summary strong{
   display:block!important;
   flex:0 0 auto!important;
   color:#fff!important;
   font-size:14px!important;
   line-height:1!important;
   font-weight:900!important;
   letter-spacing:.08em!important;
 }
 .oly-mobile-menu .menu-bars{
   display:flex!important;
   width:34px!important;
   min-width:34px!important;
   height:26px!important;
   flex:0 0 34px!important;
   flex-direction:column!important;
   justify-content:space-between!important;
   align-items:stretch!important;
   opacity:1!important;
   visibility:visible!important;
   overflow:visible!important;
 }
 .oly-mobile-menu .menu-bars i{
   display:block!important;
   width:34px!important;
   height:3px!important;
   min-height:3px!important;
   margin:0!important;
   padding:0!important;
   background:#fff!important;
   border:0!important;
   border-radius:2px!important;
   opacity:1!important;
   visibility:visible!important;
   transform-origin:center!important;
   transition:transform .18s ease,opacity .18s ease!important;
 }
 .oly-mobile-menu[open] .menu-bars i:nth-child(1){transform:translateY(11.5px) rotate(45deg)!important}
 .oly-mobile-menu[open] .menu-bars i:nth-child(2){opacity:0!important}
 .oly-mobile-menu[open] .menu-bars i:nth-child(3){transform:translateY(-11.5px) rotate(-45deg)!important}
}
@media(max-width:680px){
 .oly-mobile-menu>summary{min-width:132px!important;min-height:54px!important;padding:0 14px!important;gap:12px!important}
 .oly-mobile-menu .menu-bars,.oly-mobile-menu .menu-bars i{width:31px!important;min-width:31px!important}
 .header-inner{gap:12px!important}
 .logo{min-width:0!important;flex:1 1 auto!important}
 .logo img{max-width:245px!important}
}
@media(max-width:390px){
 .oly-mobile-menu>summary{min-width:116px!important;padding:0 11px!important}
 .oly-mobile-menu>summary strong{font-size:12px!important}
 .oly-mobile-menu .menu-bars,.oly-mobile-menu .menu-bars i{width:27px!important;min-width:27px!important}
 .logo img{max-width:205px!important}
}


/* V84 — final global merge hardening */
:root{--content-max:1180px}
.hero.v66-hero .container{max-width:1120px}
.hero.v66-hero p{max-width:820px}
.hero.v66-hero .brand-statement{max-width:930px}
.v81-evidence-grid article strong{overflow-wrap:anywhere}
.footer-platform-grid a{min-width:0}
@media(max-width:720px){
  .hero.v66-hero h1{max-width:18ch}
  .hero.v66-hero .brand-statement{font-size:15px;line-height:1.55}
  .v66-route-grid>a{min-height:112px}
}

/* =========================================================
   V88 — platform-owned sector architecture + global hero map
   ========================================================= */
.v88-hero{overflow:hidden;position:relative}
.v88-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:center;gap:38px;min-height:620px}
.v88-hero-copy{position:relative;z-index:2}
.v88-hero-copy h1{max-width:15ch!important}
.v88-world{position:relative;min-height:500px;display:flex;align-items:center;justify-content:center;isolation:isolate}
.v88-world:before{content:"";position:absolute;inset:8% 0;background:radial-gradient(circle at 50% 48%,rgba(202,168,80,.14),transparent 66%);filter:blur(10px);z-index:-1}
.v88-world img{width:min(100%,650px);height:auto;display:block;opacity:.96;filter:drop-shadow(0 22px 45px rgba(0,0,0,.16))}
.v88-world-orbit{position:absolute;border:1px solid rgba(214,181,99,.14);border-radius:50%;pointer-events:none}
.v88-world-orbit.orbit-a{width:88%;height:54%;transform:rotate(-8deg)}
.v88-world-orbit.orbit-b{width:70%;height:72%;transform:rotate(18deg)}

.v88-platform-sector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px}
.v88-platform-sector-card{border:1px solid #dcd6ca;background:#fff;min-width:0;box-shadow:0 8px 30px rgba(10,30,44,.035);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.v88-platform-sector-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(10,30,44,.075);border-color:#c9b98f}
.v88-platform-head{display:grid;grid-template-columns:auto minmax(120px,180px) 1fr auto;align-items:center;gap:16px;padding:22px 24px;background:#0c2638;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.12)}
.v88-platform-head:hover{color:#fff!important}
.v88-platform-head img{display:block;max-width:150px;max-height:34px;width:auto;height:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.98}
.v88-platform-head strong{font-size:16px;letter-spacing:.035em;color:#fff}
.v88-platform-head i{font-style:normal;color:#d7b762;font-size:20px}
.v88-platform-number{font-family:Georgia,serif;color:#d7b762;font-size:20px}
.v88-sector-under{display:block;padding:24px 24px 26px;color:#0c2638!important;min-height:190px;position:relative}
.v88-sector-under>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#9a7b3e;margin-bottom:8px}
.v88-sector-under h3{font-size:22px;line-height:1.2;margin:0 0 10px;color:#0c2638}
.v88-sector-under p{font-size:13px;line-height:1.65;color:#66717a;margin:0 0 30px;max-width:58ch}
.v88-sector-under b{position:absolute;left:24px;bottom:22px;font-size:12px;font-weight:700;color:#0c2638}
[dir="rtl"] .v88-sector-under b{left:auto;right:24px}

.v88-mega-platform-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.16);margin-top:18px}
.v88-mega-platform{padding:18px 18px 14px;border-right:1px solid rgba(255,255,255,.12);min-width:0}
.v88-mega-platform:last-child{border-right:0}
.v88-mega-platform-brand{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;gap:4px 8px;align-items:center;padding-bottom:13px;margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.12);color:#fff!important}
.v88-mega-platform-brand img{grid-column:1;max-width:120px;max-height:27px;width:auto;height:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.95}
.v88-mega-platform-brand strong{grid-column:1;font-size:12px;letter-spacing:.04em;color:#fff}
.v88-mega-platform-brand span{grid-column:2;grid-row:1/3;color:#d6b563}
.v88-mega-category{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px!important;font-weight:700!important;color:#d6b563!important;margin-bottom:10px}
.v88-mega-category span{font-size:16px}
.v88-mega-platform .mega-links{display:flex;flex-direction:column;gap:2px}
.v88-mega-platform .mega-links a{font-size:11px!important;line-height:1.25!important;padding:4px 0!important;color:rgba(255,255,255,.78)!important}
.v88-mega-platform .mega-links a:hover{color:#fff!important}

.v88-mobile-platforms{display:flex;flex-direction:column;gap:8px;padding-top:8px}
.v88-mobile-platform{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.03)}
.v88-mobile-platform>summary{display:flex!important;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px 15px!important;cursor:pointer}
.v88-mobile-platform>summary span{font-weight:800;letter-spacing:.03em}
.v88-mobile-platform>summary small{font-size:11px;opacity:.72;text-align:right;max-width:52%}
[dir="rtl"] .v88-mobile-platform>summary small{text-align:left}
.v88-mobile-platform-body{display:flex!important;flex-direction:column;padding:4px 15px 14px!important;border-top:1px solid rgba(255,255,255,.1)}
.v88-mobile-platform-body a{padding:7px 0!important;font-size:13px!important}
.v88-mobile-brand-site{color:#d6b563!important;font-weight:700!important}

.v88-catalog-platform-grid{display:grid;grid-template-columns:1fr;gap:22px}
.v88-catalog-platform{overflow:hidden;border:1px solid #ded8cc;background:#fff}
.v88-catalog-brand{background:#0c2638;padding:17px 22px}
.v88-catalog-brand a{display:flex;align-items:center;gap:14px;color:#fff!important}
.v88-catalog-brand img{max-width:145px;max-height:31px;width:auto;height:auto;object-fit:contain;filter:brightness(0) invert(1)}
.v88-catalog-brand strong{font-size:14px;letter-spacing:.04em;color:#fff}
.v88-catalog-brand span{margin-left:auto;color:#d6b563}
[dir="rtl"] .v88-catalog-brand span{margin-left:0;margin-right:auto}
.v88-catalog-platform .catalog-index-head{padding-top:24px}

@media(max-width:1100px){
 .v88-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:18px}
 .v88-world{min-height:420px}
 .v88-mega-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v88-mega-platform:nth-child(2){border-right:0}
 .v88-mega-platform:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}
}
@media(max-width:900px){
 .v88-hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:54px;padding-bottom:32px}
 .v88-world{min-height:280px;margin-top:-10px;opacity:.72}
 .v88-world img{max-width:610px}
 .v88-platform-sector-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
 .v88-world{min-height:220px;margin-inline:-28px}
 .v88-platform-head{grid-template-columns:auto minmax(95px,145px) 1fr auto;padding:18px 16px;gap:10px}
 .v88-platform-head img{max-width:118px;max-height:28px}
 .v88-platform-head strong{font-size:13px}
 .v88-sector-under{padding:20px 16px 24px;min-height:176px}
 .v88-sector-under h3{font-size:20px}
 .v88-sector-under b{left:16px;bottom:18px}
 [dir="rtl"] .v88-sector-under b{left:auto;right:16px}
}

/* =========================================================
   V89 — spacing, global visual and compact mega-menu polish
   ========================================================= */
/* Give the first content line more breathing room below the navigation. */
.v88-hero-grid{padding-top:84px!important;padding-bottom:82px!important;min-height:650px}
.resource-page-hero{padding-top:clamp(132px,13vw,178px)!important;padding-bottom:58px!important}
.v66-form-page>.section:first-child,.catalog-main>.section:first-child{padding-top:clamp(118px,11vw,154px)!important}

/* Replace the literal map treatment with a restrained global network globe. */
.v88-world{min-height:520px;justify-content:flex-end;padding-right:10px;opacity:.9}
.v88-world:before{inset:12% 2% 10% 8%;background:radial-gradient(circle at 55% 50%,rgba(202,168,80,.08),transparent 68%);filter:blur(18px)}
.v88-world img{width:min(100%,590px);opacity:.68;filter:none}
.v88-world-orbit{display:none!important}

/* Platform-owned sector blocks: stronger visual hierarchy, less empty space. */
.v88-platform-sector-grid{gap:20px;margin-top:34px}
.v88-platform-head{padding:24px 26px;min-height:78px}
.v88-sector-under{min-height:172px;padding:22px 26px 24px}
.v88-sector-under p{margin-bottom:26px}

/* Mega menu now reads as navigation, not as a full catalogue. */
.products-mega{background:rgba(4,19,31,.985)!important;backdrop-filter:blur(12px)}
.products-mega .products-mega-inner{max-height:min(68vh,610px)!important;overflow:auto!important;padding-top:34px!important;padding-bottom:34px!important}
.mega-heading{padding-bottom:20px!important;margin-bottom:4px!important;align-items:center!important}
.v88-mega-platform-grid{gap:0;border:1px solid rgba(255,255,255,.10)!important;border-top:1px solid rgba(255,255,255,.10)!important;margin-top:14px!important}
.v88-mega-platform{padding:20px 22px 18px!important;min-height:260px}
.v88-mega-platform-brand{min-height:46px;padding-bottom:14px!important;margin-bottom:14px!important;position:relative}
.v88-mega-platform-brand img{max-width:138px!important;max-height:31px!important}
.v88-mega-platform-brand strong{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.v88-mega-category{font-size:13px!important;line-height:1.35!important;margin-bottom:12px!important}
.v88-mega-platform .mega-links{gap:0!important}
.v88-mega-platform .mega-links a{font-size:11.5px!important;line-height:1.35!important;padding:4.5px 0!important}
.v88-mega-platform .mega-links .v89-mega-all{margin-top:7px!important;padding-top:9px!important;border-top:1px solid rgba(255,255,255,.10)!important;color:#d6b563!important;font-weight:800!important}

@media(max-width:1100px){
 .v88-hero-grid{padding-top:68px!important;padding-bottom:62px!important;min-height:auto}
 .v88-world{min-height:390px;padding-right:0;justify-content:center}
 .products-mega .products-mega-inner{max-height:72vh!important}
 .v88-mega-platform{min-height:236px}
}
@media(max-width:900px){
 .v88-hero-grid{padding-top:56px!important;padding-bottom:44px!important}
 .v88-world{min-height:260px;margin-top:4px;opacity:.62}
 .v88-world img{max-width:520px}
 .resource-page-hero{padding-top:112px!important;padding-bottom:46px!important}
}
@media(max-width:620px){
 .v88-world{min-height:205px;margin-inline:-20px;opacity:.52}
 .v88-platform-head{padding:18px 16px;min-height:68px}
 .v88-sector-under{min-height:160px}
}

/* =========================================================
   V90 — final layout system, clean hero, platform branding
   ========================================================= */
:root{
  --v90-inner-gap-desktop: 92px;
  --v90-inner-gap-tablet: 72px;
  --v90-inner-gap-mobile: 48px;
}

/* Home hero: remove decorative globe/map and use intentional negative space. */
.v90-hero-clean{position:relative;isolation:isolate;overflow:hidden}
.v90-hero-clean:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(118deg,transparent 0 63%,rgba(255,255,255,.025) 63.2%,transparent 63.45%),
    linear-gradient(118deg,transparent 0 72%,rgba(211,173,85,.035) 72.15%,transparent 72.35%);
}
.v90-hero-clean .v88-hero-grid{
  position:relative;
  z-index:1;
  display:block!important;
  min-height:650px;
  padding-top:92px!important;
  padding-bottom:92px!important;
}
.v90-hero-clean .v88-hero-copy{max-width:900px}
.v90-hero-clean .v88-hero-copy h1{max-width:14.5ch!important}
.v90-hero-clean .v88-world{display:none!important}

/* One consistent top-spacing system for every internal page hero. */
.v90-inner-hero{
  padding-top:calc(var(--site-header-height,86px) + var(--v90-inner-gap-desktop))!important;
  padding-bottom:64px!important;
}
.v90-inner-hero>.container{max-width:1180px}
.v90-inner-hero .kicker{margin-bottom:14px!important}
.v90-inner-hero h1{
  margin-top:0!important;
  margin-bottom:20px!important;
  max-width:980px!important;
  text-wrap:balance;
}
.v90-inner-hero .lead{margin-top:0!important;max-width:820px!important;line-height:1.62!important}
.v90-inner-hero .v67-resource-tabs{margin-top:30px!important}

/* RFQ: keep the form visually separate from the hero. */
.v66-form-page .v90-inner-hero + .section{padding-top:58px!important}
.v66-form-steps{margin-bottom:30px!important}
.v66-rfq-form,.v66-supplier-form{margin-top:0!important}

/* Catalogue/category/product heroes use the same breathing-space principle. */
.v90-catalog-hero{
  padding-top:calc(var(--site-header-height,86px) + 72px)!important;
  padding-bottom:68px!important;
}
.v90-catalog-hero .breadcrumbs{margin-bottom:24px!important}

/* Wordmark is the brand name: never print the same brand a second time beside it. */
.v88-platform-head{grid-template-columns:auto minmax(120px,180px) 1fr!important}
.v88-platform-head strong,
.v88-catalog-brand strong,
.v88-mega-platform-brand strong{display:none!important}
.v88-platform-head i{justify-self:end}
.v88-catalog-brand a,.v88-mega-platform-brand{min-width:0}
.v88-catalog-brand img{max-width:170px!important;max-height:34px!important}
.v88-catalog-brand span{margin-left:auto}
[dir="rtl"] .v88-catalog-brand span{margin-left:0;margin-right:auto}

/* Compact, premium mega menu: four clear platform columns, no catalogue wall. */
.products-mega .products-mega-inner{
  max-height:min(66vh,570px)!important;
  padding-top:30px!important;
  padding-bottom:30px!important;
}
.v88-mega-platform{padding:18px 20px 16px!important;min-height:238px!important}
.v88-mega-platform-brand{grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto!important;min-height:42px!important}
.v88-mega-platform-brand img{grid-column:1!important;max-width:144px!important;max-height:30px!important}
.v88-mega-platform-brand span{grid-column:2!important;grid-row:1!important}
.v88-mega-category{margin-bottom:10px!important}
.v88-mega-platform .mega-links a{padding:4px 0!important;font-size:11px!important}

/* Resource page section rhythm. */
.v67-resource-page>.section:not(:first-child){padding-top:66px!important;padding-bottom:66px!important}
.v67-resource-page .section-head-inline{margin-bottom:28px!important}

@media(max-width:1100px){
  .v90-hero-clean .v88-hero-grid{min-height:auto;padding-top:76px!important;padding-bottom:76px!important}
  .v90-inner-hero{padding-top:calc(var(--site-header-height,86px) + var(--v90-inner-gap-tablet))!important;padding-bottom:54px!important}
  .v90-catalog-hero{padding-top:calc(var(--site-header-height,86px) + 60px)!important;padding-bottom:56px!important}
}
@media(max-width:700px){
  .v90-hero-clean .v88-hero-grid{padding-top:58px!important;padding-bottom:60px!important}
  .v90-hero-clean .v88-hero-copy h1{max-width:100%!important}
  .v90-inner-hero{padding-top:calc(var(--site-header-height,82px) + var(--v90-inner-gap-mobile))!important;padding-bottom:42px!important}
  .v90-inner-hero h1{font-size:clamp(34px,10vw,46px)!important;line-height:1.04!important;max-width:100%!important}
  .v90-inner-hero .lead{font-size:16px!important;line-height:1.58!important}
  .v90-inner-hero .v67-resource-tabs{margin-top:24px!important}
  .v66-form-page .v90-inner-hero + .section{padding-top:38px!important}
  .v90-catalog-hero{padding-top:calc(var(--site-header-height,82px) + 46px)!important;padding-bottom:46px!important}
  .v88-platform-head{grid-template-columns:auto minmax(105px,145px) 1fr!important}
  .v88-catalog-brand img{max-width:145px!important}
  .v67-resource-page>.section:not(:first-child){padding-top:50px!important;padding-bottom:50px!important}
}

/* =========================================================
   V92 — global rhythm + repetition cleanup
   ========================================================= */
:root{
  --v92-section-y:72px;
  --v92-section-y-compact:56px;
  --v92-content-max:1180px;
}

/* One visual width and one vertical rhythm across the public site. */
main .section>.container,
.v66-routes>.container,
.v66-project>.container{max-width:var(--v92-content-max)!important}
.home-main .section{padding-top:var(--v92-section-y)!important;padding-bottom:var(--v92-section-y)!important}
.home-main .v66-routes{padding-top:0!important;padding-bottom:0!important}
.home-main .v66-project{padding-top:58px!important;padding-bottom:58px!important}

/* Procurement process: no oversized empty half-screen. */
.v91-process .v80-section-head{display:grid!important;grid-template-columns:minmax(0,.82fr) minmax(320px,1.18fr)!important;gap:64px!important;align-items:end!important;margin-bottom:34px!important}
.v91-process .v80-section-head h2{font-size:clamp(38px,4.5vw,66px)!important;line-height:.98!important;max-width:12ch!important;margin:0!important}
.v91-process .v80-section-head .lead{margin:0!important;max-width:600px!important;font-size:17px!important;line-height:1.65!important}
.v91-process .v80-process-grid{margin-top:0!important;grid-template-columns:repeat(5,minmax(0,1fr))!important}
.v91-process .v80-process-grid li{min-height:178px!important;padding:22px 18px!important}
.v91-process .v80-process-grid h3{font-size:14px!important;margin:10px 0 8px!important}
.v91-process .v80-process-grid p{font-size:12.5px!important;line-height:1.5!important;margin:0!important}

/* Products & Sectors is the single primary presentation of the four platforms. */
.v91-products .v88-platform-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
.v91-products .v88-platform-sector-card{height:100%!important;display:flex!important;flex-direction:column!important}
.v91-products .v88-platform-head{min-height:76px!important}
.v91-products .v88-sector-under{flex:1!important;min-height:188px!important}
.v91-products .section-cta{margin-top:26px!important}

/* Services: keep useful capability content, but stop it becoming a second procurement homepage. */
#services{padding-top:64px!important;padding-bottom:64px!important}
#services> .container>h2{font-size:clamp(34px,4vw,54px)!important;line-height:1.02!important;max-width:16ch!important;margin-bottom:14px!important}
#services> .container>.lead{max-width:720px!important;margin-bottom:30px!important}
#services .v66-service-grid{align-items:stretch!important;gap:18px!important}
#services .v66-service-grid .card{height:100%!important;min-height:190px!important;padding:24px!important}

/* RFQ band and corporate sections should feel related, not like different templates. */
.v66-project-grid{gap:48px!important;align-items:center!important}
.v66-project-grid h2{font-size:clamp(34px,4vw,54px)!important;line-height:1.02!important;margin-bottom:14px!important}
#company{padding-top:68px!important;padding-bottom:68px!important}
#company h2{font-size:clamp(34px,4vw,54px)!important;line-height:1.04!important;max-width:19ch!important}

/* Catalogue cards use the same visual proportions as the homepage platform cards. */
.catalog-index-section{padding-top:64px!important;padding-bottom:72px!important}
.v88-catalog-platform-grid{gap:24px!important}
.v88-catalog-platform .catalog-index-head{padding:24px 24px 20px!important}
.v88-catalog-platform .catalog-link-grid{padding-left:24px!important;padding-right:24px!important;padding-bottom:24px!important}

/* Mega menu is navigation only. Four platforms, five key links and View all. */
.products-mega .products-mega-inner{max-width:1180px!important}
.v88-mega-platform-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.v88-mega-platform{min-height:228px!important}

/* Prevent legacy group/architecture blocks from reappearing if old markup is cached or restored. */
.home-main .v80-model,
.home-main .v81-group,
.home-main .group-architecture,
.home-main [data-section="group-architecture"]{display:none!important}

@media(max-width:1000px){
  :root{--v92-section-y:62px}
  .v91-process .v80-section-head{grid-template-columns:1fr!important;gap:22px!important;align-items:start!important}
  .v91-process .v80-section-head h2{max-width:16ch!important}
  .v91-process .v80-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v91-process .v80-process-grid li:last-child{grid-column:1/-1}
  .v88-mega-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  :root{--v92-section-y:48px}
  .home-main .v66-project{padding-top:46px!important;padding-bottom:46px!important}
  .v91-process .v80-section-head h2{font-size:clamp(36px,10vw,48px)!important;max-width:100%!important}
  .v91-process .v80-process-grid{grid-template-columns:1fr!important}
  .v91-process .v80-process-grid li:last-child{grid-column:auto}
  .v91-process .v80-process-grid li{min-height:auto!important}
  .v91-products .v88-platform-sector-grid{grid-template-columns:1fr!important}
  #services .v66-service-grid{grid-template-columns:1fr!important}
  .v66-project-grid{grid-template-columns:1fr!important;gap:26px!important}
}


/* ==========================================================
   V93 — SINGLE SOURCE OF TRUTH FOR HEADER / ANCHOR ALIGNMENT
   ========================================================== */
html{
  scroll-behavior:smooth!important;
  scroll-padding-top:calc(var(--site-header-height,92px) + 24px)!important;
}
main section[id], main div[id], #public-documents, #business-forms, #controlled-documents{
  scroll-margin-top:0!important;
}
@media(max-width:1180px){html{scroll-padding-top:calc(var(--site-header-height,82px) + 18px)!important}}
@media(max-width:600px){html{scroll-padding-top:calc(var(--site-header-height,82px) + 14px)!important}}

/* ==========================================================
   V94 — FINAL INFORMATION ARCHITECTURE CLEANUP
   ========================================================== */
/* The four specialist platforms are presented once in the main Products & Sectors block.
   Footer remains corporate/navigation-only to avoid brand repetition. */
.footer-platforms{display:none!important}
.footer-grid-simplified{margin-bottom:22px!important}

/* Process = how a requirement moves. Services = broader capabilities. */
.v91-process{padding-top:68px!important;padding-bottom:68px!important}
.v91-process .v80-section-head h2{max-width:15ch!important}
#services{background:#f5f4ef!important}
#services .v66-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
#services .v66-service-grid .card{min-height:176px!important}

/* Mobile product navigation must remain a navigation menu, not a full catalogue dump. */
.v94-mobile-view-all{font-weight:700!important;margin-top:6px!important;padding-top:12px!important;border-top:1px solid rgba(255,255,255,.14)!important}

/* Products index: make platform architecture immediately scannable and evenly proportioned. */
.v88-catalog-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
.v88-catalog-platform{height:100%!important}
.v88-catalog-platform .catalog-index-head{min-height:182px!important}
.v88-catalog-platform .catalog-link-grid{align-content:start!important}

@media(max-width:900px){
  #services .v66-service-grid{grid-template-columns:1fr!important}
  .v88-catalog-platform-grid{grid-template-columns:1fr!important}
  .v88-catalog-platform .catalog-index-head{min-height:auto!important}
}


/* ==========================================================
   V95 — NAVIGATION JS RECOVERY + CAPABILITIES GRID LOCK
   ========================================================== */
/* Core Capabilities: deliberate 2x2 composition on desktop/laptop. */
#services .v66-service-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px!important;
  align-items:stretch!important;
}
#services .v66-service-grid .card{
  min-width:0!important;
  width:auto!important;
  height:100%!important;
  min-height:184px!important;
  padding:26px!important;
}
#services .v66-service-grid .card h3{margin-top:0!important;}
@media(max-width:760px){
  #services .v66-service-grid{grid-template-columns:1fr!important;}
  #services .v66-service-grid .card{min-height:auto!important;}
}

/* V96 — visible layout corrections from live QA */
#services .v66-service-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
#services .v66-service-grid>.card{
  width:auto!important;
  min-height:190px!important;
  height:100%!important;
  padding:26px!important;
  display:flex!important;
  flex-direction:column!important;
}
#services .v66-service-grid>.card .text-link{margin-top:auto!important;padding-top:18px!important}

.v66-form-page.v96-supplier-page{padding-top:0!important}
.v96-supplier-hero{padding:calc(var(--site-header-height,86px) + 54px) 0 48px!important}
.v96-supplier-hero .v96-hero-copy{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(300px,.7fr)!important;gap:64px!important;align-items:end!important}
.v96-supplier-hero .kicker{grid-column:1/-1!important}
.v96-supplier-hero h1{font-size:clamp(48px,5.8vw,74px)!important;line-height:.98!important;letter-spacing:-.045em!important;max-width:12ch!important;margin:0!important}
.v96-supplier-hero .lead{font-size:18px!important;line-height:1.55!important;max-width:480px!important;margin:0 0 5px!important}
.v96-supplier-page .v96-form-body{padding:42px 0 72px!important}
.v96-supplier-page .v66-supplier-form{max-width:1040px!important;margin:0 auto!important;padding:32px!important;border:1px solid var(--line)!important;background:#fff!important}
.v96-supplier-page .v66-field-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 26px!important}
.v96-supplier-page .v66-field-grid .wide{grid-column:1/-1!important}
.v96-supplier-page input,.v96-supplier-page select{min-height:50px!important;width:100%!important}
.v96-supplier-page textarea{min-height:130px!important;width:100%!important}

.v67-resource-page.v96-documents-page{padding-top:0!important}
.v96-documents-hero{padding:calc(var(--site-header-height,86px) + 54px) 0 48px!important}
.v96-documents-hero h1{font-size:clamp(50px,5.8vw,74px)!important;line-height:.98!important;letter-spacing:-.045em!important;max-width:10ch!important;margin-bottom:18px!important}
.v96-documents-hero .lead{max-width:720px!important}
.v96-documents-hero .v67-resource-tabs{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:24px!important}
.v96-documents-page>.section:not(:first-child){padding-top:50px!important;padding-bottom:58px!important}
.v96-documents-page .section-head-inline{margin-bottom:22px!important}
.v96-documents-page .resource-full-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.v96-documents-page .document-card{min-height:170px!important;height:100%!important;padding:24px!important;display:flex!important;justify-content:space-between!important;gap:22px!important}

@media(max-width:850px){
 #services .v66-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .v96-supplier-hero .v96-hero-copy{grid-template-columns:1fr!important;gap:18px!important}
 .v96-supplier-hero .kicker{grid-column:auto!important}
 .v96-supplier-page .v66-field-grid,.v96-documents-page .resource-full-list{grid-template-columns:1fr!important}
 .v96-supplier-page .v66-field-grid .wide{grid-column:auto!important}
}
@media(max-width:600px){
 #services .v66-service-grid{grid-template-columns:1fr!important}
 #services .v66-service-grid>.card{min-height:auto!important}
 .v96-supplier-hero,.v96-documents-hero{padding:calc(var(--site-header-height,82px) + 32px) 0 34px!important}
 .v96-supplier-hero h1,.v96-documents-hero h1{font-size:clamp(38px,11vw,52px)!important;max-width:100%!important}
 .v96-supplier-page .v66-supplier-form{padding:20px!important}
}

/* ==========================================================
   V97 — GLOBAL TYPOGRAPHY SYSTEM
   One hierarchy across every page. Long translated titles wrap; they do not scale up.
   ========================================================== */
:root{
  --oly-display:clamp(52px,5.2vw,64px);
  --oly-page-title:clamp(46px,4.6vw,58px);
  --oly-section-title:clamp(34px,3.4vw,44px);
  --oly-subsection-title:clamp(25px,2.2vw,30px);
  --oly-card-title:19px;
  --oly-lead:18px;
  --oly-body:15px;
}

/* Homepage gets one deliberate display level only. */
.hero h1,
html[lang="tr"] .hero h1,
html[lang="ua"] .hero h1,
html[lang="ru"] .hero h1,
html[lang="fr"] .hero h1,
html[lang="ar"] .hero h1{
  font-size:var(--oly-display)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  max-width:14ch!important;
  overflow-wrap:anywhere;
}

/* Every internal-page H1 uses exactly the same scale. */
.v90-inner-hero h1,
.v68-rfq-hero h1,
.v96-supplier-hero h1,
.v96-documents-hero h1,
.catalog-hero h1,
.resource-page-hero h1,
.catalog-main .catalog-hero h1{
  font-size:var(--oly-page-title)!important;
  line-height:1.03!important;
  letter-spacing:-.035em!important;
  max-width:16ch!important;
  text-wrap:balance!important;
  overflow-wrap:anywhere!important;
}
.v96-supplier-hero h1{max-width:13ch!important}
.v96-documents-hero h1{max-width:12ch!important}

/* One section-heading scale across homepage, resources and catalogue. */
.section h2,
#services>.container>h2,
#company h2,
#contact h2,
.v91-process .v80-section-head h2,
.v66-project-grid h2,
.documents-section h2,
.v96-documents-page .section-head-inline h2,
.catalog-related .section-head-inline h2,
.catalog-index-head h2,
.catalog-index-group h2{
  font-size:var(--oly-section-title)!important;
  line-height:1.08!important;
  letter-spacing:-.03em!important;
  text-wrap:balance!important;
}

/* Content/card hierarchy. */
.catalog-content-card h2,.catalog-content-card h3,
.v72-primary-card h3,.v72-checklist h3,
.v66-form-section h2{
  font-size:var(--oly-subsection-title)!important;
  line-height:1.16!important;
}
.card h3,.v66-service-grid .card h3,.v88-sector-under h3,
.document-card h4,.v67-controlled-grid h3{
  font-size:var(--oly-card-title)!important;
  line-height:1.25!important;
}
.lead,.v96-supplier-hero .lead,.v96-documents-hero .lead{
  font-size:var(--oly-lead)!important;
  line-height:1.6!important;
}

@media(max-width:760px){
 :root{
   --oly-display:clamp(38px,10.5vw,46px);
   --oly-page-title:clamp(36px,9.5vw,44px);
   --oly-section-title:clamp(30px,8vw,36px);
   --oly-subsection-title:24px;
   --oly-card-title:18px;
   --oly-lead:16px;
 }
 .hero h1,html[lang] .hero h1,
 .v90-inner-hero h1,.v68-rfq-hero h1,.v96-supplier-hero h1,
 .v96-documents-hero h1,.catalog-hero h1,.resource-page-hero h1{
   max-width:100%!important;
 }
}


/* ==========================================================
   V99 — MOBILE TYPOGRAPHY + RHYTHM MASTER
   Mobile pages must feel like the same design system as desktop.
   ========================================================== */
@media (max-width: 760px){

  /* Compact global mobile header */
  :root{--site-header-height:132px!important}
  .global-header{
    min-height:132px!important;
  }
  .global-header .header-inner,
  .global-header .nav-shell{
    min-height:132px!important;
    padding-top:18px!important;
    padding-bottom:18px!important;
  }
  .global-header .brand img,
  .global-header .site-logo img{
    max-width:220px!important;
    width:min(48vw,220px)!important;
    height:auto!important;
  }
  .mobile-menu-toggle,
  .menu-toggle{
    min-height:52px!important;
    padding:0 14px!important;
    font-size:16px!important;
  }

  /* One authoritative mobile heading scale */
  main h1,
  .v90-inner-hero h1,
  .resource-page-hero h1,
  .v96-supplier-hero h1,
  .catalog-main h1{
    font-size:clamp(38px,10.4vw,48px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  main h2,
  .section h2,
  .section-title,
  .v95-capabilities-title{
    font-size:clamp(30px,8vw,38px)!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }
  main h3,
  .card h3,
  .service-card h3{
    font-size:clamp(21px,5.8vw,27px)!important;
    line-height:1.15!important;
    letter-spacing:-.015em!important;
  }
  main p,
  main li,
  .lead{
    font-size:17px!important;
    line-height:1.55!important;
  }
  .kicker{
    font-size:13px!important;
    line-height:1.3!important;
    letter-spacing:.045em!important;
  }

  /* Inner-page hero rhythm */
  .v90-inner-hero,
  .resource-page-hero,
  .v96-supplier-hero,
  .catalog-hero{
    padding-top:38px!important;
    padding-bottom:40px!important;
  }
  .v96-supplier-hero .v96-hero-copy{
    display:block!important;
  }
  .v96-supplier-hero .lead{
    margin-top:22px!important;
    max-width:34em!important;
  }

  /* Core capabilities: lighter mobile cards */
  .v95-capabilities-grid,
  .services-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .v95-capabilities-grid > *,
  .services-grid > *{
    min-height:0!important;
    padding:24px 22px!important;
  }

  /* Supplier form */
  .v96-supplier-page .v66-supplier-form{
    padding:22px 18px!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .v96-supplier-page .v66-field-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .v96-supplier-page input,
  .v96-supplier-page select{
    min-height:48px!important;
  }

  /* Legal/company identity cards */
  .legal-grid,
  .registration-grid,
  .company-registration-grid{
    grid-template-columns:1fr!important;
  }
  .legal-grid > *,
  .registration-grid > *,
  .company-registration-grid > *{
    min-height:0!important;
    padding:24px 20px!important;
  }

  /* Documents */
  .v96-documents-page .resource-full-list{
    grid-template-columns:1fr!important;
  }

  /* Avoid content hiding behind cookie / browser chrome as much as site can control */
  main{padding-bottom:40px!important}
}

@media (max-width: 420px){
  main h1,
  .v90-inner-hero h1,
  .resource-page-hero h1,
  .v96-supplier-hero h1,
  .catalog-main h1{
    font-size:clamp(36px,10vw,43px)!important;
  }
  main h2,.section h2,.section-title{
    font-size:clamp(29px,8vw,35px)!important;
  }
}

/* ==========================================================
   V100 — MOBILE HEADER / INNER-HERO COLLISION FIX
   Final override: V99 accidentally replaced header-safe padding with 38px.
   ========================================================== */
@media (max-width:760px){
  :root{--site-header-height:82px!important;--header-safe:82px!important}
  .global-header{min-height:82px!important}
  .global-header-inner{
    min-height:82px!important;
    padding-block:12px!important;
  }
  .global-logo{width:min(46vw,190px)!important;flex-basis:min(46vw,190px)!important}
  .global-logo img{max-height:44px!important}
  .global-mobile-menu>summary{min-height:48px!important;padding:0 12px!important}

  /* All internal pages start below the fixed header, never underneath it. */
  #main-content>section:first-child,
  .v90-inner-hero,
  .resource-page-hero,
  .v96-supplier-hero,
  .catalog-hero,
  .v68-rfq-hero,
  .v90-catalog-hero,
  .v68-catalog-hero{
    padding-top:calc(var(--site-header-height) + 34px)!important;
  }
  .v90-inner-hero,
  .resource-page-hero,
  .v96-supplier-hero,
  .catalog-hero{padding-bottom:38px!important}

  /* One compact inner-page H1 scale on phones. */
  .v90-inner-hero h1,
  .resource-page-hero h1,
  .v96-supplier-hero h1,
  .catalog-main h1,
  .v68-rfq-hero h1,
  .v90-catalog-hero h1,
  .v68-catalog-hero h1{
    font-size:clamp(36px,9.6vw,44px)!important;
    line-height:1.03!important;
    letter-spacing:-.035em!important;
    max-width:100%!important;
  }
  .v96-supplier-hero .lead{font-size:17px!important;line-height:1.52!important;margin-top:20px!important}
}
@media(max-width:420px){
  .v90-inner-hero h1,
  .resource-page-hero h1,
  .v96-supplier-hero h1,
  .catalog-main h1,
  .v68-rfq-hero h1{font-size:clamp(34px,9.4vw,40px)!important}
}


/* ==========================================================
   V101 — GLOBAL VISUAL SYSTEM / FINAL MOBILE SCALE
   One authoritative hierarchy for header, logo, page titles and cards.
   ========================================================== */
:root{
  --oly-inner-h1:clamp(44px,4.6vw,58px);
  --oly-section-h2:clamp(34px,3.4vw,46px);
  --oly-card-h3:19px;
}

/* Desktop/tablet inner pages share the same title scale. */
.v90-inner-hero h1,
.resource-page-hero h1,
.v96-supplier-hero h1,
.v68-rfq-hero h1,
.catalog-main>.section:first-child h1,
.v90-catalog-hero h1,
.v68-catalog-hero h1{
  font-size:var(--oly-inner-h1)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  max-width:15ch!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

.section h2,
.section-title,
.v95-capabilities-title{
  font-size:var(--oly-section-h2)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.card h3,.service-card h3,.v95-capabilities-grid h3{
  font-size:var(--oly-card-h3)!important;
  line-height:1.22!important;
}

@media(max-width:760px){
  :root{
    --site-header-height:88px!important;
    --header-safe:88px!important;
    --oly-mobile-page-h1:clamp(34px,8.8vw,40px);
    --oly-mobile-h2:clamp(28px,7.2vw,34px);
    --oly-mobile-h3:21px;
  }

  /* Restore visual authority to the wordmark without enlarging the whole header. */
  .global-header{min-height:88px!important}
  .global-header-inner{
    min-height:88px!important;
    padding-block:10px!important;
    gap:12px!important;
  }
  .global-logo{
    width:min(52vw,215px)!important;
    max-width:215px!important;
    flex:0 1 min(52vw,215px)!important;
  }
  .global-logo img{
    width:100%!important;
    max-height:52px!important;
    object-fit:contain!important;
  }
  .global-mobile-menu>summary{
    min-height:48px!important;
    padding:0 12px!important;
    font-size:15px!important;
  }

  /* Every internal page starts at the same safe line below the fixed header. */
  #main-content>section:first-child,
  .v90-inner-hero,
  .resource-page-hero,
  .v96-supplier-hero,
  .catalog-hero,
  .v68-rfq-hero,
  .v90-catalog-hero,
  .v68-catalog-hero{
    padding-top:calc(var(--site-header-height) + 26px)!important;
    padding-bottom:34px!important;
  }

  /* One mobile page-title scale across Supplier, RFQ, Documents, Products and legal pages. */
  main h1,
  .v90-inner-hero h1,
  .resource-page-hero h1,
  .v96-supplier-hero h1,
  .catalog-main h1,
  .v68-rfq-hero h1,
  .v90-catalog-hero h1,
  .v68-catalog-hero h1{
    font-size:var(--oly-mobile-page-h1)!important;
    line-height:1.04!important;
    letter-spacing:-.032em!important;
    max-width:100%!important;
  }

  /* Homepage display remains one step above inner-page titles. */
  .hero h1,html[lang] .hero h1{
    font-size:clamp(38px,10vw,46px)!important;
    line-height:1.08!important;
  }

  main h2,.section h2,.section-title,.v95-capabilities-title{
    font-size:var(--oly-mobile-h2)!important;
    line-height:1.1!important;
  }
  main h3,.card h3,.service-card h3,.v95-capabilities-grid h3{
    font-size:var(--oly-mobile-h3)!important;
    line-height:1.18!important;
  }
  main p,main li,.lead{
    font-size:16px!important;
    line-height:1.55!important;
  }
  .kicker{
    font-size:12px!important;
    line-height:1.35!important;
    letter-spacing:.04em!important;
  }

  /* Supplier hero: same title scale as every other internal page. */
  .v96-supplier-hero .v96-hero-copy{display:block!important}
  .v96-supplier-hero .lead{
    margin-top:18px!important;
    max-width:34em!important;
  }

  /* Cards use one density system on phones. */
  .v95-capabilities-grid>*,
  .services-grid>*,
  .legal-grid>*,
  .registration-grid>*,
  .company-registration-grid>*{
    min-height:0!important;
    padding:22px 20px!important;
  }
}

@media(max-width:420px){
  .global-logo{width:min(53vw,210px)!important;max-width:210px!important}
  main h1,
  .v90-inner-hero h1,
  .resource-page-hero h1,
  .v96-supplier-hero h1,
  .catalog-main h1,
  .v68-rfq-hero h1{
    font-size:clamp(33px,8.6vw,38px)!important;
  }
}

/* ==========================================================
   V102 — SUPPLIER HERO FINAL SCALE
   Supplier/manufacturer application has a deliberately quieter title than
   other internal pages because the phrase is long in all six languages.
   ========================================================== */
.v96-supplier-hero h1{
  font-size:clamp(40px,4.15vw,48px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  max-width:15ch!important;
  text-wrap:balance!important;
}
.v96-supplier-hero .lead{
  font-size:17px!important;
  line-height:1.5!important;
}
@media(max-width:760px){
  .v96-supplier-hero h1{
    font-size:clamp(34px,8.8vw,38px)!important;
    line-height:1.04!important;
    letter-spacing:-.03em!important;
    max-width:100%!important;
    text-wrap:balance!important;
  }
  .v96-supplier-hero .lead{
    font-size:16px!important;
    line-height:1.5!important;
    margin-top:16px!important;
  }
}
@media(max-width:420px){
  .v96-supplier-hero h1{font-size:34px!important}
}

/* V104 — Supplier title definitive reduction */
.v96-supplier-hero h1,
.v96-supplier-page .v96-supplier-hero h1,
main.v96-supplier-page .v96-supplier-hero h1{
  font-size:40px!important;
  line-height:1.04!important;
  letter-spacing:-.025em!important;
  max-width:760px!important;
  width:auto!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
@media(max-width:850px){
  .v96-supplier-hero h1,
  .v96-supplier-page .v96-supplier-hero h1,
  main.v96-supplier-page .v96-supplier-hero h1{
    font-size:36px!important;
    max-width:680px!important;
  }
}
@media(max-width:600px){
  .v96-supplier-hero h1,
  .v96-supplier-page .v96-supplier-hero h1,
  main.v96-supplier-page .v96-supplier-hero h1{
    font-size:32px!important;
    line-height:1.06!important;
    letter-spacing:-.02em!important;
    max-width:100%!important;
  }
}

/* V105 — SUPPLIER TITLE: SINGLE AUTHORITATIVE SCALE */
main.v96-supplier-page section.v96-supplier-hero h1{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.018em!important;
  max-width:720px!important;
  width:auto!important;
  text-wrap:balance!important;
}
main.v96-supplier-page section.v96-supplier-hero .lead{
  font-size:16px!important;
  line-height:1.5!important;
  max-width:560px!important;
}
@media(max-width:850px){
  main.v96-supplier-page section.v96-supplier-hero h1{
    font-size:29px!important;
    line-height:1.08!important;
    max-width:100%!important;
  }
}
@media(max-width:600px){
  main.v96-supplier-page section.v96-supplier-hero h1{
    font-size:28px!important;
    line-height:1.1!important;
    letter-spacing:-.012em!important;
  }
}

/* ==========================================================
   V106 — GLOBAL TYPOGRAPHY SYSTEM
   One typeface stack, one readable body size and one deliberate hierarchy
   across the six language surfaces. This block is intentionally last so
   it remains authoritative over historical theme overrides.
   ========================================================== */
:root{
  --olyvenra-font-family:Inter,"Noto Sans","Noto Sans Arabic","Segoe UI","Helvetica Neue",Arial,sans-serif;
  --olyvenra-body-size:16px;
  --olyvenra-body-leading:1.6;
  --olyvenra-page-title:clamp(38px,4.2vw,54px);
  --olyvenra-section-title:clamp(30px,3.2vw,42px);
  --olyvenra-subsection-title:24px;
  --olyvenra-card-title:19px;
}

body,
body h1,body h2,body h3,body h4,body h5,body h6,
body p,body li,body a,body button,body input,body select,body textarea,
body label,body summary,body small{
  font-family:var(--olyvenra-font-family)!important;
}
body{
  font-size:var(--olyvenra-body-size)!important;
  line-height:var(--olyvenra-body-leading)!important;
  text-rendering:optimizeLegibility;
}
body main p,body main li,body main .lead,body main .text-link,
body main .v83-product-intro,body main .v83-category-context p,
body main .v67-resource-page .document-card p,
body main .catalog-hero-lead,body main .v81-evidence-grid strong,
body.home #services .v66-service-grid .card p,
body main .v91-products .v88-sector-under p{
  font-size:16px!important;
  line-height:1.6!important;
}

body main h1,
body main .v90-inner-hero h1,
body main .resource-page-hero h1,
body main .catalog-main>.section:first-child h1,
body main .v66-form-page>.section:first-child h1,
body main .v68-rfq-hero h1,
body main .v96-documents-hero h1{
  font-size:var(--olyvenra-page-title)!important;
  line-height:1.08!important;
  letter-spacing:-.024em!important;
  font-weight:700!important;
  max-width:18ch!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance!important;
}
body.home main h1,
body main .v90-hero-clean h1{
  font-size:clamp(42px,4.8vw,62px)!important;
  line-height:1.06!important;
  max-width:16ch!important;
}
body main h2,
body main .v80-section-head h2,
body.home #company h2,body.home #documents h2,body.home #contact h2,
body.home .v66-project h2{
  font-size:var(--olyvenra-section-title)!important;
  line-height:1.12!important;
  letter-spacing:-.018em!important;
  font-weight:700!important;
  text-wrap:balance!important;
}
body main h3,body main h4,
body main .card h3,body main .document-card h4,
body main .v88-sector-under h3,body main .v66-service-grid .card h3{
  font-size:var(--olyvenra-card-title)!important;
  line-height:1.28!important;
  letter-spacing:-.01em!important;
  font-weight:700!important;
}
body main h5,body main h6{font-size:var(--olyvenra-subsection-title)!important;line-height:1.3!important}

body main label,body main .kicker,body main .catalog-label,
body main .doc-pill,body main .v66-form-steps span,
body main .v81-evidence-grid article>span,
body main .v66-trust-grid span,body main .v66-trust-actions a,
body main .catalog-index-head>a,body main .v81-evidence-grid a{
  font-size:14px!important;
  line-height:1.45!important;
}
body main .kicker,body main .catalog-label,body main .doc-pill{
  letter-spacing:.055em!important;
}
body main small,body main .meta,body main .fine-print,body main .form-note{
  font-size:13px!important;
  line-height:1.5!important;
}
body button,body input,body select,body textarea,
body .btn,body .global-nav button{
  font-size:16px!important;
  line-height:1.45!important;
}
body main .text-link,body main .v66-trust-actions a{font-weight:600!important}

/* The supplier title is deliberately compact because it is a long
   application phrase in every supported language; its lead remains 16px. */
body main.v96-supplier-page section.v96-supplier-hero h1{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.018em!important;
  max-width:720px!important;
  width:auto!important;
  text-wrap:balance!important;
}
body main.v96-supplier-page section.v96-supplier-hero .lead{
  font-size:16px!important;
  line-height:1.5!important;
  max-width:560px!important;
}
@media(max-width:760px){
  body main h1,
  body main .v90-inner-hero h1,
  body main .resource-page-hero h1,
  body main .catalog-main>.section:first-child h1,
  body main .v66-form-page>.section:first-child h1,
  body main .v68-rfq-hero h1,
  body main .v96-documents-hero h1{
    font-size:clamp(34px,9vw,46px)!important;
    max-width:100%!important;
  }
  body.home main h1,body main .v90-hero-clean h1{font-size:clamp(38px,10vw,52px)!important}
  body main.v96-supplier-page section.v96-supplier-hero h1{font-size:30px!important;max-width:100%!important}
}
@media(max-width:420px){
  body main h1,body.home main h1,body main .v90-hero-clean h1{font-size:clamp(32px,10vw,40px)!important}
  body main.v96-supplier-page section.v96-supplier-hero h1{font-size:28px!important}
}

/* ==========================================================
   V107 — FINAL CASCADE REPAIR
   The V106 supplier rule could still lose to the generic
   .v66-form-page/.v90-inner-hero !important selectors. These
   high-specificity rules are the final source for the rendered site.
   ========================================================== */
html body,html body *{
  font-family:Inter,"Noto Sans","Noto Sans Arabic","Segoe UI","Helvetica Neue",Arial,sans-serif!important;
}
html body main#main-content.v66-form-page.v96-supplier-page>section.v96-supplier-hero .v96-hero-copy{
  row-gap:22px!important;
  column-gap:56px!important;
  align-items:end!important;
}
html body main#main-content.v66-form-page.v96-supplier-page>section.v96-supplier-hero h1{
  font-size:30px!important;
  line-height:1.08!important;
  letter-spacing:-.018em!important;
  max-width:720px!important;
  width:auto!important;
  margin:0!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance!important;
}
html body main#main-content.v66-form-page.v96-supplier-page>section.v96-supplier-hero .lead{
  font-size:16px!important;
  line-height:1.5!important;
  max-width:560px!important;
  margin:0!important;
}
html body main#main-content.v66-form-page.v96-supplier-page .v96-form-body{
  padding-top:40px!important;
  padding-bottom:64px!important;
}
html body main#main-content.v66-form-page.v96-supplier-page .v66-supplier-form{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:1040px!important;
  margin:0 auto!important;
  padding:32px!important;
}
html body main#main-content.v66-form-page.v96-supplier-page .v66-field-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:20px 24px!important;
  align-items:start!important;
}
html body main#main-content.v66-form-page.v96-supplier-page .v66-field-grid>label{
  min-width:0!important;
  font-size:14px!important;
  line-height:1.45!important;
}
html body main#main-content.v66-form-page.v96-supplier-page .v66-field-grid>label.wide{grid-column:1/-1!important}
html body main#main-content.v66-form-page.v96-supplier-page input,
html body main#main-content.v66-form-page.v96-supplier-page select,
html body main#main-content.v66-form-page.v96-supplier-page textarea{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  font-size:16px!important;
  line-height:1.45!important;
}
html body main#main-content.v66-form-page.v96-supplier-page input,
html body main#main-content.v66-form-page.v96-supplier-page select{min-height:52px!important}
html body main#main-content.v66-form-page.v96-supplier-page textarea{min-height:140px!important;resize:vertical!important}
html body main#main-content.v66-form-page.v96-supplier-page .v66-supplier-form>button{
  min-height:50px!important;
  margin-top:4px!important;
  padding:13px 22px!important;
  font-size:16px!important;
  line-height:1.45!important;
}
@media(max-width:850px){
  html body main#main-content.v66-form-page.v96-supplier-page>section.v96-supplier-hero .v96-hero-copy{grid-template-columns:1fr!important;row-gap:18px!important}
  html body main#main-content.v66-form-page.v96-supplier-page .v66-field-grid{grid-template-columns:1fr!important}
  html body main#main-content.v66-form-page.v96-supplier-page .v66-field-grid>label.wide{grid-column:auto!important}
}
@media(max-width:600px){
  html body main#main-content.v66-form-page.v96-supplier-page>section.v96-supplier-hero h1{font-size:28px!important;max-width:100%!important}
  html body main#main-content.v66-form-page.v96-supplier-page>section.v96-supplier-hero .lead{font-size:16px!important}
  html body main#main-content.v66-form-page.v96-supplier-page .v66-supplier-form{padding:22px 18px!important}
}
