:root {

  --ink: #06111f;

  --ink2: #0b1d32;

  --panel: #10243b;

  --text: #eef7ff;

  --muted: #9eb2c8;

  --body: #f4f7fb;

  --card: #fff;

  --line: #dbe6f1;

  --blue: #2f9dff;

  --green: #2dd4bf;

  --amber: #f3bd4f;

  --shadow: 0 24px 70px rgba(6,17,31,.16);

  --r: 24px;

  --rl: 34px;

  --max: 1200px;

}

* {

  box-sizing: border-box;

}

html {

  scroll-behavior: smooth;

}

body {

  margin: 0;

  font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Noto Sans",sans-serif;

  background: var(--body);

  color: #132238;

  line-height: 1.62;

  overflow-x: hidden;

}

body[dir="rtl"] {

  font-family: Tahoma,Arial,"Noto Sans Arabic",sans-serif;

}

a {

  color: inherit;

  text-decoration: none;

}

button,input,select,textarea {

  font: inherit;

}

.container {

  width: min(var(--max),calc(100% - 40px));

  margin: auto;

}

.skip {

  position: absolute;

  left: -999px;

}

.skip:focus {

  left: 16px;

  top: 16px;

  z-index: 99;

  background: white;

  color: #111;

  padding: 10px;

  border-radius: 10px;

}

.site-header {

  position: sticky;

  top: 0;

  z-index: 80;

  background: rgba(6,17,31,.86);

  border-bottom: 1px solid rgba(255,255,255,.1);

  backdrop-filter: blur(18px);

}

.nav {

  min-height: 76px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 20px;

}

.brand {

  display: inline-flex;

  align-items: center;

  gap: 12px;

  color: #fff;

  font-weight: 950;

  letter-spacing: -.035em;

  white-space: nowrap;

}

.brand-mark {

  width: 42px;

  height: 42px;

  border-radius: 14px;

  background: linear-gradient(145deg,var(--green),var(--blue));

  position: relative;

  box-shadow: 0 16px 38px rgba(47,157,255,.28);

}

.brand-mark:before {

  content: "";

  position: absolute;

  width: 20px;

  height: 12px;

  border-left: 4px solid rgba(6,17,31,.88);

  border-bottom: 4px solid rgba(6,17,31,.88);

  transform: skewX(-18deg) rotate(-28deg);

  top: 13px;

  left: 12px;

}

.nav-right {

  display: flex;

  align-items: center;

  gap: 14px;

}

.nav-links {

  display: flex;

  align-items: center;

  gap: 22px;

  color: rgba(238,247,255,.78);

  font-size: 14px;

  font-weight: 800;

}

.nav-links a:hover {

  color: #fff;

}

.lang-select {

  height: 42px;

  min-width: 145px;

  padding: 0 14px;

  border: 1px solid rgba(255,255,255,.16);

  border-radius: 999px;

  color: #fff;

  background: rgba(255,255,255,.08);

  outline: none;

}

.lang-select option {

  color: #07111f;

  background: #fff;

}

.nav-cta {

  min-height: 42px;

  padding: 0 16px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  border-radius: 999px;

  background: #fff;

  color: #06111f;

  font-weight: 950;

  font-size: 14px;

}

.menu-btn {

  display: none;

  border: 1px solid rgba(255,255,255,.16);

  background: rgba(255,255,255,.08);

  color: #fff;

  border-radius: 12px;

  padding: 9px 12px;

  font-weight: 950;

}

.hero {

  color: var(--text);

  background: radial-gradient(circle at 14% 12%,rgba(47,157,255,.24),transparent 34%),radial-gradient(circle at 85% 18%,rgba(45,212,191,.17),transparent 32%),linear-gradient(180deg,#06111f 0%,#0a1a2d 100%);

  padding: 76px 0 86px;

  overflow: hidden;

  position: relative;

}

.hero-layout {

  display: grid;

  grid-template-columns: minmax(0,1.02fr) minmax(400px,.98fr);

  gap: 48px;

  align-items: center;

}

.eyebrow {

  display: inline-flex;

  align-items: center;

  gap: 10px;

  padding: 8px 13px;

  border-radius: 999px;

  border: 1px solid rgba(255,255,255,.16);

  background: rgba(255,255,255,.06);

  color: #bffbf1;

  font-size: 13px;

  font-weight: 950;

  margin-bottom: 22px;

}

.pulse {

  width: 8px;

  height: 8px;

  border-radius: 99px;

  background: var(--green);

  box-shadow: 0 0 0 7px rgba(45,212,191,.14);

  flex: 0 0 auto;

}

h1 {

  margin: 0;

  font-size: clamp(40px,5.35vw,68px);

  line-height: 1;

  letter-spacing: -.065em;

  max-width: 850px;

  overflow-wrap: anywhere;

}

.hero p {

  margin: 24px 0 0;

  max-width: 710px;

  color: var(--muted);

  font-size: 18px;

}

.hero-actions {

  display: flex;

  flex-wrap: wrap;

  gap: 14px;

  margin-top: 34px;

}

.btn {

  min-height: 52px;

  padding: 0 22px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  gap: 10px;

  border-radius: 999px;

  font-weight: 950;

  border: 1px solid transparent;

  cursor: pointer;

  transition: .2s ease;

}

.btn-primary {

  background: linear-gradient(135deg,var(--green),var(--blue));

  color: #06111f;

  box-shadow: 0 18px 48px rgba(47,157,255,.28);

}

.btn-primary:hover,.btn-dark:hover {

  transform: translateY(-2px);

  box-shadow: 0 24px 62px rgba(47,157,255,.26);

}

.btn-ghost {

  color: #fff;

  background: rgba(255,255,255,.07);

  border-color: rgba(255,255,255,.16);

}

.btn-ghost:hover {

  background: rgba(255,255,255,.12);

  transform: translateY(-2px);

}

.proof {

  display: grid;

  grid-template-columns: repeat(4,1fr);

  gap: 12px;

  margin-top: 34px;

  max-width: 780px;

}

.proof span {

  border: 1px solid rgba(255,255,255,.13);

  background: rgba(255,255,255,.06);

  border-radius: 16px;

  padding: 14px;

  font-size: 13px;

  color: #dcecff;

  font-weight: 850;

}

.industrial-panel {

  min-height: 560px;

  border: 1px solid rgba(255,255,255,.14);

  border-radius: var(--rl);

  background: linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.045)),repeating-linear-gradient(90deg,transparent 0,transparent 46px,rgba(255,255,255,.045) 47px),repeating-linear-gradient(0deg,transparent 0,transparent 46px,rgba(255,255,255,.045) 47px);

  box-shadow: 0 30px 90px rgba(0,0,0,.35);

  position: relative;

  overflow: hidden;

  padding: 28px;

  display: flex;

  flex-direction: column;

  gap: 24px;

}

.panel-top {

  display: flex;

  justify-content: space-between;

  gap: 14px;

  align-items: center;

  padding-bottom: 22px;

  border-bottom: 1px solid rgba(255,255,255,.12);

}

.panel-title {

  font-weight: 950;

  letter-spacing: -.03em;

}

.panel-status {

  display: inline-flex;

  align-items: center;

  gap: 8px;

  color: #bffbf1;

  font-size: 13px;

  font-weight: 950;

}

.panel-grid {

  display: grid;

  grid-template-columns: 1fr 1fr;

  gap: 14px;

  margin-top: 0;

}

.mini-card {

  min-height: 126px;

  border-radius: 22px;

  border: 1px solid rgba(255,255,255,.12);

  background: rgba(6,17,31,.58);

  padding: 18px;

  position: relative;

  overflow: hidden;

}

.mini-card:after {

  content: "";

  position: absolute;

  width: 90px;

  height: 90px;

  border-radius: 999px;

  right: -28px;

  bottom: -28px;

  background: radial-gradient(circle,rgba(47,157,255,.22),transparent 68%);

}

.mini-card small {

  display: block;

  color: #9eb2c8;

  font-weight: 850;

}

.mini-card strong {

  display: block;

  font-size: clamp(19px,2vw,24px);

  letter-spacing: -.045em;

  margin-top: 4px;

  overflow-wrap: anywhere;

}

.mini-card span {

  display: block;

  color: #b3c7db;

  font-size: 12px;

  margin-top: 5px;

}

.spec-stack {

  position: static;

  display: grid;

  gap: 12px;

  margin-top: auto;

}

.spec-line {

  display: grid;

  grid-template-columns: 150px 1fr auto;

  gap: 14px;

  align-items: center;

  padding: 14px;

  border-radius: 18px;

  background: rgba(255,255,255,.08);

  border: 1px solid rgba(255,255,255,.12);

}

.spec-label {

  color: #dcecff;

  font-weight: 950;

  font-size: 13px;

}

.bar {

  height: 8px;

  border-radius: 999px;

  background: rgba(255,255,255,.12);

  overflow: hidden;

}

.bar span {

  display: block;

  height: 100%;

  border-radius: 999px;

  background: linear-gradient(90deg,var(--green),var(--blue));

}

.spec-value {

  color: #fff;

  font-weight: 950;

  font-size: 13px;

  white-space: nowrap;

}

.section {

  padding: 88px 0;

}

.section.dark {

  color: var(--text);

  background: radial-gradient(circle at 10% 20%,rgba(47,157,255,.14),transparent 32%),radial-gradient(circle at 90% 0%,rgba(45,212,191,.13),transparent 30%),#06111f;

}

