/* =========================================================
   VRAXON THEME — SOLUTIONS PAGE STYLES (unique sections only)
   Shared vars / reset / header / footer live in base.css
   ========================================================= */

body.page-solutions{ --radius: 18px; }

/* HERO */
.sol-hero{
  position:relative; padding:90px 0 66px; overflow:hidden;
  background:
    linear-gradient(120deg, rgba(139,92,246,0.10), rgba(59,130,246,0.06) 40%, transparent 70%),
    repeating-linear-gradient(0deg, rgba(11,12,20,0.035) 0 1px, transparent 1px 64px),
    repeating-linear-gradient(90deg, rgba(11,12,20,0.035) 0 1px, transparent 1px 64px);
}
.sol-hero::before{
  content:""; position:absolute; top:-180px; left:-120px; width:520px; height:520px; border-radius:50%;
  background:radial-gradient(circle, rgba(255,63,142,0.14), transparent 70%); filter:blur(4px);
}
.sol-hero::after{
  content:""; position:absolute; top:-140px; right:-160px; width:560px; height:560px; border-radius:50%;
  background:radial-gradient(circle, rgba(34,211,238,0.14), transparent 70%); filter:blur(4px);
}
.sol-hero-inner{position:relative; z-index:1; max-width:820px;}
.sol-hero h1{font-size:50px; font-weight:700;}
.sol-hero p.lede{margin-top:24px; font-size:17px; color:var(--ink-soft); max-width:600px; line-height:1.65;}

/* CARDS */
.cards-section{padding:76px 0 40px;}
.card-grid{
  display:grid; grid-template-columns:repeat(3, 1fr); gap:22px;
}
.sol-card{
  border-radius:var(--radius); overflow:hidden; background:#fff;
  box-shadow:var(--shadow-card); display:flex; flex-direction:column;
  transition:transform .3s ease, box-shadow .3s ease;
}
.sol-card:hover{transform:translateY(-5px); box-shadow:0 20px 44px -16px rgba(20,10,50,0.22);}
.sol-card .thumb{position:relative; height:180px;}
.sol-card .thumb .icon-badge{
  position:absolute; top:16px; left:16px; width:38px; height:38px; border-radius:11px;
  background:rgba(255,255,255,0.92); display:flex; align-items:center; justify-content:center;
  font-size:17px; box-shadow:0 6px 14px -4px rgba(0,0,0,0.25);
}
.sol-card .body{padding:24px 24px 22px;}
.sol-card h3{font-size:19px; font-weight:700; margin-bottom:9px;}
.sol-card p{font-size:13.8px; color:var(--ink-soft); line-height:1.55; min-height:60px;}
.sol-card .stats{
  display:flex; justify-content:space-between; margin-top:18px; padding-top:16px;
  border-top:1px dashed var(--line);
}
.sol-card .stats div span{display:block; font-size:10px; font-weight:800; letter-spacing:0.09em; color:#9a9ca8; margin-bottom:5px;}
.sol-card .stats div b{font-family:'Bricolage Grotesque',sans-serif; font-size:18px; font-weight:700;}

.stat-pink b{color:var(--pink) !important;}
.stat-mint b{color:var(--mint) !important;}
.stat-violet b{color:var(--violet) !important;}
.stat-orange b{color:var(--orange) !important;}
.stat-blue b{color:var(--blue) !important;}
.stat-amber b{color:var(--amber) !important;}
.stat-ink b{color:var(--ink) !important;}

/* STRATEGIST CTA */
.strategist{padding:20px 0 100px;}
.strategist-banner{
  border-radius:26px; padding:44px 48px; display:flex; align-items:center; justify-content:space-between; gap:30px;
  background:linear-gradient(110deg, #ffe6ef 0%, #eee7ff 45%, #e3f1ff 100%);
  position:relative; overflow:hidden;
}
.strategist-banner h2{font-size:32px; font-weight:700; position:relative; z-index:1;}
.strategist-banner .eyebrow{margin-bottom:10px;}

@media (max-width: 980px){
  .card-grid{grid-template-columns:1fr 1fr;}
  .sol-hero h1{font-size:36px;}
  .strategist-banner{flex-direction:column; text-align:center;}
}
@media (max-width: 620px){
  .card-grid{grid-template-columns:1fr;}
}
