/**
Theme Name: PGCE
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pgce
Template: astra
*/
body {
    background-color: #f8f7f2 !important;
}
body.home.page-template-default header#masthead {
    display: none;
}
/* Prevent horizontal scroll on entire site */
html, body {
  overflow-x: hidden !important;
  width: 100%;
}



/* Fix images or widgets pushing layout sideways */
img, iframe, .elementor-widget, .elementor-widget-container {
  max-width: 100% !important;
}
/*****Header alignment*****/
header.entry-header.ast-no-thumbnail.ast-header-without-markup {
    display: none;
}
section.pgce-slider-img.elementor-section-height-default.elementor-section-height-default.elementor-section.elementor-top-section img {
    height: 220px;
}
section.pgce-slider-outer.elementor-section-height-default.elementor-section-height-default.elementor-section.elementor-top-section {
    margin: 0px -20px;
}

.ast-plain-container.ast-no-sidebar #primary {
    margin-top: 0px;
}
.ast-container {
    width: 100vw !important;
    max-width: 100% !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
/************Home Header Menu*****/
/*.Home-Header-Menu ul li{
    padding: 18px;
    border-radius: 0 30px 30px 0;
}*/

/********Home Body Section****/
.pgce-image-section {
  padding: 40px 0;
  display: flex;
  justify-content: center;     /* center the stack */
  background: #faf7f2;         /* page background colour */
}

/* Wrapper for the stacked cards */
.pgce-image-stack {
  position: relative;
  width: 220px;                /* adjust as needed */
  height: 420px;               /* controls how much overlap */
}

/* Generic card style */
.pgce-img-card {
  position: absolute;
  width: 75%;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
  background: #000;            /* fallback */
}

/* Images inside cards */
.pgce-img-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Top card */
.pgce-img-main {
    top: 0;
    left: 50%;
    transform: translateX(-25%);
    height: 50%;
}

/* Middle card – staggered to the left */
.pgce-img-left {
    top: 38%;
    left: -75px;
    height: 50%;
}

/* Bottom card – staggered to the right */
.pgce-img-right {
    top: 58%;
    right: -10%;
    height: 50%;
}

/* Optional: scale up slightly on hover for a fun effect */
.pgce-img-card:hover {
  transform: scale(1.03) translateZ(0);
  transition: transform 0.3s ease;
}
.pgce-img-main:hover {
  transform: translateX(-50%) scale(1.03);
}
/*********Admissions Page *******/
.admission-apply .pgce-steps {
    max-width: 960px;
    margin: auto;
    display: grid;
    gap: 20px;
}

.admission-apply .pgce-step {
    display: flex;
    background: #ffffff;
    border: 1px solid #ffffff;
    padding: 18px 20px;
    border-radius: 10px;
    box-shadow: 0 2px 6px rgb(93 38 45);
    align-items: flex-start;
}

.admission-apply .pgce-step-number {
    background: #5d262d;
    color: #fff;
    font-weight: 600;
    font-size: 18px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 18px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

.admission-apply .pgce-step p {
    margin: 0;
    font-size: 18px;
    line-height: 1.6;
	font-family: "Montserrat", Sans-serif;
	color: #000;
}

.admission-apply .pgce-step a {
    color: #713438;
    font-weight: 600;
    text-decoration: none;
	font-family: "Montserrat", Sans-serif;
}

.admission-apply .pgce-step a:hover {
    text-decoration: underline;
}





.why-apply-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    max-width: 950px;
}

.apply-card {
    background: #ffffff;
    border: 1px solid #dcdcdc;
    padding: 25px;
    border-radius: 12px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
}

.apply-card:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 0;
    width: 100%;
    height: 70px;
    background: #6c1f23;
    transform: skewY(-6deg);
    z-index: 0;
}

.icon-box {
    background: #ffffff;
    width: 55px;
    height: 55px;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 28px;
    margin-bottom: 15px;
    position: relative;
    z-index: 2;
	font-family: "Montserrat", Sans-serif;
}

.apply-card h4 {
    margin-top: 8px;
    font-size: 20px;
    color: #6c1f23;
    position: relative;
    z-index: 2;
	font-family: "Montserrat", Sans-serif;
}

