/* Optima Font Face Declarations */
@font-face {
  font-family: "Optima";
  src: url("../fonts/OPTIMA.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Optima";
  src: url("../fonts/OPTIMA_B.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Optima";
  src: url("../fonts/Optima Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Optima";
  src: url("../fonts/Optima_Italic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

.navbar-freya.navbar-scrolled{background-color:rgba(0,0,0,.06)!important;backdrop-filter:saturate(120%) blur(4px);transition:background-color .2s ease}

/* Optima Font Family - Applied to All Text */
:root {
  --freya-body-font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --freya-font-sans-serif: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

*, *::before, *::after {
  font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

html, body {
  font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

p, span, div, a, li, ul, ol, td, th, label, input, textarea, button, select {
  font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.navbar, .nav-link, .navbar-brand {
  font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.footer, footer {
  font-family: "Optima", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* Goal, Vision, Mission Card Styles */
.position-relative.overflow-hidden.rounded-3[style*="background-image"] {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.4s ease, background-size 0.6s ease;
  cursor: pointer;
  overflow: hidden;
  background-size: cover !important;
  background-position: center !important;
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"]:hover {
  transform: translateY(-10px) scale(1.02);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
  background-size: 110% !important;
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"]:hover .position-absolute[style*="linear-gradient"] {
  background: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(0,0,0,0.85)) !important;
  transition: background 0.4s ease;
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"]:hover i {
  transform: scale(1.2) rotate(5deg);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"] i {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  display: inline-block;
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"]:hover h5 {
  transform: translateY(-5px);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"] h5 {
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"]:hover p {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.position-relative.overflow-hidden.rounded-3[style*="background-image"] p {
  transition: opacity 0.4s ease, transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

footer.text-center.text-lg-start.text-muted>section.d-flex{padding:.75rem 1.5rem!important}
footer.text-center.text-lg-start.text-muted>section:not(.d-flex){padding:1.5rem 0!important}
footer.text-center.text-lg-start.text-muted>section:not(.d-flex) .mt-5{margin-top:1.5rem!important}
footer.text-center.text-lg-start.text-muted>section:not(.d-flex) .row.mt-3{margin-top:1.25rem!important}
footer.text-center.text-lg-start.text-muted>section:not(.d-flex) .mx-auto.mb-4{margin-bottom:1.5rem!important}
footer.text-center.text-lg-start.text-muted>div.text-center{padding:.75rem 1rem!important}

/* Slider Navigation Arrows - Border, Background & Hover Effects */
.theme-slider .swiper-nav .swiper-button-prev,
.theme-slider .swiper-nav .swiper-button-next {
  background-color: rgba(255, 255, 255, 0.9) !important;
  border: 2px solid rgba(255, 255, 255, 1) !important;
  border-radius: 50% !important;
  width: 50px !important;
  height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s ease !important;
  backdrop-filter: blur(4px) !important;
  transform: translateY(-50%) !important;
}

.theme-slider .swiper-nav .swiper-button-prev {
  left: 1.5rem !important;
}

.theme-slider .swiper-nav .swiper-button-next {
  right: 1.5rem !important;
}

.theme-slider .swiper-nav .swiper-button-prev span,
.theme-slider .swiper-nav .swiper-button-next span {
  color: #1a2b6b !important;
  font-size: 1.2rem !important;
  transition: all 0.3s ease !important;
}

.theme-slider .swiper-nav .swiper-button-prev:hover,
.theme-slider .swiper-nav .swiper-button-next:hover {
  background-color: rgba(255, 255, 255, 1) !important;
  border-color: #1a2b6b !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25) !important;
  transform: translateY(-50%) scale(1.1) !important;
}

.theme-slider .swiper-nav .swiper-button-prev:hover span,
.theme-slider .swiper-nav .swiper-button-next:hover span {
  color: #1a2b6b !important;
  transform: scale(1.2) !important;
}

.theme-slider:hover .swiper-nav .swiper-button-prev,
.theme-slider:hover .swiper-nav .swiper-button-next {
  opacity: 1 !important;
}

/* Prevent arrows from moving on slider hover */
.theme-slider:hover .swiper-nav .swiper-button-prev {
  left: 1.5rem !important;
}

.theme-slider:hover .swiper-nav .swiper-button-next {
  right: 1.5rem !important;
}

/* Ensure slider headings stay on one line */
.theme-slider .swiper-slide h2.text-white {
  white-space: nowrap !important;
}

/* Add border radius to outline white buttons */
.btn.btn-outline-white {
  border-radius: 10px !important;
}

