@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");

:root {
  --primary-font: "Inter", sans-serif;
  --pink-color: #d60081;
  --blue-color: #000225;
  --light-background-color: #fafafa;
  --light-yellow-color: #f7fbf1;
  --body-color: #232323;
}

html {
  scroll-behavior: smooth !important;
}

body {
  font-size: 16px;
  font-family: var(--primary-font);
  font-weight: 400;
  font-style: normal;
}

h1 {
  font-size: clamp(1.75rem, 4vw + 1rem, 50px);
  font-weight: 600;
  margin: 0px;
}

h2 {
  font-size: clamp(1.25rem, 3vw + 0.5rem, 36px);
  margin: 0px;
}
h3 {
  font-size: clamp(1.125rem, 2.5vw + 0.25rem, 28px);
  margin: 0px;
}

h4 {
  font-size: clamp(1rem, 2vw + 0.25rem, 22px);
  margin: 0px;
}

h5 {
  font-size: clamp(0.875rem, 1.5vw + 0.25rem, 18px);
  margin: 0px;
}

h6 {
  font-size: clamp(0.75rem, 1vw + 0.25rem, 16px);
  margin: 0px;
}

p {
  font-size: clamp(14px, 1vw, 16px);
  margin: 0px;
}

a {
  text-decoration: none;
  font-size: clamp(14px, 1vw, 16px);
  margin: 0px;
}
a:focus {
  outline: none !important;
}
.largeMargin {
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}
.marginTopOnly {
  margin-top: 35px !important;
}
.marginBottomOnly {
  margin-bottom: 35px !important;
}
@media (min-width: 1025px) {
  .largeMargin {
    margin-top: 75px !important;
    margin-bottom: 75px !important;
  }
  .marginTopOnly {
    margin-top: 75px !important;
  }
  .marginBottomOnly {
    margin-bottom: 75px !important;
  }
}
@media (min-width: 1400px) {
  .container {
    width: 1380px !important;
  }
}

/* header css */
.master-layout-1 {
  background: transparent !important;
  border-bottom: none !important;
  box-shadow: none !important;
}
body:has(.noBanner) .master-layout-1 {
  background-color: var(--blue-color) !important;
}
.master-layout-1.scrolled-head,
.master-layout-1.scrolled-head-temp {
  backdrop-filter: blur(5px) !important;
  background: #000225ad !important;
}
.master-layout-1 .MyProfile_Member:focus {
  background-color: transparent !important;
  outline: none !important;
  color: #fff !important;
}
.master-layout-1 .MyProfile_Member:focus .MyProfile_Name {
  color: #fff !important;
}
.master-layout-1 #divMainMenu nav #main-menu > li > a {
  text-transform: uppercase !important;
  font-weight: 300 !important;
  letter-spacing: 0.5px !important;
}
.master-layout-1 #divMainMenu nav #main-menu > li > a:hover,
.master-layout-1 #divMainMenu nav #main-menu > li > a.highlighted,
.master-layout-1 #divMainMenu nav #main-menu > li > a.active-link {
  box-shadow: none !important;
  font-weight: bold !important;
}
.master-layout-1 .MyProfile_Member .MyProfile_SignedIn .MyProfile_Name::before,
.master-layout-1
  .MyProfile_Member
  .MyProfile_SignedOut
  .MyProfile_Name::before {
  display: block;
  content: "";
  border-radius: 50%;
  width: 60px;
  height: 60px;
  left: 0;
  z-index: -1;
  transform-origin: top;
  transition: 0.22s ease-out;
  position: absolute;
  top: 50%;
  transform: scale(1) translateY(-50%);
  background-color: var(--pink-color);
}
.master-layout-1 #divMainMenu nav #main-menu > li > a:focus,
.master-layout-1 #divMainMenu nav #main-menu ul a:focus,
.master-layout-1 #divMainMenu nav #main-menu ul ul a:focus,
.master-layout-1 #divMainMenu nav #main-menu ul ul ul a:focus {
  color: #fff !important;
  background-color: transparent !important;
}
.master-layout-1 #divMainMenu nav #main-menu ul a {
  background-color: var(--pink-color) !important;
  color: #fff !important;
}
.fa-plus:before {
  color: var(--pink-color) !important;
}
body:has(.resp-container) .master-layout-1,
body:has(.moduleHeaderWidget) .master-layout-1 {
  background-color: var(--blue-color) !important;
}
@media (min-width: 1025px) {
  .master-layout-1 #divMainMenu nav #main-menu ul {
    top: 80px !important;
  }
  .master-layout-1 .MyProfile_Member .fullView {
    top: 100px !important;
  }
  .master-layout-1.scrolled-head .MyProfile_Member .fullView,
  .master-layout-1.scrolled-head-temp .MyProfile_Member .fullView {
    top: 80px !important;
  }
  .master-layout-1 #divMainMenu nav #main-menu ul a:hover {
    background-color: #fff !important;
    color: var(--body-color) !important;
  }
}

