.strengths{
  position:relative;
  max-width:1240px;margin:0 auto;
  padding:60px 40px 170px;
}

.strengths__head{
  margin-bottom:56px;
  opacity:0;transform:translateY(26px);
  transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.2,1);
}
.strengths.in .strengths__head{opacity:1;transform:none}
.strengths__eyebrow{
  display:flex;align-items:baseline;gap:14px;margin-bottom:22px;
  font-family:var(--font-mono);
}
.strengths__eyebrow .num{color:var(--gold);font-size:20px;font-weight:700}
.strengths__eyebrow .lbl{font-size:11px;letter-spacing:.3em;color:var(--muted);text-transform:uppercase}
.strengths__title{
  font-weight:800;font-size:clamp(34px,4.4vw,58px);
  line-height:1.05;letter-spacing:-.025em;max-width:720px;
}
.strengths__title em{font-style:italic;color:var(--gold)}

.strengths__grid{
  display:grid;gap:18px;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:210px;
}
.s-cell{
  --mx:50%; --my:50%;
  position:relative;overflow:hidden;
  border-radius:20px;
  background:linear-gradient(165deg,var(--panel) 0%,#080D1B 100%);
  padding:26px 26px 24px;
  display:flex;flex-direction:column;
  opacity:0;transform:translateY(26px);
}
.strengths.in .s-cell{
  opacity:1;transform:none;
  transition:opacity .7s ease var(--i,0s),transform .7s cubic-bezier(.2,.65,.2,1) var(--i,0s);
}
.s-cell:nth-child(1){--i:.08s}
.s-cell:nth-child(2){--i:.16s}
.s-cell:nth-child(3){--i:.24s}
.s-cell:nth-child(4){--i:.32s}
.s-cell:nth-child(5){--i:.4s}
.s-cell:nth-child(6){--i:.48s}
.s-cell:nth-child(7){--i:.56s}

.s-cell::before{
  content:"";position:absolute;inset:0;border-radius:20px;padding:1px;
  background:
    radial-gradient(240px circle at var(--mx) var(--my),
      rgba(232,179,75,.85), rgba(76,141,255,.25) 45%, transparent 70%),
    linear-gradient(0deg, var(--line), var(--line));
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  opacity:.55;transition:opacity .3s;
  pointer-events:none;
}

.s-cell::after{
  content:"";position:absolute;inset:0;border-radius:20px;pointer-events:none;
  background:radial-gradient(320px circle at var(--mx) var(--my),
    rgba(232,179,75,.07), transparent 60%);
  opacity:0;transition:opacity .3s;
}
.s-cell:hover::before{opacity:1}
.s-cell:hover::after{opacity:1}

.s-cell--pipeline{grid-column:span 2;grid-row:span 2}
.s-cell--exp{grid-column:span 2}
.s-cell--map{grid-column:span 2;grid-row:span 2}
.s-cell--lang{grid-column:span 1}
.s-cell--wporg{grid-column:span 1}
.s-cell--speed{grid-column:span 2}
.s-cell--stack{grid-column:span 2}

.s-cell__tag{
  font-family:var(--font-mono);font-size:10.5px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--muted);margin-bottom:12px;
}
.s-cell__title{
  font-weight:700;font-size:19px;line-height:1.25;letter-spacing:-.01em;
}
.s-cell__desc{
  color:var(--muted);font-size:13.5px;line-height:1.6;margin-top:8px;
}
.s-cell__desc b{color:var(--text);font-weight:600}

.s-pipeline{margin:auto 0;padding:18px 4px}
.s-pipeline svg{width:100%;height:auto;display:block;overflow:visible}
.s-pipeline .node{fill:#0D1428;stroke:rgba(125,150,215,.35)}
.s-pipeline .node--gold{stroke:rgba(232,179,75,.6)}
.s-pipeline .label{
  font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;
  fill:var(--muted);text-transform:uppercase;
}
.s-pipeline .label--gold{fill:var(--gold)}
.s-pipeline .wire{stroke:rgba(125,150,215,.3);stroke-dasharray:4 5;fill:none}
.s-pipeline .spark{fill:var(--gold);filter:drop-shadow(0 0 6px rgba(232,179,75,.9))}

.s-exp{display:flex;gap:36px;margin-top:auto;align-items:baseline}
.s-exp div b{
  display:block;font-weight:800;font-size:46px;line-height:1;
  letter-spacing:-.03em;font-variant-numeric:tabular-nums;
}
.s-exp div b .plus{color:var(--gold)}
.s-exp div small{
  font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);
}

