.join-fields{ padding: 90px 0; }

.jf-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.jf-card{
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 26px;
  background: var(--offwhite);
  border-radius: var(--radius-md);
  border: 1px solid rgba(13,138,188,.12);
  transition: transform .35s ease, border-color .35s ease;
}

.jf-card:hover{ transform: translateY(-6px); border-color: var(--blue); }

.jf-card span{ font-size: 1.7rem; }

.jf-card h3{ font-size: 1.05rem; }

.join-community{ padding: 90px 0; background: var(--white); }

.join-community-grid{
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 60px;
  align-items: center;
}

.join-community-grid h2{ font-size: clamp(1.6rem, 3vw, 2.1rem); margin: 14px 0 20px; }

.join-community-grid p{ color: var(--ink-soft); margin-bottom: 14px; }

.join-quote{
  background: linear-gradient(150deg, var(--blue-deep), var(--blue));
  color: var(--white);
  border-radius: var(--radius-lg);
  padding: 44px 38px;
  text-align: center;
}

.star-bullet.big{ font-size: 2rem; color: var(--gold); display: block; margin-bottom: 18px; }

.join-quote p{ font-size: 1.15rem; line-height: 1.9; margin-bottom: 22px; color: rgba(255,255,255,.94); }

.join-quote-sign{ font-family: 'Aref Ruqaa', serif; color: var(--gold); font-size: 1.2rem; }

.join-form-section{ padding: 20px 0 110px; }

.join-form-card{
  max-width: 620px;
  margin: 0 auto;
  text-align: center;
  background: linear-gradient(150deg, var(--red), #9c0d1a);
  color: var(--white);
  border-radius: var(--radius-lg);
  padding: 56px 44px;
  box-shadow: 0 30px 60px -28px rgba(206,17,38,.5);
}

.join-form-icon{ font-size: 2.6rem; display: block; margin-bottom: 18px; }

.join-form-card h2{ color: var(--white); margin-bottom: 14px; }

.join-form-card p{ color: rgba(255,255,255,.9); margin-bottom: 30px; }

.join-form-card .btn-primary{
  background: var(--white);
  color: var(--red);
  box-shadow: none;
}

.join-form-card .btn-primary:hover{ background: var(--offwhite); }

@media (max-width: 940px){
  .jf-grid{ grid-template-columns: 1fr 1fr; }
  .join-community-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 560px){
  .jf-grid{ grid-template-columns: 1fr; }
  .join-form-card{ padding: 40px 26px; }
}
