.s-solutions{position:relative;overflow:hidden;background:var(--c-bg)}
.s-solutions::before{content:"";position:absolute;inset-block-start:-220px;inset-inline-end:-160px;width:min(560px,80vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c-primary) 14%,transparent),transparent 68%);pointer-events:none}
.s-solutions>.container{position:relative;z-index:1}

.s-solutions__lead{max-width:56ch;margin:16px auto 0;color:var(--c-muted);font-size:1.02rem;line-height:1.8}

.s-solutions__grid{counter-reset:sol;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-block-start:52px}

.s-sol-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:32px 26px 22px;border:1px solid var(--c-border);border-radius:var(--radius-lg);background:var(--c-surface);box-shadow:var(--shadow-sm);overflow:hidden;transition:translate .3s ease,box-shadow .3s ease,border-color .3s ease}
.s-sol-card::before{counter-increment:sol;content:counter(sol,decimal-leading-zero);position:absolute;inset-block-start:22px;inset-inline-end:24px;font-family:var(--font-head);font-size:.72rem;letter-spacing:.14em;color:var(--c-muted);opacity:.55}
.s-sol-card::after{content:"";position:absolute;inset-block-start:0;inset-inline:0;height:3px;background:var(--c-accent);opacity:0;transition:opacity .3s ease}
.s-sol-card:hover{translate:0 -4px;box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--c-primary) 28%,var(--c-border))}
.s-sol-card:hover::after{opacity:1}

.s-sol-card__icon{width:56px;height:56px;flex:none;color:var(--c-primary);background:color-mix(in srgb,var(--c-primary) 10%,var(--c-surface));transition:background .3s ease,color .3s ease}
.s-sol-card__icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.s-sol-card:hover .s-sol-card__icon{background:var(--c-primary);color:var(--c-on-primary)}

.s-sol-card h3{margin:2px 0 0;font-family:var(--font-head);font-size:1.06rem;font-weight:600;line-height:1.5;color:var(--c-text)}
.s-sol-card p{margin:0;font-size:.93rem;line-height:1.75;color:var(--c-muted)}

.s-sol-card__link{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-block-start:auto;font-size:.86rem;font-weight:600;color:var(--c-primary);text-decoration:none;border-radius:6px;transition:color .25s ease,gap .25s ease}
.s-sol-card__link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.s-sol-card__link:hover{color:color-mix(in srgb,var(--c-primary) 78%,var(--c-secondary))}
.s-sol-card__link:hover svg{transform:translateX(4px)}
.s-sol-card__link:focus-visible{outline:2px solid var(--c-primary);outline-offset:4px}
:dir(rtl) .s-sol-card__link svg{transform:scaleX(-1)}
:dir(rtl) .s-sol-card__link:hover svg{transform:scaleX(-1) translateX(4px)}

.s-solutions__cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;margin-block-start:48px;padding:clamp(24px,3vw,36px);border-radius:var(--radius-lg);background:var(--c-primary);color:var(--c-on-primary);box-shadow:var(--shadow-md)}
.s-solutions__cta-text{max-width:46ch}
.s-solutions__cta h3{margin:0;font-family:var(--font-head);font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.45;color:inherit}
.s-solutions__cta p{margin:8px 0 0;font-size:.95rem;line-height:1.7;color:inherit;opacity:.85}
.s-solutions__cta-actions{display:flex;flex-wrap:wrap;gap:12px}
.s-solutions__cta .btn{min-height:48px}
.s-solutions__cta-ghost{color:var(--c-on-primary);border-color:color-mix(in srgb,var(--c-on-primary) 55%,transparent)}
.s-solutions__cta-ghost:hover{background:color-mix(in srgb,var(--c-on-primary) 14%,transparent);border-color:var(--c-on-primary)}

@media (max-width:900px){
  .s-solutions__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-block-start:40px}
  .s-sol-card{padding:26px 22px 18px}
  .s-solutions__cta{margin-block-start:36px}
}

@media (max-width:600px){
  .s-solutions::before{inset-block-start:-140px;inset-inline-end:-140px;opacity:.7}
  .s-solutions__grid{grid-template-columns:1fr;gap:16px}
  .s-sol-card{gap:12px}
  .s-sol-card__icon{width:52px;height:52px}
  .s-solutions__cta{flex-direction:column;align-items:stretch;text-align:start}
  .s-solutions__cta-actions{flex-direction:column}
  .s-solutions__cta .btn{width:100%}
}