.apply-card p {
    margin-top: 8px;
    font-size: 18px;
    position: relative;
    z-index: 2;
	font-family: "Montserrat", Sans-serif;
	color: #000;
}
/***********FAQ*********/

   .faq-outer .faq-section {
      max-width: 960px;
      margin: 0 auto;
      background: #ffffff;
      border-radius: 18px;
      padding: 32px 24px 40px;
      box-shadow: 0 16px 40px rgba(0, 0, 0, 0.06);
      border: 1px solid rgba(0, 0, 0, 0.03);
    }

    .faq-outer .faq-header {
      text-align: center;
      margin-bottom: 28px;
    }

   .faq-outer .faq-title {
      font-family: "Playfair Display", "Times New Roman", serif;
      font-size: clamp(1.7rem, 3vw, 2.1rem);
      color: var(--dav-maroon);
      letter-spacing: 0.03em;
      margin-bottom: 8px;
    }

    .faq-outer .faq-subtitle {
      font-size: 0.98rem;
      color: #777;
      max-width: 560px;
      margin: 0 auto;
    }

  .faq-outer .faq-title-underline {
      width: 72px;
      height: 3px;
      border-radius: 999px;
      margin: 14px auto 0;
      background: linear-gradient(90deg, var(--dav-gold), var(--dav-maroon));
    }

   .faq-outer .faq-list {
      margin-top: 18px;
    }

   .faq-outer .faq-item {
      border-bottom: 1px solid var(--border-soft);
      padding: 10px 0;
    }

    .faq-outer .faq-toggle {
      display: none;
    }

   .faq-outer .faq-question {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 10px 4px;
      cursor: pointer;
      transition: background 0.2s ease, color 0.2s ease, padding-left 0.2s ease;
      border-radius: 10px;
    }

   .faq-outer .faq-left {
      display: flex;
      align-items: center;
      gap: 12px;
      flex: 1;
    }

   .faq-outer .faq-number {
      width: 26px;
      height: 26px;
      border-radius: 999px;
      background: var(--dav-bg);
      border: 1px solid rgba(199, 163, 75, 0.7);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.78rem;
      font-weight: 600;
      color: var(--dav-maroon);
      flex-shrink: 0;
    }

   .faq-outer .faq-question-text {
      font-size: 0.98rem;
      font-weight: 600;
      color: #333;
    }

   .faq-outer .faq-icon {
      width: 22px;
      height: 22px;
      border-radius: 999px;
      border: 1px solid rgba(124, 19, 40, 0.4);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1rem;
      color: var(--dav-maroon);
      flex-shrink: 0;
      transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease;
    }

   .faq-outer .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.32s ease;
      padding: 0 4px;
    }

   .faq-outer .faq-answer-inner {
      padding: 6px 0 12px 38px;
      font-size: 0.95rem;
      line-height: 1.6;
      color: var(--dav-text);
      background: transparent;
    }

   .faq-outer .faq-answer-inner p + p {
      margin-top: 6px;
    }

   .faq-outer .faq-answer-inner ul {
      margin: 6px 0 0 16px;
      padding-left: 10px;
    }

   .faq-outer .faq-answer-inner li {
      margin-bottom: 4px;
    }

   .faq-outer  .pill-list {
      display: flex;
      flex-wrap: wrap;
      gap: 6px;
      margin-top: 4px;
    }

    .faq-outer .pill {
      font-size: 0.8rem;
      padding: 3px 9px;
      border-radius: 999px;
      border: 1px solid rgba(199, 163, 75, 0.45);
      background: #fdfaf4;
      color: #7a6530;
    }

    /* When open */
    .faq-outer .faq-toggle:checked + label .faq-icon {
      transform: rotate(45deg);
      background: var(--dav-maroon);
      color: #fff;
    }

   .faq-outer  .faq-toggle:checked + label {
      background: var(--dav-bg);
      padding-left: 8px;
    }

    .faq-outer .faq-toggle:checked + label + .faq-answer {
      max-height: 400px;
    }

    .faq-outer .faq-footer-cta {
      margin-top: 24px;
      padding-top: 16px;
      border-top: 1px dashed var(--border-soft);
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      font-size: 0.9rem;
    }

    .faq-outer .faq-footer-cta strong {
      color: #333;
    }

   .faq-outer .faq-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 8px 18px;
      border-radius: 999px;
      border: none;
      font-size: 0.88rem;
      font-weight: 600;
      letter-spacing: 0.03em;
      cursor: pointer;
      background: linear-gradient(135deg, var(--dav-maroon), #a31b36);
      color: #fff;
      text-decoration: none;
      box-shadow: 0 8px 18px rgba(124, 19, 40, 0.22);
      transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
      white-space: nowrap;
    }

   .faq-outer .faq-btn:hover {
      transform: translateY(-1px);
      filter: brightness(1.02);
      box-shadow: 0 10px 22px rgba(124, 19, 40, 0.28);
    }

    @media (max-width: 640px) {
      body {
        padding: 24px 12px;
      }
      .faq-section {
        padding: 24px 18px 28px;
      }
      .faq-answer-inner {
        padding-left: 34px;
      }
    }

