/* A shared atmospheric language across the interactive scene and editorial page. */
.ambient-field {
  position: absolute;
  inset: 0;
  overflow: clip;
  pointer-events: none;
  color: #52e4cc;
  isolation: isolate;
}
.ambient-field svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0.4;
}
.ambient-orbits {
  opacity: 0.28;
  stroke-width: 0.6;
}
.ambient-circuits {
  opacity: 0.25;
  stroke-width: 0.8;
}
.ambient-stars {
  opacity: 0.7;
}
.ambient-haze {
  position: absolute;
  inset: -15%;
  background:
    radial-gradient(ellipse at 75% 24%, #067c7d35, transparent 43%),
    radial-gradient(ellipse at 37% 78%, #1747a82b, transparent 45%);
}
.factory-stage > .ambient-field {
  mix-blend-mode: screen;
  opacity: 0.9;
}
.factory-stage > .ambient-field svg {
  transform: translateY(calc(var(--scene-progress, 0) * -40px));
}
.factory-stage > .ambient-field .ambient-haze {
  background:
    radial-gradient(ellipse at 78% 28%, #087a813d, transparent 47%),
    radial-gradient(ellipse at 21% 76%, #234d9b24, transparent 42%);
}
.factory-stage > .ambient-field:after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.13;
  background-image: radial-gradient(#98e7db 0.6px, transparent 0.7px);
  background-size: 28px 28px;
  mask-image: linear-gradient(90deg, transparent 35%, #000);
}
html[dir="rtl"] .factory-stage > .ambient-field {
  transform: scaleX(-1);
}
.page-home .home-perspectives {
  background:
    radial-gradient(ellipse at 90% 10%, #0d55544a, transparent 55%),
    radial-gradient(ellipse at 15% 90%, #18386f38, transparent 55%), #071a22;
}
.page-home .faq {
  background:
    radial-gradient(ellipse at 10% 40%, #0d47473b, transparent 50%), #07171f;
}
.page-home .home-closing {
  overflow: clip;
  background:
    radial-gradient(ellipse at 80% 70%, #087a6340, transparent 45%),
    radial-gradient(ellipse at 25% 40%, #1d457b44, transparent 55%), #06151c;
}
.page-home .home-closing:before {
  content: "";
  position: absolute;
  width: 80%;
  height: 100%;
  inset-inline-end: -25%;
  top: -2%;
  border: 1px solid #4de1b833;
  border-radius: 50%;
  transform: rotate(-22deg);
  box-shadow:
    0 0 0 40px #4de1b807,
    0 0 0 80px #4de1b805;
  pointer-events: none;
}
.home-value,
.home-audiences,
.home-industry-focus {
  scroll-margin-top: 96px;
  position: relative;
  isolation: isolate;
  border-top: 1px solid #82c7b522;
}
.home-value {
  padding: 110px 0 100px;
  background: #071923;
}
.home-value .container,
.home-industry-focus .container {
  position: relative;
}
.home-section-heading {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  align-items: start;
  gap: 90px;
}
.home-section-heading h2,
.audience-intro h2 {
  font-size: clamp(32px, 3.3vw, 52px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -0.045em;
  margin: 22px 0;
  text-wrap: balance;
}
.home-section-heading > p {
  color: #b7cdc7;
  font-size: 16px;
  line-height: 1.9;
  margin: 35px 0 0;
  max-width: 550px;
  text-wrap: pretty;
}
.value-principles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 45px;
  margin-top: 65px;
}
.value-principles article {
  border-top: 1px solid #6eb99d55;
  padding-top: 23px;
}
.value-index {
  font-size: 11px;
  color: #68d6ba;
  font-variant-numeric: tabular-nums;
}
.value-principles h3 {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: -0.025em;
  margin: 22px 0 13px;
}
.value-principles p {
  color: #a9c4ba;
  font-size: 14px;
  line-height: 1.85;
  max-width: 330px;
}
.home-audiences {
  padding: 110px 0;
  background: linear-gradient(135deg, #0a222c, #07191f 58%);
}
.home-audiences > .container {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 100px;
  align-items: start;
}
.audience-intro > p:last-of-type {
  color: #a9c4ba;
  line-height: 1.85;
  font-size: 15px;
  max-width: 370px;
}
.audience-tabs {
  margin-top: 35px;
}
.audience-tabs[hidden],
.audience-panel[hidden] {
  display: none;
}
.audience-tabs button {
  width: 100%;
  display: flex;
  align-items: center;
  text-align: start;
  gap: 18px;
  padding: 22px 0;
  border: 0;
  border-top: 1px solid #53796955;
  color: #9cb8af;
  background: none;
  font: inherit;
  font-size: 17px;
  cursor: pointer;
  transition:
    color 0.2s,
    padding 0.2s;
}
.audience-tabs button:last-child {
  border-bottom: 1px solid #53796955;
}
.audience-tabs button > span:first-child {
  color: #5b9a85;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}
.audience-tabs button > span:last-child {
  margin-inline-start: auto;
  color: #69988a;
}
.audience-tabs button[aria-selected="true"] {
  color: #b2ffe4;
  padding-inline: 16px;
  background: linear-gradient(90deg, #0f52412b, transparent);
  border-top-color: #62c9a9;
}
.audience-tabs button[aria-selected="true"] > span {
  color: #67d5b3;
}
.audience-panel {
  padding: 32px 38px 35px;
  border: 1px solid #5e9b824d;
  background: linear-gradient(140deg, #14323788, #0a2028dd);
  position: relative;
  overflow: clip;
  min-height: 690px;
}
.audience-panel + .audience-panel:not([hidden]) {
  margin-top: 25px;
}
.audience-panel[role="tabpanel"] {
  margin-top: 0;
}
.audience-panel:focus-visible,
.audience-tabs button:focus-visible,
.home-text-link:focus-visible,
.industry-focus-grid summary:focus-visible {
  outline: 2px solid #80efc9;
  outline-offset: 5px;
}
.audience-panel > .eyebrow {
  margin: 20px 0 12px;
}
.audience-panel h3 {
  font-size: 29px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: -0.03em;
  margin: 0 0 20px;
  text-wrap: balance;
}
.audience-panel > p:not(.eyebrow) {
  font-size: 14px;
  line-height: 1.9;
  color: #b3ccc2;
  text-wrap: pretty;
}
.audience-panel ul {
  list-style: none;
  padding: 10px 0 5px;
  margin: 20px 0;
}
.audience-panel li {
  border-top: 1px solid #70a48d29;
  padding: 12px 0 12px 18px;
  color: #d3e6de;
  font-size: 12px;
  line-height: 1.65;
  position: relative;
}
.audience-panel li:before {
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  background: #63dfb7;
  top: 20px;
  inset-inline-start: 0;
}
html[dir="rtl"] .audience-panel li {
  padding: 12px 18px 12px 0;
}
.home-text-link {
  display: inline-flex;
  gap: 28px;
  align-items: center;
  color: #79eac5;
  font-size: 12px;
  line-height: 1.6;
  font-weight: 500;
}
.home-text-link > span {
  font-size: 20px;
  transition: transform 0.2s;
}
.home-text-link:hover > span {
  transform: translate(3px, -3px);
}
.home-industry-focus {
  padding: 110px 0;
  background: #071820;
}
.home-industry-focus .ambient-field {
  opacity: 0.5;
}
.industry-focus-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  margin-top: 65px;
}
.industry-focus-grid article {
  border-top: 1px solid #63947e66;
}
.industry-focus-grid .eyebrow {
  font-size: 10px;
}
.industry-focus-grid h3 {
  font-size: 24px;
  line-height: 1.3;
  font-weight: 500;
  letter-spacing: -0.03em;
  margin: 18px 0;
  max-width: 290px;
  text-wrap: balance;
}
.industry-focus-grid article > p:not(.eyebrow),
.industry-focus-grid details p {
  font-size: 14px;
  line-height: 1.85;
  color: #abc3b8;
}
.industry-focus-grid details {
  margin-top: 23px;
  border-top: 1px solid #63947e33;
}
.industry-focus-grid summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  font-size: 12px;
  color: #7edcba;
  padding: 18px 0;
  cursor: pointer;
}
.industry-focus-grid summary::-webkit-details-marker {
  display: none;
}
.industry-focus-grid summary > span {
  font-size: 20px;
  transition: transform 0.2s;
}
.industry-focus-grid details[open] summary > span {
  transform: rotate(45deg);
}
.industry-focus-grid details p {
  margin: 0 0 20px;
}
.industry-focus-link {
  margin-top: 45px;
}
html[dir="rtl"] .home-section-heading h2,
html[dir="rtl"] .audience-intro h2,
html[dir="rtl"] .audience-panel h3,
html[dir="rtl"] .industry-focus-grid h3 {
  letter-spacing: 0;
  line-height: 1.4;
}
html[dir="rtl"] .home-section-heading > p,
html[dir="rtl"] .audience-panel > p:not(.eyebrow) {
  line-height: 2;
}
@media (max-width: 1050px) {
  .home-section-heading {
    gap: 45px;
  }
  .home-audiences > .container {
    gap: 45px;
  }
  .audience-panel {
    padding: 25px;
  }
  .industry-focus-grid {
    gap: 24px;
  }
  .value-principles {
    gap: 30px;
  }
  .audience-panel {
    min-height: 780px;
  }
}
@media (max-width: 800px) {
  .home-value,
  .home-audiences,
  .home-industry-focus {
    padding: 75px 0;
  }
  .home-section-heading {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .home-section-heading > p {
    margin-top: 0;
    font-size: 14px;
  }
  .home-section-heading h2,
  .audience-intro h2 {
    font-size: 36px;
  }
  .value-principles {
    gap: 24px;
    margin-top: 35px;
  }
  .value-principles h3 {
    font-size: 19px;
  }
  .value-principles p {
    font-size: 12px;
  }
  .home-audiences > .container {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .audience-intro > p:last-of-type {
    max-width: 500px;
    font-size: 14px;
  }
  .audience-tabs {
    margin-top: 25px;
  }
  .audience-tabs button {
    padding-block: 17px;
    font-size: 16px;
  }
  .audience-panel {
    min-height: 0;
  }
  .industry-focus-grid {
    grid-template-columns: 1fr;
    gap: 40px;
    margin-top: 35px;
  }
  .industry-focus-grid h3 {
    max-width: none;
  }
  .ambient-field svg {
    opacity: 0.22;
  }
  .factory-stage > .ambient-field {
    opacity: 0.6;
  }
}
@media (max-width: 480px) {
  .value-principles {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .value-principles h3 {
    margin: 14px 0 10px;
    font-size: 21px;
  }
  .value-principles p {
    max-width: none;
    font-size: 14px;
  }
  .home-section-heading h2,
  .audience-intro h2 {
    font-size: 32px;
  }
  .audience-panel {
    padding: 22px;
  }
  .audience-panel h3 {
    font-size: 26px;
  }
  .audience-panel > p:not(.eyebrow) {
    font-size: 13px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .factory-stage > .ambient-field svg {
    transform: none;
  }
  .home-text-link > span,
  .audience-tabs button,
  .industry-focus-grid summary > span {
    transition: none;
  }
}

/* Two distinct, equally prominent entrances into the Raqib platforms. */
.page-home .home-perspectives { padding: 88px 0 70px; scroll-margin-top: 80px; }
.page-home .home-perspectives > .container { display: block; }
.platforms-heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: 64px; align-items: end; margin-bottom: 38px; }
.platforms-heading h2 { margin: 20px 0 0; font-size: clamp(30px,3.1vw,48px); font-weight: 500; line-height: 1.12; letter-spacing: -.04em; }
.platforms-heading > p { color: #b7cdc7; font-size: 15px; line-height: 1.8; max-width: 490px; margin: 0; }
.platform-portals { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.platform-portal { --portal-accent: #66e4b5; --portal-tint: #2eb986; position: relative; display: flex; flex-direction: column; gap: 0; padding: 28px; border: 1px solid #5ad9b33b; border-radius: 14px; background: radial-gradient(ellipse at 100% 0%,#1d775733,transparent 65%),#0c2329; transition: border-color .2s,transform .2s,box-shadow .2s; text-decoration: none; color: #effbf7; overflow: hidden; }
.platform-portal--twin { --portal-accent: #85d8ef; --portal-tint: #449ebb; background: radial-gradient(ellipse at 100% 0%,#245a7e4d,transparent 65%),#0b202d; border-color: #73c7e33b; border-top-color: var(--portal-accent); }
.platform-portal:hover { transform: translateY(-4px); border-color: var(--portal-accent); box-shadow: 0 18px 48px #0004; }
.platform-portal:focus-visible { outline: 3px solid var(--portal-accent); outline-offset: 5px; }
.portal-identity { display: flex; gap: 18px; align-items: center; min-height: 56px; position: relative; }
.portal-identity .mark { flex: 0 0 40px; width: 40px; height: 46px; color: var(--portal-accent); --mark-ink: #f1fffa; }
.portal-category { color: var(--portal-accent); font-size: 9px; letter-spacing: .14em; line-height: 1.6; }
.portal-identity h3 { font-size: clamp(20px,1.65vw,25px); font-weight: 600; letter-spacing: -.035em; line-height: 1.2; margin: 7px 0 0; }
.portal-index { margin-inline-start: auto; color: var(--portal-accent); opacity: .55; align-self: flex-start; font-size: 10px; }
.portal-content { margin-top: 0; padding-top: 20px; flex: 1; }
.portal-promise { font-size: clamp(19px,1.6vw,24px); line-height: 1.35; font-weight: 500; letter-spacing: -.025em; margin: 0 0 13px; }
.portal-description { color: #b7cdc7; font-size: 14px; line-height: 1.8; margin: 0; max-width: 54ch; }
.portal-topics { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 18px 0 22px; }
.portal-topics li { padding: 0 12px 0 0; font-size: 10px; color: var(--portal-accent); }
.portal-enter { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0 0; border-top: 1px solid #b2ddd922; color: var(--portal-accent); font-size: 13px; font-weight: 600; border-radius: 3px; }
.portal-enter > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--portal-accent); color: #062127; font-size: 22px; line-height: 1; transition: transform .2s; }
.platform-portal:hover .portal-enter > span { transform: translate(2px,-2px); }
.platforms-shared { display: flex; align-items: center; justify-content: center; gap: 12px; color: #8dafaa; font-size: 11px; margin: 26px 0 0; }
.platforms-shared > span { color: #66e4b5; font-size: 20px; }
html[dir="rtl"] .platforms-heading h2,html[dir="rtl"] .portal-identity h3,html[dir="rtl"] .portal-promise { letter-spacing: 0; line-height: 1.5; }
html[dir="rtl"] .portal-category { letter-spacing: 0; }
@media(max-width: 1050px) {
  .platforms-heading { gap: 30px; }
  .platform-portal { padding: 23px; }
  .portal-identity { gap: 12px; }
  .portal-identity .mark { flex-basis: 44px; width: 44px; height: 52px; }
}
@media(max-width: 650px) {
  .page-home .home-perspectives { padding: 60px 0; }
  .platforms-heading { grid-template-columns: 1fr; gap: 20px; margin-bottom: 28px; }
  .platforms-heading > p { font-size: 14px; }
  .platform-portals { grid-template-columns: 1fr; gap: 20px; }
  .portal-identity h3 { font-size: 23px; }
  .portal-index { display: none; }
  .portal-description { font-size: 13px; }
  .platforms-shared { font-size: 10px; }
}
@media(prefers-reduced-motion: reduce) {
  .platform-portal,.portal-enter > span { transition: none; }
  .platform-portal:hover,.platform-portal:hover .portal-enter > span { transform: none; }
}
@media(min-width: 801px) and (max-height: 800px) {
  .page-home .home-perspectives { padding-top: 44px; padding-bottom: 44px; }
  .platforms-heading { margin-bottom: 28px; }
  .platform-portal { padding: 24px; }
  .portal-content { margin-top: 0; padding-top: 16px; }
  .portal-topics { margin: 14px 0 18px; }
}

.portal-art { position: relative; height: 132px; margin: 20px -28px 0; color: var(--portal-accent); overflow: hidden; background: radial-gradient(ellipse at 52% 100%,#54d7ad1c,transparent 67%),linear-gradient(180deg,#03111700,#03111766); border-block: 1px solid #b2ddd914; }
.portal-art svg { width: 100%; height: 100%; }
.portal-art-object { transform-origin: 50% 70%; transition: transform .65s cubic-bezier(.2,.7,.2,1); }
.platform-portal:hover .portal-art-object,.platform-portal:focus-visible .portal-art-object { transform: translateY(-4px) scale(1.035); }
.portal-art-caption { position: absolute; bottom: 8px; inset-inline-start: 28px; font-size: 6px; letter-spacing: .18em; opacity: .5; }
.platform-portal--twin .portal-art { background: radial-gradient(ellipse at 52% 100%,#549bd728,transparent 67%),linear-gradient(180deg,#03111700,#03111766); }
.portal-topics li + li { border-inline-start: 1px solid #b2ddd933; padding-inline-start: 12px; }
.platform-portal { box-shadow: inset 0 1px 0 #d1f7ec0c,0 12px 38px #0002; }
@media(min-width:801px) and (max-height:800px) {
  .portal-art { height: 100px; margin-top: 16px; }
  .portal-identity { min-height: 48px; }
  .portal-description { font-size: 13px; line-height: 1.65; }
  .portal-promise { font-size: 19px; margin-bottom: 8px; }
  .portal-enter { padding-top: 12px; }
  .platforms-heading h2 { font-size: 34px; }
  .page-home .home-perspectives { padding-top: 34px; }
  .platforms-heading { margin-bottom: 24px; }
}
@media(max-width:650px) {
  .portal-art { height: 132px; margin-inline: -23px; }
  .portal-category { font-size: 8px; }
  .portal-identity h3 { font-size: 21px; }
  .portal-enter { font-size: 12px; }
}
@media(prefers-reduced-motion:reduce) {
  .portal-art-object { transition: none; }
  .platform-portal:hover .portal-art-object,.platform-portal:focus-visible .portal-art-object { transform: none; }
}

/* Authored perspective objects: strategic overview, industrial context, evidence. */
.home-audiences {
  position:relative; isolation:isolate;
  background:radial-gradient(ellipse at 85% 20%,#16433955,transparent 52%),#071b23;
  border-block:1px solid #8ebfaf1c;
}
.home-audiences > .container { grid-template-columns:.85fr 1.15fr; gap:clamp(36px,6vw,90px); }
.audience-intro { padding-top:18px; }
.audience-intro h2 { letter-spacing:-.045em; }
.audience-tabs { margin-top:38px; }
.audience-tabs button { padding:21px 16px; border-top-color:#8ebfaf26; gap:18px; }
.audience-tabs button[aria-selected="true"] {
  background:linear-gradient(90deg,#1b65553d,#153b3515);
  box-shadow:inset 3px 0 #73e1bc;
  border-top-color:#8ebfaf26;
}
html[dir="rtl"] .audience-tabs button[aria-selected="true"] { box-shadow:inset -3px 0 #73e1bc; }
.audience-tab-copy { display:grid; gap:7px; }
.audience-tab-copy strong { font-size:16px; font-weight:500; }
.audience-tab-copy small { font-size:11px; line-height:1.5; color:#88a99f; }
.audience-panel {
  padding:0 32px 30px; min-height:750px;
  border:1px solid #759c8d3b; border-radius:12px;
  background:linear-gradient(145deg,#13342e85,#0b2028 58%);
  box-shadow:0 30px 80px #00000020;
}
.audience-panel > .eyebrow { margin-top:26px; font-size:9px; }
.audience-panel h3 { font-size:28px; max-width:440px; margin-bottom:16px; }
.audience-panel > p:not(.eyebrow) { font-size:13px; line-height:1.85; }
.audience-panel ul { margin:16px 0 19px; padding:0; }
.audience-panel li { font-size:11px; padding-block:10px; }
.audience-panel li:before { top:17px; }
.perspective-art {
  margin:0 -32px; position:relative; overflow:hidden;
  background:radial-gradient(ellipse at 55% 60%,#1a51443d,transparent 70%),linear-gradient(145deg,#0a2027,#0b2527);
  border-bottom:1px solid #89c8b42b;
}
.perspective-art-heading {
  display:flex; justify-content:space-between; gap:15px; padding:22px 26px 0;
  color:#98b9ac; font-size:8px; letter-spacing:.15em; line-height:1.6;
}
.perspective-art-heading > span:last-child { color:#5b8b7e; direction:ltr; font-variant-numeric:tabular-nums; }
.perspective-art svg { display:block; width:100%; height:220px; filter:drop-shadow(0 12px 10px #0004); }
.perspective-art--1 { background:radial-gradient(ellipse at 55% 60%,#285c6840,transparent 70%),#0b202b; }
.perspective-art-legend { display:flex; justify-content:center; gap:22px; padding:0 18px 20px; font-size:10px; color:#b9d5c9; }
.perspective-art-legend span { display:flex; gap:8px; align-items:center; }
.perspective-art-legend b { font-size:7px; font-weight:400; color:#5f9c87; font-variant-numeric:tabular-nums; }
.audience-panel:not([hidden]) .perspective-object { animation:perspective-arrive .65s cubic-bezier(.2,.7,.2,1) both; }
@keyframes perspective-arrive { from { opacity:0; translate:0 12px; } to { opacity:1; translate:0 0; } }
@media(min-width:801px) { .audience-intro { position:sticky; top:130px; } }
@media(max-width:1050px) and (min-width:801px) {
  .audience-panel { padding-inline:25px; min-height:820px; }
  .perspective-art { margin-inline:-25px; }
  .perspective-art-legend { gap:12px; font-size:9px; }
}
@media(max-width:800px) {
  .home-audiences > .container { grid-template-columns:1fr; gap:28px; }
  .audience-intro { padding-top:0; }
  .audience-panel { min-height:0; padding:0 24px 28px; }
  .perspective-art { margin-inline:-24px; }
  .perspective-art svg { height:215px; }
  .audience-tabs { margin-top:24px; }
  .audience-tabs button { padding:16px; }
  .audience-tab-copy strong { font-size:15px; }
  .audience-panel > p:not(.eyebrow) { font-size:13px; }
  .audience-panel h3 { font-size:27px; }
}
@media(max-width:400px) {
  .perspective-art svg { height:190px; }
  .perspective-art-heading { padding-inline:20px; font-size:7px; }
  .perspective-art-legend { gap:12px; font-size:9px; }
}
@media(prefers-reduced-motion:reduce) { .audience-panel:not([hidden]) .perspective-object { animation:none; } }

.home-audiences { scroll-margin-top:0; }

/* Real industrial photography, locally served in responsive sizes. */
.home-industry-focus { scroll-margin-top:0; }
.industry-focus-grid { gap:28px; margin-top:48px; }
.industry-focus-grid article { border-top:0; }
.industry-focus-photo {
  position:relative; aspect-ratio:4 / 3; margin:0 0 27px;
  overflow:hidden; border-radius:5px; background:#12313a;
  border:1px solid #79aa9638; isolation:isolate;
}
.industry-focus-photo img {
  display:block; width:100%; height:100%; object-fit:cover;
  filter:saturate(1) brightness(1); transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .8s;
}
.industry-focus-photo::after {
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg,#031d2510,transparent 45%,#041c2435);
}
.industry-photo-index {
  position:absolute; z-index:1; top:15px; inset-inline-start:15px;
  padding:7px 9px; border:1px solid #e0ffef55; background:#061d25a6;
  color:#d4eade; font-size:10px; font-variant-numeric:tabular-nums;
}
@media(hover:hover) {
  .industry-focus-grid article:hover .industry-focus-photo img { transform:scale(1.045); filter:saturate(1) brightness(1); }
}
@media(max-width:800px) {
  .industry-focus-grid { gap:45px; margin-top:30px; }
  .industry-focus-photo { aspect-ratio:16 / 10; margin-bottom:22px; }
  }
@media(prefers-reduced-motion:reduce) { .industry-focus-photo img { transition:none; } .industry-focus-grid article:hover .industry-focus-photo img { transform:none; } }
