/* =========================================================
   Premium About Section (KinzaPsych)
   Paste into: assets/css/kinza-premium.css
========================================================= */

:root{
  /* Premium palette (eye-catchy but clinical) */
  --pc-ink: #0b1220;
  --pc-text: #334155;
  --pc-muted: #64748b;

  --pc-primary: #2563eb;    /* modern royal blue */
  --pc-teal: #06b6d4;       /* calm teal */
  --pc-violet: #7c3aed;     /* premium violet */
  --pc-gold: #f59e0b;       /* gold accent */

  --pc-surface: rgba(255,255,255,.9);
  --pc-border: rgba(15, 23, 42, .10);
  --pc-shadow: 0 22px 70px rgba(2, 6, 23, .10);

  --pc-radius: 22px;
}

/* section background */
.pc-about{
  position: relative;
  background:
    radial-gradient(800px 400px at 10% 10%, rgba(6,182,212,.18), transparent 55%),
    radial-gradient(800px 400px at 90% 0%, rgba(124,58,237,.14), transparent 55%),
    radial-gradient(900px 500px at 60% 100%, rgba(37,99,235,.12), transparent 55%);
}

.pc-about .container{
  padding: 28px;
  border-radius: var(--pc-radius);
  background: transparent;
}

/* header */
.pc-about-title{
  font-family: var(--heading-font);
  font-weight: 800;
  letter-spacing: -.02em;
  font-size: clamp(22px, 2.2vw, 30px);
  color: var(--pc-ink);
}
.pc-about-sub{
  color: var(--pc-muted);
  font-size: 15px;
}

/* chips */
.pc-chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.75);
  border: 1px solid var(--pc-border);
  backdrop-filter: blur(10px);
  color: var(--pc-ink);
  font-weight: 600;
  font-size: 13px;
  box-shadow: 0 10px 30px rgba(2,6,23,.06);
}
.pc-chip i{
  color: var(--pc-primary);
}

/* cards */
.pc-card{
  background: var(--pc-surface);
  border: 1px solid var(--pc-border);
  border-radius: var(--pc-radius);
  box-shadow: var(--pc-shadow);
  padding: 20px;
  position: relative;
  overflow: hidden;
}

/* subtle sheen */
.pc-card::before{
  content:"";
  position:absolute;
  inset:-80px;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent);
  transform: translateX(-40%);
  opacity: .55;
  pointer-events:none;
}

/* Profile */
.pc-profile-top{
  display:flex;
  gap: 16px;
  align-items:center;
}

.pc-profile-media{
  position: relative;
  width: 98px;
  height: 98px;
  flex: 0 0 98px;
}

.pc-avatar{
  width: 98px;
  height: 98px;
  border-radius: 22px;
  object-fit: cover;
  border: 1px solid var(--pc-border);
  box-shadow: 0 18px 40px rgba(2,6,23,.12);
}

.pc-ring{
  position:absolute;
  inset:-8px;
  border-radius: 28px;
  border: 2px solid rgba(37,99,235,.35);
  pointer-events:none;
}

.pc-glow{
  position:absolute;
  inset:-40px;
  background: radial-gradient(circle at 30% 30%, rgba(6,182,212,.25), transparent 60%),
              radial-gradient(circle at 80% 60%, rgba(124,58,237,.18), transparent 55%);
  filter: blur(10px);
  opacity: .9;
  pointer-events:none;
}

.pc-name{
  font-family: var(--heading-font);
  font-weight: 800;
  color: var(--pc-ink);
  letter-spacing: -.02em;
}
.pc-role{
  color: var(--pc-muted);
  font-weight: 600;
}

.pc-kpis .pc-kpi{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(37,99,235,.08);
  color: var(--pc-ink);
  border: 1px solid rgba(37,99,235,.14);
  font-size: 12.5px;
  font-weight: 700;
}
.pc-kpis .pc-kpi i{
  color: var(--pc-primary);
}

.pc-divider{
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(15,23,42,.12), transparent);
  margin: 16px 0;
}

/* info grid */
.pc-info-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
@media (min-width: 576px){
  .pc-info-grid{ grid-template-columns: 1fr 1fr; }
}

.pc-info-item{
  padding: 12px;
  border-radius: 16px;
  border: 1px solid var(--pc-border);
  background: rgba(255,255,255,.65);
}
.pc-info-label{
  display:flex;
  align-items:center;
  gap: 8px;
  font-size: 12px;
  color: var(--pc-muted);
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}
.pc-info-label i{
  color: var(--pc-teal);
}
.pc-info-value{
  margin-top: 6px;
  font-weight: 700;
  color: var(--pc-ink);
  word-break: break-word;
}
.pc-info-value a{
  color: var(--pc-primary);
  text-decoration: none;
}
.pc-info-value a:hover{
  text-decoration: underline;
}

/* buttons style harmony */
.pc-profile .btn-outline-primary{
  border-width: 2px;
}

/* Right side text */
.pc-about-right p{
  color: var(--pc-text);
  font-size: 16px;
  line-height: 1.75;
}
.pc-h4{
  font-family: var(--heading-font);
  font-weight: 850;
  color: var(--pc-ink);
  letter-spacing: -.02em;
}
.pc-callout{
  margin: 14px 0;
  padding: 14px 14px;
  border-radius: 16px;
  border: 1px solid rgba(245,158,11,.20);
  background: rgba(245,158,11,.10);
  color: var(--pc-ink);
  font-weight: 600;
}
.pc-callout i{
  color: var(--pc-gold);
  margin-right: 8px;
}

/* Skills */
.pc-skill-title{
  font-family: var(--heading-font);
  font-weight: 800;
  color: var(--pc-ink);
}
.pc-skill-note{
  font-size: 12px;
  font-weight: 800;
  color: var(--pc-muted);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.pc-skill{
  margin-bottom: 14px;
}
.pc-skill-head{
  display:flex;
  align-items:center;
  justify-content: space-between;
  font-weight: 800;
  color: var(--pc-ink);
  margin-bottom: 8px;
}
.pc-skill-val{
  color: var(--pc-muted);
  font-weight: 900;
}

.pc-skill-bar{
  height: 12px;
  border-radius: 999px;
  background: rgba(15,23,42,.08);
  border: 1px solid rgba(15,23,42,.08);
  overflow: hidden;
}
.pc-skill-fill{
  display:block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--pc-primary), var(--pc-teal), var(--pc-violet));
  box-shadow: 0 10px 30px rgba(37,99,235,.22);
  transition: width 900ms cubic-bezier(.2,.9,.2,1);
}

/* Mobile spacing polish */
@media (max-width: 575.98px){
  .pc-card{ padding: 16px; }
  .pc-profile-top{ align-items:flex-start; }
  .pc-profile-media{ width: 86px; height: 86px; flex: 0 0 86px; }
  .pc-avatar{ width: 86px; height: 86px; border-radius: 18px; }
}

/* =========================================================
   Achievements — Premium UI (KinzaPsych)
   ========================================================= */

.pc-achievements {
  /* softer premium background with subtle depth */
  background:
    radial-gradient(900px 420px at 15% 10%, rgba(14,165,233,0.10), transparent 60%),
    radial-gradient(900px 420px at 85% 30%, rgba(245,158,11,0.12), transparent 60%),
    linear-gradient(180deg, rgba(2,6,23,0.02), rgba(2,6,23,0.00));
  padding-top: 80px;
  padding-bottom: 80px;
}

/* cards */
.pc-ach-card {
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  padding: 22px 22px 18px;
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(2, 6, 23, 0.08);
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.08);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  backdrop-filter: blur(8px);
}

.pc-ach-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 24px 70px rgba(2, 6, 23, 0.14);
  border-color: rgba(14,165,233,0.25);
}

/* subtle shine */
.pc-ach-card::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: radial-gradient(300px 140px at 20% 10%, rgba(255,255,255,0.55), transparent 60%);
  opacity: .7;
  pointer-events: none;
}

/* top row */
.pc-ach-top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

/* icons */
.pc-ach-icon {
  width: 52px;
  height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: rgba(14,165,233,0.12);
  border: 1px solid rgba(14,165,233,0.22);
  color: #0284c7;
  flex: 0 0 auto;
}

.pc-ach-icon i {
  font-size: 1.3rem;
  line-height: 1;
}

.pc-ach-icon.pc-ach-gold {
  background: rgba(245,158,11,0.14);
  border: 1px solid rgba(245,158,11,0.35);
  color: #b45309;
}

/* badges */
.pc-ach-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pc-ach-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  font-size: 12.5px;
  font-weight: 700;
  border-radius: 999px;
  background: rgba(14,165,233,0.12);
  border: 1px solid rgba(14,165,233,0.22);
  color: #075985;
}

.pc-ach-badge.soft {
  background: rgba(2,6,23,0.04);
  border: 1px solid rgba(2,6,23,0.08);
  color: rgba(2,6,23,0.78);
}

.pc-ach-badge i { font-size: 0.95em; }

/* title + text */
.pc-ach-title {
  font-size: 1.15rem;
  line-height: 1.35;
  margin-bottom: 10px;
  font-weight: 800;
  color: var(--heading-color);
}

.pc-ach-text {
  margin: 0;
  color: rgba(2,6,23,0.72);
  font-size: 1rem;
  line-height: 1.6;
}

/* footer meta */
.pc-ach-footer {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed rgba(2,6,23,0.12);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.pc-ach-meta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 0.95rem;
  color: rgba(2,6,23,0.75);
}

/* featured card gets a premium gold edge */
.pc-ach-feature {
  border-color: rgba(245,158,11,0.28);
}

.pc-ach-feature:hover {
  border-color: rgba(245,158,11,0.40);
}

/* mobile polish */
@media (max-width: 576px) {
  .pc-achievements { padding-top: 64px; padding-bottom: 64px; }
  .pc-ach-card { padding: 18px; border-radius: 16px; }
  .pc-ach-icon { width: 48px; height: 48px; border-radius: 14px; }
  .pc-ach-title { font-size: 1.08rem; }
}