/* FOOTER CSS */

footer {
  background-color: var(--blue-color) !important;
}
footer h3 {
  color: #fff !important;
  text-transform: uppercase !important;
  font-size: 16px !important;
  letter-spacing: 3px !important;
  line-height: 25px !important;
  font-weight: normal !important;
}
footer p {
  color: #fff !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  line-height: 30px !important;
  font-style: normal !important;
}
footer a {
  color: #fff !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  line-height: 30px !important;
  font-style: normal !important;
  text-decoration: none;
}
.footerContainer {
  display: flex;
  flex-direction: column;
}
.ft-first-row {
  padding-top: 50px;
  padding-bottom: 50px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-right: 1px solid #ffffffa6;
  a {
    text-decoration: underline !important;
  }
  h3 {
    margin-top: 20px;
  }
}
.iso-image {
  width: 85px !important;
}
.ft-second-row {
  border-top: 1px solid #ffffffa6;
  border-bottom: 1px solid #ffffffa6;
  display: flex;
  justify-content: space-between;
  align-items: start;
  width: 100% !important;
}
.ft-second-row > div {
  flex: 1;
  padding: 50px;
}
.ft-first-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
  text-align: center;
}
.ft-socials {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  img {
    height: 25px !important;
    width: 25px !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1);
    transition: transform 0.5s linear;
    transform: scale(1);
  }
  img:hover {
    transform: scale(1.05);
  }
}
.ft-second-col {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: center;
  gap: 15px;
  text-align: center;
  border-left: 1px solid #ffffffa6;
  border-right: 1px solid #ffffffa6;
  min-height: 420px !important;
  h3 {
    margin-bottom: 15px;
  }
  a:hover {
    text-decoration: underline !important;
  }
}
.ft-third-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 30px;
  text-align: center;
  a:hover {
    text-decoration: underline !important;
  }
}
.ft-third-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px !important;
  padding-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ffffffa6;
}
.ft-fourth-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100% !important;
  padding-top: 30px;
  padding-bottom: 30px;
  a:hover {
    text-decoration: underline !important;
  }
}
@media (max-width: 768px) {
  .ft-second-row {
    flex-direction: column;
    align-items: center;
    padding: 0px !important;
    border-top: 1px solid #ffffffa6;
    border-bottom: 1px solid #ffffffa6;
  }
  .ft-second-col {
    border-top: 1px solid #ffffffa6;
    border-bottom: 1px solid #ffffffa6;
    min-height: auto !important;
  }
  .ft-second-row > div {
    padding: 30px;
    width: 100%;
    border-left: none !important;
    border-right: none !important;
  }
  .ft-third-row {
    flex-direction: column;
    padding: 20px;
    text-align: center;
    gap: 20px;
  }
  .ft-fourth-row {
    flex-direction: column;
    text-align: center;
  }
  .ft-second-row.container {
    flex-direction: column !important;
  }
  .ft-first-row {
    border-bottom: 1px solid #ffffffa6 !important;
    border-right: none !important;
  }
}
/* BANNER  */
.banner-bg {
  margin-top: -120px !important;
}
@media (min-width: 1024px) {
  .banner-bg {
    height: 100vh !important;
  }
}
.banner-bg .container {
  width: 100% !important;
}
.banner-bg .col-sm-8 {
  width: 100% !important;
  text-align: start !important;
  margin-left: 10vw !important;
}
.banner-bg .cho-hero-textwidget-bg {
  filter: brightness(0.5) !important;
}
.banner-bg h2 {
  font-size: clamp(36px, 6vw, 100px) !important;
  font-weight: 100 !important;
  margin-bottom: 30px !important;
  letter-spacing: clamp(0px, -0.5vw, -3px) !important;
  max-width: 40vw !important;
  margin-top: 100px !important;
}
.banner-bg h4 {
  font-size: clamp(18px, 3vw, 26px) !important;
  letter-spacing: normal !important;
  line-height: 40px !important;
  font-weight: 200 !important;
  max-width: 35vw;
}
.banner-bg a {
  background: none !important;
  border: none !important;
  padding: 0px !important;
  margin-left: 10px !important;
  font-size: 20px;
  box-shadow: none !important;
}
.banner-bg a::before {
  display: block;
  content: "";
  border-radius: 50%;
  width: 60px;
  height: 60px;
  left: 0;
  z-index: -1;
  transform-origin: top;
  transition: 0.22s ease-out;
  position: absolute;
  top: 96.5%;
  transform: scale(1) translateY(-50%);
  background-color: var(--pink-color);
}
.banner-bg a:hover::before {
  transform: scale(1.3) translateY(-50%);
}
.cho-hero-textwidget .banner-btn {
  justify-content: start;
  margin-top: 25px;
}
.cho-hero-textwidget .banner-btn .btn {
  width: auto !important;
}
@media (max-width: 767px) {
  .banner-bg a:hover::before {
    transform: scale(1) translateY(-50%);
  }
  .banner-bg a {
    color: var(--body-color) !important;
    font-size: 16px !important;
  }
  .banner-bg h2 {
    margin-bottom: 15px !important;
    max-width: 100% !important;
    margin-top: 0px !important;
  }
  .banner-bg h4 {
    line-height: 30px !important;
    max-width: 100% !important;
  }
  .banner-bg .col-sm-8 {
    margin-left: 0px !important;
  }
}
/* TEXT AREA STYLING */
.textAreaStyling {
  h1 {
    font-size: clamp(36px, 5vw, 75px) !important;
    font-weight: 100 !important;
    text-transform: capitalize !important;
    margin-bottom: 20px !important;
  }
  h2 {
    font-size: clamp(30px, 5vw, 50px) !important;
    font-weight: 100 !important;
    text-transform: capitalize !important;
  }
  h3 {
    font-size: clamp(26px, 5vw, 44px) !important;
    font-weight: 100 !important;
    text-transform: capitalize !important;
  }
  p {
    line-height: 30px !important;
  }
}
/* QUICK LINKS */
.quickLinks {
  background-color: var(--light-yellow-color) !important;
  padding: 35px !important;
  border-radius: 20px !important;
}
.quickLinks h2 {
  font-size: clamp(30px, 5vw, 50px) !important;
  font-weight: 100 !important;
  text-transform: capitalize !important;
  margin-bottom: 30px !important;
}
.content-quicklink-menu .content-quicklink-menu-list {
  background: none !important;
}
.content-quicklink-menu .content-quicklink-menu-list p {
  padding: 0px !important;
  font-weight: 300 !important;
  font-size: clamp(16px, 1vw, 18px) !important;
}
.content-quicklink-menu .content-quicklink-menu-list li {
  margin-bottom: 15px !important;
}
.content-quicklink-menu .content-quicklink-menu-list a {
  border-bottom: 1px solid #bdbdbd !important;
  padding-bottom: 10px !important;
}
.content-quicklink-menu-a:hover {
  border: none !important;
}
.content-quicklink-menu .content-quicklink-menu-a:hover {
  background: transparent !important;
  border-bottom: 1px solid var(--pink-color) !important;
}
.content-quicklink-menu .content-quicklink-header {
  padding: 0px !important;
}
/* UPCOMING EVENTS */
.upcoming-event-widget .CalAtGlance .AGTitle.normal-font,
.upcoming-event-widget .CalAtGlance .title-row.normal-font {
  font-size: clamp(30px, 5vw, 50px) !important;
  font-weight: 100 !important;
  text-transform: capitalize !important;
  margin-bottom: 30px !important;
}
.latest-news-link {
  background-color: #d60081 !important;
  color: #fff !important;
  padding: 20px 40px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  font-size: 16px !important;
}
.latest-news-link:hover {
  background-color: rgb(255, 10, 157.6869158879) !important;
  color: #fff !important;
}
.latest-news-link:before {
  --line-size: 64px;
  display: block;
  content: "";
  right: calc(100% - var(--line-size, 64px) / 2);
  height: 1px;
  width: var(--line-size, 64px);
  background-color: #000;
  transition: 0.22s ease-out;
  position: absolute;
  top: 35px;
  transform: translateY(-50%);
}
.latest-news-link:hover:before,
.latest-news-link:focus:before {
  right: 0px;
  left: 170px !important;
  transition: 0.22s ease-out;
}
.upcoming-event-widget .CalAtGlance .upcoming-event-wrapper .teaser-img-div {
  height: auto !important;
}
.upcoming-event-widget .CalAtGlance .events-row,
.upcoming-event-widget .CalAtGlance .AGScroll,
.upcoming-event-widget .CalAtGlance .AGCont {
  margin-top: -20px !important;
}
.col-fw .upcoming-event-widget .CalAtGlance .mini-title-row {
  margin-top: 30px !important;
}
.col-fw .upcoming-event-widget .CalAtGlance .upcoming-event-wrapper img {
  border-radius: 10px !important;
}
.news-widget.theme1 a:hover:not(.latest-news-link) {
  color: var(--pink-color) !important;
}
.upcoming-event-widget
  .CalAtGlance
  .AGScroll
  .upcoming-event-pagination
  a:hover,