.faq-outer a.elementor-accordion-title {
    display: flex;
    align-items: center;
}
.faq-outer span.faq-number {
    margin-right: 15px;
}

.elementor-tab-title.elementor-active {
    background-color: #7d7d7d54;
}
.faq-outer .elementor-tab-content {
    border-bottom: 1px solid #a19f98 !important;
}

/************Curriculum page ******/
/* ====== PHOTO STORY SECTION ====== */

.pgce-photo-story {
  padding: 60px 5%;
  background: #faf7f2;
}

.pgce-photo-story-inner {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 32px;
  align-items: center;
}

/* Left text block */

.pgce-photo-copy h2 {
  font-size: 28px;
  margin-bottom: 10px;
  color: #7c1328;
}

.pgce-photo-copy p {
  font-size: 15px;
  line-height: 1.7;
  color: #444;
  margin-bottom: 12px;
}

.pgce-photo-copy ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.pgce-photo-copy li {
  font-size: 14px;
  color: #555;
  margin-bottom: 6px;
  position: relative;
  padding-left: 20px;
}

.pgce-photo-copy li::before {
  content: "●";
  font-size: 9px;
  color: #c7a34b;
  position: absolute;
  left: 0;
  top: 6px;
}

/* ====== Collage Layout ====== */

.pgce-photo-collage {
  max-width: 620px;
  margin-left: auto;
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 120px;
  gap: 18px;
}

/* Base card style */
.pgce-photo-card {
  border-radius: 22px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
  position: relative;
}

.pgce-photo-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Size variants */

.card-tall {
  grid-row: span 2;
}

.card-wide {
  grid-column: span 3;
  grid-row: span 2;
}

/* Small cards auto use one row/one column */

.card-small {
  grid-row: span 1;
}

/* Position tweaks to make it feel layered & dynamic */

.card-1 {
  transform: translateY(6px);
}

.card-2 {
  transform: translateY(-12px);
}

.card-3 {
  margin-top: -10px;
}

.card-4 {
  transform: translateY(6px);
}

.card-5 {
  transform: translateY(18px);
}

.card-6 {
  transform: translateY(-4px);
}

/* ====== Responsive ====== */

@media (max-width: 900px) {
  .pgce-photo-story-inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .pgce-photo-collage {
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  .pgce-photo-collage {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 130px;
  }

  .card-wide {
    grid-column: span 2;
  }
}
/*************Elegibility Page ********/
/* ===== Base 2-column layout ===== */

.pgce-eligibility {
  padding: 60px 8%;
  background: #f5f3ec; /* same off-white as your page */
}

.pgce-elig-layout {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  gap: 40px;
  align-items: flex-start;
}

.pgce-elig-left ul {
  margin: 0 0 14px 1.4rem;
}

.elig-main-title {
  font-size: 32px;
  letter-spacing: 0.08em;
  margin-bottom: 28px;
  color: #7c1328;
}

.elig-sub-title {
  font-size: 18px;
  letter-spacing: 0.08em;
  margin: 22px 0 8px;
  color: #7c1328;
}

.pgce-elig-right {
  display: flex;
  justify-content: flex-end;
}

/* ===== Shaped single-image design ===== */

.elig-photo-shell {
  position: relative;
  width: 100%;
  max-width: 480px;
  min-height: 380px;
}

/* gradient blob */
.elig-photo-blob {
  position: absolute;
  inset: 24px 8px 8px 44px;      /* top right bottom left */
  background: radial-gradient(circle at 10% 0%, #fbeee1 0, #ffffff 55%, #f8e5ec 100%);
  border-radius: 50% 50% 45% 55% / 60% 40% 60% 40%;
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.08);
}

/* main photo card */
.elig-photo-main {
  position: relative;
  margin: 0;
  z-index: 1;
  transform: translate(-12px, -16px);
  border-radius: 32px;
  overflow: hidden;
  border: 2px solid rgba(199, 163, 75, 0.7);
  background: #fff;
}

.elig-photo-main img {
  display: block;
  width: 100%;
  height: 330px;
  object-fit: cover;
  transition: transform 0.35s ease, filter 0.35s ease;
}

/* circular zoom */
.elig-photo-circle {
  position: absolute;
  right: -12px;
  bottom: -8px;
  width: 160px;
  height: 160px;
  border-radius: 999px;
  background: linear-gradient(135deg, #7c1328, #c7a34b);
  padding: 3px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.25);
  z-index: 2;
}

.elig-photo-circle-inner {
  width: 100%;
  height: 100%;
  border-radius: 999px;
  overflow: hidden;
  background: #fff;
}

.elig-photo-circle-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.1); /* slight zoom */
}

