/* =========================================================
   Wisal Home — therapeutic redesign (scoped with .wsl- prefix)
   Brand: purple #6E2F97 · green #52A73E · cream #FAF9FB
   ========================================================= */
.wsl{
  --p:#6E2F97; --p-dark:#4A1E68; --p-soft:#F3EDF9;
  --g:#52A73E; --g-soft:#EAF5E6; --teal:#3E9B8E; --violet:#9442C8; --amber:#C98A3E;
  --cream:#FAF9FB; --ink:#2A2433; --muted:#6B6577; --line:#ECE9F1;
  --s-soft:0 4px 20px rgba(110,47,151,.08);
  --s-pop:0 16px 46px rgba(110,47,151,.14);
  background:var(--cream); color:var(--ink);
  font-family:inherit;
}
.wsl *{box-sizing:border-box}
.wsl .wsl-wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.wsl .wsl-eyebrow{color:var(--p);font-weight:600;font-size:14px;letter-spacing:.4px;margin-bottom:10px}
.wsl .wsl-h2{font-size:32px;font-weight:700;margin:0 0 6px;color:var(--ink)}
.wsl .wsl-sub{color:var(--muted);font-size:16px;margin-bottom:38px}
.wsl .wsl-pad{padding:74px 0}
.wsl .wsl-btn{border:none;border-radius:14px;font-family:inherit;font-weight:600;cursor:pointer;font-size:15px;
  padding:14px 30px;transition:.2s;text-decoration:none;display:inline-block;line-height:1.2}
