/* sol-banners v1 (Oct 23): /solutions/ service cards as zigzag wide banners, same look as Home .svc-cards--banners (styles.css v20/v21) */
.sol-grid.sol-grid--banners{display:flex;flex-direction:column;gap:12px}
.sol-grid--banners .sol-card{position:relative;display:flex;flex-direction:column;justify-content:center;grid-column:auto;aspect-ratio:5/1;min-height:100px;max-height:232px;padding:18px 44% 18px 40px;border-radius:18px;overflow:hidden;isolation:isolate;background:#0b0d10;box-shadow:0 0 0 1px var(--line);transition:transform .5s var(--ease)}
.sol-grid--banners .sol-card .img,.sol-grid--banners>.sol-card:first-child .img,.sol-grid--banners>.sol-card:last-child .img{position:absolute;inset:0;aspect-ratio:auto;border-radius:0;box-shadow:none;overflow:hidden;background:#0b0d10}
.sol-grid--banners .sol-card img,.sol-grid--banners .sol-card:hover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.95) brightness(.95);transform-origin:70% 50%;animation:kbA 16s ease-in-out infinite alternate}
.sol-grid--banners .sol-card::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(7,8,10,.93) 0%,rgba(7,8,10,.82) 34%,rgba(7,8,10,.38) 62%,rgba(7,8,10,.06) 86%,rgba(7,8,10,0) 100%);transition:opacity .35s var(--ease)}
.sol-grid--banners .sol-card::after{content:"";position:absolute;left:0;top:16%;bottom:16%;width:2px;z-index:2;pointer-events:none;background:linear-gradient(#c6a15b,rgba(198,161,91,0));opacity:.9}
.sol-grid--banners .sol-card .tx{position:relative;z-index:3}
.sol-grid--banners .sol-card h3{margin:0;font-size:clamp(17px,1.9vw,24px);display:flex;align-items:center;gap:10px;text-shadow:0 1px 12px rgba(0,0,0,.55)}
.sol-grid--banners .sol-card p{margin-top:6px;color:rgba(235,237,240,.82);font-size:clamp(13.5px,1.25vw,16px);line-height:1.42;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.sol-grid--banners .sol-card .arr{display:inline-block;opacity:1;transform:none;font-size:1em;animation:nudge 2.6s var(--ease) infinite}
/* zigzag: even rows mirrored */
.sol-grid--banners .sol-card:nth-child(even){padding:18px 40px 18px 44%;text-align:right;align-items:flex-end}
.sol-grid--banners .sol-card:nth-child(even) h3{justify-content:flex-end}
.sol-grid--banners .sol-card:nth-child(even)::before{background:linear-gradient(270deg,rgba(7,8,10,.93) 0%,rgba(7,8,10,.82) 34%,rgba(7,8,10,.38) 62%,rgba(7,8,10,.06) 86%,rgba(7,8,10,0) 100%)}
.sol-grid--banners .sol-card:nth-child(even)::after{left:auto;right:0}
.sol-grid--banners .sol-card:nth-child(even) img,.sol-grid--banners .sol-card:nth-child(even):hover img{transform-origin:30% 50%;animation-name:kbB}
.sol-grid--banners .sol-card:nth-child(3n) img{animation-name:kbC;animation-duration:18s}
.sol-grid--banners .sol-card:nth-child(4n+1) img{animation-duration:14s}
.sol-grid--banners .sol-card:nth-child(4n+2) img{animation-duration:17s;animation-delay:-5s}
.sol-grid--banners .sol-card:hover,.js .sol-grid--banners .sol-card.rv.in:hover{transform:translateY(-3px)}
.sol-grid--banners .sol-card:hover::before{opacity:.9}
/* rows slide in from their own side */
.js .sol-grid--banners .sol-card.rv{transform:translateX(-44px);transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:0s!important}
.js .sol-grid--banners .sol-card.rv:nth-child(even){transform:translateX(44px)}
.js .sol-grid--banners .sol-card.rv.in{transform:none}
/* gap under the Homes/Businesses switch */
.sol-hero{padding-bottom:0}
.sol-hero+.sol-half{padding-top:clamp(48px,6vw,72px)}
@media (max-width:700px){
  .sol-grid.sol-grid--banners{gap:10px}
  .sol-grid--banners .sol-card{display:flex;aspect-ratio:auto;min-height:104px;border-radius:14px;padding:13px 27% 13px 18px;background:#0b0d10;box-shadow:0 0 0 1px var(--line)}
  .sol-grid--banners .sol-card:nth-child(even){padding:13px 18px 13px 27%}
  .sol-grid--banners .sol-card h3{font-size:16px;margin:0;gap:7px}
  .sol-grid--banners .sol-card p{font-size:13px;margin-top:3px;line-height:1.36}
  .sol-grid--banners .sol-card::before{background:linear-gradient(90deg,rgba(7,8,10,.94) 0%,rgba(7,8,10,.86) 42%,rgba(7,8,10,.42) 72%,rgba(7,8,10,.08) 100%)}
  .sol-grid--banners .sol-card:nth-child(even)::before{background:linear-gradient(270deg,rgba(7,8,10,.94) 0%,rgba(7,8,10,.86) 42%,rgba(7,8,10,.42) 72%,rgba(7,8,10,.08) 100%)}
  .js .sol-grid--banners .sol-card.rv{transform:translateX(-28px)}
  .js .sol-grid--banners .sol-card.rv:nth-child(even){transform:translateX(28px)}
  .js .sol-grid--banners .sol-card.rv.in{transform:none}
  .sol-hero+.sol-half{padding-top:40px}
}
@media (prefers-reduced-motion:reduce){.sol-grid--banners .sol-card img,.sol-grid--banners .sol-card .arr{animation:none!important;transform:none}.js .sol-grid--banners .sol-card.rv,.js .sol-grid--banners .sol-card.rv:nth-child(even){transform:none}}
