:root {
  --ink: #e9f2f8;
  --muted: #9cb0c2;
  --blue: #69d0e8;
  --blue-bright: #69d0e8;
  --red: #f04450;
  --navy: #050d19;
  --navy-soft: #0c1a2b;
  --line: rgba(156, 196, 218, .16);
  --paper: #0b1726;
}

body {
  background: #07111e;
  color: #dce8f1;
}
a { color: #7bd6ea; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible {
  outline: 2px solid #79d9ed;
  outline-offset: 3px;
}
main, .container, .container > *, .contact-card > div { min-width: 0; }

.site-header {
  border-bottom: 1px solid rgba(108, 210, 234, .16);
  background: rgba(5, 13, 25, .95);
  box-shadow: 0 8px 32px rgba(0, 0, 0, .18);
}
.header-inner { min-height: 84px; }
.brand {
  display: flex;
  flex: 0 0 auto;
  width: 247px;
  height: auto;
  align-items: center;
  gap: 11px;
  overflow: visible;
  background: transparent;
  text-decoration: none;
}
.brand img {
  flex: 0 0 57px;
  width: 57px;
  height: 45px;
  max-width: 57px;
  padding: 2px;
  border: 1px solid rgba(240, 68, 80, .76);
  border-radius: 4px;
  background: #fff;
  object-fit: contain;
  filter: drop-shadow(0 0 12px rgba(240, 68, 80, .18));
}
.brand-copy { display: grid; gap: 1px; line-height: 1.2; }
.brand-copy strong, .brand-copy small { text-decoration: none; }
.brand-copy strong { color: #f4f8fb; font-size: 19px; letter-spacing: .015em; }
.brand-copy small { color: #7b98ad; font-size: 15px; letter-spacing: .09em; text-transform: uppercase; }
.primary-nav { gap: clamp(10px, 1.2vw, 18px); }
.primary-nav > a, .primary-nav .nav-products > a, .primary-nav .nav-services > a, .primary-nav .nav-solutions > a, .primary-nav .nav-docs > a, .primary-nav .nav-product-dropdown > summary { color: #aebfd0; font-size: 18px; }
.primary-nav > a:hover, .primary-nav > a.active, .primary-nav .nav-products > a:hover, .primary-nav .nav-products > a.active, .primary-nav .nav-services > a:hover, .primary-nav .nav-services > a.active, .primary-nav .nav-solutions > a:hover, .primary-nav .nav-solutions > a.active, .primary-nav .nav-docs > a:hover, .primary-nav .nav-docs > a.active, .primary-nav .nav-product-dropdown > summary:hover { color: #f4f9fb; }
.primary-nav > a::after, .primary-nav .nav-products > a::after, .primary-nav .nav-services > a::after, .primary-nav .nav-solutions > a::after, .primary-nav .nav-docs > a::after { background: linear-gradient(90deg, #f04450, #6ad5ed); }
.primary-nav .nav-product-dropdown > summary { color: #75d9ed; }
.primary-nav .nav-product-menu a { color: #e5f4f8; }
.header-contact {
  border-color: rgba(105, 208, 232, .42);
  background: rgba(25, 75, 100, .13);
  color: #e5f5fa;
}
.header-contact:hover { border-color: #68cfe8; background: rgba(54, 147, 177, .19); }
.header-contact span { color: #f04450; }
.menu-toggle { border-color: rgba(129, 178, 200, .3); background: #0b1929; }
.menu-toggle > span:not(.sr-only) { background: #a7d7e5; }

.hero {
  isolation: isolate;
  background:
    radial-gradient(ellipse at 79% 38%, rgba(31, 149, 181, .23), transparent 35%),
    radial-gradient(ellipse at 15% 90%, rgba(92, 42, 64, .16), transparent 30%),
    linear-gradient(125deg, #071321 0%, #0b1b2c 54%, #081321 100%);
}
.home-hero { padding: 76px 0 42px; }
.home-hero::before, .page-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  background-image: linear-gradient(rgba(135, 195, 215, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(135, 195, 215, .05) 1px, transparent 1px);
  background-size: 52px 52px;
  content: "";
  mask-image: linear-gradient(90deg, transparent, #000 34%, #000 88%, transparent);
}
.home-hero::after, .page-hero::after {
  position: absolute;
  z-index: -1;
  top: 10%;
  right: -13%;
  width: 42vw;
  height: 42vw;
  border: 1px solid rgba(93, 196, 218, .1);
  border-radius: 50%;
  box-shadow: 0 0 0 35px rgba(89, 175, 202, .025), 0 0 0 82px rgba(89, 175, 202, .02);
  content: "";
  pointer-events: none;
}
.hero-grid { grid-template-columns: minmax(0, 1.03fr) minmax(400px, .97fr); gap: 45px; }
.hero .eyebrow, .page-hero .eyebrow { color: #82d5e8; }
.hero h1, .page-hero h1 {
  max-width: 750px;
  font-size: clamp(56px, 5.6vw, 81px);
  font-weight: 680;
  letter-spacing: -.065em;
  line-height: 1.01;
}
.hero h1 span, .page-hero h1 span {
  color: #85dff0;
  text-shadow: 0 0 28px rgba(93, 207, 229, .18);
}
.hero .hero-lead, .page-hero .hero-lead { color: #e5f1f6; font-size: 24px; }
.hero p, .page-hero p { color: #aebfd0; }
.hero-copy > p:not(.eyebrow):not(.hero-lead) { max-width: 600px; font-size: 20px; line-height: 1.8; }
.hero-proof { color: #91a9bc; }
.proof-mark { border-color: rgba(240, 68, 80, .7); color: #ff737c; box-shadow: 0 0 22px rgba(240, 68, 80, .12); }
.hero-actions { margin-top: 25px; }
.button {
  border-radius: 4px;
  letter-spacing: .015em;
  text-transform: none;
}
.button-primary {
  background: linear-gradient(110deg, #d93347, #f4525d);
  box-shadow: 0 8px 25px rgba(240, 68, 80, .23);
}
.button-primary:hover { background: linear-gradient(110deg, #f04450, #fb6a72); box-shadow: 0 10px 32px rgba(240, 68, 80, .32); }
.button-quiet { border-color: rgba(112, 207, 230, .36); background: rgba(19, 60, 82, .16); color: #d6edf5; }
.button-quiet:hover { background: rgba(74, 165, 192, .14); }
.button-outline { border-color: rgba(105, 208, 232, .42); color: #d8ecf3; background: rgba(15, 39, 58, .3); }
.button-outline:hover { border-color: #70d5ea; background: rgba(72, 160, 187, .12); }
.hero-visual {
  min-height: 456px;
  perspective: 1000px;
}
.hero-visual > img {
  z-index: 1;
  width: min(100%, 570px);
  aspect-ratio: 1.24;
  border: 0;
  border-radius: 18px;
  background: transparent;
  box-shadow: none;
  object-fit: contain;
  transform: rotateY(-7deg) rotateX(2deg);
  filter: drop-shadow(0 35px 40px rgba(0, 0, 0, .32));
  animation: chip-float 7s ease-in-out infinite;
}
.hero-visual > img.brand-art {
  padding: 20px;
  border: 1px solid rgba(240, 68, 80, .5);
  border-radius: 10px;
  background: #fff;
}
.visual-glow {
  width: 67%;
  height: 67%;
  background: rgba(25, 181, 207, .2);
  filter: blur(70px);
}
.orbit {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  width: 104%;
  height: 72%;
  border: 1px solid rgba(94, 209, 231, .16);
  border-radius: 50%;
  transform: translate(-50%, -50%) rotate(-19deg);
}
.orbit-two { width: 91%; height: 83%; border-color: rgba(240, 68, 80, .14); transform: translate(-50%, -50%) rotate(37deg); }
.visual-caption, .visual-chip {
  border: 1px solid rgba(119, 210, 229, .28);
  background: rgba(7, 20, 34, .9);
  box-shadow: 0 0 28px rgba(27, 157, 191, .1);
}
.visual-caption { right: -4px; bottom: 25px; color: #d8eef3; }
.chip-one { top: 23px; left: -7px; color: #d4eef6; }
.chip-two { right: 1px; top: 68px; color: #d4eef6; }
.status-dot { box-shadow: 0 0 10px rgba(104, 214, 165, .8); }
.hero-grid-lines { opacity: .03; }
.technology-strip {
  position: relative;
  z-index: 2;
  overflow: hidden;
  border-top: 1px solid rgba(115, 198, 220, .16);
  border-bottom: 1px solid rgba(115, 198, 220, .13);
  background: rgba(5, 13, 25, .86);
}
.technology-inner { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 17px; white-space: nowrap; }
.technology-inner span { color: #a8bdce; font-size: 16px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.technology-inner .technology-label { color: #f07881; font-size: 15px; letter-spacing: .16em; }
.technology-inner i { width: 4px; height: 4px; flex: 0 0 auto; border-radius: 50%; background: #65c9e0; box-shadow: 0 0 10px #65c9e0; }
@keyframes chip-float {
  0%, 100% { transform: translateY(0) rotateY(-7deg) rotateX(2deg); }
  50% { transform: translateY(-8px) rotateY(-5deg) rotateX(1deg); }
}

.section-space { background: #07111e; }
.intro-section { position: relative; overflow: hidden; background: linear-gradient(110deg, #0c1c2e, #0b1727); }
.intro-section::after {
  position: absolute;
  right: -75px;
  bottom: -170px;
  width: 380px;
  height: 380px;
  border: 1px solid rgba(92, 203, 224, .13);
  border-radius: 50%;
  box-shadow: 0 0 0 24px rgba(92, 203, 224, .025), 0 0 0 55px rgba(92, 203, 224, .018);
  content: "";
}
.intro-grid, .split-grid, .section-heading, .feature-grid, .updates-grid { position: relative; z-index: 1; }
.intro-grid h2, .section-heading h2, .split-copy h2, .about-content h2, .service-content > h2, .solution-copy h2, .jobs-content > h2, .contact-details h2, .contact-form-panel h2 {
  color: #edf5f8;
}
.intro-copy p, .split-copy p, .about-content > p, .service-content p, .solution-copy > p, .jobs-content p, .product-content p, .contact-details p { color: #aabccd; }
.intro-copy p { font-size: 20px; }
.text-link { color: #79d2e7; }
.text-link:hover { color: #b8f2ff; }
.section-heading { align-items: end; }
.section-heading h2 { position: relative; }
.section-heading h2::after {
  display: block;
  width: 46px;
  height: 2px;
  margin-top: 12px;
  background: linear-gradient(90deg, #f04450, #6cd6eb);
  box-shadow: 0 0 13px rgba(103, 212, 233, .45);
  content: "";
}
.feature-card {
  min-height: 315px;
  overflow: hidden;
  border: 1px solid rgba(111, 180, 207, .19);
  background: linear-gradient(145deg, rgba(17, 42, 65, .9), rgba(9, 23, 39, .94));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 18px 45px rgba(0,0,0,.12);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.feature-card::before {
  position: absolute;
  top: 0;
  left: 27px;
  width: 42px;
  height: 2px;
  background: linear-gradient(90deg, #ef4656, #64d4e9);
  box-shadow: 0 0 17px rgba(91, 208, 230, .55);
  content: "";
}
.feature-card::after {
  position: absolute;
  right: -42px;
  bottom: -62px;
  width: 140px;
  height: 140px;
  border: 1px solid rgba(109, 203, 224, .11);
  border-radius: 50%;
  box-shadow: 0 0 0 16px rgba(109, 203, 224, .025);
  content: "";
}
.feature-card:hover { transform: translateY(-5px); border-color: rgba(106, 214, 235, .47); box-shadow: 0 20px 55px rgba(0,0,0,.22), 0 0 28px rgba(48, 157, 188, .08); }
.feature-card-blue, .feature-card-cream, .feature-card-dark { color: #e9f2f7; background: linear-gradient(145deg, #10253a, #091727); }
.feature-card h3 { color: #f4f9fb; }
.feature-card p { color: #a9bdcd; }
.feature-card-dark p { color: #a9bdcd; }
.card-index { color: #7090a7; }
.feature-icon, .feature-card-dark .feature-icon {
  border: 1px solid rgba(104, 205, 228, .28);
  background: rgba(59, 160, 188, .1);
  color: #7ed8eb;
  box-shadow: 0 0 23px rgba(58, 173, 200, .1);
}
.feature-icon-red { border-color: rgba(240, 68, 80, .35); background: rgba(240, 68, 80, .1); color: #ff777f; }
.card-link, .feature-card-dark .card-link { position: relative; z-index: 1; color: #78d3e7; }
.split-section { position: relative; overflow: hidden; border-block: 1px solid rgba(110,190,211,.08); background: linear-gradient(105deg, #0c1a2b, #0a1523); }
.split-section .split-grid { grid-template-columns: 1fr; gap: 32px; }
.split-section .split-copy { order: -1; max-width: 850px; }
.service-infographic {
  position: relative;
  margin: 0;
  padding: 10px;
  overflow: hidden;
  border: 1px solid rgba(102, 202, 225, .28);
  border-radius: 10px;
  background: #061526;
  box-shadow: 0 24px 60px rgba(0,0,0,.28), 0 0 35px rgba(25, 164, 196, .1);
}
.service-infographic::before {
  position: absolute;
  z-index: 1;
  top: 10px;
  left: 10px;
  width: 32px;
  height: 2px;
  background: linear-gradient(90deg, #f04450, #6bd7ed);
  content: "";
}
.service-infographic img { width: 100%; height: auto; border-radius: 5px; }
.service-map-band {
  padding: 68px 0;
  border-block: 1px solid rgba(110,190,211,.12);
  background: linear-gradient(130deg, #091725, #0d2033);
}
.service-map-band .section-heading { margin-bottom: 22px; }
.jobs-infographic { margin: 26px 0; }
.split-image { border: 1px solid rgba(104, 202, 226, .23); background: #091624; box-shadow: 0 22px 55px rgba(0,0,0,.25); }
.split-image img { border: 1px solid rgba(129, 220, 236, .15); }
.image-note { border: 1px solid rgba(105,208,232,.35); background: #091827; color: #d4ecf2; }
.split-copy h2 { color: #eff7fa; }
.split-copy p:not(.eyebrow) { color: #aabccd; }
.services-overview {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(118, 185, 0, .2);
  background:
    radial-gradient(ellipse at 88% 10%, rgba(118, 185, 0, .12), transparent 32%),
    linear-gradient(135deg, #080d0a, #0c1510 58%, #080d0a);
}
.services-overview::before {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(151, 205, 73, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(151, 205, 73, .035) 1px, transparent 1px);
  background-size: 42px 42px;
  content: "";
  mask-image: linear-gradient(90deg, transparent, #000 38%, #000 86%, transparent);
  pointer-events: none;
}
.services-overview .container { position: relative; z-index: 1; }
.services-overview .section-heading h2 { color: #edf5f8; }
.services-overview .section-heading h2::after { background: linear-gradient(90deg, #76b900, #b5e853); box-shadow: 0 0 16px rgba(118, 185, 0, .4); }
.services-overview .eyebrow, .services-capability-index { color: #a5dc42; }
.services-overview-lead { color: #aab8a5; }
.services-capability-card {
  border-color: rgba(158, 204, 89, .22);
  background: linear-gradient(145deg, rgba(20, 32, 23, .96), rgba(10, 17, 12, .98));
  box-shadow: 0 20px 55px rgba(0, 0, 0, .28);
}
.services-capability-card:hover { border-color: rgba(173, 231, 77, .58); box-shadow: 0 25px 60px rgba(0, 0, 0, .34), 0 0 28px rgba(118, 185, 0, .11); }
.services-capability-card h3 { color: #eff5eb; }
.services-capability-card p { color: #a9b5a5; }
.services-card-link { border-color: rgba(158, 204, 89, .2); color: #b3e654; }
.services-card-link b { color: #b3e654; }
.services-focus-band {
  border-color: rgba(158, 204, 89, .22);
  background: linear-gradient(145deg, rgba(20, 32, 23, .96), rgba(10, 17, 12, .98));
  box-shadow: 0 20px 55px rgba(0, 0, 0, .28);
}
.services-focus-band h3 { color: #eff5eb; }
.services-focus-band p:not(.eyebrow) { color: #a9b5a5; }
.fpga-security-promo-inner { border-color: rgba(118, 185, 0, .25); background: linear-gradient(145deg, #101b15, #0b1726); }
.fpga-security-promo-inner h3 { color: #eff5eb; }
.fpga-security-promo-inner p:not(.eyebrow) { color: #a9b5a5; }
.services-focus-links a { border-color: rgba(158, 204, 89, .22); color: #e1ebdc; background: rgba(5, 10, 7, .42); }
.services-focus-links a:hover { border-color: rgba(173, 231, 77, .58); color: #e0ffa0; }
.showcase-section {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(118, 185, 0, .2);
  background:
    radial-gradient(ellipse at 88% 10%, rgba(118, 185, 0, .12), transparent 32%),
    linear-gradient(135deg, #080d0a, #0c1510 58%, #080d0a);
}
.showcase-section::before {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(151, 205, 73, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(151, 205, 73, .035) 1px, transparent 1px);
  background-size: 42px 42px;
  content: "";
  mask-image: linear-gradient(90deg, transparent, #000 38%, #000 86%, transparent);
  pointer-events: none;
}
.showcase-section .container { position: relative; z-index: 1; }
.showcase-section .section-heading h2::after { background: linear-gradient(90deg, #76b900, #b5e853); box-shadow: 0 0 16px rgba(118, 185, 0, .4); }
.showcase-section .eyebrow, .showcase-section .date-label { color: #a5dc42; }
.showcase-section .text-link { color: #b3e654; }
.showcase-section .text-link:hover { color: #e0ffa0; }
.showcase-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.showcase-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(158, 204, 89, .22);
  border-radius: 8px;
  background: linear-gradient(145deg, rgba(20, 32, 23, .96), rgba(10, 17, 12, .98));
  box-shadow: 0 20px 55px rgba(0, 0, 0, .28);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.showcase-card:hover { transform: translateY(-5px); border-color: rgba(173, 231, 77, .58); box-shadow: 0 25px 60px rgba(0, 0, 0, .34), 0 0 28px rgba(118, 185, 0, .11); }
.showcase-image {
  position: relative;
  height: 210px;
  overflow: hidden;
  background: radial-gradient(ellipse at 50% 50%, rgba(118, 185, 0, .16), transparent 66%), #080e0a;
}
.showcase-image::after { position: absolute; inset: 35% 0 0; background: linear-gradient(transparent, rgba(5, 10, 7, .84)); content: ""; }
.showcase-image img { width: 100%; height: 100%; object-fit: cover; opacity: .86; transition: transform .35s ease, opacity .35s ease; }
.showcase-card:hover .showcase-image img { transform: scale(1.04); opacity: 1; }
.showcase-card:nth-child(2) .showcase-image img { object-fit: contain; padding: 12px; }
.showcase-card:nth-child(3) .showcase-image img { object-fit: contain; padding: 18px; }
.showcase-image.brand-image::after { display: none; }
.showcase-image img.brand-art { padding: 18px; border: 1px solid rgba(240, 68, 80, .5); background: #fff; object-fit: contain; }
.showcase-index {
  position: absolute;
  z-index: 1;
  bottom: 13px;
  left: 15px;
  color: #d8f3a4;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .12em;
}
.showcase-copy { padding: 21px; }
.showcase-copy h3 { margin: 0 0 13px; color: #f0f5ea; font-size: 25px; line-height: 1.38; }
.showcase-copy > p:not(.date-label) { color: #a9b5a5; font-size: 20px; }
.showcase-grid-contact { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 970px; }
.showcase-grid-contact .showcase-image { height: 250px; }

.page-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-bottom: 1px solid rgba(98, 200, 225, .16);
  background:
    radial-gradient(ellipse at 88% 34%, rgba(39, 165, 191, .2), transparent 33%),
    linear-gradient(120deg, #071321, #0b1b2c 65%, #081321);
}
.page-hero h1 { font-size: clamp(50px, 5vw, 71px); }
.page-hero-art, .page-hero-product, .contact-hero-photo {
  border: 1px solid rgba(107, 202, 224, .34);
  background: #0b1b2b;
  box-shadow: 0 25px 70px rgba(0,0,0,.3), 0 0 35px rgba(37, 158, 187, .08);
}
.page-hero-art img, .page-hero-art.diagram-art img { filter: saturate(.8) contrast(1.03); }
.page-hero-art img.brand-art { padding: 20px; background: #fff; object-fit: contain; }
.page-hero-product img { opacity: .94; }
.page-hero-mark { border: 1px solid rgba(101, 208, 230, .4); background: rgba(255,255,255,.96); box-shadow: 0 18px 55px rgba(0,0,0,.28), 0 0 32px rgba(63, 178, 207, .09); }

.about-aside .aside-photo { border: 1px solid rgba(108, 192, 216, .22); background: #0d2134; }
.aside-card, .solution-aside, .training-panel { border: 1px solid rgba(106, 204, 226, .2); background: linear-gradient(145deg, #10253a, #091725); box-shadow: 0 16px 44px rgba(0,0,0,.2); }
.check-list li { color: #b2c3d1; }
.about-company-section {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(118, 185, 0, .2);
  background:
    radial-gradient(ellipse at 88% 10%, rgba(118, 185, 0, .12), transparent 32%),
    linear-gradient(135deg, #080d0a, #0c1510 58%, #080d0a);
}
.about-company-section::before {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(151, 205, 73, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(151, 205, 73, .035) 1px, transparent 1px);
  background-size: 42px 42px;
  content: "";
  mask-image: linear-gradient(90deg, transparent, #000 14%, #000 86%, transparent);
  pointer-events: none;
}
.about-company-section > .container { position: relative; z-index: 1; }
.about-company-section .about-content > .eyebrow,
.about-company-section .eyebrow-light { color: #a5dc42; }
.about-company-section .about-content h2,
.about-company-section .about-content strong { color: #eff5eb; }
.about-company-section .about-content > p { color: #b1bcae; }
.about-company-section .content-divider { background: rgba(158, 204, 89, .2); }
.about-company-section .aside-photo { border-color: rgba(158, 204, 89, .26); background: #101a11; }
.about-company-section .aside-card,
.about-company-section .support-panel,
.about-company-section .expertise-card {
  border-color: rgba(158, 204, 89, .22);
  background: linear-gradient(145deg, rgba(20, 32, 23, .96), rgba(10, 17, 12, .98));
  box-shadow: 0 16px 44px rgba(0, 0, 0, .24);
}
.about-company-section .aside-card,
.about-company-section .check-list li,
.about-company-section .support-list,
.about-company-section .expertise-card ul { color: #b1bcae; }
.about-company-section .check-list li::before { color: #a5dc42; }
.about-company-section .support-panel h3,
.about-company-section .expertise-card h3 { color: #eff5eb; }
.about-company-section .button-primary { background: linear-gradient(110deg, #76b900, #9bd329); color: #10160b; }
.about-company-section .button-primary:hover { background: linear-gradient(110deg, #91d01e, #b5e853); box-shadow: 0 10px 32px rgba(118, 185, 0, .28); }
.support-panel, .expertise-card, .service-intro, .jobs-aside, .product-sidebar, .solution-callout {
  border: 1px solid rgba(112, 178, 202, .16);
  background: linear-gradient(145deg, #0e2032, #0a1726);
  color: #e0eaf0;
}
.support-panel h3, .expertise-card h3, .side-expertise h3 { color: #eef6f8; }
.support-list, .expertise-card ul { color: #afc0cf; }
.content-divider, .side-expertise { border-color: rgba(156,196,218,.16); }
.service-intro > p:not(.eyebrow), .side-expertise p, .jobs-aside p:not(.eyebrow), .product-sidebar > p:not(.eyebrow) { color: #adbecc; }
.service-content h4, .service-band h3, .service-block h3, .jobs-content h3 { color: #e9f3f8; }
.service-band { border: 1px solid rgba(100,190,215,.17); border-left: 3px solid #f04450; background: rgba(15, 34, 53, .9); }
.tag-list li, .service-subgrid > div {
  border-color: rgba(111,180,207,.19);
  background: rgba(8, 22, 37, .88);
  color: #b5c7d5;
}
.service-block { border-color: rgba(156,196,218,.16); }
.service-content ul li, .jobs-content li { color: #aec0ce; }
.solutions-grid .solution-copy h3 { color: #eaf3f7; }
.solution-callout { box-shadow: inset 3px 0 0 #65cce3; }
.solution-callout p { color: #b3c4d1; }
.ecosystem-section {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(118, 185, 0, .2);
  background:
    radial-gradient(ellipse at 88% 8%, rgba(118, 185, 0, .12), transparent 32%),
    linear-gradient(135deg, #080d0a, #0c1510 58%, #080d0a);
}
.ecosystem-section::before {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(151, 205, 73, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(151, 205, 73, .035) 1px, transparent 1px);
  background-size: 42px 42px;
  content: "";
  mask-image: linear-gradient(90deg, transparent, #000 18%, #000 86%, transparent);
  pointer-events: none;
}
.ecosystem-section > .container { position: relative; z-index: 1; }
.ecosystem-heading { max-width: 900px; margin-bottom: 24px; }
.ecosystem-heading .eyebrow { color: #a5dc42; }
.ecosystem-heading h2 { margin: 0 0 14px; color: #eff5eb; font-size: clamp(30px, 3vw, 43px); line-height: 1.2; }
.ecosystem-heading p:not(.eyebrow) { margin: 0; color: #b1bcae; }
.ecosystem-architectures { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 23px; }
.ecosystem-architectures span { padding: 6px 12px; border: 1px solid rgba(173, 231, 77, .3); border-radius: 4px; background: rgba(118, 185, 0, .08); color: #c5e990; font-size: 15px; font-weight: 800; letter-spacing: .08em; }
.ecosystem-vendors { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.ecosystem-vendor { min-width: 0; padding: 15px; border: 1px solid rgba(158, 204, 89, .2); border-radius: 7px; background: linear-gradient(145deg, rgba(20, 32, 23, .96), rgba(10, 17, 12, .98)); box-shadow: 0 15px 38px rgba(0, 0, 0, .22); transition: transform .2s ease, border-color .2s ease; }
.ecosystem-vendor:hover { transform: translateY(-3px); border-color: rgba(173, 231, 77, .52); }
.ecosystem-logo { display: grid; height: 66px; place-items: center; margin-bottom: 13px; padding: 10px; border: 1px solid rgba(255, 255, 255, .7); border-radius: 4px; background: #f3f6f7; }
.ecosystem-logo img { max-width: 100%; max-height: 44px; object-fit: contain; }
.ecosystem-vendor h3 { margin: 0 0 3px; color: #eff5eb; font-size: 18px; line-height: 1.3; }
.ecosystem-vendor p { margin: 0; color: #a9b5a5; font-size: 15px; line-height: 1.45; }
.ecosystem-note { margin: 18px 0 0; color: #9cad99; font-size: 15px; }
.security-lifecycle-section {
  position: relative;
  overflow: hidden;
  border-block: 1px solid rgba(111, 180, 207, .18);
  background:
    radial-gradient(ellipse at 12% 6%, rgba(46, 129, 153, .12), transparent 34%),
    linear-gradient(135deg, #08121d, #0b1926 58%, #08121d);
}
.security-lifecycle-section::before {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(135, 195, 215, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(135, 195, 215, .035) 1px, transparent 1px);
  background-size: 42px 42px;
  content: "";
  mask-image: linear-gradient(90deg, transparent, #000 18%, #000 86%, transparent);
  pointer-events: none;
}
.security-lifecycle-section > .container { position: relative; z-index: 1; }
.security-lifecycle-heading { max-width: 870px; margin-bottom: 28px; }
.security-lifecycle-heading .eyebrow { color: #80d9eb; }
.security-lifecycle-heading h2 { margin: 0 0 14px; color: #edf5f8; font-size: clamp(30px, 3vw, 43px); line-height: 1.2; }
.security-lifecycle-heading > p:last-child { margin: 0; color: #aabccd; }
.security-lifecycle-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.security-lifecycle-step { min-width: 0; padding: 21px; border: 1px solid rgba(111, 180, 207, .2); border-radius: 7px; background: linear-gradient(145deg, rgba(16, 34, 53, .94), rgba(8, 20, 32, .98)); box-shadow: 0 16px 40px rgba(0, 0, 0, .22); }
.security-lifecycle-step > span { color: #79d2e7; font-size: 13px; font-weight: 800; letter-spacing: .1em; }
.security-lifecycle-step h3 { margin: 10px 0 8px; color: #eef6f9; font-size: 21px; line-height: 1.3; }
.security-lifecycle-step p { margin: 0; color: #aabccd; font-size: 17px; line-height: 1.6; }
.security-lifecycle-note { margin-top: 18px; padding: 20px 22px; border: 1px solid rgba(105, 208, 232, .2); border-left: 3px solid #65cce3; border-radius: 6px; background: rgba(7, 17, 28, .82); }
.security-lifecycle-note strong { color: #d8f4fa; font-size: 17px; }
.security-lifecycle-note p { margin: 5px 0 0; color: #aabccd; font-size: 16px; line-height: 1.6; }
.jobs-aside hr { border-color: rgba(156,196,218,.16); }
.job-title { color: #aec0ce; }
.training-panel { background: linear-gradient(140deg, #10263b, #091625); }
.training-panel h3 { color: #f0f7f9; }
.training-list li { color: #c0ced9; }
.product-sidebar .check-list li { color: #b3c4d1; }
.product-intro { border-color: rgba(156,196,218,.16); }
.product-list li { color: #b6c6d2; }
.product-feature { border-color: rgba(106,193,217,.22); background: linear-gradient(145deg, #102237, #0a1726); box-shadow: 0 18px 50px rgba(0,0,0,.2); }
.product-photo { border-color: rgba(118,200,222,.23); background: #f7f8f8; }
.product-feature-copy h2 { color: #eef6f9; }
.product-feature-copy > p:not(.eyebrow) { color: #aec0cf; }
.contact-card, .contact-form-panel {
  border-color: rgba(105, 181, 207, .22);
  background: linear-gradient(145deg, #102136, #0a1726);
  box-shadow: 0 16px 45px rgba(0,0,0,.17);
}
.contact-card h3 { color: #eaf3f7; }
.contact-card p, .contact-card a { color: #b5c5d1; overflow-wrap: anywhere; }
.contact-icon { border: 1px solid rgba(105,208,232,.24); background: rgba(42,138,164,.12); color: #83d9e9; }
.contact-form-panel label { color: #bfd0db; }
.contact-form-panel input, .contact-form-panel textarea {
  border-color: rgba(117,177,199,.27);
  background: rgba(5, 15, 27, .7);
  color: #e6f0f4;
}
.contact-form-panel input::placeholder, .contact-form-panel textarea::placeholder { color: #73899b; }
.form-note { color: #9db0bf; }
.site-footer { border-top: 1px solid rgba(102, 195, 218, .19); background: #050d18; }
.footer-brand {
  display: flex;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  height: auto;
  align-items: center;
  gap: 10px;
  overflow: visible;
  background: transparent;
  text-decoration: none;
}
.footer-brand .brand-copy { min-width: 0; }
.footer-brand img {
  flex: 0 0 48px;
  width: 48px;
  height: 40px;
  max-width: 48px;
  padding: 2px;
  border: 1px solid rgba(240, 68, 80, .72);
  border-radius: 3px;
  background: #fff;
  object-fit: contain;
  transform: none;
}
.footer-brand .brand-copy strong { font-size: 17px; }
.footer-brand .brand-copy small { font-size: 14px; }
.footer-main > p { color: #8fa5b8; }
.footer-links a, .footer-email { color: #a9bdcc; }
.footer-links a:hover, .footer-email:hover { color: #7ad9ec; }
.footer-bottom { border-color: rgba(137,188,208,.15); color: #778fa3; }
.footer-bottom a { color: #9eb3c2; }

.ai-hero .page-hero-grid { grid-template-columns: 1.1fr .9fr; }
.ai-hero-visual { perspective: 900px; }
.ai-visual-orbit { border-color: rgba(99,211,234,.34); box-shadow: 0 0 26px rgba(48,173,203,.08); }
.ai-orbit-two { border-color: rgba(240,68,80,.22); }
.ai-core { border-color: rgba(112,214,235,.62); background: linear-gradient(145deg, rgba(31,94,119,.78), rgba(5,16,30,.96)); box-shadow: inset 0 1px rgba(255,255,255,.22), 0 0 66px rgba(41,179,207,.28); }
.ai-node { border-color: rgba(105,208,232,.34); background: rgba(7,21,36,.84); color: #b7dce5; box-shadow: 0 0 22px rgba(27,157,191,.1); }
.ai-services-section { background: linear-gradient(180deg, #071321, #091827 52%, #07111e); }
.ai-services-section .section-heading h2 { color: #edf5f8; }
.ai-section-lead { color: #aabccd; }
.ai-service-card { border-color: rgba(111,180,207,.2); background: linear-gradient(145deg, #102237, #091725); box-shadow: 0 18px 44px rgba(0,0,0,.18); }
.ai-service-card h3, .ai-capability h4 { color: #eef6f9; }
.ai-service-card > p:not(.eyebrow), .ai-capability p, .ai-feature-list li { color: #adbecc; }
.ai-card-index { color: #74d6e9; }
.ai-card-label { color: #809caf; }
.ai-capability { border-color: rgba(156,196,218,.16); }
.ai-feature-list li::before { background: #72d9ec; box-shadow: 0 0 10px rgba(114,217,236,.48); }
.ai-process { border-color: rgba(156,196,218,.16); }
.ai-process-heading h2, .ai-process-step h3 { color: #edf5f8; }
.ai-process-heading > p:last-child, .ai-process-step > p:last-child { color: #aabccd; }
.ai-process-step { border-color: rgba(111,180,207,.2); background: linear-gradient(145deg, #102237, #091725); box-shadow: 0 18px 44px rgba(0,0,0,.14); }
.ai-process-number { border-color: rgba(105,208,232,.38); color: #74d6e9; }
.ai-services-cta { border-color: rgba(105,181,207,.22); background: linear-gradient(145deg, #102136, #0a1726); box-shadow: 0 16px 45px rgba(0,0,0,.17); }
.ai-services-cta h2 { color: #eef6f9; }
.firmware-section { background: linear-gradient(180deg, #081625, #0b1b2c); }
.firmware-section .section-heading h2, .firmware-process-heading h2 { color: #edf5f8; }
.firmware-section-lead, .firmware-card p, .firmware-card li, .firmware-process-heading > p:last-child, .firmware-step > p:last-child { color: #aabccd; }
.firmware-card, .firmware-step { border-color: rgba(111,180,207,.2); background: linear-gradient(145deg, #102237, #091725); box-shadow: 0 18px 44px rgba(0,0,0,.16); }
.firmware-card h3, .firmware-step h3 { color: #eef6f9; }
.firmware-card-index, .firmware-step-number { color: #74d6e9; }
.firmware-card li::before { background: #72d9ec; box-shadow: 0 0 10px rgba(114,217,236,.48); }
.firmware-process { border-color: rgba(156,196,218,.16); }
.firmware-step-number { border-color: rgba(105,208,232,.38); }
.firmware-cta { border-color: rgba(105,181,207,.22); background: linear-gradient(145deg, #102136, #0a1726); box-shadow: 0 16px 45px rgba(0,0,0,.17); }
.firmware-cta h2 { color: #eef6f9; }
.firmware-visual { position: relative; display: grid; min-height: 350px; place-items: center; overflow: hidden; perspective: 900px; }
.firmware-orbit { position: absolute; width: min(78%, 320px); aspect-ratio: 1; border: 1px solid rgba(105,208,232,.3); border-radius: 50%; }
.firmware-orbit-one { transform: rotateX(62deg) rotateZ(-25deg); }
.firmware-orbit-two { width: min(62%, 250px); border-color: rgba(240,68,80,.24); transform: rotateX(62deg) rotateZ(35deg); }
.firmware-core { position: relative; display: grid; width: 122px; height: 122px; align-content: center; justify-items: center; border: 1px solid rgba(112,214,235,.56); border-radius: 28px; background: linear-gradient(145deg, rgba(32,94,120,.72), rgba(5,16,30,.96)); box-shadow: inset 0 1px rgba(255,255,255,.2), 0 0 60px rgba(41,179,207,.24); transform: rotate(45deg); }
.firmware-core span, .firmware-core strong { transform: rotate(-45deg); }
.firmware-core span { color: #8cbdcb; font-size: 13px; font-weight: 700; letter-spacing: .18em; }
.firmware-core strong { color: #e9fbff; font-size: 38px; line-height: 1.1; }
.firmware-node { position: absolute; padding: 7px 10px; border: 1px solid rgba(105,208,232,.36); border-radius: 4px; background: rgba(7,21,36,.9); color: #b7dce5; font-size: 13px; font-weight: 700; letter-spacing: .1em; }
.firmware-node-one { top: 10%; left: 50%; transform: translateX(-50%); }
.firmware-node-two { top: 53%; right: 5%; }
.firmware-node-three { bottom: 10%; left: 12%; }
.embedded-ai-section { background: linear-gradient(180deg, #081625, #0b1b2c); }
.embedded-ai-section .section-heading h2, .embedded-ai-process-heading h2 { color: #edf5f8; }
.embedded-ai-lead, .embedded-ai-card p, .embedded-ai-card li, .embedded-ai-process-heading > p:last-child, .embedded-ai-step > p:last-child { color: #aabccd; }
.embedded-ai-card, .embedded-ai-step { border-color: rgba(111,180,207,.2); background: linear-gradient(145deg, #102237, #091725); box-shadow: 0 18px 44px rgba(0,0,0,.16); }
.embedded-ai-card h3, .embedded-ai-step h3 { color: #eef6f9; }
.embedded-ai-index, .embedded-ai-step-number { color: #74d6e9; }
.embedded-ai-card li::before { background: #72d9ec; box-shadow: 0 0 10px rgba(114,217,236,.48); }
.embedded-ai-process { border-color: rgba(156,196,218,.16); }
.embedded-ai-step-number { border-color: rgba(105,208,232,.38); }
.embedded-ai-cta { border-color: rgba(105,181,207,.22); background: linear-gradient(145deg, #102136, #0a1726); box-shadow: 0 16px 45px rgba(0,0,0,.17); }
.embedded-ai-cta h2 { color: #eef6f9; }
.embedded-ai-visual { position: relative; display: grid; min-height: 350px; place-items: center; overflow: hidden; perspective: 900px; }
.embedded-ai-ring { position: absolute; width: min(78%, 320px); aspect-ratio: 1; border: 1px solid rgba(105,208,232,.3); border-radius: 50%; }
.embedded-ai-ring-one { transform: rotateX(62deg) rotateZ(-25deg); }
.embedded-ai-ring-two { width: min(62%, 250px); border-color: rgba(240,68,80,.24); transform: rotateX(62deg) rotateZ(35deg); }
.embedded-ai-chip { position: relative; display: grid; width: 142px; height: 142px; align-content: center; justify-items: center; gap: 7px; border: 1px solid rgba(112,214,235,.56); border-radius: 28px; background: linear-gradient(145deg, rgba(32,94,120,.72), rgba(5,16,30,.96)); box-shadow: inset 0 1px rgba(255,255,255,.2), 0 0 60px rgba(41,179,207,.24); transform: rotate(45deg); }
.embedded-ai-chip span, .embedded-ai-chip strong { transform: rotate(-45deg); }
.embedded-ai-chip span { color: #8cbdcb; font-size: 13px; font-weight: 700; letter-spacing: .18em; }
.embedded-ai-chip strong { color: #e9fbff; font-size: 20px; letter-spacing: .08em; }
.embedded-ai-node { position: absolute; padding: 7px 10px; border: 1px solid rgba(105,208,232,.36); border-radius: 4px; background: rgba(7,21,36,.9); color: #b7dce5; font-size: 13px; font-weight: 700; letter-spacing: .1em; }
.embedded-ai-node-one { top: 10%; left: 50%; transform: translateX(-50%); }
.embedded-ai-node-two { top: 53%; right: 5%; }
.embedded-ai-node-three { bottom: 10%; left: 12%; }
.automotive-section { background: linear-gradient(180deg, #081625, #0b1b2c); }
.automotive-section .section-heading h2, .automotive-process-heading h2 { color: #edf5f8; }
.automotive-lead, .automotive-card p, .automotive-card li, .automotive-process-heading > p:last-child, .automotive-step > p:last-child { color: #aabccd; }
.automotive-card, .automotive-step { border-color: rgba(111,180,207,.2); background: linear-gradient(145deg, #102237, #091725); box-shadow: 0 18px 44px rgba(0,0,0,.16); }
.automotive-card h3, .automotive-step h3 { color: #eef6f9; }
.automotive-index, .automotive-step-number { color: #74d6e9; }
.automotive-card li::before { background: #72d9ec; box-shadow: 0 0 10px rgba(114,217,236,.48); }
.automotive-process { border-color: rgba(156,196,218,.16); }
.automotive-step-number { border-color: rgba(105,208,232,.38); }
.automotive-cta { border-color: rgba(105,181,207,.22); background: linear-gradient(145deg, #102136, #0a1726); box-shadow: 0 16px 45px rgba(0,0,0,.17); }
.automotive-cta h2 { color: #eef6f9; }
.automotive-visual { position: relative; display: grid; min-height: 350px; place-items: center; overflow: hidden; perspective: 900px; }
.automotive-orbit { position: absolute; width: min(78%, 320px); aspect-ratio: 1; border: 1px solid rgba(105,208,232,.3); border-radius: 50%; }
.automotive-orbit-one { transform: rotateX(62deg) rotateZ(-25deg); }
.automotive-orbit-two { width: min(62%, 250px); border-color: rgba(240,68,80,.24); transform: rotateX(62deg) rotateZ(35deg); }
.automotive-core { position: relative; display: grid; width: 122px; height: 122px; align-content: center; justify-items: center; border: 1px solid rgba(112,214,235,.56); border-radius: 28px; background: linear-gradient(145deg, rgba(32,94,120,.72), rgba(5,16,30,.96)); box-shadow: inset 0 1px rgba(255,255,255,.2), 0 0 60px rgba(41,179,207,.24); transform: rotate(45deg); }
.automotive-core span, .automotive-core strong { transform: rotate(-45deg); }
.automotive-core span { color: #8cbdcb; font-size: 13px; font-weight: 700; letter-spacing: .18em; }
.automotive-core strong { color: #e9fbff; font-size: 24px; line-height: 1.1; letter-spacing: .05em; }
.automotive-node { position: absolute; padding: 7px 10px; border: 1px solid rgba(105,208,232,.36); border-radius: 4px; background: rgba(7,21,36,.9); color: #b7dce5; font-size: 13px; font-weight: 700; letter-spacing: .1em; }
.automotive-node-one { top: 10%; left: 50%; transform: translateX(-50%); }
.automotive-node-two { top: 53%; right: 5%; }
.automotive-node-three { bottom: 10%; left: 12%; }
.c-vision-section { background: linear-gradient(180deg, #081625, #0b1b2c); }
.c-vision-section .section-heading h2, .c-vision-process-heading h2 { color: #edf5f8; }
.c-vision-lead, .c-vision-card p, .c-vision-card li, .c-vision-process-heading > p:last-child, .c-vision-step > p:last-child { color: #aabccd; }
.c-vision-card, .c-vision-step { border-color: rgba(111,180,207,.2); background: linear-gradient(145deg, #102237, #091725); box-shadow: 0 18px 44px rgba(0,0,0,.16); }
.c-vision-card h3, .c-vision-step h3 { color: #eef6f9; }
.c-vision-index, .c-vision-step-number { color: #74d6e9; }
.c-vision-card li::before { background: #72d9ec; box-shadow: 0 0 10px rgba(114,217,236,.48); }
.c-vision-process { border-color: rgba(156,196,218,.16); }
.c-vision-step-number { border-color: rgba(105,208,232,.38); }
.c-vision-cta { border-color: rgba(105,181,207,.22); background: linear-gradient(145deg, #102136, #0a1726); box-shadow: 0 16px 45px rgba(0,0,0,.17); }
.c-vision-cta h2 { color: #eef6f9; }
.c-vision-visual { position: relative; display: grid; min-height: 350px; place-items: center; overflow: hidden; perspective: 900px; }
.c-vision-scan { position: absolute; width: min(78%, 320px); aspect-ratio: 1; border: 1px solid rgba(105,208,232,.3); border-radius: 50%; }
.c-vision-scan-one { transform: rotateX(62deg) rotateZ(-25deg); }
.c-vision-scan-two { width: min(62%, 250px); border-color: rgba(240,68,80,.24); transform: rotateX(62deg) rotateZ(35deg); }
.c-vision-frame { position: relative; display: grid; width: 164px; height: 164px; place-items: center; border: 1px solid rgba(112,214,235,.46); border-radius: 16px; background: linear-gradient(145deg, rgba(32,94,120,.28), rgba(5,16,30,.78)); box-shadow: inset 0 1px rgba(255,255,255,.12), 0 0 60px rgba(41,179,207,.18); }
.c-vision-frame strong { color: #e9fbff; font-size: 48px; letter-spacing: .08em; }
.c-vision-corner { position: absolute; width: 24px; height: 24px; border-color: #74d6e9; border-style: solid; }
.c-vision-corner-one { top: 12px; left: 12px; border-width: 2px 0 0 2px; }
.c-vision-corner-two { top: 12px; right: 12px; border-width: 2px 2px 0 0; }
.c-vision-corner-three { right: 12px; bottom: 12px; border-width: 0 2px 2px 0; }
.c-vision-corner-four { bottom: 12px; left: 12px; border-width: 0 0 2px 2px; }
.c-vision-node { position: absolute; padding: 7px 10px; border: 1px solid rgba(105,208,232,.36); border-radius: 4px; background: rgba(7,21,36,.9); color: #b7dce5; font-size: 13px; font-weight: 700; letter-spacing: .1em; }
.c-vision-node-one { top: 10%; left: 50%; transform: translateX(-50%); }
.c-vision-node-two { top: 53%; right: 5%; }
.c-vision-node-three { bottom: 10%; left: 12%; }

.whitepaper-hero .page-hero-grid { grid-template-columns: 1.15fr .85fr; }
.whitepaper-visual {
  position: relative;
  display: grid;
  min-height: 300px;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(118, 185, 0, .25);
  border-radius: 10px;
  background:
    radial-gradient(ellipse at 50% 50%, rgba(118, 185, 0, .15), transparent 63%),
    linear-gradient(145deg, rgba(16, 28, 18, .88), rgba(7, 14, 10, .94));
  box-shadow: 0 24px 60px rgba(0, 0, 0, .3);
}
.whitepaper-visual::before,
.whitepaper-visual::after { position: absolute; width: 72%; aspect-ratio: 1; border: 1px solid rgba(158, 204, 89, .2); border-radius: 50%; content: ""; }
.whitepaper-visual::after { width: 52%; border-color: rgba(158, 204, 89, .3); }
.whitepaper-visual-label { position: absolute; z-index: 1; padding: 8px 12px; border: 1px solid rgba(158, 204, 89, .26); border-radius: 5px; background: rgba(5, 11, 7, .88); color: #c9e7a1; font-size: 14px; font-weight: 800; letter-spacing: .1em; }
.whitepaper-visual-label:first-child { top: 18%; left: 12%; }
.whitepaper-visual-label:nth-child(2) { right: 12%; bottom: 18%; }
.whitepaper-visual-core { position: relative; z-index: 1; display: grid; width: 86px; height: 86px; place-items: center; border: 1px solid rgba(173, 231, 77, .55); border-radius: 50%; background: linear-gradient(145deg, rgba(118, 185, 0, .25), rgba(8, 16, 10, .9)); box-shadow: 0 0 42px rgba(118, 185, 0, .18); color: #e0ffa0; font-size: 21px; font-weight: 800; }
.whitepaper-section { position: relative; overflow: hidden; border-block: 1px solid rgba(118, 185, 0, .2); background: linear-gradient(135deg, #080d0a, #0c1510 58%, #080d0a); }
.whitepaper-section::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(151, 205, 73, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(151, 205, 73, .035) 1px, transparent 1px); background-size: 42px 42px; content: ""; mask-image: linear-gradient(90deg, transparent, #000 18%, #000 84%, transparent); pointer-events: none; }
.whitepaper-section > .container { position: relative; z-index: 1; }
.whitepaper-heading { max-width: 760px; margin-bottom: 30px; }
.whitepaper-heading h2 { margin: 0 0 12px; color: #eff5eb; font-size: clamp(30px, 3vw, 42px); line-height: 1.2; }
.whitepaper-heading p:not(.eyebrow) { margin: 0; color: #a9b5a5; }
.whitepaper-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.whitepaper-card { padding: 25px; border: 1px solid rgba(158, 204, 89, .22); border-radius: 8px; background: linear-gradient(145deg, rgba(20, 32, 23, .96), rgba(10, 17, 12, .98)); box-shadow: 0 18px 44px rgba(0, 0, 0, .24); }
.whitepaper-card h3 { margin: 0 0 12px; color: #eff5eb; font-size: 24px; }
.whitepaper-card p, .whitepaper-card li { color: #b1bcae; font-size: 18px; }
.whitepaper-card p { margin: 0; }
.whitepaper-card ul { display: grid; gap: 8px; margin: 15px 0 0; padding-left: 20px; }
.whitepaper-takeaway { margin-top: 18px; padding: 24px; border: 1px solid rgba(158, 204, 89, .22); border-left: 3px solid #76b900; border-radius: 7px; background: rgba(15, 25, 16, .88); }
.whitepaper-takeaway h3 { margin: 0 0 8px; color: #eff5eb; font-size: 24px; }
.whitepaper-takeaway p { margin: 0; color: #b1bcae; }
.esl-os-section { position: relative; overflow: hidden; border-block: 1px solid rgba(111, 180, 207, .18); background: linear-gradient(135deg, #080f17, #0b1926 58%, #080f17); }
.esl-os-section::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(135, 195, 215, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(135, 195, 215, .04) 1px, transparent 1px); background-size: 42px 42px; content: ""; mask-image: linear-gradient(90deg, transparent, #000 18%, #000 84%, transparent); pointer-events: none; }
.esl-os-section > .container { position: relative; z-index: 1; }
.esl-os-hero-image { overflow: hidden; margin: 0; border: 1px solid rgba(111, 180, 207, .24); border-radius: 10px; background: #fff; box-shadow: 0 24px 60px rgba(0, 0, 0, .3); }
.esl-os-hero-image img { display: block; width: 100%; height: auto; }
.esl-os-architecture { padding: 34px 0 0; background: #07111e; }
.esl-os-diagram { overflow: hidden; margin: 0; border: 1px solid rgba(111, 180, 207, .22); border-radius: 9px; background: #f4f7f9; box-shadow: 0 20px 50px rgba(0, 0, 0, .28); }
.esl-os-diagram img { width: 100%; height: auto; }
.esl-os-diagram figcaption { padding: 10px 15px; border-top: 1px solid rgba(111, 180, 207, .18); background: #0b1926; color: #aabccd; font-size: 15px; line-height: 1.5; }
.esl-os-sbom-diagram { margin: 0 0 22px; }
.esl-os-intro { max-width: 800px; margin-bottom: 30px; }
.esl-os-intro h2 { margin: 0 0 14px; color: #edf5f8; font-size: clamp(30px, 3vw, 42px); line-height: 1.2; }
.esl-os-intro > p:not(.eyebrow) { color: #aabccd; }
.esl-os-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.esl-os-card { padding: 24px; border: 1px solid rgba(111, 180, 207, .2); border-radius: 8px; background: linear-gradient(145deg, rgba(16, 34, 53, .94), rgba(8, 20, 32, .98)); box-shadow: 0 18px 44px rgba(0, 0, 0, .22); }
.esl-os-card > span { color: #79d2e7; font-size: 13px; font-weight: 800; letter-spacing: .12em; }
.esl-os-card h3 { margin: 12px 0 9px; color: #eef6f9; font-size: 23px; line-height: 1.3; }
.esl-os-card p { margin: 0; color: #aabccd; font-size: 18px; }
.esl-os-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin-top: 26px; border: 1px solid rgba(111, 180, 207, .2); border-radius: 8px; background: rgba(7, 17, 28, .82); }
.esl-os-step { padding: 22px; }
.esl-os-step + .esl-os-step { border-left: 1px solid rgba(111, 180, 207, .16); }
.esl-os-step span { color: #79d2e7; font-size: 13px; font-weight: 800; letter-spacing: .12em; }
.esl-os-step h3 { margin: 8px 0; color: #eef6f9; font-size: 21px; }
.esl-os-step p { margin: 0; color: #aabccd; font-size: 17px; }
.esl-os-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 26px; padding: 24px; border: 1px solid rgba(111, 180, 207, .2); border-radius: 8px; background: linear-gradient(145deg, #102136, #0a1726); }
.esl-os-cta p { margin: 0; color: #dbe8ef; font-size: 20px; font-weight: 700; }
.esl-os-benefits-section { position: relative; overflow: hidden; border-block: 1px solid rgba(111, 180, 207, .18); background: linear-gradient(135deg, #080f17, #0b1926 58%, #080f17); }
.esl-os-benefits-section::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(135, 195, 215, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(135, 195, 215, .04) 1px, transparent 1px); background-size: 42px 42px; content: ""; mask-image: linear-gradient(90deg, transparent, #000 18%, #000 84%, transparent); pointer-events: none; }
.esl-os-benefits-section > .container { position: relative; z-index: 1; }
.esl-os-benefits-heading { max-width: 840px; margin-bottom: 28px; }
.esl-os-benefits-heading h2 { margin: 0 0 12px; color: #edf5f8; font-size: clamp(30px, 3vw, 42px); line-height: 1.2; }
.esl-os-benefits-heading > p:last-child { margin: 0; color: #aabccd; }
.esl-os-benefits-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.esl-os-benefit { min-width: 0; padding: 22px; border: 1px solid rgba(111, 180, 207, .2); border-radius: 7px; background: linear-gradient(145deg, rgba(16, 34, 53, .94), rgba(8, 20, 32, .98)); box-shadow: 0 16px 40px rgba(0, 0, 0, .22); }
.esl-os-benefit > span { color: #79d2e7; font-size: 13px; font-weight: 800; letter-spacing: .1em; }
.esl-os-benefit h3 { margin: 10px 0 8px; color: #eef6f9; font-size: 21px; line-height: 1.3; }
.esl-os-benefit p { margin: 0; color: #aabccd; font-size: 17px; line-height: 1.6; }
.esl-os-platforms-section { position: relative; overflow: hidden; border-block: 1px solid rgba(111, 180, 207, .18); background: linear-gradient(135deg, #07111b, #0c1d2b 58%, #07111b); }
.esl-os-platforms-section > .container { position: relative; z-index: 1; }
.esl-os-platforms-heading { max-width: 860px; margin-bottom: 28px; }
.esl-os-platforms-heading h2 { margin: 0 0 12px; color: #edf5f8; font-size: clamp(30px, 3vw, 42px); line-height: 1.2; }
.esl-os-platforms-heading > p:last-child, .esl-os-platforms-note { color: #aabccd; line-height: 1.65; }
.esl-os-platforms-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.esl-os-platform-card { min-width: 0; padding: 22px; border: 1px solid rgba(111, 180, 207, .2); border-radius: 7px; background: linear-gradient(145deg, rgba(16, 34, 53, .94), rgba(8, 20, 32, .98)); box-shadow: 0 16px 40px rgba(0, 0, 0, .2); }
.esl-os-platform-logo { display: grid; width: 150px; height: 54px; place-items: center; margin-bottom: 17px; padding: 8px 13px; border: 1px solid rgba(255, 255, 255, .72); border-radius: 5px; background: #f3f6f7; }
.esl-os-platform-logo img { display: block; max-width: 100%; max-height: 36px; object-fit: contain; }
.esl-os-platform-index { color: #79d2e7; font-size: 12px; font-weight: 800; letter-spacing: .1em; }
.esl-os-platform-card h3 { margin: 9px 0 16px; color: #eef6f9; font-size: 22px; line-height: 1.3; }
.esl-os-platform-card dl { display: grid; gap: 14px; margin: 0; }
.esl-os-platform-card dl > div { display: grid; grid-template-columns: 145px minmax(0, 1fr); gap: 14px; padding-top: 12px; border-top: 1px solid rgba(111, 180, 207, .14); }
.esl-os-platform-card dt { color: #d8e6ed; font-size: 14px; font-weight: 700; }
.esl-os-platform-card dd { margin: 0; color: #aabccd; font-size: 15px; line-height: 1.55; }
.esl-os-platforms-note { margin: 20px 0 0; font-size: 14px; }
.esl-os-platforms-note a { color: #79d2e7; text-underline-offset: 3px; }

@media (max-width: 1100px) {
  .brand { width: 210px; }
  .brand-copy strong { font-size: 17px; }
  .brand-copy small { font-size: 14px; }
  .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(330px, .9fr); }
}
@media (max-width: 900px) {
  .showcase-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .showcase-grid-contact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ecosystem-vendors { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .security-lifecycle-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .header-inner { min-height: 78px; }
  .primary-nav {
    border-bottom: 1px solid rgba(111,180,207,.2);
    background: rgba(5,13,25,.98);
    box-shadow: 0 18px 28px rgba(0,0,0,.32);
  }
  .primary-nav > a, .primary-nav .nav-products > a, .primary-nav .nav-services > a, .primary-nav .nav-solutions > a, .primary-nav .nav-docs > a, .primary-nav .nav-product-dropdown > summary { border-color: rgba(156,196,218,.12); color: #b5c8d5; }
  .brand { width: 222px; }
  .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(300px, .9fr); }
  .hero-visual { min-height: 350px; }
  .technology-inner { justify-content: flex-start; overflow-x: auto; scrollbar-width: thin; }
  .technology-inner span { flex: 0 0 auto; }
  .technology-inner i { flex: 0 0 4px; }
}
@media (max-width: 1000px) {
  .primary-nav {
    border-bottom: 1px solid rgba(111,180,207,.2);
    background: rgba(5,13,25,.98);
    box-shadow: 0 18px 28px rgba(0,0,0,.32);
  }
  .primary-nav > a, .primary-nav .nav-products > a, .primary-nav .nav-services > a, .primary-nav .nav-solutions > a, .primary-nav .nav-docs > a, .primary-nav .nav-product-dropdown > summary { border-color: rgba(156,196,218,.12); color: #b5c8d5; }
}
@media (max-width: 680px) {
  .ecosystem-vendors { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .ecosystem-vendor { padding: 12px; }
  .ecosystem-vendor h3 { font-size: 16px; }
  .ecosystem-vendor p { font-size: 14px; }
  .security-lifecycle-flow { grid-template-columns: 1fr; }
  .security-lifecycle-step { padding: 19px; }
  .whitepaper-hero .page-hero-grid { grid-template-columns: 1fr; }
  .whitepaper-visual { min-height: 250px; }
  .whitepaper-comparison { grid-template-columns: 1fr; }
  .whitepaper-card { padding: 21px; }
  .esl-os-grid, .esl-os-process { grid-template-columns: 1fr; }
  .esl-os-benefits-grid { grid-template-columns: 1fr; }
  .esl-os-platforms-grid { grid-template-columns: 1fr; }
  .esl-os-platform-card dl > div { grid-template-columns: 1fr; gap: 5px; }
  .esl-os-step + .esl-os-step { border-top: 1px solid rgba(111, 180, 207, .16); border-left: 0; }
  .esl-os-cta { align-items: flex-start; flex-direction: column; }
  .ai-process { margin-top: 44px; padding-top: 32px; }
  .ai-process-heading h2 { font-size: 32px; }
  .firmware-process { margin-top: 44px; padding-top: 32px; }
  .firmware-process-heading h2 { font-size: 32px; }
  .firmware-visual { min-height: 270px; }
  .embedded-ai-process { margin-top: 44px; padding-top: 32px; }
  .embedded-ai-process-heading h2 { font-size: 32px; }
  .embedded-ai-visual { min-height: 270px; }
  .automotive-process { margin-top: 44px; padding-top: 32px; }
  .automotive-process-heading h2 { font-size: 32px; }
  .automotive-visual { min-height: 270px; }
  .c-vision-process { margin-top: 44px; padding-top: 32px; }
  .c-vision-process-heading h2 { font-size: 32px; }
  .c-vision-visual { min-height: 270px; }
}
@media (max-width: 680px) {
  .showcase-grid, .showcase-grid-contact { grid-template-columns: 1fr; }
  .showcase-image, .showcase-grid-contact .showcase-image { height: 220px; }
  .brand-orbit { width: min(100%, 460px); }
  .brand-orbit-tag { max-width: 95px; min-height: 22px; padding: 3px 6px; font-size: 11px; letter-spacing: 0; }
  .brand { width: 206px; gap: 9px; }
  .brand img { flex-basis: 52px; width: 52px; height: 42px; max-width: 52px; }
  .brand-copy strong { font-size: 17px; }
  .brand-copy small { font-size: 13px; }
  .home-hero { padding-top: 52px; }
  .hero-grid { grid-template-columns: 1fr; gap: 19px; }
  .hero h1 { font-size: clamp(49px, 12vw, 67px); }
  .hero-visual { min-height: 290px; margin: -4px -12px 0; }
  .hero-visual > img { width: min(100%, 460px); }
  .visual-caption { right: 4px; bottom: 5px; }
  .chip-one { left: 3px; }
  .chip-two { right: 2px; }
  .technology-inner { min-height: 52px; gap: 14px; }
  .technology-inner span { font-size: 15px; }
  .section-space { padding: 62px 0; }
  .feature-card { min-height: 245px; }
  .page-hero { padding: 49px 0; }
  .page-hero h1 { font-size: clamp(48px, 12vw, 65px); }
  .page-hero-art, .page-hero-product { max-width: 560px; }
  .footer-brand { width: auto; }
  .footer-brand .brand-copy strong { font-size: 17px; }
}
@media (max-width: 370px) {
  .brand { width: 178px; }
  .brand img { flex-basis: 45px; width: 45px; height: 38px; max-width: 45px; }
  .brand-copy strong { font-size: 16px; }
  .brand-copy small { font-size: 12px; }
  .hero-visual { min-height: 250px; }
}
@media (max-width: 430px) {
  .header-contact { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-visual > img { animation: none; }
  .brand-orbit-track, .brand-orbit-tag { animation: none; }
  .brand-orbit-track-one { opacity: 1; visibility: visible; }
}