.upcoming-event-widget .CalAtGlance .AGCont .upcoming-event-pagination a:hover {
  background-color: var(--light-yellow-color) !important;
}
.news-widget .latest-news-link:hover {
  color: #fff !important;
}
@media (max-width: 768px) {
  .latest-news-link:before {
    display: none !important;
  }
}
/* TEXT AREA INTRO */
.textAreaIntro p {
  width: 65% !important;
  margin: auto !important;
}
.textAreaIntro a.e3-button {
  width: auto;
  padding: 0;
  background-color: unset !important;
  border: none !important;
  box-shadow: unset !important;
  color: #000 !important;
  position: relative;
  z-index: 2;
  text-decoration: underline;
}

.textAreaIntro a.e3-button::before {
  content: "";
  position: absolute;
  left: -25px;
  top: 50%;
  transform: translateY(-50%) scale(1);
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: var(--pink-color);
  transition: 0.22s ease-out;
  z-index: -1;
}

.textAreaIntro a.e3-button:hover::before {
  transform: translateY(-50%) scale(1.3);
}
@media (max-width: 768px) {
  .textAreaIntro p {
    width: 100% !important;
  }
}
/* icon and text widget */
.iconText h3 {
  font-weight: 200 !important;
  margin-bottom: 10px !important;
}
.iconText img {
  background-color: var(--pink-color);
  margin-top: 10px;
  margin-bottom: 20px;
  padding: 5px;
  border-radius: 5px;
}
@media (max-width: 768px) {
  .iconText img {
    margin-top: 30px !important;
  }
}
/* Blue section */
.blueSection {
  padding-top: 70px !important;
  padding-bottom: 70px !important;
  background-color: var(--blue-color) !important;
}
.blueSection > div {
  background-color: var(--blue-color) !important;
}
.blueSection h2 {
  margin-bottom: 20px;
  color: #fff !important;
}
.blueSection p {
  width: 65%;
  color: #fff !important;
  margin: auto;
}
.blueSection div a {
  font-size: 20px !important;
  color: #fff !important;
  text-decoration: none !important;
}
.blueSection div a:after {
  position: absolute;
  display: block;
  content: "";
  top: 85%;
  left: 0;
  right: 0;
  margin: auto !important;
  bottom: 0;
  height: 1px;
  background-color: #fff;
  transition: 0.22s ease-out;
  transform-origin: 50% 50%;
  width: 100px;
}
.blueSection div a:hover:after {
  transform: scaleX(0.1);
}
.blueSection .e3-table-wrap.col-sm {
  padding-top: 30px !important;
  padding-bottom: 30px !important;
}
@media (max-width: 768px) {
  .blueSection p {
    width: 100%;
  }
  .blueSection {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}
/* Testimonials */
#quote-left {
  position: absolute;
  left: 28%;
  bottom: 25%;
  z-index: 2;
}
#quote-right {
  position: absolute;
  right: 10%;
  bottom: 5%;
  z-index: 2;
}
#testimonial-slider img {
  border-radius: 50% !important;
  margin: auto !important;
}
@media (min-width: 768px) {
  #testimonial-slider .basic-text-area .col-sm {
    max-width: 65% !important;
    margin: auto !important;
  }
}
/* EXPANDABLE CONTENT */
.expandable-content-widget .expandable-content-heading {
  background-color: var(--blue-color) !important;
}
.expandable-content-widget .expandable-content-heading a {
  color: #fff !important;
}
.expandable-content-widget .expandable-content-link:hover,
.expandable-content-widget .expandable-content-link:focus {
  background-color: var(--blue-color) !important;
}
.expandable-content-widget .expand-arrow {
  background-color: var(--pink-color) !important;
}
/* COUNTRY CARD CSS */
.countryCard .e3-table-wrap {
  background-color: #f7fbf1;
  margin: 10px;
  padding: 30px;
  border-radius: 10px;
  box-shadow:
    0 2px 4px rgba(0, 0, 0, 0.08),
    0 8px 20px rgba(0, 0, 0, 0.12);
  padding-bottom: 80px;
}
.countryCard .e3-table-wrap img {
  width: 150px;
  height: 100px;
  object-fit: contain;
  filter: brightness(0) invert(0);
}
.countryCard .e3-table-wrap h2 {
  font-weight: 300;
  margin-bottom: 10px;
  font-size: 32px;
}
.countryCard .e3-table-wrap h3 {
  font-weight: 200;
  margin-bottom: 10px;
  font-size: 26px;
}
.countryCard .e3-table-wrap a {
  width: auto;
  padding: 0;
  background-color: unset !important;
  border: none !important;
  box-shadow: unset !important;
  color: #000 !important;
  position: relative;
  z-index: 2;
  text-decoration: underline;
  top: 30px;
}