/* small text chip */
.elig-photo-chip {
  position: absolute;
  left: 0;
  bottom: 18px;
  padding: 6px 16px;
  border-radius: 999px;
  background: #7c1328;
  color: #fff;
  font-size: 11px;
  line-height: 1.3;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  box-shadow: 0 12px 28px rgba(124, 19, 40, 0.4);
  z-index: 3;
}

/* hover effect on whole visual */
.elig-photo-shell:hover .elig-photo-main img {
  transform: scale(1.04);
  filter: brightness(1.04);
}

/* ===== Responsive ===== */

@media (max-width: 900px) {
  .pgce-elig-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .pgce-elig-right {
    justify-content: flex-start;
  }

  .elig-photo-shell {
    max-width: 100%;
  }
}

/*************Course structure Page *****/
/* outer band */
.pgce-teach-band {
  padding: 10px 6%;
  background: #faf7f2;              /* page bg */
}

.pgce-teach-inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 26px 32px;
  border-radius: 30px;
  background: #ffffff;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);
  position: relative;
}

/* soft gradient highlight behind all three cards */
.pgce-teach-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(104,36,41,0.06), rgba(199,163,75,0.12));
  opacity: 0.6;
  pointer-events: none;
}

/* 3-column grid */
.pgce-teach-grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  z-index: 1;
}

/* individual card */

.teach-card {
  position: relative;
  padding-top: 34px;                   /* space for icon */
}

/* card body pill */
.teach-card-body {
  background: #faf7f2;
  border-radius: 22px;
  padding: 18px 18px 20px;
  text-align: center;
  border: 1px solid rgba(199, 163, 75, 0.6);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.05);
  position: relative;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* little diagonal highlight in the corner */
.teach-card-body::after {
  content: "";
  position: absolute;
  right: -30px;
  top: -30px;
  width: 110px;
  height: 110px;
  background: radial-gradient(circle at 30% 30%, rgba(199,163,75,0.45), transparent 70%);
  opacity: 0.25;
}

/* hover */
.teach-card:hover .teach-card-body {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

/* icon badge */

.teach-icon-wrap {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}

.teach-icon-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12);
  border: 3px solid #faf7f2;
  position: relative;
}

/* thin maroon ring */
.teach-icon-circle::before {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: 50%;
  border: 2px solid #682429;
  opacity: 0.7;
}

/* icon image itself */
.teach-icon-circle img {
  width: 58px;
  height: 58px;
  object-fit: contain;
  position: relative;
  z-index: 1;
}

/* titles & text */

.teach-card-body h3 {
  font-size: 20px;
  margin-bottom: 6px;
  color: #682429;
    font-family: "Montserrat", Sans-serif;
}

.teach-card-body p {
  font-size: 16px;
  line-height: 1.6;
  color: #333333;
  font-family: "Montserrat", Sans-serif;
}

/* responsive */

@media (max-width: 900px) {
  .pgce-teach-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 600px) {
  .pgce-teach-inner {
    padding: 22px 20px;
  }
  .pgce-teach-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
/********eligibility***********/
.who-apply {
  background: #faf7f2;
  padding: 60px;
  position: relative;
  overflow: hidden;
}

/* soft decorative blob */
.who-apply::before {
  content: "";
  position: absolute;
  right: -80px;
  top: -60px;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle at 20% 20%, #b9858c, #682429);
  opacity: 0.09;
  border-radius: 50%;
}

.who-apply-inner {
  position: relative;
  z-index: 1;
  max-width: 1100px;
  margin: 0 auto;
}

.who-title {
  font-family: "Montserrat", sans-serif;
  font-size: 32px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #682429;
  margin-bottom: 32px;
}

/* grid layout */
.who-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 30px;
}