.section-head {

  display: flex;

  justify-content: space-between;

  gap: 28px;

  align-items: flex-end;

  margin-bottom: 36px;

}

.kicker {

  color: #087d77;

  font-size: 12px;

  text-transform: uppercase;

  letter-spacing: .15em;

  font-weight: 1000;

  margin-bottom: 10px;

}

.dark .kicker {

  color: #86fff0;

}

h2 {

  margin: 0;

  font-size: clamp(30px,3.75vw,48px);

  line-height: 1.06;

  letter-spacing: -.05em;

  max-width: 800px;

  overflow-wrap: anywhere;

}

.section-sub {

  margin: 0;

  max-width: 500px;

  color: #617188;

  font-size: 16px;

}

.dark .section-sub {

  color: var(--muted);

}

.grid-4 {

  display: grid;

  grid-template-columns: repeat(4,1fr);

  gap: 18px;

}

.grid-3 {

  display: grid;

  grid-template-columns: repeat(3,1fr);

  gap: 18px;

}

.grid-5 {

  display: grid;

  grid-template-columns: repeat(5,1fr);

  gap: 16px;

}

.card {

  background: var(--card);

  border: 1px solid var(--line);

  border-radius: var(--r);

  box-shadow: 0 18px 50px rgba(6,17,31,.07);

  padding: 24px;

  transition: .2s ease;

}

.card:hover {

  transform: translateY(-5px);

  box-shadow: 0 28px 70px rgba(6,17,31,.12);

}

.icon {

  width: 48px;

  height: 48px;

  border-radius: 16px;

  display: grid;

  place-items: center;

  background: #ecf8ff;

  color: #087d77;

  font-weight: 1000;

  margin-bottom: 18px;

}

.card h3,.dark-card h3,.process h3,.faq h3 {

  margin: 0;

  font-size: 21px;

  line-height: 1.16;

  letter-spacing: -.035em;

}

.card p,.process p,.faq p {

  margin: 12px 0 0;

  color: #62738a;

  font-size: 14px;

}

.tags {

  display: flex;

  flex-wrap: wrap;

  gap: 8px;

  margin-top: 18px;

}

.tag {

  display: inline-flex;

  padding: 6px 9px;

  border-radius: 999px;

  background: #eef4f9;

  color: #31445c;

  font-size: 12px;

  font-weight: 950;

}

.split {

  display: grid;

  grid-template-columns: .95fr 1.05fr;

  gap: 36px;

  align-items: stretch;

}

.factory-visual {

  min-height: 560px;

  border: 1px solid rgba(255,255,255,.14);

  border-radius: var(--rl);

  background: linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.045)),radial-gradient(circle at 30% 20%,rgba(47,157,255,.2),transparent 35%),radial-gradient(circle at 70% 70%,rgba(45,212,191,.16),transparent 35%);

  overflow: hidden;

  position: relative;

  box-shadow: 0 30px 80px rgba(0,0,0,.28);

}

.factory-visual:before {

  content: "";

  position: absolute;

  inset: 34px;

  border-radius: 28px;

  border: 1px solid rgba(255,255,255,.12);

  background: linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.06) 1px,transparent 1px);

  background-size: 38px 38px;

}

.factory-note {

  position: absolute;

  left: 34px;

  right: 34px;

  bottom: 34px;

  padding: 26px;

  border-radius: 26px;

  background: rgba(6,17,31,.78);

  border: 1px solid rgba(255,255,255,.14);

  backdrop-filter: blur(16px);

}

.factory-note strong {

  display: block;

  font-size: 30px;

  line-height: 1.02;

  letter-spacing: -.052em;

}

.factory-note span {

  display: block;

  color: var(--muted);

  margin-top: 9px;

}

.dark-card {

  padding: 22px;

  border-radius: 22px;

  background: rgba(255,255,255,.075);

  border: 1px solid rgba(255,255,255,.12);

}

.dark-card p {

  margin: 8px 0 0;

  color: var(--muted);

}

.spec-table-wrap {

  overflow-x: auto;

  background: #fff;

  border: 1px solid var(--line);

  border-radius: var(--rl);

  box-shadow: var(--shadow);

}

table {

  width: 100%;

  min-width: 760px;

  border-collapse: collapse;

}

th,td {

  text-align: left;

  padding: 18px 20px;

  border-bottom: 1px solid #e7eef5;

  vertical-align: top;

}

body[dir="rtl"] th,body[dir="rtl"] td {

  text-align: right;

}

th {

  background: #edf4fa;

  color: #26384e;

  font-size: 13px;

  text-transform: uppercase;

  letter-spacing: .08em;

  font-weight: 1000;

}

td {

  color: #52657c;

  font-size: 15px;

}

tr:last-child td {

  border-bottom: 0;

}

.process {

  background: #fff;

  border: 1px solid var(--line);

  border-radius: var(--r);

  padding: 22px;

  box-shadow: 0 18px 50px rgba(6,17,31,.07);

  position: relative;

  overflow: hidden;

}

.process:before {

  content: "";

  position: absolute;

  inset: 0 0 auto;

  height: 4px;

  background: linear-gradient(90deg,var(--green),var(--blue));

}

.process .num {

  color: #087d77;

  font-weight: 1000;

  letter-spacing: .12em;

  font-size: 12px;

}

.rfq {

  background: linear-gradient(180deg,#f4f7fb,#fff);

  padding: 90px 0;

}

.rfq-box {

  display: grid;

  grid-template-columns: .9fr 1.1fr;

  gap: 34px;

  background: #fff;

  border: 1px solid var(--line);

  border-radius: var(--rl);

  box-shadow: var(--shadow);

  padding: 34px;

}

.rfq-info {

  padding: 18px;

}

.rfq-info p {

  color: #617188;

  margin: 18px 0 0;

}

.email-box {

  margin-top: 28px;

  padding: 22px;

  border-radius: 24px;

  background: #06111f;

  color: #fff;

}

.email-box span {

  display: block;

  color: var(--muted);

  font-size: 13px;

  font-weight: 950;

  margin-bottom: 5px;

}

.email-box strong {

  display: block;

  font-size: 22px;

  letter-spacing: -.03em;

  word-break: break-word;

}

.rfq-form {

  padding: 24px;

  border-radius: 28px;

  background: #f7fafc;

  border: 1px solid #dfe9f2;

}

.form-grid {

  display: grid;

  grid-template-columns: repeat(2,1fr);

  gap: 14px;

}

.field {

  display: grid;

  gap: 7px;

}

.field.full {

  grid-column: 1/-1;

}

label {

  font-weight: 1000;

  color: #30445d;

  font-size: 13px;

}

input,select,textarea {

  width: 100%;

  border: 1px solid #d5e1ec;

  background: #fff;

  color: #122339;

  border-radius: 14px;

  padding: 13px 14px;

  outline: none;

}

input:focus,select:focus,textarea:focus {

  border-color: var(--blue);

  box-shadow: 0 0 0 4px rgba(47,157,255,.12);

}

textarea {

  min-height: 126px;

  resize: vertical;

}

.form-actions {

  display: flex;

  flex-wrap: wrap;

  gap: 12px;

  align-items: center;

  margin-top: 18px;

}

.rfq .btn-ghost {

  color: #06111f;

  background: #fff;

  border-color: #d5e1ec;

}

.rfq .btn-ghost:hover {

  background: #eef5fb;

}

.card h3,.dark-card h3,.process h3,.faq h3,.market h3,.panel-title,.panel-status,.proof span,.tag {

  overflow-wrap: anywhere;

}

.hero-layout>* {

  min-width: 0;

}

.industrial-panel>* {

  min-width: 0;

}

.btn-dark {

  background: #06111f;

  color: #fff;

}

.copy-status {

  color: #087d77;

  font-weight: 1000;

  font-size: 13px;

}

.form-note {

  color: #6b7d92;

  font-size: 13px;

  margin: 14px 0 0;

}

.faq {

  background: #fff;

  border: 1px solid var(--line);

  border-radius: var(--r);

  padding: 24px;

  box-shadow: 0 18px 50px rgba(6,17,31,.06);

}

.footer {

  background: #06111f;

  color: var(--text);

  padding: 50px 0;

  border-top: 1px solid rgba(255,255,255,.1);

}

.footer-grid {

  display: grid;

  grid-template-columns: 1.35fr repeat(3,1fr);

  gap: 28px;

}

.footer h3,.footer h4 {

  margin: 0 0 12px;

  letter-spacing: -.025em;

}

.footer p,.footer a {

  color: var(--muted);

  font-size: 14px;

}

.footer-links {

  display: grid;

  gap: 8px;

}

.footer a:hover {

  color: #fff;

}

.copyright {

  margin-top: 34px;

  padding-top: 22px;

  border-top: 1px solid rgba(255,255,255,.1);

  color: #8497ad;

  font-size: 13px;

  display: flex;

  justify-content: space-between;

  gap: 16px;

  flex-wrap: wrap;

}

.blog-link {

  opacity: .72;

  cursor: default;

}

@media (max-width:1100px) {

  .hero-layout,.split,.rfq-box {

    grid-template-columns: 1fr;

  }

  .grid-4,.grid-5 {

    grid-template-columns: repeat(2,1fr);

  }

  .proof,.grid-3,.footer-grid {

    grid-template-columns: repeat(2,1fr);

  }

  .industrial-panel {

    min-height: 560px;

  }

}

@media (max-width:1080px) {

  .container {

    width: min(100% - 28px,var(--max));

  }

  .nav {

    min-height: 68px;

  }

  .menu-btn {

    display: inline-flex;

  }

  .nav-right {

    gap: 10px;

  }

  .nav-links {

    display: none;

    position: absolute;

    left: 14px;

    right: 14px;

    top: 72px;

    flex-direction: column;

    align-items: stretch;

    padding: 18px;

    background: rgba(6,17,31,.98);

    border: 1px solid rgba(255,255,255,.13);

    border-radius: 20px;

  }

  .nav-links.open {

    display: flex;

  }

  .nav-cta {

    display: none;

  }

  .lang-select {

    min-width: 116px;

    max-width: 136px;

  }

  .hero {

    padding: 54px 0 28px;

  }

  h1 {

    font-size: 43px;

  }

  .hero p {

    font-size: 16px;

  }

  .industrial-panel {

    min-height: 640px;

    padding: 20px;

  }

  .panel-grid,.proof,.grid-4,.grid-3,.grid-5,.footer-grid,.form-grid {

    grid-template-columns: 1fr;

  }

  .spec-line {

    grid-template-columns: 1fr;

    gap: 9px;

  }

  .section,.rfq {

    padding: 64px 0;

  }

  .section-head {

    display: grid;

    gap: 14px;

  }

  .rfq-box {

    padding: 18px;

    border-radius: 28px;

  }

  .rfq-info,.rfq-form {

    padding: 18px;

  }

  .brand span:last-child {

    max-width: 180px;

    overflow: hidden;

    text-overflow: ellipsis;

  }

}

@media (prefers-reduced-motion:reduce) {

  * {

    scroll-behavior: auto !important;

    transition: none !important;

  }

}

@media (max-width:760px) {

  .container {

    width: min(100% - 28px,var(--max));

  }

  .hero {

    padding: 52px 0 64px;

  }

  h1 {

    font-size: 39px;

    letter-spacing: -.045em;

  }

  .industrial-panel {

    min-height: 0;

  }

  .section,.rfq {

    padding: 58px 0;

  }

  .rfq-box {

    padding: 16px;

  }

  .panel-top {

    align-items: flex-start;

    flex-direction: column;

  }

  .lang-select {

    min-width: 104px;

    max-width: 128px;

  }

  .brand span:last-child {

    max-width: 170px;

    overflow: hidden;

    text-overflow: ellipsis;

  }

  .btn {

    width: auto;

  }

  .hero-actions .btn {

    width: 100%;

  }

}

@media (min-width:761px) and (max-width:1080px) {

  .hero {

    padding: 64px 0 76px;

  }

  .hero-layout,.split,.rfq-box {

    grid-template-columns: 1fr;

  }

  .grid-4,.grid-5,.proof,.grid-3,.footer-grid {

    grid-template-columns: repeat(2,1fr);

  }

  .panel-grid {

    grid-template-columns: repeat(2,1fr);

  }

  .industrial-panel {

    min-height: 0;

  }

  .nav-cta {

    display: inline-flex;

  }

}

/* v3 launch fixes: remove hero background split, prevent panel overlap, improve contrast and cache-busting */

:root {

  --hero-solid: #06111f;

  --hero-solid-2: #0a1a2d;

  --section-bg: #f4f7fb;

}

body {

  background: var(--section-bg) !important;

}

.hero {

  position: relative !important;

  z-index: 1 !important;

  color: #eef7ff !important;

  background: radial-gradient(circle at 16% 8%,rgba(47,157,255,.26),transparent 36%),
    radial-gradient(circle at 86% 16%,rgba(45,212,191,.18),transparent 34%),
    linear-gradient(180deg,var(--hero-solid) 0%,var(--hero-solid-2) 100%) !important;

  padding: clamp(76px,6vw,104px) 0 clamp(82px,7vw,112px) !important;

  overflow: clip !important;

  min-height: auto !important;

}

.hero::before {

  content: "";

  position: absolute;

  inset: 0;

  background: linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.03) 1px,transparent 1px);

  background-size: 58px 58px;

  opacity: .45;

  pointer-events: none;

  z-index: -1;

}