.countryCard .e3-table-wrap a::before {
  content: "";
  position: absolute;
  left: -15px;
  top: 50%;
  transform: translateY(-50%) scale(1);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: var(--pink-color);
  transition: 0.22s ease-out;
  z-index: -1;
}
.countryCard .e3-table-wrap a:hover::before {
  transform: translateY(-50%) scale(1.3);
}
.countryCard .e3-table-wrap:has(a) {
  visibility: visible;
}
.countryCard .e3-table-wrap {
  visibility: hidden;
}
/* Contact Card */
.contact-card-widget .staff-category-title.department-title-alignment-center {
  display: none !important;
}
.div-add-to-contact {
  background-color: var(--pink-color) !important;
  color: #fff !important;
}
/* TITLE AND SUMMARY CONTENT */
/*--------------------------- TITLE SUMMARY ----------------*/
section[id*="TitleAndSummary"].basic-block:not(.background-image)
  > div:not(.inner-wrap)
  .img-block:before {
  content: "";
  position: absolute;
  width: 97%;
  height: 95%;
  border: 2px solid #fff;
  top: 2.5%;
  left: 1.5%;
}

section[id*="TitleAndSummary"] .e3-button {
  background-color: transparent !important;
  border: 1px solid var(--blue-color) !important;
  color: var(--blue-color) !important;
}

