.academy-main .hero-section {
  background: radial-gradient(49.91% 49.91% at 50% 50.09%, rgba(95, 37, 158, 0.2) 0%, rgba(70, 24, 114, 0.2) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)),
    url('../images/academy/banner.jpg') no-repeat center center;
}

.academy-terminology-main .hero-section {
  background: radial-gradient(49.91% 49.91% at 50% 50.09%, rgba(95, 37, 158, 0.2) 0%, rgba(70, 24, 114, 0.2) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)),
    url('../images/academy/banner.jpg') no-repeat center center;
}

.common-section-image {
  width: 100%;
  height: 285px;
  object-fit: cover;
  object-position: center center;
}

.heading-analysis {
  color: #212121;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.2;
  margin-bottom: 8px;
}

.heading-analysis-subheading {
  color: #6c6c6c;
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
  margin-bottom: 24px;
}

.latest-release-section {
  background: linear-gradient(to top left, #f4f2f9, #ffffff);
  padding-top: 30px;
  padding-bottom: 30px;
}

.release-box {
  background-color: #fff;
  padding: 20px;
  border-radius: 12px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: all 0.3s ease;
  border: 1px solid #e0e0e0;
}

.release-box.active {
  background: #5F259E;
  color: #fff;
  border-color: #5F259E;
}

.release-box:hover {
  color: #fff;
  background: #5F259E;
  border-color: #5F259E;
}

.release-box .tag {
  font-size: 12px;
  font-weight: 500;
  color: #6c6c6c;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.release-box.active .tag,
.release-box:hover .tag {
  color: #e0d4fd;
}

.release-box .title {
  margin-bottom: 12px;
  line-height: 28px;
  font-weight: 700;
  font-size: 18px;
  color: #212121;
}

.release-box.active .title,
.release-box:hover .title {
  color: #fff;
}

.release-box .date {
  color: #999;
  font-weight: 500;
  font-size: 14px;
  line-height: 26px;
}

.release-box.active .date,
.release-box:hover .date {
  color: #fff;
}

.white-card {
  background-color: #fff;
  padding: 30px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.section-title-right {
  font-size: 24px;
  font-weight: 700;
  color: #212121;
  margin-bottom: 20px;
}

.trending-list {
  padding-left: 0;
}

.trending-list li {
  font-size: 15px;
  color: #4d4d4d;
  margin-bottom: 12px;
  line-height: 1.5;
}

.trending-list li:last-child {
  margin-bottom: 0;
}

.sentiment-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}

.sentiment-item .currency-pair-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 5px;
}

.sentiment-item .currency-pair {
  font-size: 16px;
  font-weight: 600;
  color: #212121;
}

.btn-trade {
  font-size: 12px;
  font-weight: 500;
  text-transform: uppercase;
}

.sentiment-data {
  display: flex;
  justify-content: space-between;
  margin-bottom: 8px;
}

.sentiment-label {
  font-size: 13px;
  color: #6c6c6c;
}

.sentiment-label-buy {
  color: #034854;
  font-weight: 500;
}

.sentiment-label-sell {
  color: #f44040;
  font-weight: 500;
}

.sentiment-bar-wrapper {
  display: flex;
  width: 100%;
  height: 20px;
  overflow: hidden;
  gap: 3px;
}

.sentiment-bar {
  height: 100%;
}

.sentiment-bar.buy-bar {
  background-color: #6AD36F;
}

.sentiment-bar.sell-bar {
  background-color: #F06161;
}

.content-text p {
  font-size: 14px;
  color: #4d4d4d;
  margin-bottom: 14px;
  line-height: 1.6;
}

.images-with-content-card-group {
  display: flex;
  justify-content: space-between;
  gap: 24px;
}

.terminology-section {
  background: linear-gradient(to bottom right, #ffffff, #f4f2f9);
  padding-top: 0px;
  padding-bottom: 60px;
}

.terminology-section h2 {
  color: #212121;
  font-size: 32px;
  font-weight: 700;
}

.terminology-section small {
  color: #6c6c6c;
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 40px !important;
}

.terminology-character-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-bottom: 50px;
}

.terminology-character-group .terminology-character {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 100%;
  color: #212121;
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 500;
  font-size: 24px;
  line-height: 24px;
  text-transform: uppercase;
}

.terminology-character-group .terminology-character:hover {
  background-color: #5F259E;
  color: #fff;
  border-color: #5F259E;
}

.terminology-character-group .terminology-character.active {
  background-color: #5F259E;
  color: #fff;
  border-color: #5F259E;
}

.terminology-tag {
  display: inline-flex;
  align-items: center;
  padding: 20px;
  border-radius: 100px;
  background-color: #5F259E1A;
  color: #5F259E;
  cursor: pointer;
  transition: all 0.3s ease;
  white-space: nowrap;
  font-weight: 500;
  font-size: 24px;
  line-height: 24px;
}

.terminology-tag:hover,
.terminology-tag.active {
  background-color: #5F259E;
  color: #fff;
}

.terminology-tags-section .row {
  justify-content: center;
}

.academy-main .hero-section h1 {
  font-size: 3.5rem;
  font-weight: 700;
}

.academy-main .hero-section p {
  font-size: 1.5rem;
  font-weight: 300;
}

.terminology-details-section {
  background-color: #f8f8f8;
  padding: 30px 0;
}

.section-title-center {
  font-size: 36px;
  font-weight: 700;
  color: #212121;
  margin-bottom: 50px;
}

.terminology-character-detail-page-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
  background: #FBF5FF;
}