.hero::after {

  content: "";

  position: absolute;

  left: 0;

  right: 0;

  bottom: -1px;

  height: 1px;

  background: var(--section-bg);

  pointer-events: none;

}

.hero-layout {

  align-items: stretch !important;

  position: relative !important;

  z-index: 2 !important;

}

.hero-layout>div:first-child {

  display: flex;

  flex-direction: column;

  justify-content: center;

  min-width: 0;

}

.hero h1 {

  font-size: clamp(42px,4.85vw,64px) !important;

  line-height: 1.02 !important;

  letter-spacing: -.055em !important;

  max-width: 820px !important;

  color: #f4faff !important;

}

.hero p {

  color: #b9cde2 !important;

  max-width: 720px !important;

}

.hero-actions {

  position: relative;

  z-index: 3;

}

.btn-primary {

  color: #06111f !important;

}

.hero .btn-ghost {

  color: #eff7ff !important;

  background: rgba(255,255,255,.08) !important;

  border-color: rgba(255,255,255,.18) !important;

}

.proof {

  position: relative;

  z-index: 3;

}

.proof span {

  color: #dcecff !important;

  background: rgba(255,255,255,.075) !important;

  border-color: rgba(255,255,255,.16) !important;

  text-shadow: none !important;

}

.industrial-panel {

  height: auto !important;

  min-height: 520px !important;

  align-self: stretch !important;

  overflow: hidden !important;

  background: linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.05)),repeating-linear-gradient(90deg,transparent 0,transparent 46px,rgba(255,255,255,.05) 47px),repeating-linear-gradient(0deg,transparent 0,transparent 46px,rgba(255,255,255,.05) 47px) !important;

}

.panel-grid {

  grid-template-columns: repeat(2,minmax(0,1fr)) !important;

}

.mini-card {

  min-width: 0 !important;

}

.mini-card strong {

  font-size: clamp(18px,1.55vw,23px) !important;

  line-height: 1.18 !important;

}

.spec-stack {

  position: static !important;

  margin-top: auto !important;

}

.spec-line {

  min-width: 0 !important;

}

.spec-label,.spec-value {

  color: #fff !important;

}

.bar {

  min-width: 80px !important;

}

.section {

  background: var(--section-bg);

}

.section.dark {

  background: radial-gradient(circle at 10% 20%,rgba(47,157,255,.14),transparent 32%),radial-gradient(circle at 90% 0%,rgba(45,212,191,.13),transparent 30%),#06111f !important;

}

@media (max-width:1100px) {

  .hero {

    padding: 68px 0 78px !important;

    overflow: hidden !important;

  }

  .hero-layout {

    grid-template-columns: 1fr !important;

  }

  .industrial-panel {

    min-height: 0 !important;

  }

}

@media (max-width:760px) {

  .hero {

    padding: 54px 0 66px !important;

  }

  .hero h1 {

    font-size: clamp(34px,11vw,42px) !important;

    letter-spacing: -.04em !important;

  }

  .hero p {

    font-size: 16px !important;

  }

  .proof {

    grid-template-columns: 1fr !important;

  }

  .panel-grid {

    grid-template-columns: 1fr !important;

  }

  .spec-line {

    grid-template-columns: 1fr !important;

  }

}

/* v4 navigation and multilingual typography fixes */

:root {

  --header-h: 70px;

  --nav-bg: rgba(23,35,50,.94);

  --nav-chip: rgba(255,255,255,.075);

}

.site-header {

  background: var(--nav-bg) !important;

  border-bottom: 1px solid rgba(255,255,255,.09) !important;

  box-shadow: 0 10px 34px rgba(0,0,0,.12) !important;

}

.nav {

  min-height: var(--header-h) !important;

  display: grid !important;

  grid-template-columns: minmax(220px,280px) minmax(0,1fr) !important;

  gap: 18px !important;

  align-items: center !important;

}

.brand {

  min-width: 0 !important;

  font-size: 15px !important;

  letter-spacing: -.02em !important;

}

.brand-mark {

  width: 40px !important;

  height: 40px !important;

  border-radius: 13px !important;

  flex: 0 0 auto !important;

}

.brand span:last-child {

  display: block !important;

  white-space: nowrap !important;

  overflow: hidden !important;

  text-overflow: ellipsis !important;

  max-width: 220px !important;

}

.menu-btn {

  justify-self: end !important;

}

.nav-right {

  min-width: 0 !important;

  width: 100% !important;

  display: grid !important;

  grid-template-columns: minmax(0,1fr) minmax(128px,185px) auto !important;

  gap: 14px !important;

  align-items: center !important;

  justify-content: end !important;

}

.nav-links {

  min-width: 0 !important;

  display: flex !important;

  justify-content: flex-end !important;

  align-items: center !important;

  gap: clamp(12px,1.25vw,20px) !important;

  font-size: 13px !important;

  line-height: 1 !important;

  font-weight: 800 !important;

  letter-spacing: -.01em !important;

}

.nav-links a {

  white-space: nowrap !important;

  display: inline-flex !important;

  align-items: center !important;

  min-height: 36px !important;

  color: rgba(238,247,255,.78) !important;

}

.nav-links a:hover {

  color: #fff !important;

}

.lang-select {

  width: 100% !important;

  min-width: 0 !important;

  max-width: none !important;

  height: 40px !important;

  padding: 0 36px 0 14px !important;

  border-radius: 999px !important;

  background: rgba(255,255,255,.08) !important;

  border-color: rgba(255,255,255,.16) !important;

  font-size: 14px !important;

}

