/* =========================================================
   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:50px 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 10px;
  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 + section{padding-top:24px}
.wsl .wsl-hero-grid{display:grid;grid-template-columns:1fr 1.12fr;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 h1 span.g{color:var(--g)}
.wsl .wsl-p{color:var(--p)}
.wsl .wsl-g{color:var(--g)}
.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-hero-badge{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;
  font-size:13.5px;font-weight:600;color:var(--p-dark);
  background:var(--p-soft);border:1px solid rgba(110,47,151,.18);padding:8px 16px;border-radius:999px}
.wsl .wsl-hero-badge b{color:var(--p);font-weight:800}
.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}
/* Hero visual panel (brand gradient, no photo) */
.wsl .wsl-hero-viz{position:relative}
.wsl .wsl-viz-glow{position:absolute;border-radius:50%;filter:blur(60px);z-index:0;pointer-events:none}
.wsl .wsl-viz-glow.g1{width:280px;height:280px;background:rgba(110,47,151,.22);top:-30px;inset-inline-end:-20px}
.wsl .wsl-viz-glow.g2{width:240px;height:240px;background:rgba(82,167,62,.20);bottom:-20px;inset-inline-start:-10px}
.wsl .wsl-viz-ring{position:absolute;z-index:0;border-radius:50%;pointer-events:none}
.wsl .wsl-viz-ring.r1{width:360px;height:360px;top:20px;inset-inline-end:-50px;
  background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.55),rgba(110,47,151,.05));
  border:1px solid rgba(110,47,151,.12)}
.wsl .wsl-viz-ring.r2{width:150px;height:150px;bottom:40px;inset-inline-end:20px;
  border:1px solid rgba(82,167,62,.22);background:rgba(255,255,255,.18)}
.wsl .wsl-viz-ring.r3{width:96px;height:96px;top:-10px;inset-inline-start:150px;
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.6),rgba(82,167,62,.06));
  border:1px solid rgba(255,255,255,.6)}
.wsl .wsl-viz-stack{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:10px}
.wsl .wsl-viz-head{grid-column:1/-1;text-align:center;margin-bottom:4px}
.wsl .wsl-viz-head .eb{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.4px;
  color:var(--p);background:var(--p-soft);padding:6px 14px;border-radius:999px}
.wsl .wsl-viz-head h3{margin:12px 0 0;font-size:20px;font-weight:800;color:var(--p-dark);line-height:1.5}
.wsl .wsl-viz-card{position:relative;border-radius:18px;padding:15px 16px;
  display:flex;align-items:center;gap:13px;text-align:start;
  background:rgba(255,255,255,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.8);box-shadow:var(--s-pop);
  animation:wslFloat 6s ease-in-out infinite}
.wsl .wsl-viz-card .ic{flex:0 0 54px;width:54px;height:54px;border-radius:15px;
  display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;
  box-shadow:0 12px 24px rgba(110,47,151,.25)}
.wsl .wsl-viz-card figcaption{font-size:14px;font-weight:700;color:var(--p-dark);line-height:1.3}
.wsl .wsl-viz-card .sub{display:block;margin-top:3px;font-size:11.5px;font-weight:600;color:var(--muted)}
.wsl .wsl-viz-card.c1{animation-delay:0s}
.wsl .wsl-viz-card.c2{animation-delay:.6s}
.wsl .wsl-viz-card.c3{animation-delay:1.2s}
.wsl .wsl-viz-card.c4{animation-delay:1.8s}
.wsl .wsl-viz-card.c5{animation-delay:2.4s}
.wsl .wsl-viz-card.c6{animation-delay:3s}
/* All six feature icons share the brand purple */
.wsl .wsl-viz-card .ic{background:linear-gradient(150deg,var(--p),var(--p-dark));
  box-shadow:0 12px 24px rgba(110,47,151,.25)}
@keyframes wslFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:991px){
  .wsl .wsl-viz-stack{grid-template-columns:repeat(2,1fr);max-width:520px;margin-inline:auto;padding:20px}
  .wsl .wsl-viz-card{animation:none}
  .wsl .wsl-viz-ring{display:none}
}
@media (max-width:767px){
  .wsl .wsl-viz-card.c4,.wsl .wsl-viz-card.c5,.wsl .wsl-viz-card.c6{display:none}
  .wsl .wsl-viz-stack{grid-template-columns:1fr;max-width:400px}
}

/* CATEGORIES */
.wsl .wsl-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.wsl .wsl-cat{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;transition:.25s;text-decoration:none;color:var(--ink)}
.wsl .wsl-cat:hover{box-shadow:var(--s-soft);transform:translateY(-3px);border-color:transparent;color:var(--ink)}
.wsl .wsl-cat .ic{width:48px;height:48px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff}
.wsl .wsl-cat h3{font-size:16px;margin:0;font-weight:600;line-height:1.45}
.wsl .wsl-cat-cta{background:linear-gradient(145deg,var(--p),var(--p-dark));border:none;color:#fff}
.wsl .wsl-cat-cta .ic{background:rgba(255,255,255,.18)}
.wsl .wsl-cat-cta h3{color:#fff;display:flex;flex-direction:column;gap:2px}
.wsl .wsl-cat-cta .more{color:rgba(255,255,255,.9);font-size:13px;font-weight:600}

/* 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-cc-actions{margin-top:auto;width:100%;display:flex;flex-direction:column;gap:8px;padding-top:4px}
.wsl .wsl-ccard .wsl-btn{padding:10px 0;font-size:14px;width:100%}

/* 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-slider{margin-top:8px;padding:10px 4px 56px}
.wsl .wsl-tst-slider .swiper-slide{height:auto}
.wsl .wsl-tst-slider .wsl-tcard{height:100%}
.wsl .wsl-tst-slider .swiper-pagination{bottom:14px}
.wsl .wsl-tst-slider .swiper-pagination-bullet{background:var(--p);opacity:.28}
.wsl .wsl-tst-slider .swiper-pagination-bullet-active{opacity:1}
.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}
}
@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:36px 0}
  .wsl .wsl-reassure{padding:36px}
}

/* VIDEOS */
.wsl .wsl-vids{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.wsl .wsl-vid{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.25s;display:flex;flex-direction:column}
.wsl .wsl-vid:hover{box-shadow:var(--s-pop);transform:translateY(-4px)}
.wsl .wsl-vid .vframe{position:relative;aspect-ratio:16/9;background:#000}
.wsl .wsl-vid .vframe iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.wsl .wsl-vid h4{font-size:16px;font-weight:600;margin:0;padding:16px 18px;line-height:1.55;color:var(--ink)}
@media(max-width:991px){.wsl .wsl-vids{grid-template-columns:1fr}}

/* LOCATION MAP */
.wsl .wsl-map{border-radius:22px;overflow:hidden;box-shadow:var(--s-soft);border:1px solid var(--line);line-height:0}
.wsl .wsl-map iframe{display:block;width:100%}

/* PARTNERS MARQUEE */
.wsl .wsl-partners{padding:34px 0 10px}
.wsl .wsl-marquee{position:relative;margin-top:26px}
.wsl .wsl-marquee-track{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:70px}
.wsl .wsl-partner{flex:0 0 auto;display:flex;align-items:center;justify-content:center}
.wsl .wsl-partner img{height:118px;width:auto;max-width:290px;object-fit:contain;
  opacity:.85;transition:opacity .3s,transform .3s}
.wsl .wsl-partner img:hover{opacity:1;transform:scale(1.05)}
@media (max-width:767px){
  .wsl .wsl-marquee-track{gap:44px}
  .wsl .wsl-partner img{height:82px;max-width:210px}
}