section[id*="TitleAndSummary"] .e3-button:hover {
  background-color: var(--pink-color) !important;
  color: #fff !important;
  border: 1px solid var(--pink-color) !important;
}

@media (min-width: 768px) {
  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap) {
    display: flex;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    .basic-block-wrapper {
    align-items: stretch !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    .text-block {
    padding: 0 !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    .text-block-wrapper {
    height: 100% !important;
    width: 100% !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 !important;
    padding: 20px !important;
    padding-left: 6rem !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    .text-block-wrapper
    *:not(h2[id*="TitleAndSummary"]) {
    max-width: 36vw !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    h2[id*="TitleAndSummary"] {
    position: absolute;
    transform: rotate(270deg);
    display: block;
    width: 70vh;
    text-align: center !important;
    font-size: 1.5rem !important;
    color: #c8c8c8;
    opacity: 0.75;
    right: -30vh !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    div.basic-block-wrapper:not(.img-right)
    .text-block-wrapper {
    padding-left: 4vw !important;
    padding-right: 6rem !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    .img-right
    h2[id*="TitleAndSummary"] {
    left: -30vh !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    :is(.btn, .e3-button) {
    width: max-content !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image).theme4
    > div:not(.inner-wrap)
    h2[id*="TitleAndSummary"] {
    color: #333333 !important;
  }
}

@media (min-width: 1440px) {
  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    .text-block-wrapper {
    padding: 15% !important;
    padding-left: 7rem !important;
  }

  section[id*="TitleAndSummary"].basic-block:not(.background-image)
    > div:not(.inner-wrap)
    h2[id*="TitleAndSummary"] {
    font-size: 2.25rem !important;
  }
}
.post-card .img-block {
  min-height: 30vw !important;
}
.post-card h2 {
  font-weight: 200 !important;
}
.post-card h4 {
  font-weight: 200 !important;
  margin: 15px 0px !important;
}
