@font-face {
  font-family: 'IRANSansX';
  src: url('/Fonts/IRANSansXFaNum-Regular.woff2') format('woff2'),
       url('/Fonts/IRANSansXFaNum-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'IRANSansX';
  src: url('/Fonts/IRANSansXFaNum-Bold.woff2') format('woff2'),
       url('/Fonts/IRANSansXFaNum-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'IRANSansX-Display';
  src: url('/Fonts/IRANSansX-Bold.woff2') format('woff2'),
       url('/Fonts/IRANSansX-Bold.woff') format('woff');
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

html[dir="rtl"] body {
  font-family: 'IRANSansX', sans-serif;
}

html[dir="rtl"] h1, html[dir="rtl"] h2, html[dir="rtl"] h3,
html[dir="rtl"] h4, html[dir="rtl"] h5, html[dir="rtl"] h6,
html[dir="rtl"] .display-1, html[dir="rtl"] .display-2,
html[dir="rtl"] .display-3, html[dir="rtl"] .display-4,
html[dir="rtl"] .display-5, html[dir="rtl"] .display-6 {
  font-family: 'IRANSansX-Display', sans-serif !important;
}

html[dir="rtl"] .display-1,
html[dir="rtl"] .display-2,
html[dir="rtl"] .display-3,
html[dir="rtl"] .display-4,
html[dir="rtl"] .display-5,
html[dir="rtl"] .display-6 {
  font-size: 2rem !important;
}

html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Pill-style language switcher (top bar) */
.lang-pill {
  display: inline-flex;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  padding: 3px;
  gap: 2px;
}

.lang-pill a {
  padding: 4px 14px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  transition: all 0.2s ease;
  line-height: 1.4;
}

.lang-pill a:hover {
  color: #fff;
}

.lang-pill a.active {
  background: var(--bs-primary);
  color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

/* Footer: match template body color (#8d8d8d) since bootstrap.rtl.min.css
   sets a too-dark default (#212529) that's invisible on the dark footer bg */
.footer .footer-item a,
.footer .footer-item p,
.footer .footer-item {
  color: #8d8d8d;
}

.footer .footer-item a:hover {
  color: var(--bs-primary);
}

/* ===== Site Theme: blue background + yellow text ===== */
:root {
  --theme-bg-blue: rgb(170, 235, 255);
  --theme-bg-blue-dark: rgb(89, 130, 143);
  --theme-text-yellow: rgb(255, 203, 9);
  --bs-primary: rgb(255, 203, 9);
  --bs-primary-rgb: 255, 203, 9;
}

/* Top bar — darker shade of the navbar blue */
.top-bar {
  background-color: var(--theme-bg-blue-dark) !important;
  color: #fff !important;
}
.top-bar a, .top-bar span, .top-bar i, .top-bar small, .top-bar p,
.top-bar .text-light, .top-bar .text-primary {
  color: #fff !important;
}
.top-bar .lang-pill a {
  color: rgba(255, 255, 255, 0.75) !important;
}
.top-bar .lang-pill a.active {
  background: var(--theme-text-yellow) !important;
  color: #0a3d5e !important;
}

/* Social-media icons inside the topbar buttons should be yellow on white */
.top-bar a.btn.btn-light i {
  color: var(--theme-text-yellow) !important;
}
.top-bar a.btn.btn-light:hover i {
  color: #0a3d5e !important;
}

/* Navbar */
.navbar.navbar-light.bg-white {
  background-color: var(--theme-bg-blue) !important;
}
.navbar .nav-link,
.navbar .navbar-brand {
  color: var(--theme-text-yellow) !important;
}
.navbar .nav-link:hover,
.navbar .nav-link.active {
  color: #b58a00 !important;
  background-color: transparent;
}
.navbar .dropdown-menu {
  background-color: var(--theme-bg-blue);
}
.navbar .dropdown-item {
  color: #1f1f1f !important;
}
.navbar .dropdown-item:hover,
.navbar .dropdown-item:focus,
.navbar .dropdown-item.active {
  color: #000 !important;
  background-color: rgba(255, 255, 255, 0.35);
}

/* Founders section (homepage, just below the slider) */
.founders-section {
  background: linear-gradient(180deg, #f7fbfd 0%, #ffffff 100%);
}
.founder-card {
  transition: transform .35s ease, box-shadow .35s ease;
}
.founder-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 .75rem 2rem rgba(0,0,0,.10) !important;
}
.founder-card .founder-photo img {
  transition: transform .5s ease;
}
.founder-card:hover .founder-photo img {
  transform: scale(1.04);
}
.founder-card .founder-bio {
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.9;
}

/* Appointment / contact CTA form box — use theme blue instead of the template's salmon tint */
.appointment .appointment-form {
  background: rgba(170, 235, 255, 0.35) !important;
}

/* About section: keep the inner circle decorative (small, fixed size) instead of stretching to full image */
.about .about-img .about-img-inner {
  width: 180px !important;
  height: 180px !important;
  overflow: hidden;
}
.about .about-img .about-img-inner img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}
@media (max-width: 991.98px) {
  .about .about-img .about-img-inner {
    width: 140px !important;
    height: 140px !important;
  }
}

/* Remove underline from links inside topbar and footer */
.top-bar a,
.footer a {
  text-decoration: none !important;
}

/* Footer */
.footer {
  background: var(--theme-bg-blue-dark) !important;
  background-image: none !important;
}
/* Copyright bar — black */
.copyright {
  background: #000 !important;
  background-image: none !important;
}
.footer,
.footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6,
.footer p, .footer span, .footer a, .footer i,
.footer .footer-item,
.footer .footer-item a,
.footer .footer-item p,
.copyright,
.copyright a, .copyright span, .copyright i,
.copyright .text-white, .copyright .text-light {
  color: #fff !important;
}
.footer .footer-item a:hover,
.copyright a:hover {
  color: rgba(255, 255, 255, 0.75) !important;
}

/* Primary buttons */
.btn-primary {
  background-color: var(--theme-text-yellow) !important;
  border-color: var(--theme-text-yellow) !important;
  color: #0a3d5e !important;
}
.btn-primary:hover {
  background-color: #e6b600 !important;
  border-color: #e6b600 !important;
  color: #0a3d5e !important;
}

/* text-primary -> yellow */
.text-primary {
  color: var(--theme-text-yellow) !important;
}