.s-lang{margin-top:auto;height:34px;overflow:hidden}
.s-lang ul{list-style:none;animation:langRoll 6s cubic-bezier(.7,0,.3,1) infinite}
.s-lang li{
  height:34px;display:flex;align-items:center;
  font-weight:700;font-size:24px;letter-spacing:-.01em;
}
.s-lang li span{color:var(--gold);margin-left:10px;font-family:var(--font-mono);font-size:11px;letter-spacing:.15em}
@keyframes langRoll{
  0%,28%{transform:translateY(0)}
  33%,61%{transform:translateY(-34px)}
  66%,94%{transform:translateY(-68px)}
  100%{transform:translateY(-102px)}
}

.s-map{
  position:relative;flex:1;margin-top:14px;border-radius:14px;
  overflow:hidden;

  background-image:radial-gradient(rgba(125,150,215,.12) 1px, transparent 1px);
  background-size:16px 16px;
}

.s-map__world{
  position:absolute;inset:4% 2%;
  background-image:radial-gradient(rgba(125,150,215,.55) 1.15px, transparent 1.15px);
  background-size:10px 10px;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200'%3E%3Cpath fill='white' d='M28 52 Q22 40 34 34 Q52 24 78 30 Q104 28 112 40 Q120 52 106 58 Q112 66 100 72 Q86 70 78 82 Q70 94 60 88 Q44 80 38 68 Q26 62 28 52 Z'/%3E%3Cpath fill='white' d='M96 106 Q108 98 116 108 Q122 122 114 140 Q108 158 100 150 Q92 134 92 118 Q92 110 96 106 Z'/%3E%3Cpath fill='white' d='M128 26 Q140 20 146 28 Q144 38 134 38 Q126 34 128 26 Z'/%3E%3Cpath fill='white' d='M196 44 Q206 36 220 40 Q228 46 222 54 Q212 60 202 58 Q192 52 196 44 Z'/%3E%3Cpath fill='white' d='M198 66 Q214 58 228 66 Q236 78 230 96 Q224 116 212 124 Q202 120 200 104 Q194 84 198 66 Z'/%3E%3Cpath fill='white' d='M234 30 Q260 20 300 26 Q340 24 362 36 Q374 46 362 54 Q368 62 352 66 Q340 62 330 72 Q318 84 306 76 Q294 84 284 74 Q270 70 262 60 Q244 56 238 46 Q230 38 234 30 Z'/%3E%3Cpath fill='white' d='M300 78 Q308 74 312 84 Q310 96 302 98 Q296 88 300 78 Z'/%3E%3Cpath fill='white' d='M330 82 Q338 78 342 86 Q338 94 330 92 Q326 86 330 82 Z'/%3E%3Cpath fill='white' d='M336 128 Q352 120 366 128 Q372 140 362 148 Q346 152 336 144 Q330 134 336 128 Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 200'%3E%3Cpath fill='white' d='M28 52 Q22 40 34 34 Q52 24 78 30 Q104 28 112 40 Q120 52 106 58 Q112 66 100 72 Q86 70 78 82 Q70 94 60 88 Q44 80 38 68 Q26 62 28 52 Z'/%3E%3Cpath fill='white' d='M96 106 Q108 98 116 108 Q122 122 114 140 Q108 158 100 150 Q92 134 92 118 Q92 110 96 106 Z'/%3E%3Cpath fill='white' d='M128 26 Q140 20 146 28 Q144 38 134 38 Q126 34 128 26 Z'/%3E%3Cpath fill='white' d='M196 44 Q206 36 220 40 Q228 46 222 54 Q212 60 202 58 Q192 52 196 44 Z'/%3E%3Cpath fill='white' d='M198 66 Q214 58 228 66 Q236 78 230 96 Q224 116 212 124 Q202 120 200 104 Q194 84 198 66 Z'/%3E%3Cpath fill='white' d='M234 30 Q260 20 300 26 Q340 24 362 36 Q374 46 362 54 Q368 62 352 66 Q340 62 330 72 Q318 84 306 76 Q294 84 284 74 Q270 70 262 60 Q244 56 238 46 Q230 38 234 30 Z'/%3E%3Cpath fill='white' d='M300 78 Q308 74 312 84 Q310 96 302 98 Q296 88 300 78 Z'/%3E%3Cpath fill='white' d='M330 82 Q338 78 342 86 Q338 94 330 92 Q326 86 330 82 Z'/%3E%3Cpath fill='white' d='M336 128 Q352 120 366 128 Q372 140 362 148 Q346 152 336 144 Q330 134 336 128 Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
.s-map i{
  position:absolute;width:7px;height:7px;border-radius:50%;
  background:var(--gold);box-shadow:0 0 8px rgba(232,179,75,.9);
}
.s-map i::after{
  content:"";position:absolute;inset:-7px;border-radius:50%;
  border:1px solid rgba(232,179,75,.7);
  animation:mapPing 2.6s ease-out infinite;
  animation-delay:inherit;
}
@keyframes mapPing{
  0%{transform:scale(.4);opacity:1}
  70%,100%{transform:scale(2.4);opacity:0}
}

.s-map .p1{left:17%;top:22%;animation-delay:.9s}
.s-map .p2{left:26%;top:60%;animation-delay:1.9s}
.s-map .p3{left:52%;top:24%;animation-delay:.4s}
.s-map .p4{left:60%;top:18%;animation-delay:1.5s}
.s-map .p5{left:68%;top:27%;width:9px;height:9px;animation-delay:.0s}
.s-map .p6{left:76%;top:43%;animation-delay:1.2s}
.s-map .p7{left:88%;top:68%;animation-delay:.7s}

.s-map__stat{
  position:absolute;left:18px;bottom:14px;
  display:flex;align-items:baseline;gap:8px;
}
.s-map__stat b{
  font-weight:800;font-size:42px;line-height:1;letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}
.s-map__stat small{
  font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);
}