.nav-cta {

  min-height: 40px !important;

  padding: 0 18px !important;

  font-size: 13px !important;

  line-height: 1.05 !important;

  white-space: nowrap !important;

  box-shadow: 0 10px 28px rgba(255,255,255,.08) !important;

}

.blog-link {

  opacity: .78 !important;

}

.hero {

  padding: clamp(70px,5.3vw,94px) 0 clamp(76px,5.8vw,98px) !important;

}

.hero h1 {

  font-size: clamp(38px,4.2vw,58px) !important;

  line-height: 1.05 !important;

  letter-spacing: -.045em !important;

  max-width: 780px !important;

}

h2 {

  font-size: clamp(28px,3.2vw,43px) !important;

  line-height: 1.08 !important;

  letter-spacing: -.04em !important;

}

.hero p {

  font-size: clamp(16px,1.25vw,18px) !important;

  line-height: 1.72 !important;

}

.section-sub {

  font-size: 15.5px !important;

  line-height: 1.72 !important;

}

.card h3,.dark-card h3,.process h3,.faq h3 {

  font-size: clamp(17px,1.28vw,20px) !important;

  letter-spacing: -.025em !important;

}

.card p,.dark-card p,.process p,.faq p,td {

  font-size: 14px !important;

  line-height: 1.7 !important;

}

.kicker {

  font-size: 11px !important;

  letter-spacing: .14em !important;

}

.proof span {

  font-size: 12.5px !important;

  line-height: 1.35 !important;

}

.mini-card {

  min-height: 118px !important;

  padding: 17px !important;

}

.mini-card strong {

  font-size: clamp(17px,1.4vw,21px) !important;

  line-height: 1.2 !important;

}

.mini-card span,.mini-card small {

  font-size: 12px !important;

  line-height: 1.55 !important;

}

.spec-line {

  grid-template-columns: 132px 1fr 58px !important;

  padding: 12px 14px !important;

}

.spec-label,.spec-value {

  font-size: 12px !important;

}

/* More comfortable type scale for languages with longer labels or denser scripts */

html[lang="de"] .hero h1,html[lang="fr"] .hero h1,html[lang="ru"] .hero h1,html[lang="pt"] .hero h1,html[lang="th"] .hero h1 {

  font-size: clamp(34px,3.55vw,52px) !important;

  letter-spacing: -.032em !important;

  line-height: 1.08 !important;

}

html[lang="ja"] .hero h1,html[lang="ko"] .hero h1,html[lang="ar"] .hero h1 {

  font-size: clamp(34px,3.75vw,54px) !important;

  letter-spacing: -.025em !important;

  line-height: 1.12 !important;

}

html[lang="de"] h2,html[lang="fr"] h2,html[lang="ru"] h2,html[lang="pt"] h2,html[lang="th"] h2,html[lang="ja"] h2,html[lang="ko"] h2,html[lang="ar"] h2 {

  font-size: clamp(26px,2.75vw,39px) !important;

  letter-spacing: -.028em !important;

  line-height: 1.12 !important;

}

html[lang="ja"] body,html[lang="ko"] body,html[lang="th"] body {

  line-height: 1.72 !important;

}

html[lang="th"] .nav-links,html[lang="ru"] .nav-links,html[lang="ar"] .nav-links {

  font-size: 12.5px !important;

  gap: 12px !important;

}

html[lang="ja"] .nav-links,html[lang="ko"] .nav-links {

  font-size: 13px !important;

}

html[dir="rtl"] .nav-right {

  grid-template-columns: auto minmax(128px,185px) minmax(0,1fr) !important;

}

html[dir="rtl"] .nav-links {

  justify-content: flex-start !important;

}

html[dir="rtl"] .lang-select {

  padding: 0 14px 0 36px !important;

}

@media (max-width:1240px) {

  .nav {

    grid-template-columns: minmax(190px,245px) minmax(0,1fr) !important;

    gap: 14px !important;

  }

  .brand span:last-child {

    max-width: 190px !important;

  }

  .nav-right {

    grid-template-columns: minmax(0,1fr) minmax(116px,160px) auto !important;

    gap: 10px !important;

  }

  .nav-links {

    gap: 10px !important;

    font-size: 12.5px !important;

  }

  .nav-cta {

    padding: 0 14px !important;

  }

}

@media (max-width:1120px) {

  .nav {

    display: flex !important;

    min-height: 68px !important;

  }

  .menu-btn {

    display: inline-flex !important;

    order: 3 !important;

  }

  .nav-right {

    display: flex !important;

    width: auto !important;

    margin-left: auto !important;

    gap: 10px !important;

  }

  body[dir="rtl"] .nav-right {

    margin-left: 0 !important;

    margin-right: auto !important;

  }

  .nav-links {

    display: none !important;

    position: absolute !important;

    left: 14px !important;

    right: 14px !important;

    top: 76px !important;

    z-index: 90 !important;

    flex-direction: column !important;

    align-items: stretch !important;

    gap: 8px !important;

    padding: 14px !important;

    background: rgba(6,17,31,.98) !important;

    border: 1px solid rgba(255,255,255,.13) !important;

    border-radius: 18px !important;

    box-shadow: 0 24px 70px rgba(0,0,0,.28) !important;

  }

  .nav-links.open {

    display: flex !important;

  }

  .nav-links a {

    min-height: 42px !important;

    padding: 0 12px !important;

    border-radius: 12px !important;

    background: rgba(255,255,255,.055) !important;

  }

  .lang-select {

    width: 132px !important;

    height: 40px !important;

  }

  .nav-cta {

    display: none !important;

  }

  .brand span:last-child {

    max-width: 210px !important;

  }

}

@media (max-width:760px) {

  .brand span:last-child {

    max-width: 160px !important;

  }

  .brand {

    font-size: 14px !important;

    gap: 10px !important;

  }

  .brand-mark {

    width: 38px !important;

    height: 38px !important;

  }

  .lang-select {

    width: 112px !important;

    font-size: 13px !important;

    padding-left: 12px !important;

  }

  .menu-btn {

    padding: 8px 10px !important;

    font-size: 13px !important;

  }

  .hero h1 {

    font-size: clamp(32px,9.6vw,40px) !important;

    line-height: 1.1 !important;

    letter-spacing: -.03em !important;

  }

  html[lang="de"] .hero h1,html[lang="fr"] .hero h1,html[lang="ru"] .hero h1,html[lang="pt"] .hero h1,html[lang="th"] .hero h1,html[lang="ja"] .hero h1,html[lang="ko"] .hero h1,html[lang="ar"] .hero h1 {

    font-size: clamp(30px,8.8vw,37px) !important;

    line-height: 1.16 !important;

  }

  h2,html[lang] h2 {

    font-size: clamp(25px,7.4vw,32px) !important;

    line-height: 1.14 !important;

  }

  .hero {

    padding: 50px 0 58px !important;

  }

  .hero p {

    font-size: 15.5px !important;

  }

  .mini-card {

    min-height: auto !important;

  }

}

/* v5 fixes: replace empty factory illustration with real capability board, tighten nav and multilingual typography */

.nav-links a {

  white-space: nowrap;

}

.nav-links {

  gap: 18px;

  font-size: 13px;

}

.lang-select {

  width: 210px;

  max-width: 210px;

}

.nav-cta {

  white-space: nowrap;

}

.brand {

  min-width: 0;

}

.brand span:last-child {

  white-space: nowrap;

}

.site-header {

  background: rgba(6,17,31,.90);

}

.factory-visual.factory-board {

  min-height: 0;

  height: 100%;

  padding: 28px;

  display: flex;

  flex-direction: column;

  gap: 18px;

  justify-content: space-between;

  border: 1px solid rgba(255,255,255,.14);

  border-radius: var(--rl);

  background: radial-gradient(circle at 18% 18%,rgba(47,157,255,.22),transparent 38%),radial-gradient(circle at 82% 74%,rgba(45,212,191,.18),transparent 42%),linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.045));

  box-shadow: 0 30px 80px rgba(0,0,0,.28);

  overflow: hidden;

  position: relative;

}

.factory-visual.factory-board:before {

  display: none;

}

.capability-top {

  display: flex;

  justify-content: space-between;

  align-items: center;

  gap: 14px;

}

.cap-label {

  color: #86fff0;

  font-size: 12px;

  font-weight: 1000;

  letter-spacing: .16em;

  text-transform: uppercase;

}

.cap-badge {

  display: inline-flex;

  align-items: center;

  min-height: 34px;

  padding: 0 12px;

  border-radius: 999px;

  background: rgba(45,212,191,.12);

  border: 1px solid rgba(45,212,191,.28);

  color: #dffffb;

  font-size: 12px;

  font-weight: 950;

  white-space: nowrap;

}

.capability-metrics {

  display: grid;

  grid-template-columns: repeat(2,minmax(0,1fr));

  gap: 12px;

}

.metric-tile {

  border-radius: 20px;

  border: 1px solid rgba(255,255,255,.13);

  background: rgba(6,17,31,.55);

  padding: 18px;

  min-width: 0;

}

.metric-tile small {

  display: block;

  color: #9eb2c8;

  font-size: 12px;

  font-weight: 950;

  margin-bottom: 6px;

  overflow-wrap: anywhere;

}

.metric-tile strong {

  display: block;

  color: #fff;

  font-size: clamp(22px,2.4vw,30px);

  line-height: 1.05;

  letter-spacing: -.04em;

  overflow-wrap: anywhere;

}

.capability-tags {

  display: flex;

  flex-wrap: wrap;

  gap: 10px;

}