.terminology-character-detail-page-group .terminology-character {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  border-radius: 100%;
  color: #5F259E;
  font-size: 24px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
}

.terminology-character-detail-page-group .terminology-character:hover {
  background-color: #5F259E;
  color: #fff;
  border-color: #5F259E;
}

.terminology-character-detail-page-group .terminology-character.active {
  background-color: #5F259E;
  color: #fff;
  border-color: #5F259E;
}

.terminology-letter-heading {
  color: #5F259E;
  font-weight: 700;
  font-size: 32px;
  line-height: 50px;
  text-transform: capitalize;
  background-color: white;
  margin-bottom: 0;
  border-bottom: 1px solid #E2E2E2;
  padding: 20px 60px;
}

.terminology-card {
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  padding: 20px 60px;
  border-bottom: 1px solid #E2E2E2;
}

.terminology-card-header {
  cursor: pointer;
  background-color: #fff;
  transition: background-color 0.3s ease;
  padding: 0;
}


.terminology-short-description {
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
  color: #212121;
  display: block;
  margin-top: 10px;
}

.expand-collapse-btn {
  width: 40px;
  height: 40px;
  border: none;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s ease, transform 0.3s ease;
}

.terminology-card-header[aria-expanded="false"] .expand-collapse-btn {
  background-color: #5F259E;
}

.terminology-card-header[aria-expanded="false"] .expand-collapse-btn .fa-plus {
  display: block;
  color: #fff;
  font-size: 20px;
}

.terminology-card-header[aria-expanded="false"] .expand-collapse-btn .fa-minus {
  display: none;
}

.terminology-card-header[aria-expanded="true"] .expand-collapse-btn {
  background-color: #E4B9FF;
}

.terminology-card-header[aria-expanded="true"] .expand-collapse-btn .fa-minus {
  display: block;
  color: #5F259E;
  font-size: 20px;
}

.terminology-card-header[aria-expanded="true"] .expand-collapse-btn .fa-plus {
  display: none;
}

.terminology-card-header[aria-expanded="true"] .expand-collapse-btn {
  transform: rotate(180deg);
}


.terminology-card-body {
  color: #4d4d4d;
  font-size: 15px;
  line-height: 1.6;
  padding-top: 20px;
  padding-bottom: 20px;
}

.terminology-card-body p:last-child {
  margin-bottom: 0;
}

.start-trading-pipze {
  margin-top: 25px;
}

.start-trading-pipze .pipze-title {
  font-size: 22px;
  font-weight: 700;
  color: #212121;
  margin-bottom: 15px;
}

.start-trading-pipze p {
  color: #212121;
  margin-bottom: 10px;
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
}

.start-trading-pipze p:last-child {
  margin-bottom: 0;
}

/* Course page style start  */
.academy-courses-main .hero-section {
  background: radial-gradient(49.91% 49.91% at 50% 50.09%, rgba(95, 37, 158, 0.2) 0%, rgba(70, 24, 114, 0.2) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)),
    url('../images/academy/banner.jpg') no-repeat center center;
}

.academy-courses-main .hero-section h1 {
  font-size: 3.5rem;
  font-weight: 700;
}

.academy-courses-main .hero-section p {
  font-size: 1.5rem;
  font-weight: 300;
}

.course-card {
  padding: 30px;
  border-radius: 10px;
  border-bottom-width: 5px;
}

.course-card:hover {
  border-bottom: 5px solid #5F259E;
  background: #FBF5FF;
}

.course-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.course-card-body {
  padding-left: 60px;
}

.course-title {
  color: #212121;
  margin-bottom: 10px;
  font-weight: 600;
  font-size: 22px;
  line-height: 100%;
}

.course-description {
  color: #212121;
  margin-bottom: 20px;
  font-weight: 400;
  font-size: 18px;
  line-height: 28px;

}

.course-meta {
  color: #212121;
  font-weight: 400;
  font-size: 18px;
  line-height: 28px;
}

.course-meta-item {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.course-meta-item i {
  color: #5F259E;
  /* Purple color for icons */
  margin-right: 8px;
  font-size: 16px;
}

/* Course page style end  */

/* News and Event page style start  */
.academy-news-and-event-main .hero-section {
  background:  url('../images/academy/news_and_event/banner-hero.png') no-repeat center center;
}

.upcoming-event-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}

.upcoming-event-section .section-title {
  font-weight: 700;
  font-size: 22px;
  color: #212121;
}