.wsl .wsl-green{background:var(--g);color:#fff;box-shadow:0 12px 30px rgba(82,167,62,.28)}
.wsl .wsl-green:hover{transform:translateY(-2px);color:#fff}
.wsl .wsl-purple{background:var(--p);color:#fff;box-shadow:0 12px 30px rgba(110,47,151,.25)}
.wsl .wsl-purple:hover{transform:translateY(-2px);color:#fff}
.wsl .wsl-ghost{background:var(--p-soft);color:var(--p)}
.wsl .wsl-ghost:hover{color:var(--p);background:#ead9f5}

/* HERO */
.wsl .wsl-hero{padding:78px 0 66px;
  background:radial-gradient(900px 360px at 88% -10%, var(--p-soft), transparent),
             radial-gradient(700px 320px at 0% 120%, var(--g-soft), transparent)}
.wsl .wsl-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.wsl .wsl-hero h1{font-size:48px;font-weight:700;line-height:1.28;margin:0 0 20px}
.wsl .wsl-hero h1 span{color:var(--p)}
.wsl .wsl-hero .lead{font-size:19px;color:var(--muted);margin-bottom:30px;max-width:520px}
.wsl .wsl-hero-cta{display:flex;gap:14px;align-items:center;margin-bottom:34px;flex-wrap:wrap}
.wsl .wsl-trust{display:flex;gap:24px;flex-wrap:wrap;font-size:14px;color:var(--muted)}
.wsl .wsl-trust b{color:var(--ink)}
.wsl .wsl-hero-card{background:#fff;border-radius:28px;box-shadow:var(--s-pop);padding:30px}
.wsl .wsl-hero-card .tagp{display:inline-block;background:var(--g-soft);color:var(--g);font-size:13px;font-weight:600;padding:6px 14px;border-radius:20px;margin-bottom:16px}
.wsl .wsl-hero-card h4{font-size:20px;margin:0 0 16px}
.wsl .wsl-qrow{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--ink);text-decoration:none}
.wsl .wsl-qrow:hover{color:var(--p)}
.wsl .wsl-qrow:last-of-type{border:none}
.wsl .wsl-qrow .ic{width:42px;height:42px;border-radius:12px;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-size:18px;flex:none}
.wsl .wsl-hero-card .wsl-btn{width:100%;text-align:center;margin-top:18px}

/* CATEGORIES */
.wsl .wsl-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.wsl .wsl-cat{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;transition:.25s;display:block;text-decoration:none;color:var(--ink)}
.wsl .wsl-cat:hover{box-shadow:var(--s-pop);transform:translateY(-5px);color:var(--ink)}
.wsl .wsl-cat .ic{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:26px;color:#fff;margin-bottom:18px;box-shadow:0 12px 26px -10px rgba(0,0,0,.3)}
.wsl .wsl-cat h3{font-size:19px;margin:0 0 6px}
.wsl .wsl-cat .cnt{color:var(--muted);font-size:14px;margin-bottom:14px}
.wsl .wsl-cat .more{color:var(--p);font-weight:600;font-size:14px}
.wsl .wsl-cat-cta{background:linear-gradient(145deg,var(--p),var(--p-dark));color:#fff;border:none;display:flex;flex-direction:column;justify-content:center}
.wsl .wsl-cat-cta h3{color:#fff}
.wsl .wsl-cat-cta p{color:rgba(255,255,255,.82);font-size:14px;margin:0 0 14px}
.wsl .wsl-cat-cta .more{color:#fff}

/* STEPS */
.wsl .wsl-steps-band{background:linear-gradient(160deg,#fff,var(--p-soft))}
.wsl .wsl-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.wsl .wsl-stp{background:#fff;border-radius:22px;padding:32px;text-align:center;box-shadow:var(--s-soft)}
.wsl .wsl-stp .n{width:56px;height:56px;border-radius:50%;background:linear-gradient(145deg,var(--p),var(--p-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:22px;margin:0 auto 16px;box-shadow:0 10px 24px rgba(110,47,151,.32)}
.wsl .wsl-stp h4{font-size:18px;margin:0 0 8px}
.wsl .wsl-stp p{color:var(--muted);font-size:14px;margin:0}

/* SERVICES */
.wsl .wsl-svc{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.wsl .wsl-scard{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.wsl .wsl-scard:hover{box-shadow:var(--s-pop);transform:translateY(-5px)}
.wsl .wsl-scard .top{height:140px;background:linear-gradient(135deg,var(--p-soft),var(--g-soft));overflow:hidden;position:relative}
.wsl .wsl-scard .top img{width:100%;height:100%;object-fit:cover}
.wsl .wsl-scard .b{padding:18px;display:flex;flex-direction:column;flex:1}
.wsl .wsl-scard .chip{font-size:12px;color:var(--p);background:var(--p-soft);padding:4px 10px;border-radius:10px;font-weight:600;align-self:flex-start;text-decoration:none}
.wsl .wsl-scard h4{font-size:16px;margin:12px 0 8px;line-height:1.5}
.wsl .wsl-scard h4 a{color:var(--ink);text-decoration:none}
.wsl .wsl-scard h4 a:hover{color:var(--p)}
.wsl .wsl-scard .meta{display:flex;gap:12px;font-size:13px;color:var(--muted);margin-bottom:14px;flex-wrap:wrap}
.wsl .wsl-scard .foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.wsl .wsl-scard .price{font-weight:700;color:var(--p);font-size:16px}
.wsl .wsl-scard .price .old{color:var(--muted);font-weight:400;font-size:13px;text-decoration:line-through;margin-inline-start:6px}
.wsl .wsl-scard .book{background:var(--g);color:#fff;border:none;border-radius:11px;padding:9px 18px;font-family:inherit;font-weight:600;font-size:13px;cursor:pointer}
.wsl .wsl-scard .book:hover{background:#458c34}
.wsl .wsl-center{text-align:center;margin-top:40px}

/* CONSULTANTS */
.wsl .wsl-cons{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.wsl .wsl-ccard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 22px;text-align:center;transition:.25s;display:flex;flex-direction:column;align-items:center}
.wsl .wsl-ccard:hover{box-shadow:var(--s-pop);transform:translateY(-5px)}
.wsl .wsl-ccard .ph{width:104px;height:104px;border-radius:50%;object-fit:cover;margin-bottom:16px;border:3px solid var(--p-soft);background:var(--p-soft)}
.wsl .wsl-ccard h4{font-size:17px;margin:0 0 6px;color:var(--ink)}
.wsl .wsl-ccard .loc{color:var(--p);font-size:13px;font-weight:500;margin-bottom:10px}
.wsl .wsl-ccard .bio{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 14px}
.wsl .wsl-ccard .scount{display:inline-block;color:var(--muted);font-size:12px;background:var(--p-soft);padding:5px 12px;border-radius:20px;margin-bottom:18px}
.wsl .wsl-ccard .wsl-btn{padding:10px 0;font-size:14px;width:100%;margin-top:auto}

/* REASSURE */
.wsl .wsl-reassure{border-radius:30px;padding:54px;background:linear-gradient(135deg,var(--p),var(--p-dark));color:#fff;
  display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:var(--s-pop);flex-wrap:wrap;overflow:hidden;position:relative}
.wsl .wsl-reassure::before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(82,167,62,.22);top:-90px;left:-60px}
.wsl .wsl-reassure h2{font-size:31px;margin:0 0 8px;position:relative;color:#fff}
.wsl .wsl-reassure p{opacity:.86;position:relative;margin:0}
.wsl .wsl-reassure .wsl-btn{background:#fff;color:var(--p);position:relative}

/* TESTIMONIALS */
.wsl .wsl-tst{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.wsl .wsl-tcard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:var(--s-soft)}
.wsl .wsl-tcard .stars{color:#F2B705;margin-bottom:12px;font-size:15px}
.wsl .wsl-tcard .txt{font-size:15px;margin-bottom:18px;color:var(--ink)}
.wsl .wsl-tcard .who{display:flex;align-items:center;gap:12px}
.wsl .wsl-tcard .who img,.wsl .wsl-tcard .who .av{width:46px;height:46px;border-radius:50%;object-fit:cover;background:var(--p-soft);color:var(--p);display:flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.wsl .wsl-tcard .who b{display:block;font-size:14px}
.wsl .wsl-tcard .who small{color:var(--muted);font-size:12px}

/* BLOG */
.wsl .wsl-blog{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.wsl .wsl-bcard{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.wsl .wsl-bcard:hover{box-shadow:var(--s-pop);transform:translateY(-5px)}
.wsl .wsl-bcard .img{height:190px;overflow:hidden;display:block}
.wsl .wsl-bcard .img img{width:100%;height:100%;object-fit:cover;transition:.3s}
.wsl .wsl-bcard:hover .img img{transform:scale(1.05)}
.wsl .wsl-bcard .b{padding:22px;display:flex;flex-direction:column;flex:1}
.wsl .wsl-bcard .cat{align-self:flex-start;font-size:12px;color:var(--p);background:var(--p-soft);padding:4px 12px;border-radius:10px;font-weight:600;text-decoration:none;margin-bottom:12px}
.wsl .wsl-bcard h4{font-size:17px;line-height:1.6;margin:0 0 10px}
.wsl .wsl-bcard h4 a{color:var(--ink);text-decoration:none}
.wsl .wsl-bcard h4 a:hover{color:var(--p)}
.wsl .wsl-bcard .date{color:var(--muted);font-size:13px;margin-bottom:16px}
.wsl .wsl-bcard .read{color:var(--p);font-weight:600;font-size:14px;text-decoration:none;margin-top:auto}

/* RESPONSIVE */
@media (max-width:991px){
  .wsl .wsl-hero-grid{grid-template-columns:1fr}
  .wsl .wsl-hero h1{font-size:38px}
  .wsl .wsl-cats{grid-template-columns:repeat(2,1fr)}
  .wsl .wsl-svc{grid-template-columns:repeat(2,1fr)}
  .wsl .wsl-cons{grid-template-columns:repeat(2,1fr)}
  .wsl .wsl-blog{grid-template-columns:repeat(2,1fr)}
  .wsl .wsl-steps{grid-template-columns:1fr}
  .wsl .wsl-tst{grid-template-columns:1fr}
}
@media (max-width:575px){
  .wsl .wsl-cats,.wsl .wsl-svc,.wsl .wsl-cons,.wsl .wsl-blog{grid-template-columns:1fr}
  .wsl .wsl-hero h1{font-size:31px}
  .wsl .wsl-pad{padding:50px 0}
  .wsl .wsl-reassure{padding:36px}
}
