:root{
  --dpsc-page-bg: #062b4f;

  --dpsc-ink: #0f172a;
  --dpsc-muted: #475569;
  --dpsc-border: rgba(15, 23, 42, 0.10);

  --dpsc-primary: #062b4f;
  --dpsc-accent: #d9a11a;

  --dpsc-radius: 20px;
  --dpsc-pad: clamp(16px, 4vw, 44px);
  --dpsc-wrap: 1180px;

  --dpsc-on-dark-heading: #ffffff;
  --dpsc-on-dark-text: rgba(255,255,255,0.92);
  --dpsc-on-dark-muted: rgba(255,255,255,0.78);
  --dpsc-on-dark-soft: rgba(255,255,255,0.08);
  --dpsc-on-dark-border: rgba(255,255,255,0.16);
}

/* =========================
   PAGE
   ========================= */
.dpsc-page{
  background: var(--dpsc-page-bg);
  color: var(--dpsc-on-dark-text);
}

/* =========================
   HERO
   ========================= */
.dpsc-hero--bg{
  position: relative;
  background-image: url("/static/main/img/our_services/diaspora_centers/diaspora_centers_bg.d20595839f78.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: var(--dpsc-page-bg);
}

.dpsc-hero__overlay{
  width: 100%;
  min-height: clamp(420px, 66vh, 720px);
  background: linear-gradient(
    to right,
    rgba(6,43,79,0.94) 0%,
    rgba(6,43,79,0.84) 38%,
    rgba(6,43,79,0.58) 68%,
    rgba(6,43,79,0.28) 100%
  );
  display: flex;
  align-items: center;
}

.dpsc-hero__wrap{
  width: min(1440px, 100%);
  margin: 0 auto;
  padding: clamp(56px, 7vw, 96px) clamp(20px, 4vw, 72px);
}

.dpsc-hero__left{
  max-width: 1400px;
}

.dpsc-hero__eyebrow{
  margin: 0 0 14px;
  color: var(--dpsc-on-dark-muted);
  font-family: Roboto, Geneva, Verdana, sans-serif;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dpsc-hero__title{
  margin: 0 0 22px;
  color: var(--dpsc-on-dark-heading);
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-weight: 900;
  font-size: clamp(2.4rem, 5.2vw, 5.1rem);
  line-height: 0.98;
  letter-spacing: -0.03em;
}

.dpsc-hero__sub{
  margin-left: 2rem;

  max-width: 66ch;
  color: var(--dpsc-on-dark-text);
  font-family: Roboto, Geneva, Verdana, sans-serif;
  font-size: clamp(1rem, 1.4vw, 1.14rem);
  line-height: 1.85;
}

/* =========================
   BODY
   ========================= */
.dpsc-body__wrap{
  max-width: var(--dpsc-wrap);
  margin: 0 auto;
  padding: clamp(28px, 5vw, 60px) var(--dpsc-pad) clamp(48px, 7vw, 90px);
}

.dpsc-section{
  margin-top: clamp(22px, 3vw, 38px);
}

.dpsc-h2{
  margin: 0 0 10px;
  /* color: var(--dpsc-on-dark-heading); */
  font-family: Roboto, Geneva, Verdana, sans-serif;
  font-weight: 900;
  font-size: clamp(1.7rem, 3vw, 2.25rem);
  line-height: 1.2;
  color: #FFD800;
}

.dpsc-h3{
  margin: 0 0 10px;
  color: rgba(15,23,42,0.95);
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-weight: 900;
  font-size: 1.16rem;
  line-height: 1.35;
  text-align: left;
}

.dpsc-muted{
  margin-left: 2rem;
  max-width: 92ch;
  color: var(--dpsc-on-dark-text);
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-size: 1.1rem;
  line-height: 1.85;
  text-align: left;
}

.dpsc-muted--center{
  margin-left: 2rem;
  margin-right: 2rem;
}

.dpsc-p{
  margin: 0 0 10px;
  color: rgba(15,23,42,0.78);
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-size: 0.97rem;
  line-height: 1.8;
  text-align: left;
}

.dpsc-p:last-child{
  margin-bottom: 0;
}

/* =========================
   INTRO
   ========================= */
.dpsc-intro__box{
  padding-left: 34px;
  text-align: left;
  backdrop-filter: blur(4px);
}

/* =========================
   FEATURE CARD
   ========================= */
.dpsc-feature-card{
  padding: 34px;
  border-radius: 24px;
  backdrop-filter: blur(4px);
}

.dpsc-feature-card__marker{
  width: 120px;
  height: 120px;
  border-radius: 24px;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f0c75e;
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-size: 1.1rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-align: center;
  padding: 12px;
}



.dpsc-feature-card__list{
  margin-left: 2rem;
  padding-left: 20px;
  color: var(--dpsc-on-dark-text);
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-size: 1.1rem;
  line-height: 1.8;
}

/* =========================
   SUPPORT CARDS
   ========================= */
.dpsc-support-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.dpsc-support-card{
  padding: 22px;
  background: #ffffff;
  border: 1px solid var(--dpsc-on-dark-border);
  border-radius: 22px;
  backdrop-filter: blur(4px);
}

.dpsc-support-card__tag{
  margin: 0 0 8px;
  color: #f0c75e;
  font-family: Roboto, Geneva, Verdana, sans-serif;
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.10em;
  text-transform: uppercase;
}

/* =========================
   STATS BAND
   ========================= */
.dpsc-stats-band{
  padding: 28px 24px;
  background: linear-gradient(
    180deg,
    rgba(255,255,255,0.08) 0%,
    rgba(255,255,255,0.12) 100%
  );
  border: 1px solid var(--dpsc-on-dark-border);
  border-radius: 24px;
  text-align: left;
  backdrop-filter: blur(4px);
}

.dpsc-stats-band__head{
  margin-bottom: 22px;
}

.dpsc-stats-grid{
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

.dpsc-stat{
  padding: 18px 14px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 18px;
}

.dpsc-stat__number{
  display: block;
  color: #0CC392;
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-weight: 900;
  font-size: clamp(1.8rem, 3vw, 2.5rem);
  line-height: 1;
}

.dpsc-stat__label{
  display: block;
  margin-top: 8px;
  color: var(--dpsc-on-dark-muted);
  font-family: Roboto, Geneva, Verdana, sans-serif;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

/* =========================
   LINKED FUNCTION CARDS
   ========================= */
.dpsc-functions{
  display: flex;
  flex-direction: column;
  gap: 25px;
  margin-top: 28px;
}

.dpsc-link-card{
  display: grid;
  grid-template-columns: 84px 1fr 34px;
  gap: 18px;
  align-items: center;
  padding: 20px 22px;
  background: #ffffff;
  border: 1px solid var(--dpsc-border);
  border-radius: var(--dpsc-radius);
  box-shadow: 0 14px 34px rgba(0,0,0,0.14);
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}

.dpsc-link-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 38px rgba(0,0,0,0.18);
}

.dpsc-link-card__marker{
  width: 84px;
  height: 84px;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Tahoma, Roboto, Geneva, Verdana, sans-serif;
  font-size: 1.4rem;
  font-weight: 900;
  line-height: 1;
  flex-shrink: 0;
}

.dpsc-link-card__content{
  min-width: 0;
}


.dpsc-link-card__arrow{
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  text-align: right;
}

/* =========================
   COLOR VARIATIONS
   ========================= */
.dpsc-link-card--gold:hover{
  border-color: rgba(217,161,26,0.45);
}
.dpsc-link-card--gold .dpsc-link-card__marker{
  background: rgba(217,161,26,0.14);
  color: #a87400;
  border: 1px solid rgba(217,161,26,0.22);
}
.dpsc-link-card--gold .dpsc-link-card__eyebrow,
.dpsc-link-card--gold .dpsc-link-card__arrow{
  color: #a87400;
}

.dpsc-link-card--blue:hover{
  border-color: rgba(58,123,253,0.42);
}
.dpsc-link-card--blue .dpsc-link-card__marker{
  background: rgba(58,123,253,0.12);
  color: #2a63d8;
  border: 1px solid rgba(58,123,253,0.20);
}
.dpsc-link-card--blue .dpsc-link-card__eyebrow,
.dpsc-link-card--blue .dpsc-link-card__arrow{
  color: #2a63d8;
}

.dpsc-link-card--green:hover{
  border-color: rgba(58,165,91,0.42);
}
.dpsc-link-card--green .dpsc-link-card__marker{
  background: rgba(58,165,91,0.12);
  color: #2f8b4d;
  border: 1px solid rgba(58,165,91,0.20);
}
.dpsc-link-card--green .dpsc-link-card__eyebrow,
.dpsc-link-card--green .dpsc-link-card__arrow{
  color: #2f8b4d;
}

.dpsc-link-card--coral:hover{
  border-color: rgba(232,101,71,0.42);
}
.dpsc-link-card--coral .dpsc-link-card__marker{
  background: rgba(232,101,71,0.12);
  color: #c94d30;
  border: 1px solid rgba(232,101,71,0.20);
}
.dpsc-link-card--coral .dpsc-link-card__eyebrow,
.dpsc-link-card--coral .dpsc-link-card__arrow{
  color: #c94d30;
}

/* =========================
   CLOSING
   ========================= */
.dpsc-closing{
  padding: 28px 24px;
  background: rgba(255,255,255,0.08);
  border: 1px solid var(--dpsc-on-dark-border);
  border-radius: 22px;
  text-align: left;
  backdrop-filter: blur(4px);
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 900px){
  .dpsc-support-grid{
    grid-template-columns: 1fr;
  }

  .dpsc-link-card{
    grid-template-columns: 72px 1fr 28px;
    gap: 14px;
    padding: 18px;
  }

  .dpsc-link-card__marker{
    width: 72px;
    height: 72px;
    font-size: 1.2rem;
    border-radius: 16px;
  }
}

@media (max-width: 680px){
  .dpsc-hero__overlay{
    min-height: 460px;
    background: linear-gradient(
      to bottom,
      rgba(6,43,79,0.92) 0%,
      rgba(6,43,79,0.82) 56%,
      rgba(6,43,79,0.48) 100%
    );
  }

  .dpsc-hero__wrap{
    padding: 36px 16px 44px;
  }

  .dpsc-hero__title{
    font-size: clamp(2rem, 10vw, 3rem);
    line-height: 1.05;
    margin-bottom: 18px;
  }

  .dpsc-hero__sub{
    font-size: 0.97rem;
    line-height: 1.75;
  }

  .dpsc-feature-card{
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 20px 18px;
  }

  .dpsc-feature-card__marker{
    width: 84px;
    height: 84px;
    border-radius: 18px;
    font-size: 0.82rem;
  }

  .dpsc-stats-grid{
    grid-template-columns: 1fr;
  }

  .dpsc-link-card{
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 18px 16px;
  }

  .dpsc-link-card__marker{
    width: 68px;
    height: 68px;
    font-size: 1.1rem;
    border-radius: 14px;
  }

  .dpsc-link-card__arrow{
    text-align: left;
  }
}