/* Homepage industries: compact cards in the SAS blue and yellow palette. */
#industries-served{ padding-block:64px; background:radial-gradient(ellipse at top right,#176b8c50,transparent 55%),#08283f !important; color:#fff; }
#industries-served::before{ background-image:linear-gradient(#5dc5ec18 1px,transparent 1px),linear-gradient(90deg,#5dc5ec18 1px,transparent 1px); opacity:.6; }
#industries-served .industry-heading{ display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:32px; }
#industries-served .section-kicker{ color:#f2c200; font-size:.7rem; letter-spacing:2px; }
#industries-served h2{ color:#fff; font-size:clamp(2rem,3.5vw,3.1rem); line-height:1.1; margin:12px 0 0; }
#industries-served h2 em{ color:#62cafa; font-style:normal; }
#industries-served .industry-heading > p{ flex:0 1 390px; color:#adc6d5; font-size:.93rem; line-height:1.8; margin:0; }
#industries-served .industry-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
#industries-served .industry-tile{ position:relative; display:flex; align-items:center; gap:16px; min-height:125px; padding:22px 18px; border:1px solid #40657d; border-radius:12px; background:linear-gradient(130deg,#ffffff0e,#ffffff03); text-decoration:none; overflow:hidden; transition:transform .35s ease,background .35s ease,border-color .35s ease,box-shadow .35s ease; }
#industries-served .industry-tile::after{ content:""; position:absolute; bottom:0; left:0; height:3px; width:100%; background:linear-gradient(90deg,#009fe0,#f2c200); transform:scaleX(0); transform-origin:left; transition:transform .35s ease; }
#industries-served .industry-icon{ display:grid; place-items:center; flex:0 0 48px; width:48px; height:48px; border:1px solid #3280a5; border-radius:10px; background:#0d3e5a; color:#60cbff; font-size:1.5rem; transition:transform .35s ease,background .35s ease,color .35s ease; }
#industries-served .industry-tile:nth-child(3n+2) .industry-icon{ background:#f2c20012; color:#f5d653; border-color:#86782f; }
#industries-served .industry-tile:nth-child(3n) .industry-icon{ background:#ed702416; color:#ffad75; border-color:#985f39; }
#industries-served .industry-copy{ flex:1; min-width:0; }
#industries-served h3{ font-size:1.16rem; color:#fff; font-weight:700; margin:0 0 6px; }
#industries-served .industry-copy p{ color:#aac5d6; font-size:.76rem; line-height:1.5; margin:0; }
#industries-served .industry-arrow{ color:#6b9bb7; font-size:.8rem; flex-shrink:0; transition:transform .3s,color .3s; }
#industries-served .industry-footer{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:16px; margin-top:28px; padding-top:22px; border-top:1px solid #36566b; font-size:.8rem; }
#industries-served .industry-footer > span{ color:#9fbdcf; display:flex; align-items:center; gap:10px; }
#industries-served .industry-footer > span .bi{ color:#54b7e5; }
#industries-served .industry-footer a{ display:inline-flex; align-items:center; gap:14px; min-height:44px; font-weight:700; color:#f4d14c; }
#industries-served .industry-tile:focus-visible{ outline:3px solid #f2c200; outline-offset:3px; }
@media(hover:hover){
  #industries-served .industry-tile:hover{ transform:translateY(-5px); background:#16445e; border-color:#4ea8d0; box-shadow:0 12px 25px #00162450; }
  #industries-served .industry-tile:hover::after{ transform:scaleX(1); }
  #industries-served .industry-tile:hover .industry-icon{ transform:rotate(-5deg); background:#f2c200; color:#0a2c43; }
  #industries-served .industry-tile:hover .industry-arrow{ transform:translate(2px,-2px); color:#f2c200; }
}
@media(max-width:991.98px){
  #industries-served .industry-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  #industries-served .industry-heading{ align-items:flex-start; gap:24px; }
  #industries-served .industry-heading > p{ flex-basis:320px; }
}
@media(max-width:767.98px){
  #industries-served{ padding-block:40px; }
  #industries-served .industry-heading{ flex-direction:column; gap:18px; }
  #industries-served .industry-heading > p{ flex-basis:auto; }
  #industries-served .industry-grid{ gap:12px; }
  #industries-served .industry-tile{ flex-direction:column; align-items:flex-start; padding:18px 14px; gap:12px; min-height:0; }
  #industries-served .industry-icon{ flex-basis:42px; width:42px; height:42px; font-size:1.3rem; }
  #industries-served .industry-arrow{ position:absolute; top:22px; right:14px; }
  #industries-served h3{ font-size:1.06rem; }
}
@media(prefers-reduced-motion:reduce){
  #industries-served .industry-tile,#industries-served .industry-tile::after,#industries-served .industry-icon,#industries-served .industry-arrow{ transition:none; }
}