/* =========================================================
   Premium Resume (pc-resume)
   ========================================================= */

.pc-resume {
  position: relative;
  overflow: hidden;
}

/* soft background glow */
.pc-resume::before,
.pc-resume::after {
  content: "";
  position: absolute;
  inset: auto auto 0 auto;
  width: 520px;
  height: 520px;
  filter: blur(55px);
  opacity: .18;
  pointer-events: none;
  border-radius: 999px;
}
.pc-resume::before {
  left: -140px;
  bottom: -160px;
  background: radial-gradient(circle at 30% 30%, var(--accent-color), transparent 60%);
}
.pc-resume::after {
  right: -160px;
  top: 120px;
  background: radial-gradient(circle at 30% 30%, #f59e0b, transparent 60%);
}

/* top hero card */
.pc-resume-hero {
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 18px;
  padding: 22px;
  border-radius: 18px;
  background:
    linear-gradient(180deg,
      color-mix(in srgb, var(--surface-color), transparent 0%),
      color-mix(in srgb, var(--surface-color), transparent 0%)
    );
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 20px 60px rgba(2, 6, 23, 0.10);
}

.pc-resume-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent-color), transparent 90%);
  color: color-mix(in srgb, var(--heading-color), transparent 0%);
  font-weight: 700;
  font-size: 13px;
  width: fit-content;
}
.pc-resume-badge i { color: var(--accent-color); font-size: 16px; }

.pc-resume-name {
  font-size: clamp(1.6rem, 2.6vw, 2.15rem);
  margin: 10px 0 6px;
  color: var(--heading-color);
  font-weight: 800;
  letter-spacing: -0.02em;
}

.pc-resume-tagline {
  margin: 0 0 14px;
  color: color-mix(in srgb, var(--default-color), transparent 15%);
  font-weight: 600;
}

.pc-gold {
  color: #b45309;
  font-weight: 800;
}

.pc-resume-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
}
.pc-meta-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  text-decoration: none;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  background: color-mix(in srgb, var(--surface-color), transparent 0%);
  color: color-mix(in srgb, var(--default-color), transparent 10%);
  font-weight: 600;
  font-size: 14px;
}
.pc-meta-item i { color: var(--accent-color); }
.pc-meta-item:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 40px rgba(2, 6, 23, 0.10);
}

/* right stats */
.pc-resume-hero-right {
  display: grid;
  gap: 12px;
}
.pc-resume-stat {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border-radius: 14px;
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--accent-color), transparent 92%),
    color-mix(in srgb, var(--surface-color), transparent 0%)
  );
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
}
.pc-stat-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent-color), transparent 85%);
  color: var(--accent-color);
  font-size: 18px;
}
.pc-stat-title {
  font-weight: 800;
  color: var(--heading-color);
  line-height: 1.2;
}
.pc-stat-sub {
  font-size: 13px;
  color: color-mix(in srgb, var(--default-color), transparent 25%);
  font-weight: 600;
}

/* cards */
.pc-resume-card {
  border-radius: 18px;
  background: color-mix(in srgb, var(--surface-color), transparent 0%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.08);
  padding: 18px;
}

.pc-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 14px;
}

.pc-card-title {
  margin: 0;
  font-size: 18px;
  font-weight: 800;
  color: var(--heading-color);
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.pc-card-title i { color: var(--accent-color); font-size: 18px; }

/* chips */
.pc-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 85%);
  background: color-mix(in srgb, var(--accent-color), transparent 92%);
  color: color-mix(in srgb, var(--heading-color), transparent 0%);
}
.pc-chip i { color: var(--accent-color); }
.pc-chip-gold {
  background: color-mix(in srgb, #f59e0b, transparent 88%);
  border-color: color-mix(in srgb, #f59e0b, transparent 75%);
}
.pc-chip-gold i { color: #f59e0b; }

/* summary */
.pc-summary-lead {
  font-size: 15.5px;
  color: color-mix(in srgb, var(--default-color), transparent 15%);
  margin-bottom: 14px;
}
.pc-summary-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}
.pc-summary-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  color: color-mix(in srgb, var(--default-color), transparent 10%);
}
.pc-summary-list i {
  color: var(--accent-color);
  font-size: 16px;
}
.pc-summary-list a { font-weight: 800; }

/* timeline */
.pc-timeline {
  position: relative;
  padding-left: 18px;
  display: grid;
  gap: 14px;
}

.pc-timeline-item {
  position: relative;
  padding-left: 14px;
}

.pc-timeline::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: linear-gradient(
    to bottom,
    color-mix(in srgb, var(--accent-color), transparent 25%),
    color-mix(in srgb, var(--default-color), transparent 90%)
  );
}

.pc-dot {
  position: absolute;
  left: -2px;
  top: 10px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: var(--surface-color);
  border: 2px solid color-mix(in srgb, var(--accent-color), transparent 20%);
  box-shadow: 0 12px 24px rgba(2, 6, 23, 0.10);
}
.pc-dot-accent {
  background: color-mix(in srgb, var(--accent-color), transparent 85%);
  border-color: var(--accent-color);
}
.pc-dot-gold {
  background: color-mix(in srgb, #f59e0b, transparent 84%);
  border-color: #f59e0b;
}

.pc-timeline-body {
  border-radius: 16px;
  padding: 14px 14px;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--surface-color), transparent 0%),
    color-mix(in srgb, var(--accent-color), transparent 96%)
  );
  transition: transform .25s ease, box-shadow .25s ease;
}

.pc-timeline-body:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.10);
}

.pc-timeline-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.pc-timeline-top h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 900;
  color: var(--heading-color);
  letter-spacing: -0.01em;
}

.pc-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  background: color-mix(in srgb, var(--surface-color), transparent 0%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  color: color-mix(in srgb, var(--default-color), transparent 15%);
  white-space: nowrap;
}
.pc-pill i { color: var(--accent-color); }

.pc-org {
  margin: 8px 0 0;
  font-weight: 700;
  color: color-mix(in srgb, var(--default-color), transparent 22%);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.pc-org i { color: var(--accent-color); }

.pc-bullets {
  margin: 10px 0 0;
  padding-left: 18px;
  color: color-mix(in srgb, var(--default-color), transparent 10%);
  font-weight: 500;
}
.pc-bullets li { padding-bottom: 8px; }

/* responsive */
@media (max-width: 991.98px) {
  .pc-resume-hero { grid-template-columns: 1fr; }
  .pc-resume-hero-right { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 575.98px) {
  .pc-resume-card { padding: 14px; }
  .pc-resume-hero { padding: 16px; }
  .pc-resume-hero-right { grid-template-columns: 1fr; }
  .pc-timeline { padding-left: 14px; }
  .pc-timeline-top { flex-direction: column; align-items: flex-start; }
  .pc-pill { width: fit-content; }
}

/* =========================================================
   Premium Services Section (KinzaPsych)
   ========================================================= */
.pc-services {
  position: relative;
  overflow: hidden;
}

.pc-services::before {
  content: "";
  position: absolute;
  inset: -40% -10% auto -10%;
  height: 520px;
  background: radial-gradient(closest-side, color-mix(in srgb, var(--accent-color), transparent 82%), transparent 70%);
  pointer-events: none;
  filter: blur(10px);
}

.pc-service-card {
  background: linear-gradient(
      180deg,
      color-mix(in srgb, var(--surface-color), transparent 0%) 0%,
      color-mix(in srgb, var(--surface-color), transparent 6%) 100%
    );
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.08);
  border-radius: 22px;
  padding: 26px 24px;
  position: relative;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  height: 100%;
}

.pc-service-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 22px;
  background: radial-gradient(500px 220px at 30% 0%, color-mix(in srgb, var(--accent-color), transparent 86%), transparent 60%);
  opacity: .9;
  pointer-events: none;
}

.pc-service-card > * { position: relative; z-index: 1; }

.pc-service-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.pc-service-icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  font-size: 26px;
  color: var(--heading-color);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 14px 30px rgba(2, 6, 23, 0.10);
  background: color-mix(in srgb, var(--surface-color), transparent 0%);
}

.pc-service-chip {
  font-family: var(--nav-font);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .3px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  background: color-mix(in srgb, var(--surface-color), transparent 15%);
  color: color-mix(in srgb, var(--heading-color), transparent 10%);
}

.pc-service-card h3 {
  font-size: 20px;
  font-weight: 800;
  line-height: 1.25;
  margin: 10px 0 10px 0;
  color: var(--heading-color);
}

.pc-service-card p {
  font-size: 15px;
  line-height: 1.7;
  color: color-mix(in srgb, var(--default-color), transparent 8%);
  margin-bottom: 14px;
}

.pc-service-list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px 0;
  display: grid;
  gap: 10px;
}

.pc-service-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  color: color-mix(in srgb, var(--default-color), transparent 10%);
}

.pc-service-list i {
  font-size: 16px;
  color: color-mix(in srgb, var(--accent-color), transparent 10%);
  margin-top: 2px;
}

.pc-service-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: auto;
}

.pc-service-link {
  font-weight: 700;
  text-decoration: none;
  color: color-mix(in srgb, var(--heading-color), transparent 10%);
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: transform .2s ease, color .2s ease;
}

.pc-service-link:hover {
  color: var(--accent-color);
  transform: translateX(2px);
}

/* Hover (desktop + modern feel) */
@media (hover: hover) {
  .pc-service-card:hover {
    transform: translateY(-10px);
    border-color: color-mix(in srgb, var(--accent-color), transparent 55%);
    box-shadow: 0 26px 70px rgba(2, 6, 23, 0.14);
  }
}

/* Soft icon background variations */
.bg-soft-1 { background: linear-gradient(135deg, rgba(14,165,233,.18), rgba(16,185,129,.12)); }
.bg-soft-2 { background: linear-gradient(135deg, rgba(59,130,246,.18), rgba(99,102,241,.12)); }
.bg-soft-3 { background: linear-gradient(135deg, rgba(16,185,129,.18), rgba(20,184,166,.12)); }
.bg-soft-4 { background: linear-gradient(135deg, rgba(245,158,11,.18), rgba(14,165,233,.10)); }
.bg-soft-5 { background: linear-gradient(135deg, rgba(244,63,94,.14), rgba(59,130,246,.10)); }
.bg-soft-6 { background: linear-gradient(135deg, rgba(168,85,247,.14), rgba(14,165,233,.10)); }