.s-wporg{margin-top:auto;display:flex;align-items:center;gap:14px}
.s-wporg__w{
  width:44px;height:44px;border-radius:50%;flex:none;
  border:1.5px solid rgba(232,179,75,.6);
  display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:22px;color:var(--gold);
  font-style:italic;
}
.s-wporg__meta{font-family:var(--font-mono);font-size:10.5px;color:var(--muted);line-height:1.8;letter-spacing:.08em}
.s-wporg__meta b{color:var(--green);font-weight:500}

.s-cell--speed{
  display:grid;grid-template-columns:1fr auto;
  grid-template-rows:auto auto 1fr;
  column-gap:26px;align-content:start;
}
.s-cell--speed .s-cell__tag{grid-column:1/-1}
.s-cell--speed .s-cell__title,
.s-cell--speed .s-cell__desc{grid-column:1}
.s-cell--speed .s-speed{
  grid-column:2;grid-row:2/4;align-self:center;
  padding-left:6px;
}
.s-speed{display:flex;align-items:center}
.s-speed svg{flex:none;overflow:visible}
.s-speed .dial-bg{stroke:rgba(125,150,215,.18);fill:none;stroke-linecap:round}
.s-speed .dial-val{
  stroke:url(#speedGrad);fill:none;stroke-linecap:round;
  stroke-dasharray:126;stroke-dashoffset:126;
  transition:stroke-dashoffset 1.6s cubic-bezier(.2,.65,.2,1) .3s;
}
.strengths.in .s-speed .dial-val{stroke-dashoffset:18}
.s-speed__score{
  font-weight:800;font-size:30px;letter-spacing:-.02em;
  fill:var(--text);font-variant-numeric:tabular-nums;
}
.s-speed__lbl{
  font-family:var(--font-mono);font-size:8.5px;letter-spacing:.18em;
  fill:var(--muted);text-transform:uppercase;
}

.s-stack{
  margin-top:auto;display:flex;flex-direction:column;gap:12px;
  overflow:hidden;
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.s-stack__row{display:flex;gap:10px;width:max-content;will-change:transform}
.s-stack__row--a{animation:marqA 26s linear infinite}
.s-stack__row--b{animation:marqB 32s linear infinite}
.s-stack__row span{
  flex:none;font-family:var(--font-mono);font-size:11px;color:var(--muted);
  border:1px solid var(--line);border-radius:999px;padding:7px 14px;
  background:rgba(255,255,255,.02);white-space:nowrap;
  transition:color .3s,border-color .3s;
}
.s-cell--stack:hover .s-stack__row span{color:var(--text)}
.s-stack__row span.gold{color:var(--gold);border-color:rgba(232,179,75,.35)}
@keyframes marqA{to{transform:translateX(-50%)}}
@keyframes marqB{from{transform:translateX(-50%)}to{transform:translateX(0)}}

@media(max-width:980px){
  .strengths{padding:30px 20px 120px}
  .strengths__grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
  .s-cell{min-height:190px}
  .s-cell--pipeline,.s-cell--exp,.s-cell--map,.s-cell--speed,.s-cell--stack{grid-column:span 2}
.s-cell--stack{grid-column:span 2}
  .s-cell--lang,.s-cell--wporg{grid-column:span 1}
  .s-cell--map{min-height:280px}
}
@media(max-width:520px){
  .s-cell--lang,.s-cell--wporg{grid-column:span 2}
  .s-cell--speed{display:flex;flex-direction:column;align-items:flex-start}
  .s-cell--speed .s-speed{margin-top:18px;padding-left:0}
}

@media(prefers-reduced-motion:reduce){
  .strengths__head,.s-cell{opacity:1;transform:none;transition:none}
  .s-lang ul{animation:none}
  .s-stack__row--a,.s-stack__row--b{animation:none}
  .s-map i::after{animation:none;opacity:0}
  .s-speed .dial-val{transition:none;stroke-dashoffset:18}
}