/* card */
.who-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  padding: 18px 22px 20px;
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}

/* corner accent shape */
.who-card::before {
  content: "";
  position: absolute;
  right: -40px;
  bottom: -40px;
  width: 120px;
  height: 120px;
  background: linear-gradient(135deg, #f4d7d8, #682429);
  opacity: 0.08;
  border-radius: 40px;
  transform: rotate(-10deg);
}

/* alternate card with reversed accent */
.who-card-alt::before {
  left: -40px;
  right: auto;
  transform: rotate(12deg);
}

/* icon circle */
.who-icon {
  flex: 0 0 46px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #682429;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 24px;
  margin-right: 14px;
  position: relative;
}

.who-icon::after {
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: inherit;
  border: 2px solid rgba(104, 36, 41, 0.18);
}

/* text */
.who-text h3 {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #682429;
  margin: 2px 0 4px;
}

.who-text p {
  font-family: "Montserrat", sans-serif;
  font-size: 15px;
  line-height: 1.7;
  color: #333333;
  margin: 0;
}

/* small accent bar on left of text */
.who-text {
  position: relative;
  padding-left: 10px;
}

.who-text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 3px;
  height: 24px;
  border-radius: 999px;
  background: linear-gradient(#682429, #b9858c);
}

/* responsive */
@media (max-width: 768px) {
  .who-grid {
    grid-template-columns: 1fr;
  }
  .who-apply {
    padding: 40px 18px 50px;
  }
  .who-title {
    font-size: 26px;
  }
}
/************Home Testimonials******/
.sp-testimonial-free-section .sp-testimonial-title .sp-testimonial-post-title {
    color: #69252C !important;
    font-family: "Bebas Neue", Sans-serif;
    font-size: 25px;
    font-weight: 300;
}
 .sp-testimonial-client-testimonial p {
    color: #000000 !important;
    font-family: "Montserrat", Sans-serif;
    font-size: 16px;
	text-align: justify !important;
  
}
/* === 1. SECTION BACKGROUND & SPACING (ONLY THIS TESTIMONIAL BLOCK) === */
#sp-testimonial-free-wrapper-10687 {
    position: relative;
    padding: 80px 0;
    background: #fdfaf4;
}

/* soft abstract background shape */
#sp-testimonial-free-wrapper-10687::before {
    content: "";
    position: absolute;
    inset: 15% 10%;
    background: radial-gradient(circle at top left, #ffe9ba 0, transparent 55%), radial-gradient(circle at bottom right, #811313 0, transparent 55%);
    opacity: 0.6;
    z-index: 0;
}

/* ensure slider content is above background shape */
#sp-testimonial-free-10687 {
    position: relative;
    z-index: 1;
}



/* === 2. MAIN CARD STYLE === */
#sp-testimonial-free-10687 .sp-testimonial-item {
    display: flex;
    justify-content: center;
}

#sp-testimonial-free-10687 .sp-testimonial-free {
    position: relative;
    max-width: 1100px;
    width: 100%;
    background: #ffffff;
    padding: 40px 60px 50px 180px; /* space for left image */
    border-radius: 24px;
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.08);
    text-align: left;
    overflow: hidden;
	height: 250px;
}

/* decorative corner lines */
#sp-testimonial-free-10687 .sp-testimonial-free::before,
#sp-testimonial-free-10687 .sp-testimonial-free::after {
    content: "";
    position: absolute;
    width: 70px;
    height: 70px;
    border: 2px solid #811313;
    opacity: 0.8;
    pointer-events: none;
}

#sp-testimonial-free-10687 .sp-testimonial-free::before {
    top: 14px;
    left: 14px;
    border-right: none;
    border-bottom: none;
}

#sp-testimonial-free-10687 .sp-testimonial-free::after {
    bottom: 14px;
    right: 14px;
    border-left: none;
    border-top: none;
}



/* === 3. PROFILE IMAGE ON LEFT (FLOATING CIRCLE) === */
#sp-testimonial-free-10687 .sp-testimonial-client-image {
    position: absolute;
    left: 50px;
    top: 50%;
    transform: translateY(-50%);
}