/* Mobile spacing polish */
@media (max-width: 575.98px) {
  .pc-service-card { padding: 22px 18px; border-radius: 20px; }
  .pc-service-card h3 { font-size: 19px; }
}

/* =========================================================
   Premium Stats Section (KinzaPsych)
========================================================= */
.pc-stats {
  position: relative;
  padding: clamp(70px, 8vw, 120px) 0;
  background:
    radial-gradient(1200px 600px at 15% 10%, rgba(14, 165, 233, 0.18), transparent 55%),
    radial-gradient(900px 500px at 85% 20%, rgba(245, 158, 11, 0.14), transparent 55%),
    radial-gradient(900px 500px at 55% 90%, rgba(99, 102, 241, 0.12), transparent 55%),
    linear-gradient(180deg, rgba(2, 6, 23, 0.02), rgba(2, 6, 23, 0.00));
  overflow: hidden;
}

.pc-stats::before {
  content: "";
  position: absolute;
  inset: -2px;
  background:
    linear-gradient(90deg, rgba(14,165,233,0.10), rgba(245,158,11,0.08), rgba(99,102,241,0.10));
  filter: blur(40px);
  opacity: 0.65;
  pointer-events: none;
}

.pc-stats .container {
  position: relative;
  z-index: 1;
}

.pc-stats-head {
  max-width: 860px;
  margin: 0 auto;
}

.pc-stats-title {
  font-size: clamp(1.6rem, 2.8vw, 2.3rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--heading-color);
  margin-bottom: 10px;
}

.pc-stats-sub {
  margin: 0 auto;
  font-size: 1.05rem;
  color: color-mix(in srgb, var(--default-color), transparent 25%);
  max-width: 720px;
}

.pc-stat-card {
  position: relative;
  border-radius: 22px;
  padding: 26px 22px;
  background: color-mix(in srgb, var(--surface-color), transparent 6%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.10);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.pc-stat-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(600px 200px at 30% 0%, rgba(14,165,233,0.14), transparent 45%),
    radial-gradient(600px 200px at 90% 20%, rgba(245,158,11,0.10), transparent 50%);
  opacity: 0;
  transition: opacity .25s ease;
  pointer-events: none;
}

.pc-stat-card:hover {
  transform: translateY(-8px);
  border-color: color-mix(in srgb, var(--accent-color), transparent 70%);
  box-shadow: 0 28px 80px rgba(2, 6, 23, 0.14);
}

.pc-stat-card:hover::after {
  opacity: 1;
}

.pc-stat-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.pc-stat-icon {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: rgba(14,165,233,0.14);
  color: #0284c7;
  flex: 0 0 auto;
  border: 1px solid rgba(14,165,233,0.18);
}

.pc-stat-icon i {
  font-size: 22px;
}

.pc-stat-icon-2 {
  background: rgba(99,102,241,0.14);
  border-color: rgba(99,102,241,0.20);
  color: #4f46e5;
}

.pc-stat-icon-3 {
  background: rgba(245,158,11,0.14);
  border-color: rgba(245,158,11,0.22);
  color: #b45309;
}

.pc-stat-icon-4 {
  background: rgba(16,185,129,0.14);
  border-color: rgba(16,185,129,0.20);
  color: #047857;
}

.pc-stat-number {
  font-size: 46px;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1;
  color: var(--heading-color);
}

.pc-stat-label {
  margin: 0;
  font-weight: 800;
  font-size: 1.05rem;
  color: var(--heading-color);
}

.pc-stat-note {
  margin: 6px 0 0 0;
  font-size: 0.95rem;
  color: color-mix(in srgb, var(--default-color), transparent 30%);
}

/* Mobile polish */
@media (max-width: 575px) {
  .pc-stat-card { padding: 22px 18px; border-radius: 20px; }
  .pc-stat-number { font-size: 40px; }
}

/* =========================================================
   Premium Portfolio (Isotope + GLightbox compatible)
   ========================================================= */

.pc-portfolio {
  position: relative;
}

.pc-portfolio .pc-portfolio-shell {
  border-radius: 26px;
  padding: clamp(18px, 3vw, 26px);
  background:
    radial-gradient(1200px 600px at 10% 10%, color-mix(in srgb, var(--accent-color), transparent 86%), transparent 60%),
    radial-gradient(900px 500px at 90% 20%, color-mix(in srgb, var(--accent-color), transparent 90%), transparent 55%),
    linear-gradient(180deg, color-mix(in srgb, var(--surface-color), transparent 0%), color-mix(in srgb, var(--surface-color), transparent 0%));
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 22px 70px rgba(2, 6, 23, 0.08);
}

.pc-portfolio .pc-portfolio-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.pc-portfolio .pc-portfolio-label,
.pc-portfolio .pc-portfolio-hint {
  display: inline-flex;
  align-items: center;
  padding: 10px 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--background-color), transparent 15%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  font-weight: 600;
  font-size: 14px;
}

/* Filters -> premium chips */
.pc-portfolio .pc-portfolio-filters-wrap {
  position: relative;
  margin-bottom: 18px;
}

.pc-portfolio .pc-portfolio-filters {
  list-style: none;
  padding: 8px;
  margin: 0;
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  border-radius: 18px;
  background: color-mix(in srgb, var(--background-color), transparent 10%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
}

/* Mobile: horizontal scroll chips */
@media (max-width: 575px) {
  .pc-portfolio .pc-portfolio-filters {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .pc-portfolio .pc-portfolio-filters::-webkit-scrollbar { display: none; }
}

.pc-portfolio .pc-portfolio-filters li {
  cursor: pointer;
  margin: 0;
  user-select: none;
}

.pc-portfolio .pc-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 14px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 86%);
  background: color-mix(in srgb, var(--surface-color), transparent 0%);
  color: color-mix(in srgb, var(--default-color), transparent 18%);
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}

.pc-portfolio .pc-portfolio-filters li:hover .pc-chip {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--accent-color), transparent 55%);
}

.pc-portfolio .pc-portfolio-filters li.filter-active .pc-chip {
  background: color-mix(in srgb, var(--accent-color), transparent 86%);
  border-color: color-mix(in srgb, var(--accent-color), transparent 45%);
  color: var(--heading-color);
}

/* Work Cards */
.pc-work-card {
  height: 100%;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  background: var(--surface-color);
  box-shadow: 0 20px 60px rgba(2, 6, 23, 0.08);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.pc-work-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 28px 90px rgba(2, 6, 23, 0.12);
  border-color: color-mix(in srgb, var(--accent-color), transparent 60%);
}

/* Image area */
.pc-work-media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.pc-work-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .35s ease;
}

.pc-work-card:hover .pc-work-media img {
  transform: scale(1.06);
}

/* Soft overlay gradient */
.pc-work-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(2, 6, 23, 0) 30%,
    rgba(2, 6, 23, 0.55) 100%);
  opacity: .95;
  pointer-events: none;
}

/* Badge */
.pc-work-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .2px;
  color: #0b1220;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(10px);
}

/* Actions */
.pc-work-actions {
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 3;
  display: flex;
  gap: 10px;
}

.pc-action-btn {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  text-decoration: none;
  color: #0b1220;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(10px);
  transition: transform .18s ease, background .18s ease;
}

.pc-action-btn:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.98);
}

/* Body */
.pc-work-body {
  padding: 16px 16px 18px 16px;
}

.pc-work-title {
  margin: 0 0 6px 0;
  font-size: 18px;
  font-weight: 900;
  color: var(--heading-color);
  line-height: 1.25;
}

.pc-work-text {
  margin: 0 0 10px 0;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  font-size: 14.5px;
  line-height: 1.55;
}

.pc-work-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-weight: 700;
  font-size: 12.5px;
  color: color-mix(in srgb, var(--default-color), transparent 30%);
}

.pc-work-meta .dot {
  opacity: .55;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .pc-work-card,
  .pc-work-media img,
  .pc-chip {
    transition: none !important;
  }
}

/*--------------------------------------------------------------
# FAQ (Premium)
--------------------------------------------------------------*/
.pc-faq {
  position: relative;
  overflow: hidden;
}

.pc-faq::before{
  content:"";
  position:absolute;
  inset:-120px -120px auto auto;
  width:360px;
  height:360px;
  border-radius:50%;
  background: radial-gradient(circle at 30% 30%,
    color-mix(in srgb, var(--accent-color), #fff 72%) 0%,
    transparent 60%);
  opacity:.55;
  pointer-events:none;
}

.pc-faq::after{
  content:"";
  position:absolute;
  inset:auto auto -140px -140px;
  width:420px;
  height:420px;
  border-radius:50%;
  background: radial-gradient(circle at 30% 30%,
    color-mix(in srgb, var(--accent-color), #fff 80%) 0%,
    transparent 62%);
  opacity:.35;
  pointer-events:none;
}

.pc-faq .container{
  position:relative;
  z-index:2;
}

/* Left intro card */
.pc-faq-intro{
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--surface-color), var(--accent-color) 3%),
    var(--surface-color));
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.08);
  border-radius: 22px;
  padding: 28px;
}

.pc-faq-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 10px 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent-color), #fff 88%);
  color: color-mix(in srgb, var(--accent-color), #000 12%);
  font-weight: 700;
  font-size: 13px;
  margin-bottom: 14px;
}

.pc-faq-title{
  font-size: clamp(1.6rem, 2.2vw, 2.2rem);
  line-height: 1.1;
  margin: 0 0 10px 0;
  letter-spacing: -0.2px;
}

.pc-faq-sub{
  color: color-mix(in srgb, var(--default-color), transparent 25%);
  margin: 0 0 18px 0;
}

.pc-faq-mini{
  display:grid;
  gap:12px;
  margin-top: 16px;
}