.capability-tags span {

  padding: 9px 12px;

  border-radius: 999px;

  background: rgba(255,255,255,.08);

  border: 1px solid rgba(255,255,255,.12);

  color: #dcecff;

  font-size: 13px;

  font-weight: 900;

}

.capability-flow {

  display: grid;

  grid-template-columns: repeat(4,minmax(0,1fr));

  gap: 10px;

}

.capability-flow span {

  position: relative;

  text-align: center;

  padding: 12px 8px;

  border-radius: 16px;

  background: rgba(255,255,255,.075);

  border: 1px solid rgba(255,255,255,.12);

  color: #eef7ff;

  font-size: 13px;

  font-weight: 950;

  overflow-wrap: anywhere;

}

.factory-board .factory-note {

  position: static;

  left: auto;

  right: auto;

  bottom: auto;

  padding: 22px;

  border-radius: 24px;

  background: rgba(6,17,31,.76);

  border: 1px solid rgba(255,255,255,.14);

  backdrop-filter: blur(16px);

}

.factory-board .factory-note strong {

  font-size: clamp(22px,2.3vw,30px);

  line-height: 1.08;

  letter-spacing: -.045em;

  overflow-wrap: anywhere;

}

.factory-board .factory-note span {

  font-size: 15px;

  line-height: 1.55;

}

.dark-card {

  min-width: 0;

}

.dark-card p {

  overflow-wrap: anywhere;

}

.section.dark .split {

  align-items: stretch;

}

:lang(ja) h1,:lang(ko) h1 {

  font-size: clamp(34px,4.65vw,58px);

  letter-spacing: -.045em;

  line-height: 1.08;

}

:lang(th) h1,:lang(ru) h1,:lang(de) h1,:lang(ar) h1 {

  font-size: clamp(32px,4.45vw,56px);

  letter-spacing: -.035em;

  line-height: 1.08;

}

:lang(ja) h2,:lang(ko) h2,:lang(th) h2,:lang(ru) h2,:lang(de) h2,:lang(ar) h2 {

  font-size: clamp(28px,3.2vw,42px);

  line-height: 1.14;

  letter-spacing: -.035em;

}

:lang(ja) body,:lang(ko) body,:lang(th) body {

  line-height: 1.72;

}

.hero p {

  font-size: 17px;

}

.section-sub {

  font-size: 15px;

}

.card h3,.dark-card h3,.process h3,.faq h3 {

  font-size: 20px;

}

@media (max-width:1180px) {

  .menu-btn {

    display: inline-flex;

  }

  .nav-links {

    display: none;

    position: absolute;

    left: 14px;

    right: 14px;

    top: 72px;

    flex-direction: column;

    align-items: stretch;

    padding: 18px;

    background: rgba(6,17,31,.98);

    border: 1px solid rgba(255,255,255,.13);

    border-radius: 20px;

  }

  .nav-links.open {

    display: flex;

  }

  .nav-cta {

    display: none;

  }

  .lang-select {

    width: 170px;

    max-width: 170px;

  }

  .nav {

    min-height: 68px;

  }

  .container {

    width: min(100% - 28px,var(--max));

  }

}

@media (max-width:760px) {

  .lang-select {

    width: 122px;

    max-width: 122px;

  }

  .capability-metrics,.capability-flow {

    grid-template-columns: 1fr;

  }

  .factory-visual.factory-board {

    padding: 20px;

  }

  .capability-top {

    align-items: flex-start;

    flex-direction: column;

  }

  .factory-board .factory-note {

    padding: 18px;

  }

  .metric-tile strong {

    font-size: 24px;

  }

}

/* v6 SEO/GEO commercial landing pages and conversion improvements */

.product-card {

  display: flex;

  flex-direction: column;

  min-height: 100%;

}

.card .text-link {

  display: inline-flex;

  margin-top: auto;

  padding-top: 18px;

  color: #087d77;

  font-weight: 950;

  font-size: 13px;

}

.card .text-link:hover {

  color: #056c68;

}

.popular-card {

  display: block;

  background: #fff;

  border: 1px solid var(--line);

  border-radius: 22px;

  padding: 22px;

  box-shadow: 0 16px 44px rgba(6,17,31,.06);

  transition: .2s ease;

}

.popular-card:hover,.related-card:hover {

  transform: translateY(-3px);

  box-shadow: 0 24px 60px rgba(6,17,31,.11);

  border-color: #bfd8ea;

}

.popular-card strong {

  display: block;

  font-size: 18px;

  letter-spacing: -.025em;

  color: #15263b;

}

.popular-card span {

  display: block;

  color: #63758a;

  font-size: 14px;

  margin-top: 8px;

  line-height: 1.6;

}

.popular-grid {

  display: grid;

  grid-template-columns: repeat(3,minmax(0,1fr));

  gap: 16px;

}

.breadcrumb {

  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 9px;

  color: #9fb8d0;

  font-size: 13px;

  font-weight: 800;

  margin: 0 0 24px;

}

.breadcrumb a {

  color: #d8eaff;

}

.page-hero {

  padding-top: 46px !important;

}

.page-hero .hero-layout {

  grid-template-columns: minmax(0,1.05fr) minmax(390px,.95fr);

}

.compact-panel {

  min-height: 0 !important;

  height: auto !important;

}

.compact-panel .factory-note {

  position: static;

  margin-top: auto;

  padding: 18px;

  border-radius: 20px;

  background: rgba(6,17,31,.68);

  border: 1px solid rgba(255,255,255,.12);

}

.compact-panel .factory-note strong {

  font-size: 20px;

}

.compact-panel .factory-note span {

  font-size: 13px;

  line-height: 1.6;

}

.lead-copy {

  font-size: 17px;

  line-height: 1.85;

  color: #53667e;

  max-width: 760px;

  margin: 22px 0 0;

}

.content-split {

  display: grid;

  grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr);

  gap: 34px;

  align-items: start;

}

.quote-outcomes {

  background: #06111f;

  color: #fff;

  border-radius: var(--rl);

  padding: 30px;

  box-shadow: var(--shadow);

}

.quote-outcomes h3 {

  margin: 0;

  font-size: 24px;

  letter-spacing: -.035em;

}

.quote-outcomes ul {

  margin: 20px 0 0;

  padding: 0;

  list-style: none;

  display: grid;

  gap: 12px;

}

.quote-outcomes li {

  position: relative;

  padding-left: 24px;

  color: #c5d7e9;

}

.quote-outcomes li:before {

  content: "✓";

  position: absolute;

  left: 0;

  color: #86fff0;

  font-weight: 1000;

}

.trust-note {

  display: flex;

  gap: 12px;

  align-items: flex-start;

  margin-top: 24px;

  padding: 18px 20px;

  border: 1px solid #cfe1ee;

  background: #eef7fb;

  border-radius: 18px;

}

.trust-note strong {

  white-space: nowrap;

  color: #0a6e6a;

}

.trust-note span {

  color: #566b82;

  font-size: 14px;

  line-height: 1.65;

}

.related-section {

  padding-top: 46px;

}

.related-grid {

  display: grid;

  grid-template-columns: repeat(4,minmax(0,1fr));

  gap: 16px;

}

.related-card {

  display: block;

  background: #fff;

  border: 1px solid var(--line);

  border-radius: 20px;

  padding: 22px;

  box-shadow: 0 14px 42px rgba(6,17,31,.06);

  transition: .2s ease;

}

.related-card strong {

  display: block;

  color: #14263a;

  font-size: 17px;

}

.related-card span {

  display: block;

  color: #61748b;

  font-size: 13px;

  margin-top: 8px;

}

.rfq-benefits {

  margin-top: 18px;

  padding: 16px 18px;

  border-radius: 18px;

  background: #edf7fb;

  border: 1px solid #cfe2ee;

}

.rfq-benefits strong {

  display: block;

  color: #0a6e6a;

  font-size: 13px;

  text-transform: uppercase;

  letter-spacing: .08em;

}

.rfq-benefits span {

  display: block;

  margin-top: 6px;

  color: #53677e;

  font-size: 14px;

  line-height: 1.6;

}

.section.spec-section {

  background: #eef3f8;

}

.nav-links a[href="/oem-inverter-manufacturer/"] {

  color: #bffbf1;

}

.field select {

  min-height: 49px;

}

@media (max-width:1100px) {

  .page-hero .hero-layout,.content-split {

    grid-template-columns: 1fr;

  }

  .popular-grid {

    grid-template-columns: repeat(2,minmax(0,1fr));

  }

  .related-grid {

    grid-template-columns: repeat(2,minmax(0,1fr));

  }

}

@media (max-width:760px) {

  .popular-grid,.related-grid {

    grid-template-columns: 1fr;

  }

  .trust-note {

    display: grid;

  }

  .page-hero {

    padding-top: 34px !important;

  }

  .quote-outcomes {

    padding: 24px;

  }

  .breadcrumb {

    margin-bottom: 18px;

  }

}

/* V7-LTS maintenance layer */

:root {

  --content: 820px;

}

.nav {

  min-height: 70px !important;

  display: grid !important;

  grid-template-columns: minmax(220px,280px) minmax(0,1fr) !important;

  gap: 18px !important;

}

.nav-right {

  min-width: 0 !important;

  width: 100% !important;

  display: grid !important;

  grid-template-columns: minmax(0,1fr) minmax(128px,185px) auto !important;

  gap: 14px !important;

}

.nav-links {

  justify-content: flex-end !important;

  gap: clamp(12px,1.25vw,20px) !important;

  font-size: 13px !important;

  line-height: 1 !important;

}