#sp-testimonial-free-10687 .sp-testimonial-client-image img {
    border-radius: 50%;
    width: 120px;
    height: 120px;
    object-fit: cover;
    border: 5px solid #ffffff;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.2);
}



/* === 4. TEXT & TYPOGRAPHY === */
#sp-testimonial-free-10687 .sp-testimonial-title {
    margin-bottom: 18px;
}

#sp-testimonial-free-10687 .sp-testimonial-post-title {
    font-size: 26px;
    line-height: 1.3;
    margin: 0;
    color: #222222;
    font-weight: 700;
}

#sp-testimonial-free-10687 .sp-testimonial-client-testimonial {
    margin-bottom: 24px;
}

#sp-testimonial-free-10687 .sp-testimonial-content {
    position: relative;
    font-size: 16px;
    line-height: 1.8;
    color: #474747;
}
/* large decorative opening quote */
#sp-testimonial-free-10687 .sp-testimonial-content::before {
    content: "“";
    position: absolute;
    left: -26px;
    top: -45px;
    font-size: 130px;
    line-height: 1;
    color: #8113133b;
    font-family: Georgia, "Times New Roman", serif;
}

/* name & designation */
#sp-testimonial-free-10687 .sp-testimonial-client-name {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 4px;
    color: #222222;
}

#sp-testimonial-free-10687 .sp-testimonial-client-designation {
    font-size: 14px;
    color: #777777;
}

/* stars */
#sp-testimonial-free-10687 .sp-testimonial-client-rating {
    margin: 6px 0 8px;
}

#sp-testimonial-free-10687 .sp-testimonial-client-rating i {
    color: #ffc857;
}



/* === 5. ARROWS & DOTS === */
#sp-testimonial-free-10687 .testimonial-nav-arrow {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid #d0d0d0;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    top: 50%;
    transform: translateY(-50%);
}

#sp-testimonial-free-10687 .testimonial-nav-arrow i {
    font-size: 18px;
}

#sp-testimonial-free-10687 .testimonial-nav-arrow:hover {
    border-color: #fdfaf4;
    box-shadow: 0 10px 20px rgba(0, 160, 223, 0.25);
	background-color: #811313 !important
}

/* pagination bullets */
#sp-testimonial-free-10687 .testimonial-pagination {
    margin-top: 24px;
}

#sp-testimonial-free-10687 .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 5px !important;
    background: #d0d0d0;
    opacity: 1;
    transition: all 0.2s ease;
}

#sp-testimonial-free-10687 .swiper-pagination-bullet-active {
    width: 18px;
    border-radius: 999px;
    background: #811313;
}

#sp-testimonial-free-wrapper-10687 .sp-testimonial-free-section .testimonial-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #811313 !important;
}

/* ==== MOBILE FIX: align card, image, text, arrows & dots ==== */
@media (max-width: 767px) {
    /* reduce outer padding a bit */
    #sp-testimonial-free-wrapper-10687 {
        padding: 40px 0;
    }

    /* make each slide fill nicely and stay centered */
    #sp-testimonial-free-10687 .sp-testimonial-item {
        display: flex;
        justify-content: center;
        padding: 0 18px;
    }

    /* main card: full width, more bottom room for dots */
    #sp-testimonial-free-10687 .sp-testimonial-free {
        padding: 90px 20px 60px;  /* top for image, bottom for bullets */
        margin: 0 auto;
        max-width: 100%;
        text-align: center;
        border-radius: 20px;
    }

    /* image centered above card */
    #sp-testimonial-free-10687 .sp-testimonial-client-image {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    #sp-testimonial-free-10687 .sp-testimonial-client-image img {
        width: 90px;
        height: 90px;
    }

    /* big quote mark centered above text */
    #sp-testimonial-free-10687 .sp-testimonial-content::before {
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
    }

    /* name + designation stacked nicely */
    #sp-testimonial-free-10687 .sp-testimonial-client-name {
        margin-top: 10px;
        font-size: 17px;
    }

    #sp-testimonial-free-10687 .sp-testimonial-client-designation {
        font-size: 13px;
    }

    /* arrows vertically centered outside the card edges */
    #sp-testimonial-free-10687 .testimonial-nav-arrow {
        top: 50%;
        transform: translateY(-50%);
    }

    /* dots below card, not overlapping text */
    #sp-testimonial-free-10687 .testimonial-pagination {
        position: relative;
        margin-top: 14px;
        bottom: auto;
    }
	#sp-testimonial-free-10687 .sp-testimonial-free {
	height: 100%;
}
	