.pc-faq-mini-item{
  display:flex;
  align-items:center;
  gap:12px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  background: color-mix(in srgb, var(--surface-color), var(--accent-color) 2%);
}

.pc-faq-mini-item i{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius: 14px;
  background: color-mix(in srgb, var(--accent-color), #fff 86%);
  color: var(--accent-color);
  font-size: 18px;
}

.pc-faq-mini-item strong{
  display:block;
  font-size: 14px;
  color: var(--heading-color);
}
.pc-faq-mini-item span{
  display:block;
  font-size: 13px;
  color: color-mix(in srgb, var(--default-color), transparent 25%);
}

/* Right list */
.pc-faq-list{
  display:grid;
  gap: 14px;
}

/* FAQ item */
.pc-faq .faq-container .faq-item{
  background: linear-gradient(180deg,
    color-mix(in srgb, var(--surface-color), var(--accent-color) 2%),
    var(--surface-color));
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  border-radius: 20px;
  box-shadow: 0 18px 55px rgba(2, 6, 23, 0.06);
  padding: 18px 18px;
  margin: 0;
  position: relative;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.pc-faq .faq-container .faq-item:hover{
  transform: translateY(-4px);
  box-shadow: 0 22px 70px rgba(2, 6, 23, 0.08);
  border-color: color-mix(in srgb, var(--accent-color), transparent 65%);
}

.pc-faq .faq-container .faq-item h3{
  margin: 0;
  display:flex;
  align-items:center;
  gap: 12px;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: -0.1px;
  padding-right: 44px; /* space for toggle */
}

.pc-faq .faq-container .faq-item h3 .num{
  min-width: 44px;
  height: 34px;
  border-radius: 12px;
  display:grid;
  place-items:center;
  font-weight: 900;
  color: var(--accent-color);
  background: color-mix(in srgb, var(--accent-color), #fff 90%);
}

.pc-faq .faq-container .faq-item h3 .q{
  flex: 1;
  color: var(--heading-color);
}

.pc-faq-chip{
  font-size: 12px;
  font-weight: 800;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 86%);
  background: color-mix(in srgb, var(--surface-color), var(--accent-color) 1%);
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  white-space: nowrap;
}

/* Content animation (keeps your grid technique) */
.pc-faq .faq-container .faq-item .faq-content{
  display: grid;
  grid-template-rows: 0fr;
  transition: .35s ease;
  visibility: hidden;
  opacity: 0;
}

.pc-faq .faq-container .faq-item .faq-content p{
  overflow:hidden;
  margin: 0;
  padding: 0 6px 0 56px;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  font-size: 15px;
  line-height: 1.7;
}

/* Toggle icon */
.pc-faq .faq-container .faq-item .faq-toggle{
  position:absolute;
  top: 18px;
  right: 18px;
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: color-mix(in srgb, var(--accent-color), #fff 90%);
  color: var(--accent-color);
  transition: transform .25s ease, background .25s ease, color .25s ease;
  cursor:pointer;
  font-size: 18px;
}

/* Active state */
.pc-faq .faq-container .faq-active{
  border-color: color-mix(in srgb, var(--accent-color), transparent 55%);
  box-shadow: 0 26px 80px rgba(2, 6, 23, 0.10);
}

.pc-faq .faq-container .faq-active h3 .q{
  color: color-mix(in srgb, var(--accent-color), #000 10%);
}

.pc-faq .faq-container .faq-active .faq-content{
  grid-template-rows: 1fr;
  visibility: visible;
  opacity: 1;
  padding-top: 12px;
}

.pc-faq .faq-container .faq-active .faq-toggle{
  transform: rotate(45deg);
  background: var(--accent-color);
  color: var(--contrast-color);
}

/* Mobile polish */
@media (max-width: 575px){
  .pc-faq-intro{ padding: 22px; }
  .pc-faq-chip{ display:none; }
  .pc-faq .faq-container .faq-item h3 .num{ min-width: 40px; }
  .pc-faq .faq-container .faq-item .faq-content p{ padding-left: 52px; }
}

/*--------------------------------------------------------------
# Contact / CTA Section (Premium)
--------------------------------------------------------------*/
.pc-contact{
  position: relative;
  padding: 90px 0;
  background:
    radial-gradient(900px 420px at 18% 20%, color-mix(in srgb, var(--accent-color), transparent 82%), transparent 60%),
    radial-gradient(820px 420px at 85% 65%, color-mix(in srgb, var(--heading-color), transparent 88%), transparent 55%),
    linear-gradient(180deg, color-mix(in srgb, var(--background-color), transparent 0%), color-mix(in srgb, var(--background-color), transparent 0%));
}

.pc-contact-wrap{
  border-radius: 28px;
  padding: clamp(18px, 3.2vw, 34px);
  background: color-mix(in srgb, var(--surface-color), transparent 0%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  box-shadow: 0 26px 70px rgba(2, 6, 23, 0.10);
  overflow: hidden;
  position: relative;
}

.pc-contact-wrap::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--accent-color), transparent 35%),
      color-mix(in srgb, #22c55e, transparent 60%),
      color-mix(in srgb, #a855f7, transparent 65%)
    );
  opacity:.18;
  pointer-events:none;
  filter: blur(14px);
}

.pc-contact-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding: 10px 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent-color), transparent 90%);
  border: 1px solid color-mix(in srgb, var(--accent-color), transparent 65%);
  color: color-mix(in srgb, var(--heading-color), transparent 15%);
  font-weight: 700;
  font-size: 13px;
}

.pc-contact-title{
  margin: 14px 0 10px;
  font-weight: 900;
  letter-spacing: -0.5px;
  line-height: 1.05;
  font-size: clamp(2.0rem, 3.4vw, 3.15rem);
  color: var(--heading-color);
}
.pc-contact-title span{
  color: var(--accent-color);
}

.pc-contact-sub{
  font-size: 16px;
  line-height: 1.75;
  color: color-mix(in srgb, var(--default-color), transparent 15%);
  max-width: 60ch;
}

.pc-contact-points{
  display: grid;
  gap: 12px;
  margin-top: 18px;
}

.pc-point{
  display:flex;
  gap: 12px;
  align-items:flex-start;
  padding: 14px 14px;
  border-radius: 18px;
  background: color-mix(in srgb, var(--background-color), transparent 55%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
}

.pc-point i{
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: color-mix(in srgb, var(--accent-color), transparent 85%);
  color: var(--accent-color);
  font-size: 18px;
  flex: 0 0 auto;
}

.pc-point strong{
  display:block;
  font-weight: 800;
  color: var(--heading-color);
  line-height: 1.1;
  margin-bottom: 2px;
}

.pc-point span{
  font-size: 14px;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
}

.pc-contact-actions{
  display:flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}

.pc-btn-primary{
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--accent-color), transparent 0%),
    color-mix(in srgb, var(--accent-color), transparent 22%)
  );
  border: 0;
  color: var(--contrast-color);
  padding: 12px 18px;
  box-shadow: 0 14px 34px rgba(14, 165, 233, 0.25);
}
.pc-btn-primary:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 42px rgba(14, 165, 233, 0.30);
}

.pc-btn-ghost{
  background: transparent;
  border: 1px solid color-mix(in srgb, var(--accent-color), transparent 55%);
  color: var(--heading-color);
  padding: 12px 18px;
}
.pc-btn-ghost:hover{
  background: color-mix(in srgb, var(--accent-color), transparent 90%);
}

.pc-contact-trust{
  display:flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.pc-trust-chip{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--background-color), transparent 35%);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  color: color-mix(in srgb, var(--default-color), transparent 10%);
  font-weight: 700;
  font-size: 13px;
}
.pc-trust-chip i{
  color: var(--accent-color);
}

/* Right Card */
.pc-contact-card{
  position: relative;
  border-radius: 26px;
  padding: 22px;
  background:
    radial-gradient(520px 240px at 20% 15%, color-mix(in srgb, var(--accent-color), transparent 82%), transparent 60%),
    linear-gradient(180deg,
      color-mix(in srgb, var(--surface-color), transparent 0%),
      color-mix(in srgb, var(--background-color), transparent 35%)
    );
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 88%);
  box-shadow: 0 22px 60px rgba(2, 6, 23, 0.10);
}

.pc-contact-card-top{
  display:flex;
  gap: 12px;
  align-items:center;
}

.pc-contact-card-icon{
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: color-mix(in srgb, var(--accent-color), transparent 82%);
  color: var(--accent-color);
  font-size: 22px;
  flex: 0 0 auto;
}

.pc-contact-card-kicker{
  margin:0;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 12px;
  color: color-mix(in srgb, var(--default-color), transparent 25%);
}

.pc-contact-card-title{
  margin: 2px 0 0;
  font-weight: 900;
  color: var(--heading-color);
  font-size: 20px;
}

.pc-contact-card-text{
  margin: 14px 0 0;
  color: color-mix(in srgb, var(--default-color), transparent 15%);
  line-height: 1.7;
  font-size: 15px;
}

.pc-contact-card-divider{
  height: 1px;
  background: color-mix(in srgb, var(--default-color), transparent 88%);
  margin: 16px 0;
}

.pc-contact-mini{
  display:grid;
  gap: 10px;
}

.pc-mini-item{
  display:flex;
  align-items:center;
  gap: 10px;
  font-weight: 700;
  color: color-mix(in srgb, var(--default-color), transparent 10%);
}
.pc-mini-item i{
  color: #22c55e;
  font-size: 18px;
}

.pc-card-cta{
  margin-top: 16px;
  width: 100%;
  display:flex;
  justify-content:center;
  align-items:center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 16px;
  text-decoration:none;
  font-weight: 900;
  color: var(--contrast-color);
  background: linear-gradient(135deg,
    color-mix(in srgb, var(--accent-color), transparent 0%),
    color-mix(in srgb, var(--accent-color), transparent 25%)
  );
  box-shadow: 0 16px 40px rgba(14, 165, 233, 0.25);
  transition: transform .18s ease, box-shadow .18s ease;
}
.pc-card-cta:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 46px rgba(14, 165, 233, 0.30);
}