.upcoming-event-section-card {
  background: #FFFFFF;
  border: 1px solid #E2E2E2;
  border-radius: 10px;
  overflow: hidden;
  color: #212121;
}

.upcoming-event-section-card-body {
  padding: 20px;
}

.upcoming-event-section-card-body .upcoming-event-section-card-title {
  font-weight: 600;
  font-size: 22px;
  line-height: 32px;

}

.upcoming-event-section-card-content {
  font-weight: 400;
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 15px;
}

.upcoming-event-section-card-body .read-more-link {
  color: #5d34b0;
  border-bottom: 1px solid #5d34b0;
  font-weight: 500;
}

/* News and Event page style end  */
/* Ebooks section style start  */
.academy-ebooks-main .hero-section {
  background: radial-gradient(49.91% 49.91% at 50% 50.09%, rgba(95, 37, 158, 0.2) 0%, rgba(70, 24, 114, 0.2) 100%),
    linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), url('../images/academy/ebooks/banner.png') no-repeat center center;
}

.partner-program-number-details-section {
  padding: 60px 0;
}

.partner-program-number-details-section .partner-program-number-card-group .partner-program-number-card {
  padding: 20px;
  border-radius: 10px;
  background: #FFFFFF;
  box-shadow: 0px 0px 10px #ccc;
}

.partner-program-number-details-section .partner-program-number-card-group .partner-program-number-card-title {
  font-weight: 500;
  font-size: 18px;
  color: #A49FA6;
}

.partner-program-number-details-section .partner-program-number-card-group .partner-program-number-card-number {
  color: #5F259E;
  font-weight: 700;
  font-size: 32px;
}

.partner-program-number-details-section .partner-program-number-card-group .partner-program-number-card-info {
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
  color: #212121;

}
/* Existing styles you provided */
.ib-ebook-detail-section .section-title {
  font-size: 28px;
  font-weight: 700;
  color: #121212;
}

.ib-ebook-detail-section .section-subtitle {
  font-size: 18px;
  margin-bottom: 1rem;
}

.ib-ebook-point {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 1.5rem;
}

.ib-ebook-point .title {
  font-weight: 600;
  margin: 0 0 5px;
}

.ib-ebook-point .desc {
  font-size: 14px;
  color: #444;
  margin: 0;
}

.ib-form-hero-section {
  position: relative;
  overflow: hidden;
  /* Added/Modified for vertical centering and spacing */
  display: flex; /* Make it a flex container */
  align-items: center; /* Vertically center children */
  min-height: 80vh; /* Give it a minimum height to enable centering */
  padding: 80px 0; /* Add top/bottom padding to ensure content isn't squished */
}

.ib-form-hero-bg {
  position: absolute;
  inset: 0;
  background-image: url('../images/academy/ebooks/banner.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 1;
  height: 550px;
}

.ib-form-card {
  max-width: 632px;
  background-color: white;
  border-radius: 16px;
  box-shadow: 20px 10px 35px 0px #00000017;
  /* Ensure it doesn't take full width if inside a smaller column */
  width: 100%;
}

.ib-form-title {
  color: #5F259E;
  font-weight: 800;
  font-size: 38px;
  line-height: 63px;
}

.form-control,
.form-select {
  border-radius: 8px;
  height: 55px;
}

.ib-form-download-btn {
  width: 100%;
  padding-top: 24px;
  padding-right: 40px;
  padding-bottom: 24px;
  padding-left: 40px;
  border-radius: 16px;
  background: #5F259E;
  color: white;
  font-weight: 600;
  font-size: 22px;
  line-height: 28px;
  text-align: center;
}

.z-2 {
  position: relative;
  z-index: 2;
}
/* Ebooks section style end  */

/* Responsive Style Start */
@media (max-width: 575px) {

  /* Terminology page style start  */
  .terminology-card .terminology-tag {
    padding: 10px;
    font-weight: 600;
    font-size: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .expand-collapse-btn {
    width: 30px;
    height: 30px;
  }

  /* Terminology page style end */
}

@media (max-width: 767px) {

  /* Terminology page style start */
  .terminology-letter-heading,
  .terminology-card {
    padding: 20px;
  }

  /* Terminology page style end */

  /* Course page style start  */
  .course-card-img {
    height: 200px;
    border-radius: 12px 12px 0 0;
  }

  /* Course page style end  */
}

@media (max-width: 991px) {

  /* Academy overview style start */
  .images-with-content-card-group {
    flex-direction: column;
  }

  .images-with-content-card-group .images-with-content-card .images-with-content-card-content {
    padding: 20px;
  }

  .images-with-content-card-group .images-with-content-vertical-card .images-with-content-card-content {
    margin: auto !important;
  }

  /* Academy overview style end */

  /* Courses Page Style Start  */
  .course-card-body {
    padding: 30px 15px 0 15px;
  }

  .course-card-body {
    padding-left: 20px;
  }

  /* Courses Page Style End  */
}

/* Responsive Style End */