/* === Solutions page isolated styles (prefixed .sol-*) === */
.sol-wrap{--sol-gap:16px;--sol-radius:14px;--sol-line:#e9ecef;--sol-card:#fff;--sol-text:#1f2937;--sol-muted:#6b7280}
.sol-wrap *{box-sizing:border-box}
.sol-wrap{color:var(--sol-text)}

/* Hero */
.sol-hero{position:relative;padding:42px 0 24px;background:linear-gradient(180deg,#f8fafc,#ffffff)}
.sol-hero h2{margin:0 0 6px;font-size:clamp(1.6rem,2.2vw,2.2rem);font-weight:700}
.sol-hero p{margin:0;color:var(--sol-muted);font-size:clamp(.95rem,1.2vw,1.05rem)}

/* Responsive grid */
.sol-grid{display:grid;gap:var(--sol-gap)}
.sol-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sol-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1200px){.sol-grid-4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.sol-grid-3,.sol-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.sol-grid-3,.sol-grid-4{grid-template-columns:1fr}}

/* Card */
.sol-card{background:var(--sol-card);border:1px solid var(--sol-line);border-radius:var(--sol-radius);overflow:hidden;display:flex;flex-direction:column}
.sol-card .sol-p{padding:16px 16px}
.sol-card h3{margin:0 0 6px;font-size:1.1rem;font-weight:700}
.sol-card p{margin:0 0 8px;color:var(--sol-muted);font-size:.98rem}
.sol-card ul{margin:0;padding-left:18px}
.sol-card li{margin:4px 0}

/* Media block */
.sol-media{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--sol-gap);align-items:center}
@media (max-width:900px){.sol-media{grid-template-columns:1fr}}
.sol-media .sol-img{border-radius:var(--sol-radius);border:1px solid var(--sol-line);overflow:hidden}
.sol-media .sol-img img{display:block;width:100%;height:auto;object-fit:cover}

/* Steps */
.sol-steps{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:var(--sol-gap)}
@media (max-width:900px){.sol-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.sol-steps{grid-template-columns:1fr}}
.sol-step{border:1px dashed var(--sol-line);border-radius:var(--sol-radius);padding:16px;text-align:center;background:#fff}
.sol-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid var(--sol-line);margin-bottom:8px;font-weight:700}

/* Section spacing */
.sol-section{padding:22px 0}
.sol-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.sol-btn{display:inline-block;border:1px solid #111;border-radius:999px;padding:10px 16px;text-decoration:none;color:#111;font-weight:600}
.sol-btn:hover{background:#111;color:#fff}
.sol-btn-outline{border-color:var(--sol-line);color:#111}