.pc-contact-note{
  margin: 14px 0 0;
  font-size: 12px;
  line-height: 1.6;
  color: color-mix(in srgb, var(--default-color), transparent 25%);
  display:flex;
  gap: 8px;
  align-items:flex-start;
}
.pc-contact-note i{
  margin-top: 2px;
  color: color-mix(in srgb, var(--accent-color), transparent 10%);
}

/* Mobile spacing */
@media (max-width: 991px){
  .pc-contact{ padding: 70px 0; }
}

/* ================================
   FOOTER FIX: higher contrast + premium
   Paste AFTER old footer styles
================================== */

.pc-footer {
  position: relative;
  padding: clamp(44px, 5vw, 64px) 0;
  color: rgba(255, 255, 255, 0.92);
  overflow: hidden;

  /* force a deep premium base so it never looks grey */
  background: radial-gradient(900px 500px at 15% 10%, rgba(14,165,233,.25), transparent 55%),
              radial-gradient(800px 450px at 90% 0%, rgba(99,102,241,.20), transparent 55%),
              linear-gradient(180deg, #0b1220 0%, #070b13 100%);
}

/* remove the "milky" overlay that caused grey look */
.pc-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
  pointer-events: none;
}

.pc-footer .container { position: relative; z-index: 1; }

/* tighter, more premium layout */
.pc-footer-top {
  display: grid;
  grid-template-columns: 1.2fr 1.8fr;
  gap: clamp(18px, 3vw, 34px);
  align-items: start;
}

@media (max-width: 991px) {
  .pc-footer-top { grid-template-columns: 1fr; }
}

/* brand */
.pc-footer-logo { color: #fff !important; }
.pc-footer-mark {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 18px 55px rgba(0,0,0,.35);
}
.pc-footer-name { color: #fff; }
.pc-footer-tagline {
  color: rgba(255,255,255,.74);
  max-width: 520px;
}

/* CTA buttons */
.pc-footer-cta .btn {
  border-radius: 999px !important;
}
.pc-footer-cta .btn-primary {
  background: linear-gradient(135deg, var(--accent-color), #6366f1);
  border: 0 !important;
  box-shadow: 0 16px 45px rgba(14,165,233,.22);
}
.pc-footer-cta .btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 55px rgba(14,165,233,.28);
}
.pc-footer-cta .btn-outline-light {
  border-color: rgba(255,255,255,.35) !important;
  color: rgba(255,255,255,.90) !important;
}
.pc-footer-cta .btn-outline-light:hover {
  background: rgba(255,255,255,.10) !important;
}

/* links columns */
.pc-footer-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

@media (max-width: 767px) {
  .pc-footer-links { grid-template-columns: 1fr; }
}

.pc-footer-title {
  color: #fff;
  font-weight: 800;
  letter-spacing: .3px;
  margin-bottom: 12px;
}

.pc-footer-list a {
  color: rgba(255,255,255,.78) !important;
  text-decoration: none;
  transition: all .18s ease;
}

.pc-footer-list a:hover {
  color: #fff !important;
  transform: translateX(3px);
}

/* divider */
.pc-footer-divider {
  margin: 24px 0 16px;
  border: 0;
  height: 1px;
  background: rgba(255,255,255,.14);
}

/* bottom row */
.pc-footer-bottom {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 12px;
  align-items: center;
}

@media (max-width: 991px) {
  .pc-footer-bottom {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .pc-footer-meta { justify-content: center; }
  .pc-footer-credits { text-align: center !important; }
}

.pc-footer-copy { color: rgba(255,255,255,.80); }

/* badges: make them visible (your screenshot shows too faint) */
.pc-footer-badge {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.90);
  padding: 10px 14px;
  border-radius: 999px;
}

/* social buttons */
.pc-social-btn {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  color: #fff !important;
}
.pc-social-btn:hover {
  background: rgba(255,255,255,.16);
  transform: translateY(-2px);
}

/* credits link */
.pc-footer-credits,
.pc-footer-credits a {
  color: rgba(255,255,255,.78) !important;
}
.pc-footer-credits a:hover { color: #fff !important; }

/* scroll-top button also premium */
.scroll-top {
  border-radius: 16px !important;
  box-shadow: 0 18px 60px rgba(0,0,0,.35);
}

/* =========================================================
  Workshop Page (Premium) — matches Kinza Premium UI
========================================================== */

:root{
  --wk-ink: #0b1220;
  --wk-muted: rgba(2,6,23,.72);
  --wk-border: rgba(15,23,42,.10);
  --wk-surface: rgba(255,255,255,.92);
  --wk-shadow: 0 24px 80px rgba(2, 6, 23, .10);
  --wk-radius: 22px;

  /* calm, clinical, premium psychology palette */
  --wk-blue: #2563eb;
  --wk-teal: #06b6d4;
  --wk-violet: #7c3aed;
  --wk-gold: #f59e0b;
}

body.workshop-page{
  background:
    radial-gradient(1100px 520px at 12% 6%, rgba(6,182,212,.18), transparent 60%),
    radial-gradient(900px 480px at 85% 18%, rgba(124,58,237,.14), transparent 62%),
    radial-gradient(900px 520px at 55% 105%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, rgba(2,6,23,.02), rgba(2,6,23,0));
}

/* hero */
.wk-hero{
  position: relative;
  padding: 64px 0 26px;
  overflow: hidden;
}
.wk-hero::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(800px 360px at 10% 10%, rgba(6,182,212,.25), transparent 60%),
    radial-gradient(900px 400px at 90% 5%, rgba(124,58,237,.18), transparent 62%),
    radial-gradient(1000px 520px at 50% 120%, rgba(37,99,235,.16), transparent 62%);
  pointer-events:none;
  filter: blur(0px);
}
.wk-hero .container{
  position: relative;
  z-index: 1;
}

.wk-breadcrumb{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  font-weight:700;
  color: rgba(2,6,23,.70);
  font-size: 14px;
}
.wk-breadcrumb a{ color: rgba(2,6,23,.78); text-decoration:none; }
.wk-breadcrumb a:hover{ text-decoration:underline; }

.wk-title{
  font-family: var(--heading-font);
  color: var(--wk-ink);
  letter-spacing: -.02em;
  font-weight: 900;
  font-size: clamp(1.8rem, 3vw, 3rem);
  margin: 14px 0 10px;
  line-height: 1.12;
}
.wk-sub{
  color: rgba(2,6,23,.70);
  max-width: 980px;
  font-size: 1.05rem;
  line-height: 1.75;
  margin: 0 0 18px;
}

.wk-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top: 12px;
}
.wk-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid var(--wk-border);
  background: rgba(255,255,255,.70);
  backdrop-filter: blur(10px);
  box-shadow: 0 14px 40px rgba(2,6,23,.06);
  font-weight: 800;
  font-size: 13px;
  color: rgba(2,6,23,.85);
}
.wk-chip i{ color: var(--wk-blue); }

.wk-cta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top: 18px;
}
.wk-btn-primary{
  border: 0;
  background: linear-gradient(90deg, var(--wk-blue), var(--wk-teal), var(--wk-violet));
  color: #fff;
  font-weight: 900;
  border-radius: 999px;
  padding: 12px 18px;
  box-shadow: 0 22px 60px rgba(37,99,235,.22);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.wk-btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.02);
  box-shadow: 0 26px 75px rgba(37,99,235,.28);
  color:#fff;
}
.wk-btn-ghost{
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(255,255,255,.70);
  color: rgba(2,6,23,.86);
  font-weight: 900;
  border-radius: 999px;
  padding: 12px 18px;
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.wk-btn-ghost:hover{
  transform: translateY(-2px);
  box-shadow: 0 20px 55px rgba(2,6,23,.10);
  color: rgba(2,6,23,.90);
}

/* cards */
.wk-card{
  background: var(--wk-surface);
  border: 1px solid var(--wk-border);
  border-radius: var(--wk-radius);
  box-shadow: var(--wk-shadow);
  overflow: hidden;
  position: relative;
}
.wk-card::before{
  content:"";
  position:absolute;
  inset:-80px;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,.35), transparent);
  transform: translateX(-40%);
  opacity: .55;
  pointer-events:none;
}
.wk-card-inner{ position: relative; padding: 18px; }

/* gallery */
.wk-gallery{
  border-radius: calc(var(--wk-radius) + 4px);
  overflow: hidden;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.55);
}
.wk-gallery .swiper-slide{
  position: relative;
  aspect-ratio: 16/9;
  overflow:hidden;
}
.wk-gallery img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .6s ease;
}
.wk-gallery .swiper-slide:hover img{ transform: scale(1.07); }
.wk-gallery .wk-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(2,6,23,0) 40%, rgba(2,6,23,.50));
  pointer-events:none;
}
.wk-gallery .wk-overlay-text{
  position:absolute;
  left: 14px;
  bottom: 12px;
  right: 14px;
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 10px;
  color:#fff;
  z-index:1;
}
.wk-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.24);
  backdrop-filter: blur(10px);
  font-weight: 900;
  font-size: 12.5px;
}
.wk-badge i{ color: #fff; }

/* swiper controls polish */
.swiper-button-next, .swiper-button-prev{
  width: 44px; height: 44px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.25);
  box-shadow: 0 18px 55px rgba(2,6,23,.18);
  color: #fff;
  transition: transform .2s ease, background .2s ease;
}
.swiper-button-next:hover, .swiper-button-prev:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.22);
}
.swiper-button-next::after, .swiper-button-prev::after{ font-size: 16px; font-weight: 900; }

.swiper-pagination-bullet{
  width: 9px; height: 9px;
  opacity: .35;
}
.swiper-pagination-bullet-active{
  opacity: 1;
  transform: scale(1.15);
}