element.style {
}
#sp-testimonial-free-wrapper-10687 .sp-testimonial-free-section .sp-testimonial-client-image img {
    margin-top: 200%;
}
.sp-testimonial-free-section .sp-testimonial-client-testimonial p {
    padding-top: 70px;
}
}
/* ==== MOBILE FIX: show full circular image ==== */
@media (max-width: 767px) {

    /* let the image go outside the card */
    #sp-testimonial-free-10687 .sp-testimonial-free {
        overflow: visible;              /* was hidden */
        padding: 80px 20px 60px;        /* a bit less top padding is okay */
    }

    /* center image above card and DON'T push it halfway inside */
    #sp-testimonial-free-10687 .sp-testimonial-client-image {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%, -55%);  /* moves it slightly up, fully visible */
    }

    #sp-testimonial-free-10687 .sp-testimonial-client-image img {
        width: 90px;
        height: 90px;
        border-radius: 50%;
        object-fit: cover;
    }
}
/************Faculty Page *************/
/* ========== PGCE FACULTY – DIAGONAL EDGE CARDS (NOT OVAL) ========== */

.faculty-outer {
  padding: 30px 20px;
  background: #faf7f2;
}

/* Equal-height structure */
.faculty-outer .elementor-inner-column,
.faculty-outer .elementor-widget-wrap {
  display: flex;
}
.faculty-outer .pgce-faculty .elementor-widget-container,
.faculty-outer .pgce-faculty .elementor-image-box-wrapper {
  height: 100%;
}

/* ===== CARD ===== */
.faculty-outer .pgce-faculty .elementor-image-box-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 22px 20px;
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(0,0,0,0.10);
  overflow: hidden;
  transition: 0.25s ease;
}

/* diagonal accent corner */
.faculty-outer .pgce-faculty .elementor-image-box-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  border-width: 0 80px 80px 0;
  border-style: solid;
  border-color: transparent #f28b30 transparent transparent;
  opacity: 0.25;
  z-index: 0;
}

/* hover effect */
.faculty-outer .pgce-faculty .elementor-image-box-wrapper:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 35px rgba(0,0,0,0.18);
}

/* ===== IMAGE ===== */
.faculty-outer .pgce-faculty .elementor-image-box-img {
  flex: 0 0 110px;
  width: 110px;
  height: 110px;
  margin: 0;
  border-radius: 10px; /* simple rectangle with slight rounding */
  overflow: hidden;
  background: #fff;
  box-shadow: 0 4px 14px rgba(0,0,0,0.15);
}

.faculty-outer .pgce-faculty .elementor-image-box-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.faculty-outer.faculty-even .pgce-faculty .elementor-image-box-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    border-width: 0 80px 80px 0;
    border-style: solid;
    border-color: transparent #811313 transparent transparent;
    opacity: 0.25;
    z-index: 0;
}
/* ===== TEXT ===== */
.faculty-outer .pgce-faculty .elementor-image-box-content {
  z-index: 5;
}

.faculty-outer .pgce-faculty .elementor-image-box-title {
  font-size: 18px;
  margin: 0 0 4px;
  font-weight: 700;
  color: #8b1d2c;
}

.efaculty-outer .pgce-faculty .elementor-image-box-description {
  margin: 0;
  font-size: 13px;
  color: #333;
}

/* subject line as a small tag */
.faculty-outer .pgce-faculty .elementor-image-box-description br + * {
  display: inline-block;
  margin-top: 6px;
  padding: 3px 8px;
  background: rgba(139,29,44,0.08);
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #8b1d2c;
}

/* spacing fix for mobile */
@media (max-width: 767px) {
  .faculty-outer .elementor-inner-column,
  .faculty-outer .elementor-widget-wrap {
    display: block;
  }

  .faculty-outer .pgce-faculty .elementor-image-box-wrapper {
    flex-direction: column;
    text-align: center;
    padding: 24px;
  }

  .faculty-outer .pgce-faculty .elementor-image-box-img {
    margin-bottom: 12px;
  }
}