/* Connected capability diagram: central hub, distribution line, industry nodes. */
#industries-served .industry-diagram{ position:relative; padding-top:4px; }
#industries-served .industry-hub{ position:relative; display:flex; flex-direction:column; align-items:center; gap:6px; width:280px; max-width:90%; margin:0 auto 64px; padding:22px; border:2px solid #54b7e5; border-radius:18px; background:linear-gradient(135deg,#174f70,#0b3049); box-shadow:0 0 0 7px #54b7e510,0 12px 30px #00162440; text-align:center; }
#industries-served .industry-hub-icon{ display:grid; place-items:center; width:46px; height:46px; border-radius:12px; background:#f2c200; color:#08283f; font-size:1.6rem; margin-bottom:4px; }
#industries-served .industry-hub strong{ color:#fff; font-size:1rem; letter-spacing:1.1px; }
#industries-served .industry-hub > span:last-child{ color:#aacfe3; font-size:.73rem; }
#industries-served .industry-hub::after{ content:""; position:absolute; width:2px; height:34px; top:100%; left:calc(50% - 1px); background:#54b7e5; }
#industries-served .industry-grid{ position:relative; gap:32px 24px; }
#industries-served .industry-grid::before{ content:""; position:absolute; height:2px; top:-32px; left:calc((100% - 48px) / 6); right:calc((100% - 48px) / 6); background:#54b7e5; }
#industries-served .industry-tile{ overflow:visible; background:#10364f; }
#industries-served .industry-tile::before{ content:""; position:absolute; width:2px; height:32px; bottom:100%; left:calc(50% - 1px); background:linear-gradient(#54b7e5,#f2c200); }
#industries-served .industry-tile::after{ height:7px; width:7px; border-radius:50%; left:calc(50% - 3.5px); top:-5px; bottom:auto; background:#f2c200; transform:none; box-shadow:0 0 0 4px #f2c20015; }
@media(prefers-reduced-motion:no-preference){
  #industries-served .industry-hub-icon{ animation:industryHubGlow 3s ease-in-out infinite; }
}
@keyframes industryHubGlow{ 0%,100%{box-shadow:0 0 0 0 #f2c20000} 50%{box-shadow:0 0 0 7px #f2c20018} }
@media(max-width:991.98px){
  #industries-served .industry-grid{ gap:28px 18px; }
  #industries-served .industry-grid::before{ left:calc((100% - 18px) / 4); right:calc((100% - 18px) / 4); }
  #industries-served .industry-tile::before{ height:28px; }
  #industries-served .industry-tile:nth-child(-n+2)::before{ height:32px; }
  #industries-served .industry-hub{ width:250px; }
}

/* Compact diagram spacing without reducing the readable body text. */
#industries-served{ padding-block:24px; }
#industries-served .industry-heading{ margin-bottom:12px; gap:18px; }
#industries-served h2{ font-size:clamp(1.7rem,2.8vw,2.4rem); margin-top:8px; }
#industries-served .industry-hub{ width:210px; padding:8px 14px; gap:3px; margin-bottom:44px; }
#industries-served .industry-hub-icon{ width:28px; height:28px; font-size:1rem; margin-bottom:0; }
#industries-served .industry-hub::after{ height:24px; }
#industries-served .industry-grid{ gap:20px 24px; }
#industries-served .industry-grid::before{ top:-22px; }
#industries-served .industry-tile{ min-height:76px; padding:10px 12px; gap:10px; }
#industries-served .industry-tile::before{ height:20px; }
#industries-served .industry-tile:nth-child(-n+3)::before{ height:22px; }
#industries-served .industry-icon{ width:38px; height:38px; flex-basis:38px; font-size:1.25rem; }
#industries-served .industry-footer{ margin-top:10px; padding-top:4px; }
@media(max-width:991.98px){
  #industries-served .industry-grid{ column-gap:18px; }
  #industries-served .industry-tile:nth-child(3)::before{ height:20px; }
}
@media(max-width:767.98px){
  #industries-served{ padding-block:20px; }
  #industries-served .industry-heading{ gap:8px; margin-bottom:12px; }
  #industries-served .industry-tile{ padding:10px; gap:6px; }
  #industries-served .industry-icon{ width:32px; height:32px; flex-basis:32px; font-size:1.1rem; }
  #industries-served h3{ margin-bottom:4px; }
  #industries-served .industry-arrow{ top:16px; right:12px; }
}
#industries-served .industry-heading > p{ line-height:1.55; }
#industries-served h3{ font-size:1.05rem; margin-bottom:3px; }
@media(max-width:767.98px){
  #industries-served .industry-tile{ flex-direction:row; align-items:center; }
  #industries-served .industry-icon{ width:26px; height:30px; flex-basis:26px; font-size:1rem; border-radius:7px; }
  #industries-served .industry-arrow{ display:none; }
  #industries-served h3{ font-size:.94rem; }
  #industries-served .industry-copy p{ font-size:.72rem; }
  #industries-served .industry-grid{ column-gap:10px; }
  #industries-served .industry-grid::before{ left:calc((100% - 10px) / 4); right:calc((100% - 10px) / 4); }
}
