/* =========================================
   STATIC PAGE HERO
========================================= */

.sp-page-hero {
  position: relative;

  min-height: 55vh;

  display: flex;
  align-items: center;
  justify-content: center;

  overflow: hidden;

  background-image:
    url("https://i.ibb.co.com/yc3TDz0t/Hero-Pic-sby-priest-4.avif");

  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;

  background-attachment: fixed;
}

/* =========================================
   HERO OVERLAY
========================================= */

.sp-page-overlay {
  position: absolute;
  inset: 0;

  background:
    linear-gradient(
      rgba(0,0,0,.65),
      rgba(0,0,0,.75)
    );

  z-index: 1;
}

/* Soft Light Effect */

.sp-page-hero::after {
  content: "";

  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at center,
      rgba(255,255,255,.06),
      transparent 65%
    );

  z-index: 2;
}

/* =========================================
   HERO CONTENT
========================================= */

.sp-page-hero-content {
  position: relative;
  z-index: 3;
padding-top: 50px;
  max-width: 900px;

  text-align: center;

  margin: auto;
}

.sp-page-hero-content h1 {
  margin: 0 0 24px;

  color: var(--color-white);

  font-family: var(--font-heading);

  font-size: clamp(2rem, 5vw, 4rem) !important;

  line-height: 1;

  text-shadow:
    0 10px 25px rgba(0,0,0,.25);
}

.sp-page-hero-content p {
  max-width: 750px;

  margin: 0 auto;

  color:
    rgba(255,255,255,.9);

  font-family: 'Manrope', sans-serif;

  font-size: 1.1rem;

  line-height: 1.5;
}

/* =========================================
   PAGE CONTENT
========================================= */

.sp-page-content {
  position: relative;

  padding: 80px 0;

  background:
    var(--color-bg-light);
}

.sp-page-article {
  max-width: 900px;
  margin: 0 auto;
}

/* =========================================
   TYPOGRAPHY
========================================= */

.sp-page-article h2 {
  margin: 0 0 30px;

  color:
    var(--color-primary);

  font-family:
    var(--font-heading);

  font-size:
    clamp(2rem, 4vw, 3rem);

  line-height: 1.1;
}

.sp-page-article h3 {
  margin:
    50px 0 20px;

  color:
    var(--color-primary);

  font-family:
    var(--font-heading);

  font-size:
    clamp(1.6rem, 3vw, 2.2rem);

  line-height: 1.2;
}

.sp-page-article p {
  margin: 0 0 25px;

  font-family:
    'Manrope', sans-serif;

  font-size: 1.05rem;

  line-height: 2;

  color:
    var(--color-text-secondary);
}

.sp-page-article ul,
.sp-page-article ol {
  margin:
    0 0 30px 25px;

  padding: 0;
}

.sp-page-article li {
  margin-bottom: 12px;

  font-family:
    'Manrope', sans-serif;

  color:
    var(--color-text-secondary);

  line-height: 1.9;
}

/* =========================================
   BLOCKQUOTE
========================================= */

.sp-page-article blockquote {
  position: relative;

  margin: 50px 0;

  padding:
    35px 40px;

  background:
    rgba(0,107,60,.05);

  border-left:
    4px solid var(--color-secondary);

  border-radius: 8px;

  color:
    var(--color-primary);

  font-size: 1.25rem;

  line-height: 1.8;

  font-style: italic;
}

.sp-page-article blockquote::before {
  content: "❝";

  position: absolute;

  top: 10px;
  left: 15px;

  font-size: 3rem;

  color:
    rgba(212,160,23,.4);
}

/* =========================================
   IMAGE
========================================= */

.sp-page-article img {
  width: 100%;

  height: auto;

  display: block;

  margin: 40px 0;

  border-radius: 12px;

  box-shadow:
    0 15px 40px rgba(0,0,0,.08);
}

/* =========================================
   TABLE
========================================= */

.sp-page-article table {
  width: 100%;

  border-collapse: collapse;

  margin: 40px 0;
}

.sp-page-article table th {
  background:
    var(--color-primary);

  color:
    var(--color-white);

  padding: 14px;
}

.sp-page-article table td {
  padding: 14px;

  border:
    1px solid rgba(0,0,0,.08);
}

/* =========================================
   HORIZONTAL LINE
========================================= */

.sp-page-article hr {
  border: 0;

  height: 1px;

  background:
    rgba(0,0,0,.08);

  margin: 60px 0;
}

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

@media (max-width: 992px) {

  .sp-page-content {
    padding: 80px 0;
  }

}

@media (max-width: 768px) {

  .sp-page-hero {
    min-height: 45vh;

    /* Safari & Mobile Fix */
    background-attachment: scroll;
  }

  .sp-page-content {
    padding: 70px 0;
  }

  .sp-page-hero-content h1 {
    font-size: 3rem;
  }

  .sp-page-hero-content p {
    font-size: 1rem;
  }

  .sp-page-article p {
    line-height: 1.8;
  }

  .sp-page-article blockquote {
    padding: 25px;
  }

}

@media (max-width: 576px) {

  .sp-page-hero {
    min-height: 40vh;
  }

  .sp-page-hero-content h1 {
    font-size: 2.4rem;
  }

  .sp-page-article h2 {
    font-size: 2rem;
  }

  .sp-page-article h3 {
    font-size: 1.5rem;
  }

}