/* sections */
.wk-section{
  padding: 34px 0;
}
.wk-h2{
  font-family: var(--heading-font);
  font-weight: 900;
  letter-spacing: -.02em;
  color: var(--wk-ink);
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.wk-lead{
  color: rgba(2,6,23,.72);
  line-height: 1.8;
  margin: 0;
  font-size: 1.02rem;
}

/* icon list */
.wk-list{
  list-style:none;
  padding:0;
  margin: 14px 0 0;
  display:grid;
  gap: 10px;
}
.wk-list li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  color: rgba(2,6,23,.80);
  font-weight: 650;
  line-height: 1.65;
}
.wk-list i{
  margin-top: 3px;
  color: var(--wk-teal);
  font-size: 1rem;
}

/* stats */
.wk-stats{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.wk-stat{
  border-radius: 18px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.65);
  padding: 14px;
  box-shadow: 0 18px 50px rgba(2,6,23,.06);
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  height: 100%;
}
.wk-stat:hover{
  transform: translateY(-3px);
  box-shadow: 0 24px 70px rgba(2,6,23,.10);
  border-color: rgba(37,99,235,.18);
}
.wk-stat-top{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom: 8px;
}
.wk-stat-ico{
  width: 40px; height: 40px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.18);
  color: var(--wk-blue);
}
.wk-stat-ttl{ font-weight: 950; color: rgba(2,6,23,.88); margin:0; }
.wk-stat-sub{ margin:0; color: rgba(2,6,23,.66); font-weight: 650; }

/* agenda grid */
.wk-grid{
  display:grid;
  grid-template-columns: 1.35fr .65fr;
  gap: 16px;
}

/* sidebar info */
.wk-side ul{ list-style:none; padding:0; margin:0; display:grid; gap: 10px; }
.wk-side li{
  display:flex;
  justify-content: space-between;
  align-items:flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(10px);
}
.wk-side strong{
  color: rgba(2,6,23,.86);
  font-weight: 950;
  white-space: nowrap;
}
.wk-side span{
  color: rgba(2,6,23,.68);
  font-weight: 650;
  text-align: right;
}

/* quote */
.wk-quote{
  margin-top: 14px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(245,158,11,.22);
  background: rgba(245,158,11,.10);
  color: rgba(2,6,23,.86);
  font-weight: 750;
  line-height: 1.7;
  position: relative;
  overflow: hidden;
}
.wk-quote i{ color: #b45309; }

/* FAQ */
.wk-faq .accordion-item{
  border: 1px solid rgba(2,6,23,.08);
  border-radius: 16px !important;
  overflow:hidden;
  background: rgba(255,255,255,.70);
  box-shadow: 0 18px 55px rgba(2,6,23,.06);
}
.wk-faq .accordion-button{
  font-weight: 900;
  color: rgba(2,6,23,.86);
  background: rgba(255,255,255,.70);
}
.wk-faq .accordion-button:focus{ box-shadow:none; }
.wk-faq .accordion-button:not(.collapsed){
  background: linear-gradient(180deg, rgba(37,99,235,.10), rgba(255,255,255,.70));
  color: rgba(2,6,23,.90);
}
.wk-faq .accordion-body{
  color: rgba(2,6,23,.72);
  line-height: 1.8;
  font-weight: 600;
}

/* responsive */
@media (max-width: 992px){
  .wk-grid{ grid-template-columns: 1fr; }
  .wk-stats{ grid-template-columns: 1fr; }
}

/* =====================================================
   FINAL DARK PREMIUM FOOTER – READABLE & PROFESSIONAL
===================================================== */
#footer.footer.pc-footer{
  position: relative;
  overflow: hidden;

  /* DARK, CALM PSYCHOLOGY GRADIENT */
  background:
    linear-gradient(
      180deg,
      #0b1220 0%,     /* deep navy top */
      #111827 35%,    /* slate */
      #1e1b4b 70%,    /* indigo */
      #2e1065 100%    /* deep violet bottom */
    );

  color: rgba(255,255,255,.92);
  border-top: 1px solid rgba(255,255,255,.08);
}

/* subtle ambient glow (very soft) */
#footer.footer.pc-footer::before,
#footer.footer.pc-footer::after{
  content:"";
  position:absolute;
  inset:-140px;
  pointer-events:none;
  z-index:0;
  filter: blur(60px);
  opacity:.35;
}

#footer.footer.pc-footer::before{
  background: radial-gradient(
    600px 320px at 20% 15%,
    rgba(37,99,235,.35),
    transparent 70%
  );
}

#footer.footer.pc-footer::after{
  background: radial-gradient(
    700px 360px at 80% 85%,
    rgba(124,58,237,.30),
    transparent 70%
  );
}

/* keep content above glow */
#footer.footer.pc-footer .container{
  position: relative;
  z-index: 1;
}

/* =====================================
   TEXT & TYPOGRAPHY (HIGH READABILITY)
===================================== */
.pc-footer-name{
  color: #ffffff;
  font-weight: 800;
  font-size: 1.1rem;
}

.pc-footer-tagline{
  color: rgba(255,255,255,.72);
  max-width: 360px;
}

.pc-footer-title{
  color: #ffffff;
  font-weight: 700;
  letter-spacing: .02em;
}

/* links */
.pc-footer-list a,
.pc-footer-copy,
.pc-footer-meta,
.pc-footer-credits a{
  color: rgba(255,255,255,.80);
}

.pc-footer-list a:hover,
.pc-footer-credits a:hover{
  color: #ffffff;
  text-decoration: underline;
}

/* divider */
.pc-footer-divider{
  border-color: rgba(255,255,255,.12) !important;
  opacity: 1;
}

/* =====================================
   CTA BUTTONS
===================================== */
.pc-footer-cta .btn-primary{
  border: 0;
  background: linear-gradient(90deg, #2563eb, #7c3aed);
  box-shadow: 0 14px 40px rgba(0,0,0,.35);
}

.pc-footer-cta .btn-outline-light{
  border-color: rgba(255,255,255,.35);
  color: #ffffff;
}

.pc-footer-cta .btn-outline-light:hover{
  background: rgba(255,255,255,.12);
}

/* =====================================
   BADGES
===================================== */
.pc-footer-badge{
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.16);
  color: rgba(255,255,255,.90);
  backdrop-filter: blur(8px);
}

/* =====================================
   SOCIAL BUTTON
===================================== */
.pc-social-btn{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(8px);
}

.pc-social-btn:hover{
  background: rgba(255,255,255,.16);
  text-decoration: none;
}

/* =====================================
  Clinical Training css
===================================== */

:root{
  --ct-ink:#0b1220;
  --ct-muted: rgba(2,6,23,.72);
  --ct-border: rgba(15,23,42,.10);
  --ct-surface: rgba(255,255,255,.92);
  --ct-shadow: 0 24px 80px rgba(2,6,23,.10);
  --ct-radius: 22px;

  /* calm psychology palette */
  --ct-blue:#2563eb;
  --ct-teal:#06b6d4;
  --ct-violet:#7c3aed;
}

body.clinical-training-page{
  background:
    radial-gradient(1100px 520px at 12% 6%, rgba(6,182,212,.16), transparent 60%),
    radial-gradient(900px 480px at 85% 18%, rgba(124,58,237,.14), transparent 62%),
    radial-gradient(900px 520px at 55% 105%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, rgba(2,6,23,.02), rgba(2,6,23,0));
}

/* HERO */
.ct-hero{
  position: relative;
  padding: 64px 0 26px;
  overflow: hidden;
}
.ct-hero::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(800px 360px at 10% 10%, rgba(6,182,212,.22), transparent 60%),
    radial-gradient(900px 400px at 90% 5%, rgba(124,58,237,.18), transparent 62%),
    radial-gradient(1000px 520px at 50% 120%, rgba(37,99,235,.14), transparent 62%);
  pointer-events:none;
}
.ct-hero .container{ position: relative; z-index: 1; }

.ct-breadcrumb{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  font-weight:800;
  color: rgba(2,6,23,.68);
  font-size: 14px;
}
.ct-breadcrumb a{ color: rgba(2,6,23,.78); text-decoration:none; }
.ct-breadcrumb a:hover{ text-decoration:underline; }

.ct-title{
  font-family: var(--heading-font);
  color: var(--ct-ink);
  letter-spacing: -.02em;
  font-weight: 900;
  font-size: clamp(1.85rem, 3.2vw, 3.1rem);
  margin: 14px 0 10px;
  line-height: 1.12;
}
.ct-sub{
  color: rgba(2,6,23,.70);
  max-width: 980px;
  font-size: 1.05rem;
  line-height: 1.75;
  margin: 0 0 18px;
}

.ct-chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top: 12px; }
.ct-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid var(--ct-border);
  background: rgba(255,255,255,.70);
  backdrop-filter: blur(10px);
  box-shadow: 0 14px 40px rgba(2,6,23,.06);
  font-weight: 800;
  font-size: 13px;
  color: rgba(2,6,23,.85);
}
.ct-chip i{ color: var(--ct-blue); }

.ct-cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top: 18px; }
.ct-btn-primary{
  border: 0;
  background: linear-gradient(90deg, var(--ct-blue), var(--ct-teal), var(--ct-violet));
  color: #fff;
  font-weight: 900;
  border-radius: 999px;
  padding: 12px 18px;
  box-shadow: 0 22px 60px rgba(37,99,235,.22);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.ct-btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.02);
  box-shadow: 0 26px 75px rgba(37,99,235,.28);
  color:#fff;
}
.ct-btn-ghost{
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(255,255,255,.70);
  color: rgba(2,6,23,.86);
  font-weight: 900;
  border-radius: 999px;
  padding: 12px 18px;
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.ct-btn-ghost:hover{
  transform: translateY(-2px);
  box-shadow: 0 20px 55px rgba(2,6,23,.10);
  color: rgba(2,6,23,.90);
}

/* CARD */
.ct-card{
  background: var(--ct-surface);
  border: 1px solid var(--ct-border);
  border-radius: var(--ct-radius);
  box-shadow: var(--ct-shadow);
  overflow: hidden;
  position: relative;
}
.ct-card::before{
  content:"";
  position:absolute;
  inset:-90px;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,.32), transparent);
  transform: translateX(-40%);
  opacity: .55;
  pointer-events:none;
}
.ct-card-inner{ position: relative; padding: 18px; }

.ct-section{ padding: 34px 0; }