.nav-links a {

  white-space: nowrap !important;

  min-height: 36px !important;

  display: inline-flex;

  align-items: center;

}

.brand {

  font-size: 15px !important;

}

.brand span:last-child {

  white-space: nowrap !important;

  overflow: hidden !important;

  text-overflow: ellipsis !important;

  max-width: 220px !important;

}

.lang-select {

  width: 100% !important;

  height: 40px !important;

}

.nav-cta {

  min-height: 40px !important;

  white-space: nowrap !important;

}

.hero {

  background: radial-gradient(circle at 16% 8%,rgba(47,157,255,.26),transparent 36%),radial-gradient(circle at 86% 16%,rgba(45,212,191,.18),transparent 34%),linear-gradient(180deg,#06111f 0%,#0a1a2d 100%) !important;

  color: #eef7ff !important;

  overflow: clip !important;

  padding: clamp(70px,6vw,96px) 0 clamp(76px,7vw,104px) !important;

}

.hero h1 {

  color: #f4faff !important;

  font-size: clamp(38px,4.3vw,58px) !important;

  line-height: 1.05 !important;

  letter-spacing: -.045em !important;

}

.hero p {

  color: #b9cde2 !important;

  font-size: 17px;

}

.proof span {

  color: #dcecff !important;

  background: rgba(255,255,255,.075) !important;

  border-color: rgba(255,255,255,.16) !important;

}

.industrial-panel {

  height: auto !important;

  min-height: 500px !important;

  align-self: stretch !important;

  overflow: hidden !important;

}

.compact-panel {

  min-height: 0 !important;

}

.section {

  background: #f4f7fb;

}

h2 {

  font-size: clamp(28px,3.2vw,43px) !important;

}

.product-hub-grid {

  display: grid;

  grid-template-columns: repeat(4,minmax(0,1fr));

  gap: 18px;

}

.home-product-grid {

  grid-template-columns: repeat(4,minmax(0,1fr));

}

.section-cta {

  display: flex;

  justify-content: center;

  margin-top: 30px;

}

.btn-light {

  background: #fff;

  color: #132238;

  border-color: #cfdae6;

}

.btn-light:hover {

  transform: translateY(-2px);

  box-shadow: 0 12px 28px rgba(6,17,31,.10);

}

.email-fallback {

  display: flex;

  flex-wrap: wrap;

  gap: 9px;

  margin-top: 14px;

}

.mini-action {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  min-height: 38px;

  padding: 0 13px;

  border-radius: 999px;

  border: 1px solid #cfe1ee;

  background: #fff;

  color: #17314b;

  font-weight: 900;

  font-size: 12px;

  cursor: pointer;

}

.mini-action:hover {

  border-color: #8ebad4;

}

.decision-stack {

  display: grid;

  gap: 12px;

}

.decision-stack>div {

  display: grid;

  grid-template-columns: 44px 1fr;

  gap: 12px;

  align-items: center;

  padding: 14px;

  border-radius: 18px;

  background: rgba(255,255,255,.075);

  border: 1px solid rgba(255,255,255,.12);

}

.decision-stack b {

  width: 38px;

  height: 38px;

  display: grid;

  place-items: center;

  border-radius: 13px;

  background: linear-gradient(135deg,var(--green),var(--blue));

  color: #06111f;

}

.decision-stack span {

  color: #dcecff;

  font-weight: 850;

}

.steps-grid {

  display: grid;

  grid-template-columns: repeat(auto-fit,minmax(190px,1fr));

  gap: 16px;

}

.legal-hero {

  padding-bottom: 58px !important;

}

.legal-title {

  max-width: 850px;

}

.legal-title p {

  margin-top: 18px;

}

.legal-copy {

  max-width: var(--content);

}

.legal-copy h2 {

  font-size: 28px !important;

  margin: 40px 0 10px;

  letter-spacing: -.035em;

}

.legal-copy h2:first-child {

  margin-top: 0;

}

.legal-copy p {

  color: #53667e;

  font-size: 16px;

  line-height: 1.8;

}

.legal-copy a {

  color: #087d77;

  text-decoration: underline;

}

.footer-links a:hover {

  color: #fff;

}

.rfq-form .btn {

  min-height: 48px;

}

.copy-status {

  min-height: 20px;

  align-self: center;

}

.form-actions {

  align-items: center;

}

.footer-grid {

  grid-template-columns: 1.25fr 1fr 1fr 1fr;

}

@media (max-width:1120px) {

  .nav {

    display: flex !important;

    min-height: 68px !important;

  }

  .menu-btn {

    display: inline-flex !important;

  }

  .nav-right {

    display: flex !important;

    width: auto !important;

    margin-left: auto !important;

  }

  .nav-links {

    display: none !important;

    position: absolute !important;

    left: 14px !important;

    right: 14px !important;

    top: 76px !important;

    flex-direction: column !important;

    align-items: stretch !important;

    background: rgba(6,17,31,.98) !important;

    border: 1px solid rgba(255,255,255,.13) !important;

    border-radius: 18px !important;

    padding: 14px !important;

  }

  .nav-links.open {

    display: flex !important;

  }

  .nav-cta {

    display: none !important;

  }

  .lang-select {

    width: 132px !important;

  }

  .hero-layout,.page-hero .hero-layout {

    grid-template-columns: 1fr !important;

  }

  .industrial-panel {

    min-height: 0 !important;

  }

  .product-hub-grid,.home-product-grid {

    grid-template-columns: repeat(2,minmax(0,1fr));

  }

  .footer-grid {

    grid-template-columns: repeat(2,minmax(0,1fr));

  }

}

@media (max-width:760px) {

  .hero {

    padding: 50px 0 60px !important;

  }

  .hero h1 {

    font-size: clamp(31px,9vw,39px) !important;

  }

  .proof,.panel-grid,.product-hub-grid,.home-product-grid,.footer-grid {

    grid-template-columns: 1fr !important;

  }

  .brand span:last-child {

    max-width: 150px !important;

  }

  .lang-select {

    width: 108px !important;

  }

  .form-actions {

    align-items: stretch;

  }

  .form-actions .btn {

    width: 100%;

  }

  .email-fallback {

    display: grid;

  }

  .mini-action {

    width: 100%;

  }

  .legal-copy h2 {

    font-size: 25px !important;

  }

}

/* LTS patch: crawlable, no-JavaScript language navigation */

.lang-menu {

  position: relative;

  width: 100%;

  min-width: 0;

  color: #fff;

}

.lang-menu summary {

  height: 40px;

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 10px;

  padding: 0 14px;

  border: 1px solid rgba(255,255,255,.16);

  border-radius: 999px;

  background: rgba(255,255,255,.08);

  font-size: 14px;

  font-weight: 800;

  cursor: pointer;

  white-space: nowrap;

  overflow: hidden;

  list-style: none;

}

.lang-menu summary::-webkit-details-marker {

  display: none;

}

.lang-menu summary::after {

  content: "";

  width: 7px;

  height: 7px;

  border-right: 2px solid rgba(255,255,255,.8);

  border-bottom: 2px solid rgba(255,255,255,.8);

  transform: rotate(45deg) translateY(-2px);

  flex: 0 0 auto;

}

.lang-menu[open] summary::after {

  transform: rotate(225deg) translate(-1px,-1px);

}

.lang-current {

  overflow: hidden;

  text-overflow: ellipsis;

  white-space: nowrap;

}

.lang-menu-list {

  position: absolute;

  right: 0;

  top: calc(100% + 10px);

  z-index: 120;

  width: max-content;

  min-width: 220px;

  max-width: min(320px,calc(100vw - 28px));

  max-height: 420px;

  overflow: auto;

  display: grid;

  gap: 2px;

  padding: 8px;

  background: #fff;

  border: 1px solid #dbe6f1;

  border-radius: 18px;

  box-shadow: 0 22px 60px rgba(6,17,31,.24);

}

.lang-menu-list a {

  display: block;

  padding: 9px 12px;

  border-radius: 10px;

  color: #17314b;

  font-size: 14px;

  font-weight: 750;

  line-height: 1.35;

  white-space: nowrap;

}

.lang-menu-list a:hover,.lang-menu-list a:focus {

  background: #eef5fb;

  color: #06111f;

  outline: none;

}

.lang-menu-list a[aria-current="page"] {

  background: #e6f8f5;

  color: #086a65;

  font-weight: 950;

}

html[dir="rtl"] .lang-menu-list {

  right: auto;

  left: 0;

}

@media (max-width:1120px) {

  .lang-menu {

    width: 132px;

    flex: 0 0 132px;

  }

  .lang-menu summary {

    font-size: 13px;

    padding: 0 12px;

  }

  .lang-menu-list {

    right: 0;

  }

}

@media (max-width:760px) {

  .lang-menu {

    width: 108px;

    flex-basis: 108px;

  }

  .lang-menu summary {

    font-size: 12px;

    padding: 0 10px;

  }

  .lang-menu-list {

    position: fixed;

    left: 14px;

    right: 14px;

    top: 76px;

    width: auto;

    max-width: none;

    max-height: calc(100vh - 96px);

  }

}

/* Navigation language menu cache/marker hardening */

.lang-menu summary {

  color: #fff !important;

  -webkit-appearance: none;

  appearance: none;

}

.lang-menu summary::marker {

  content: "";

  font-size: 0;

}

.lang-menu summary::-webkit-details-marker {

  display: none !important;

}

.lang-menu .lang-current {

  color: #fff !important;

}

/* 2026-09-24 brand cleanup: text-only navigation identity */

.brand {

  font-size: 18px !important;

  gap: 0 !important;

  letter-spacing: -.025em !important;

}

.brand span:last-child {

  max-width: none !important;

  overflow: visible !important;

  text-overflow: clip !important;

}

@media (max-width:1120px) {

  .brand {

    font-size: 17px !important;

  }

  .brand span:last-child {

    max-width: none !important;

  }

}

@media (max-width:760px) {

  .brand {

    font-size: 16px !important;

  }

  .brand span:last-child {

    max-width: 190px !important;

    overflow: hidden !important;

    text-overflow: ellipsis !important;

  }

}


/* 2026-10-10 — stable assets and multilingual content system */
:root { --max: 1200px; }

/* Keep the complete brand visible instead of truncating it on phones. */
.brand { flex-shrink: 0; min-width: 0; }
.brand span:last-child { overflow: visible !important; text-overflow: clip !important; white-space: normal !important; max-width: none !important; }
.nav-right { min-width: 0; }
.lang-menu { flex-shrink: 0; }
.lang-menu-list { max-height: min(72vh, 520px); overflow-y: auto; }
.nav-links a { overflow-wrap: normal; }

/* Clearer product detail modules with the existing navy/teal visual identity. */
.compact-panel { min-height: 0; gap: 16px; }
.compact-panel .mini-card { min-height: 116px; }
.hero-secondary { font-size: 15px !important; opacity: .86; }
.soft-section { background: #ecf3f8; }
.section .spec-table-wrap { overflow-x: auto; overscroll-behavior-x: contain; }
.spec-table-wrap table { min-width: 0; width: 100%; }
.spec-table-wrap code { font-family: inherit; font-size: 15px; font-weight: 700; white-space: normal; overflow-wrap: anywhere; }
.spec-table-wrap th, .spec-table-wrap td { padding: 17px 20px; }
.spec-table-wrap thead th { background: #e8f1f7; }
.spec-table-wrap tbody th { font-size: 15px; font-weight: 800; color: #14283b; background: #f8fbfe; text-transform: none; letter-spacing: normal; }
.compliance-note { max-width: 880px; background: #fff; padding: 24px 28px; border-left: 4px solid #18b4ab; border-radius: 8px 22px 22px 8px; color: #354b60; font-size: 17px; line-height: 1.75; }
.related-links, .sourcing-paths { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 24px; }
.related-link, .sourcing-path { background: #fff; border: 1px solid #dbe6f1; border-radius: 14px; padding: 20px; font-weight: 800; line-height: 1.4; color: #14344a; }
.related-link:hover, .sourcing-path:hover { border-color: #2abbb2; color: #087d77; }
.reference-section { padding-top: 64px; padding-bottom: 64px; background: #f9fbfc; }
.reference-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.reference-links a { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 20px 24px; border-radius: 16px; background: #fff; border: 1px solid #dbe6f1; color: #17455c; font-weight: 750; line-height: 1.5; }
.reference-links a:hover { border-color: #0c9b96; }
.reference-links a span { font-size: 20px; flex-shrink: 0; }
.about-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 54px; }
.about-block { border-top: 2px solid #1abdb0; padding: 28px 0; }
.about-block h2 { font-size: clamp(24px, 2.8vw, 36px) !important; }
.about-block p { font-size: 17px; line-height: 1.75; color: #53667a; }
.contact-slim { grid-template-columns: 1.05fr .95fr; align-items: center; }
.contact-checklist { padding: 28px 30px; border-radius: 24px; background: #f0f6fa; border: 1px solid #dce8ef; }
.contact-checklist h3 { font-size: 22px; line-height: 1.25; }
.contact-checklist ul { padding-inline-start: 24px; font-size: 16px; line-height: 1.9; color: #344d62; }
.contact-checklist p { color: #5c7084; font-size: 15px; line-height: 1.75; }
.email-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.email-actions .btn { min-height: 44px; }
.email-actions .btn-light { background: #fff; color: #071a2d; border: 1px solid #d4e0e9; }
.legal-copy { max-width: 890px; }
.legal-copy .legal-lead { font-size: 18px; line-height: 1.7; color: #31495d; }
.legal-copy h2 { font-size: clamp(23px, 2.5vw, 31px) !important; margin-top: 32px; }
.legal-copy p { font-size: 17px; line-height: 1.8; }
.legal-copy a { text-decoration: underline; text-underline-offset: 3px; }
.simple-404 { max-width: 650px; margin: 15vh auto; padding: 30px; text-align: center; }
.simple-404 h1 { color: #06111f; }
.simple-404 p { margin: 24px 0; }
.section .process h3 { margin-top: 12px; }
.step-num { font-size: 14px; font-weight: 900; color: #087d77; }

@media (max-width: 1120px) {
  .related-links, .sourcing-paths { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-slim { grid-template-columns: 1fr; }
  .brand { max-width: 240px; }
}
@media (max-width: 760px) {
  .nav { gap: 9px !important; }
  .brand { flex: 1 1 auto; max-width: none !important; min-width: 0; font-size: 14px !important; line-height: 1.12; letter-spacing: -.02em; }
  .brand span:last-child { max-width: 160px !important; overflow-wrap: normal; }
  .nav-right { flex: 0 0 auto; gap: 6px !important; }
  .lang-menu { width: auto !important; max-width: 105px; }
  .lang-menu summary { padding: 9px 10px !important; font-size: 12px !important; }
  .menu-btn { order: 3; padding: 9px 10px !important; }
  .related-links, .sourcing-paths, .reference-links, .about-layout { grid-template-columns: 1fr; }
  .section .spec-table-wrap table { min-width: 0 !important; }
  .spec-table-wrap th, .spec-table-wrap td { padding: 14px 12px !important; font-size: 13.5px !important; }
  .spec-table-wrap code { font-size: 13.5px !important; }
  .compact-panel .panel-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .compact-panel .mini-card { padding: 13px !important; }
  .compact-panel .mini-card strong { font-size: 16px !important; }
  .contact-checklist { padding: 22px 20px; }
  .legal-copy p { font-size: 16px; }
  .email-box strong { font-size: clamp(15px, 4.6vw, 22px) !important; overflow-wrap: anywhere; }
  .section .grid-4 { grid-template-columns: 1fr !important; }
}
@media (max-width: 380px) {
  .brand { font-size: 13px !important; }
  .brand span:last-child { max-width: 126px !important; }
  .lang-menu { max-width: 89px; }
  .lang-menu summary { font-size: 11px !important; padding: 8px !important; }
}

/* Visually hidden skip link must not create negative scroll width in RTL. */
.skip {
  position: absolute;
  left: auto;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
}
.skip:focus {
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  clip-path: none;
  left: 16px;
  top: 16px;
}
.compliance-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.compliance-list li {
  border: 1px solid #dce7ee;
  border-left: 3px solid #16b7aa;
  border-radius: 12px;
  background: #fff;
  padding: 20px;
  font-size: 16px;
  font-weight: 750;
  line-height: 1.5;
}
@media (max-width: 760px) {
  .compliance-list { grid-template-columns: 1fr; }
}

/* v2.0.1 - final editorial and responsive refinements. */
:root {
  --max: 1220px;
}

h1, h2, h3 {
  text-wrap: balance;
  word-break: normal;
}

.section-head {
  align-items: end;
  column-gap: 36px;
}

.section-head h2 {
  font-size: clamp(29px, 3.2vw, 43px);
  line-height: 1.13;
  letter-spacing: -.035em;
  overflow-wrap: break-word;
}

.section-sub {
  font-size: 16px;
  line-height: 1.65;
}

main > .hero:not(.page-hero) h1 {
  font-size: clamp(38px, 4.4vw, 56px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.042em !important;
  overflow-wrap: break-word;
}

.page-hero h1 {
  font-size: clamp(35px, 4.2vw, 54px) !important;
  line-height: 1.09 !important;
  overflow-wrap: break-word;
}

/* Eight core categories, equal across all languages without repetitive badges. */
.home-product-grid .product-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 25px 24px;
}

.home-product-grid .product-card h3 {
  font-size: 20px;
  line-height: 1.3;
}

.home-product-grid .product-card p {
  font-size: 15.5px;
  line-height: 1.65;
}

.home-product-grid .product-card .text-link {
  margin-top: auto;
  padding-top: 18px;
  font-size: 14.5px;
}

/* Nine genuine buying paths: no empty grid cell or placeholder. */
.popular-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.popular-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 164px;
  padding: 23px 38px 23px 24px;
  border-radius: 16px;
  box-shadow: 0 9px 24px rgba(6, 17, 31, .035);
}

.popular-card strong {
  font-size: 18px;
  line-height: 1.35;
  letter-spacing: -.015em;
  overflow-wrap: break-word;
}

.popular-card span {
  margin-top: 12px;
  font-size: 15px;
  line-height: 1.65;
  color: #4f6579;
}

.popular-card::after {
  content: "\2197";
  position: absolute;
  inset-block-start: 20px;
  inset-inline-end: 18px;
  font-size: 17px;
  color: #087d77;
}

.popular-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(6, 17, 31, .08);
}

[dir="rtl"] .popular-card {
  padding-inline-start: 38px;
  padding-inline-end: 24px;
}

/* Footer: one public email and one copyright line, readable at normal widths. */
.footer {
  padding-block: 52px 26px;
}

.footer-grid {
  grid-template-columns: 1.28fr 1fr 1fr 1.15fr;
  column-gap: 36px;
  row-gap: 32px;
}

.footer h3,
.footer h4 {
  font-size: 18px;
  line-height: 1.35;
}

.footer p,
.footer a {
  font-size: 15px;
  line-height: 1.65;
}

.footer-links a[href^="mailto:"] {
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.copyright {
  display: block;
  font-size: 14px;
  line-height: 1.6;
}

/* A single direct email contact path, with no on-site RFQ form. */
.contact-slim {
  align-items: start;
}

.contact-slim .rfq-info {
  min-width: 0;
}

.contact-slim .rfq-info h2 {
  font-size: clamp(28px, 3.3vw, 42px);
  line-height: 1.14;
  overflow-wrap: break-word;
}

.contact-slim .email-box {
  border-radius: 16px;
}

.contact-slim .email-box strong {
  font-size: clamp(17px, 2.3vw, 23px);
}

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

@media (max-width: 760px) {
  .section-head h2 {
    font-size: clamp(28px, 6vw, 35px);
    line-height: 1.16;
  }
  .section-sub {
    font-size: 16px;
  }
  .home-product-grid {
    grid-template-columns: 1fr;
  }
  .popular-grid {
    grid-template-columns: 1fr;
  }
  .popular-card {
    min-height: 0;
    padding-block: 21px;
  }
  .spec-table-wrap th,
  .spec-table-wrap td,
  .spec-table-wrap code {
    font-size: 15px !important;
  }
  .lang-menu summary {
    font-size: 13px !important;
  }
  .contact-slim .rfq-info {
    padding: 6px 0;
  }
}

@media (max-width: 560px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .footer {
    padding-block: 42px 22px;
  }
  .footer h3,
  .footer h4 {
    margin-bottom: 10px;
  }
}

@media (max-width: 380px) {
  .brand {
    font-size: 13.5px !important;
  }
  .lang-menu summary {
    font-size: 12.5px !important;
  }
}

/* Honest hero checklist instead of an artificial analytics-style console. */
.sourcing-panel {
  min-height: 0 !important;
  height: auto !important;
  padding: 30px;
}

.sourcing-panel .panel-top {
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.sourcing-panel .panel-title {
  font-size: clamp(19px, 2vw, 24px);
  line-height: 1.25;
  text-wrap: balance;
}

.sourcing-panel .panel-grid {
  gap: 14px;
}

.sourcing-panel .mini-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  min-height: 122px;
  padding: 19px;
}

.sourcing-panel .mini-card strong {
  font-size: clamp(17px, 1.7vw, 20px);
  line-height: 1.3;
  overflow-wrap: break-word;
}

.sourcing-panel .mini-card span {
  font-size: 14px;
  line-height: 1.5;
  margin-top: 8px;
}

.sourcing-panel .panel-note {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .16);
}

.sourcing-panel .panel-note p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #d3e4f2 !important;
}

.sourcing-panel .panel-note a {
  color: #9cf5e8;
  font-weight: 800;
  font-size: 15px;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.section[id],
.rfq[id] {
  scroll-margin-top: 92px;
}

@media (max-width: 760px) {
  .sourcing-panel {
    padding: 24px;
  }
  .sourcing-panel .mini-card {
    min-height: 104px;
    padding: 16px;
  }
  .sourcing-panel .mini-card span {
    font-size: 14px;
  }
}

/* Prevent broken product terms in English, Japanese and Korean hero headings. */
.nowrap-phrase {
  display: inline-block;
  white-space: nowrap;
}

html[lang="ja"] main > .hero h1 {
  font-size: clamp(29px, 8.6vw, 52px) !important;
  line-height: 1.2 !important;
  text-wrap: balance;
}

html[lang="ko"] main > .hero h1 {
  font-size: clamp(30px, 8.6vw, 52px) !important;
  line-height: 1.2 !important;
  word-break: keep-all;
}

@media (max-width: 760px) {
  html[lang="en"] main > .hero h1 {
    font-size: clamp(32px, 9.2vw, 43px) !important;
    line-height: 1.15 !important;
  }
}

/* Readable body copy: override legacy LTS rules that forced 12-14px text. */
.card p,
.dark-card p,
.process p,
.faq p {
  font-size: 16px !important;
  line-height: 1.68 !important;
}

.home-product-grid .product-card p {
  font-size: 16px !important;
  line-height: 1.65 !important;
}

.sourcing-panel .mini-card span {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.sourcing-panel .mini-card small {
  font-size: 14px !important;
}

.proof span {
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.section-sub {
  font-size: 16px !important;
}

.spec-table-wrap td,
.spec-table-wrap th {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.btn {
  font-size: 15px !important;
}

/* Thai headlines need normal word spacing and slightly less aggressive scale. */
html[lang="th"] main > .hero h1 {
  font-size: clamp(32px, 8.8vw, 52px) !important;
  line-height: 1.2 !important;
  text-wrap: balance;
}

/* Short mobile language labels keep Indonesian and Malay distinguishable. */
.lang-short {
  display: none;
}

@media (max-width: 760px) {
  .lang-menu {
    max-width: 122px;
  }
  .lang-current {
    display: none;
  }
  .lang-short {
    display: inline;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}


/* v2.0.2: Remove repeated email and oversized nested RFQ panels. */
.footer {
  padding-block: 48px 24px;
}

.footer-grid {
  align-items: start;
  grid-template-columns: 1.25fr 1fr 1fr .9fr;
  gap: 32px 42px;
}

.footer-brand p {
  max-width: 31ch;
}

.copyright {
  margin-top: 34px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  display: block;
  width: 100%;
  text-align: center;
  font-size: 15px;
  line-height: 1.65;
  color: #aabdd0;
}

/* Keep the brand and localized rights statement intact on narrow screens.
   Allow a deliberate line break between the two complete phrases. */
.copyright {
  padding-inline: 16px;
}

.copyright > span {
  display: inline-block;
  white-space: nowrap;
}

/* One flat, breathable CTA instead of a card inside a card. */
.rfq-compact {
  background: #edf4f8;
  border-block: 1px solid #dfeaf1;
  padding: 54px 0;
}

.rfq-inline {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
  gap: clamp(32px, 5vw, 76px);
  align-items: center;
}

.rfq-inline-copy,
.rfq-inline-contact {
  min-width: 0;
}

.rfq-inline h2 {
  max-width: 24ch;
  margin: 11px 0 13px;
  font-size: clamp(29px, 3.1vw, 40px);
  line-height: 1.16;
  letter-spacing: -.032em;
  color: #0b253a;
}

.rfq-inline p {
  max-width: 64ch;
  margin: 0;
  color: #51687d;
  font-size: 16px;
  line-height: 1.7;
}

.rfq-inline-contact {
  padding-inline-start: 34px;
  border-inline-start: 1px solid #cbdce8;
}

.rfq-email-label {
  display: block;
  margin-bottom: 11px;
  color: #526b80;
  font-size: 15px;
  font-weight: 700;
}

.rfq-email-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 18px;
}

.rfq-email-link,
.contact-page-address {
  color: #0c3448;
  font-size: clamp(18px, 2vw, 22px);
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: -.02em;
  text-decoration: underline;
  text-decoration-color: #7da7b5;
  text-underline-offset: 5px;
  overflow-wrap: anywhere;
}

.rfq-email-link:hover,
.contact-page-address:hover {
  color: #007b78;
}

.email-copy-btn {
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid #102e40;
  border-radius: 8px;
  background: #0a2031;
  color: #fff;
  font: inherit;
  font-size: 15px;
  line-height: 1.3;
  font-weight: 750;
  cursor: pointer;
  transition: background-color .15s ease;
}

.email-copy-btn:hover,
.email-copy-btn:focus-visible {
  background: #116b70;
  border-color: #116b70;
}

/* Contact page keeps the RFQ brief without repeating the hero copy. */
.contact-page-hero {
  padding-bottom: 56px !important;
}

.contact-page-section {
  padding-block: 60px;
  background: #f4f8fb;
}

.contact-page-grid {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: clamp(32px, 6vw, 80px);
  align-items: start;
}

.contact-page-email {
  min-width: 0;
  padding-top: 10px;
}

.contact-page-address {
  display: inline-block;
  margin-top: 18px;
  font-size: clamp(20px, 2.3vw, 26px);
}

.contact-page-actions {
  margin-top: 24px;
}

.contact-page-brief {
  border-inline-start: 2px solid #d1e1ea;
  padding-inline-start: 30px;
}

.contact-page-brief h2 {
  font-size: clamp(24px, 2.5vw, 31px);
  line-height: 1.22;
  margin: 0 0 18px;
  color: #0b253a;
}

.contact-page-brief ul {
  margin: 0;
  padding-inline-start: 22px;
  color: #40586c;
  font-size: 16px;
  line-height: 1.8;
}

.contact-page-brief li + li {
  margin-top: 7px;
}

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

@media (max-width: 940px) {
  .rfq-inline,
  .contact-page-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .rfq-inline-contact,
  .contact-page-brief {
    border-inline-start: 0;
    border-top: 1px solid #cbdce8;
    padding-inline-start: 0;
    padding-top: 23px;
  }
}

@media (max-width: 560px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .footer {
    padding-block: 42px 24px;
  }
  .rfq-compact {
    padding-block: 43px;
  }
  .rfq-inline h2 {
    font-size: clamp(27px, 7vw, 34px);
  }
  .rfq-email-actions {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }
  .contact-page-section {
    padding-block: 46px;
  }
  .contact-page-address {
    font-size: clamp(18px, 5.4vw, 24px);
  }
}