.ct-h2{
  font-family: var(--heading-font);
  font-weight: 900;
  letter-spacing: -.02em;
  color: var(--ct-ink);
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.ct-lead{
  color: rgba(2,6,23,.72);
  line-height: 1.8;
  margin: 0;
  font-size: 1.02rem;
}

/* GALLERY */
.ct-gallery{
  border-radius: calc(var(--ct-radius) + 4px);
  overflow: hidden;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.55);
}
.ct-gallery .swiper-slide{
  position: relative;
  aspect-ratio: 16/9;
  overflow:hidden;
}
.ct-gallery img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .6s ease;
}
.ct-gallery .swiper-slide:hover img{ transform: scale(1.07); }
.ct-gallery .ct-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(2,6,23,0) 40%, rgba(2,6,23,.55));
  pointer-events:none;
}
.ct-gallery .ct-overlay-text{
  position:absolute;
  left: 14px;
  bottom: 12px;
  right: 14px;
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 10px;
  color:#fff;
  z-index:1;
}
.ct-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.24);
  backdrop-filter: blur(10px);
  font-weight: 900;
  font-size: 12.5px;
}

.swiper-button-next, .swiper-button-prev{
  width: 44px; height: 44px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.25);
  box-shadow: 0 18px 55px rgba(2,6,23,.18);
  color: #fff;
  transition: transform .2s ease, background .2s ease;
}
.swiper-button-next:hover, .swiper-button-prev:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.22);
}
.swiper-button-next::after, .swiper-button-prev::after{ font-size: 16px; font-weight: 900; }
.swiper-pagination-bullet{ width: 9px; height: 9px; opacity: .35; }
.swiper-pagination-bullet-active{ opacity: 1; transform: scale(1.15); }

/* LISTS */
.ct-list{
  list-style:none;
  padding:0;
  margin: 14px 0 0;
  display:grid;
  gap: 10px;
}
.ct-list li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  color: rgba(2,6,23,.80);
  font-weight: 650;
  line-height: 1.65;
}
.ct-list i{ margin-top: 3px; color: var(--ct-teal); font-size: 1rem; }

/* STATS */
.ct-stats{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.ct-stat{
  border-radius: 18px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.65);
  padding: 14px;
  box-shadow: 0 18px 50px rgba(2,6,23,.06);
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  height: 100%;
}
.ct-stat:hover{
  transform: translateY(-3px);
  box-shadow: 0 24px 70px rgba(2,6,23,.10);
  border-color: rgba(37,99,235,.18);
}
.ct-stat-top{ display:flex; align-items:center; gap:10px; margin-bottom: 8px; }
.ct-stat-ico{
  width: 40px; height: 40px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: rgba(37,99,235,.10);
  border: 1px solid rgba(37,99,235,.18);
  color: var(--ct-blue);
}
.ct-stat-ttl{ font-weight: 950; color: rgba(2,6,23,.88); margin:0; }
.ct-stat-sub{ margin:0; color: rgba(2,6,23,.66); font-weight: 650; }

/* GRID LAYOUT */
.ct-grid{ display:grid; grid-template-columns: 1.35fr .65fr; gap: 16px; }

/* SIDEBAR */
.ct-side ul{ list-style:none; padding:0; margin:0; display:grid; gap: 10px; }
.ct-side li{
  display:flex;
  justify-content: space-between;
  align-items:flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(10px);
}
.ct-side strong{
  color: rgba(2,6,23,.86);
  font-weight: 950;
  white-space: nowrap;
}
.ct-side span{ color: rgba(2,6,23,.68); font-weight: 650; text-align: right; }

.ct-quote{
  margin-top: 14px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(37,99,235,.08);
  color: rgba(2,6,23,.86);
  font-weight: 750;
  line-height: 1.7;
}

/* FAQ */
.ct-faq .accordion-item{
  border: 1px solid rgba(2,6,23,.08);
  border-radius: 16px !important;
  overflow:hidden;
  background: rgba(255,255,255,.70);
  box-shadow: 0 18px 55px rgba(2,6,23,.06);
}
.ct-faq .accordion-button{
  font-weight: 900;
  color: rgba(2,6,23,.86);
  background: rgba(255,255,255,.70);
}
.ct-faq .accordion-button:focus{ box-shadow:none; }
.ct-faq .accordion-button:not(.collapsed){
  background: linear-gradient(180deg, rgba(37,99,235,.10), rgba(255,255,255,.70));
  color: rgba(2,6,23,.90);
}
.ct-faq .accordion-body{
  color: rgba(2,6,23,.72);
  line-height: 1.8;
  font-weight: 600;
}

@media (max-width: 992px){
  .ct-grid{ grid-template-columns: 1fr; }
  .ct-stats{ grid-template-columns: 1fr; }
}

/* =====================================
  Community awareness detail css
===================================== */

:root{
  --ca-ink:#0b1220;
  --ca-border: rgba(15,23,42,.10);
  --ca-surface: rgba(255,255,255,.92);
  --ca-shadow: 0 24px 80px rgba(2,6,23,.10);
  --ca-radius: 22px;

  /* calm outreach palette */
  --ca-blue:#2563eb;
  --ca-teal:#06b6d4;
  --ca-violet:#7c3aed;
  --ca-emerald:#10b981;
}

body.community-awareness-page{
  background:
    radial-gradient(1100px 520px at 12% 6%, rgba(16,185,129,.12), transparent 60%),
    radial-gradient(900px 480px at 85% 18%, rgba(6,182,212,.14), transparent 62%),
    radial-gradient(900px 520px at 55% 105%, rgba(124,58,237,.12), transparent 60%),
    linear-gradient(180deg, rgba(2,6,23,.02), rgba(2,6,23,0));
}

/* HERO */
.ca-hero{
  position: relative;
  padding: 64px 0 26px;
  overflow: hidden;
}
.ca-hero::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(900px 420px at 10% 10%, rgba(16,185,129,.18), transparent 60%),
    radial-gradient(900px 420px at 90% 5%, rgba(6,182,212,.16), transparent 62%),
    radial-gradient(1100px 540px at 50% 120%, rgba(124,58,237,.12), transparent 62%);
  pointer-events:none;
}
.ca-hero .container{ position: relative; z-index: 1; }

.ca-breadcrumb{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  font-weight: 900;
  color: rgba(2,6,23,.66);
  font-size: 14px;
}
.ca-breadcrumb a{ color: rgba(2,6,23,.78); text-decoration:none; }
.ca-breadcrumb a:hover{ text-decoration:underline; }

.ca-title{
  font-family: var(--heading-font);
  color: var(--ca-ink);
  letter-spacing: -.02em;
  font-weight: 950;
  font-size: clamp(1.85rem, 3.2vw, 3.1rem);
  margin: 14px 0 10px;
  line-height: 1.12;
}
.ca-sub{
  color: rgba(2,6,23,.70);
  max-width: 980px;
  font-size: 1.05rem;
  line-height: 1.75;
  margin: 0 0 18px;
}

.ca-chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top: 12px; }
.ca-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid var(--ca-border);
  background: rgba(255,255,255,.70);
  backdrop-filter: blur(10px);
  box-shadow: 0 14px 40px rgba(2,6,23,.06);
  font-weight: 900;
  font-size: 13px;
  color: rgba(2,6,23,.84);
}
.ca-chip i{ color: var(--ca-emerald); }

.ca-cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top: 18px; }
.ca-btn-primary{
  border: 0;
  background: linear-gradient(90deg, var(--ca-emerald), var(--ca-teal), var(--ca-blue), var(--ca-violet));
  color: #fff;
  font-weight: 950;
  border-radius: 999px;
  padding: 12px 18px;
  box-shadow: 0 22px 60px rgba(16,185,129,.18);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.ca-btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.02);
  box-shadow: 0 26px 75px rgba(16,185,129,.24);
  color:#fff;
}
.ca-btn-ghost{
  border: 1px solid rgba(16,185,129,.24);
  background: rgba(255,255,255,.70);
  color: rgba(2,6,23,.86);
  font-weight: 950;
  border-radius: 999px;
  padding: 12px 18px;
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.ca-btn-ghost:hover{
  transform: translateY(-2px);
  box-shadow: 0 20px 55px rgba(2,6,23,.10);
  color: rgba(2,6,23,.90);
}

/* CARD */
.ca-card{
  background: var(--ca-surface);
  border: 1px solid var(--ca-border);
  border-radius: var(--ca-radius);
  box-shadow: var(--ca-shadow);
  overflow: hidden;
  position: relative;
}
.ca-card::before{
  content:"";
  position:absolute;
  inset:-90px;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,.32), transparent);
  transform: translateX(-40%);
  opacity: .55;
  pointer-events:none;
}
.ca-card-inner{ position: relative; padding: 18px; }

.ca-section{ padding: 34px 0; }

.ca-h2{
  font-family: var(--heading-font);
  font-weight: 950;
  letter-spacing: -.02em;
  color: var(--ca-ink);
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.ca-lead{
  color: rgba(2,6,23,.72);
  line-height: 1.85;
  margin: 0;
  font-size: 1.02rem;
  font-weight: 600;
}

/* GALLERY */
.ca-gallery{
  border-radius: calc(var(--ca-radius) + 4px);
  overflow: hidden;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.55);
}
.ca-gallery .swiper-slide{
  position: relative;
  aspect-ratio: 16/9;
  overflow:hidden;
}
.ca-gallery img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .6s ease;
}
.ca-gallery .swiper-slide:hover img{ transform: scale(1.07); }
.ca-gallery .ca-overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(2,6,23,0) 40%, rgba(2,6,23,.55));
  pointer-events:none;
}
.ca-gallery .ca-overlay-text{
  position:absolute;
  left: 14px;
  bottom: 12px;
  right: 14px;
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 10px;
  color:#fff;
  z-index:1;
}
.ca-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.24);
  backdrop-filter: blur(10px);
  font-weight: 950;
  font-size: 12.5px;
}

.swiper-button-next, .swiper-button-prev{
  width: 44px; height: 44px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.25);
  box-shadow: 0 18px 55px rgba(2,6,23,.18);
  color: #fff;
  transition: transform .2s ease, background .2s ease;
}
.swiper-button-next:hover, .swiper-button-prev:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.22);
}
.swiper-button-next::after, .swiper-button-prev::after{ font-size: 16px; font-weight: 900; }
.swiper-pagination-bullet{ width: 9px; height: 9px; opacity: .35; }
.swiper-pagination-bullet-active{ opacity: 1; transform: scale(1.15); }

/* GRID */
.ca-grid{ display:grid; grid-template-columns: 1.35fr .65fr; gap: 16px; }

/* SIDE */
.ca-side ul{ list-style:none; padding:0; margin:0; display:grid; gap: 10px; }
.ca-side li{
  display:flex;
  justify-content: space-between;
  align-items:flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(10px);
}
.ca-side strong{
  color: rgba(2,6,23,.86);
  font-weight: 950;
  white-space: nowrap;
}
.ca-side span{ color: rgba(2,6,23,.68); font-weight: 650; text-align: right; }

/* LISTS */
.ca-list{
  list-style:none;
  padding:0;
  margin: 14px 0 0;
  display:grid;
  gap: 10px;
}
.ca-list li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  color: rgba(2,6,23,.80);
  font-weight: 650;
  line-height: 1.65;
}
.ca-list i{ margin-top: 3px; color: var(--ca-emerald); font-size: 1rem; }

/* QUOTE */
.ca-quote{
  margin-top: 14px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(16,185,129,.22);
  background: rgba(16,185,129,.08);
  color: rgba(2,6,23,.86);
  font-weight: 750;
  line-height: 1.7;
}

/* FAQ */
.ca-faq .accordion-item{
  border: 1px solid rgba(2,6,23,.08);
  border-radius: 16px !important;
  overflow:hidden;
  background: rgba(255,255,255,.70);
  box-shadow: 0 18px 55px rgba(2,6,23,.06);
}
.ca-faq .accordion-button{
  font-weight: 950;
  color: rgba(2,6,23,.86);
  background: rgba(255,255,255,.70);
}
.ca-faq .accordion-button:focus{ box-shadow:none; }
.ca-faq .accordion-button:not(.collapsed){
  background: linear-gradient(180deg, rgba(16,185,129,.10), rgba(255,255,255,.70));
  color: rgba(2,6,23,.90);
}
.ca-faq .accordion-body{
  color: rgba(2,6,23,.72);
  line-height: 1.85;
  font-weight: 600;
}

@media (max-width: 992px){
  .ca-grid{ grid-template-columns: 1fr; }
}

/* =====================================
  Therapy detail css
===================================== */

:root{
  --th-ink:#0b1220;
  --th-border: rgba(15,23,42,.10);
  --th-surface: rgba(255,255,255,.92);
  --th-shadow: 0 24px 80px rgba(2,6,23,.10);
  --th-radius: 22px;

  /* calm palette */
  --th-blue:#2563eb;
  --th-teal:#06b6d4;
  --th-violet:#7c3aed;
}

body.therapy-page{
  background:
    radial-gradient(1100px 520px at 12% 6%, rgba(6,182,212,.14), transparent 60%),
    radial-gradient(900px 480px at 85% 18%, rgba(124,58,237,.13), transparent 62%),
    radial-gradient(900px 520px at 55% 105%, rgba(37,99,235,.12), transparent 60%),
    linear-gradient(180deg, rgba(2,6,23,.02), rgba(2,6,23,0));
}

/* HERO */
.th-hero{
  position: relative;
  padding: 64px 0 26px;
  overflow: hidden;
}
.th-hero::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(900px 420px at 12% 12%, rgba(6,182,212,.18), transparent 60%),
    radial-gradient(900px 420px at 90% 6%, rgba(124,58,237,.14), transparent 62%),
    radial-gradient(1100px 540px at 55% 120%, rgba(37,99,235,.12), transparent 62%);
  pointer-events:none;
}
.th-hero .container{ position: relative; z-index: 1; }

.th-breadcrumb{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  font-weight: 900;
  color: rgba(2,6,23,.66);
  font-size: 14px;
}
.th-breadcrumb a{ color: rgba(2,6,23,.78); text-decoration:none; }
.th-breadcrumb a:hover{ text-decoration:underline; }

.th-title{
  font-family: var(--heading-font);
  color: var(--th-ink);
  letter-spacing: -.02em;
  font-weight: 950;
  font-size: clamp(1.9rem, 3.2vw, 3.2rem);
  margin: 14px 0 10px;
  line-height: 1.12;
}
.th-sub{
  color: rgba(2,6,23,.70);
  max-width: 980px;
  font-size: 1.05rem;
  line-height: 1.75;
  margin: 0 0 18px;
  font-weight: 600;
}

.th-chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top: 12px; }
.th-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid var(--th-border);
  background: rgba(255,255,255,.70);
  backdrop-filter: blur(10px);
  box-shadow: 0 14px 40px rgba(2,6,23,.06);
  font-weight: 900;
  font-size: 13px;
  color: rgba(2,6,23,.84);
}
.th-chip i{ color: var(--th-blue); }

.th-cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top: 18px; }
.th-btn-primary{
  border: 0;
  background: linear-gradient(90deg, var(--th-blue), var(--th-teal), var(--th-violet));
  color: #fff;
  font-weight: 950;
  border-radius: 999px;
  padding: 12px 18px;
  box-shadow: 0 22px 60px rgba(37,99,235,.22);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.th-btn-primary:hover{
  transform: translateY(-2px);
  filter: brightness(1.02);
  box-shadow: 0 26px 75px rgba(37,99,235,.28);
  color:#fff;
}
.th-btn-ghost{
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(255,255,255,.70);
  color: rgba(2,6,23,.86);
  font-weight: 950;
  border-radius: 999px;
  padding: 12px 18px;
  backdrop-filter: blur(10px);
  transition: transform .2s ease, box-shadow .2s ease;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.th-btn-ghost:hover{
  transform: translateY(-2px);
  box-shadow: 0 20px 55px rgba(2,6,23,.10);
  color: rgba(2,6,23,.90);
}

/* CARD */
.th-card{
  background: var(--th-surface);
  border: 1px solid var(--th-border);
  border-radius: var(--th-radius);
  box-shadow: var(--th-shadow);
  overflow: hidden;
  position: relative;
}
.th-card::before{
  content:"";
  position:absolute;
  inset:-90px;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,.32), transparent);
  transform: translateX(-40%);
  opacity: .55;
  pointer-events:none;
}
.th-card-inner{ position: relative; padding: 18px; }

.th-section{ padding: 34px 0; }

.th-h2{
  font-family: var(--heading-font);
  font-weight: 950;
  letter-spacing: -.02em;
  color: var(--th-ink);
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.th-lead{
  color: rgba(2,6,23,.72);
  line-height: 1.85;
  margin: 0;
  font-size: 1.02rem;
  font-weight: 600;
}

/* HERO MEDIA */
.th-media{
  border-radius: calc(var(--th-radius) + 6px);
  overflow:hidden;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.60);
  box-shadow: 0 26px 90px rgba(2,6,23,.12);
  position: relative;
}
.th-media img{
  width: 100%;
  height: auto;
  display:block;
  aspect-ratio: 16/10;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .6s ease;
}
.th-media:hover img{ transform: scale(1.06); }
.th-media::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(2,6,23,0) 38%, rgba(2,6,23,.52));
  pointer-events:none;
}
.th-media-cap{
  position:absolute;
  left: 14px;
  bottom: 12px;
  right: 14px;
  display:flex;
  align-items:flex-end;
  justify-content: space-between;
  gap: 10px;
  z-index: 2;
  color:#fff;
}
.th-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.24);
  backdrop-filter: blur(10px);
  font-weight: 950;
  font-size: 12.5px;
  text-decoration:none;
  color:#fff;
}

/* LIST */
.th-list{
  list-style:none;
  padding:0;
  margin: 14px 0 0;
  display:grid;
  gap: 10px;
}
.th-list li{
  display:flex;
  gap: 10px;
  align-items:flex-start;
  color: rgba(2,6,23,.80);
  font-weight: 650;
  line-height: 1.65;
}
.th-list i{ margin-top: 3px; color: var(--th-teal); font-size: 1rem; }

/* GRID */
.th-grid{ display:grid; grid-template-columns: 1.35fr .65fr; gap: 16px; }

/* SIDEBAR */
.th-side ul{ list-style:none; padding:0; margin:0; display:grid; gap: 10px; }
.th-side li{
  display:flex;
  justify-content: space-between;
  align-items:flex-start;
  gap: 10px;
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(2,6,23,.08);
  background: rgba(255,255,255,.65);
  backdrop-filter: blur(10px);
}
.th-side strong{
  color: rgba(2,6,23,.86);
  font-weight: 950;
  white-space: nowrap;
}
.th-side span{ color: rgba(2,6,23,.68); font-weight: 650; text-align: right; }

.th-quote{
  margin-top: 14px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(37,99,235,.08);
  color: rgba(2,6,23,.86);
  font-weight: 750;
  line-height: 1.75;
}

/* FAQ */
.th-faq .accordion-item{
  border: 1px solid rgba(2,6,23,.08);
  border-radius: 16px !important;
  overflow:hidden;
  background: rgba(255,255,255,.70);
  box-shadow: 0 18px 55px rgba(2,6,23,.06);
}
.th-faq .accordion-button{
  font-weight: 950;
  color: rgba(2,6,23,.86);
  background: rgba(255,255,255,.70);
}
.th-faq .accordion-button:focus{ box-shadow:none; }
.th-faq .accordion-button:not(.collapsed){
  background: linear-gradient(180deg, rgba(37,99,235,.10), rgba(255,255,255,.70));
  color: rgba(2,6,23,.90);
}
.th-faq .accordion-body{
  color: rgba(2,6,23,.72);
  line-height: 1.85;
  font-weight: 600;
}

@media (max-width: 992px){
  .th-grid{ grid-template-columns: 1fr; }
}