html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

/* Override Bootstrap Colors */
:root {
  --bs-primary: #bb141a;
  --bs-primary-rgb: 187, 20, 26;
  --bs-secondary: #bb141a;
  --bs-secondary-rgb: 187, 20, 26;
  --bs-light: #d2d3d5;
  --bs-light-rgb: 210, 211, 213;
  --bs-gradient: linear-gradient(135deg, #bb141a 0%, #bb141a 100%);
}

/* Bootstrap Text Colors */
.text-primary {
  color: #bb141a !important;
}

.text-secondary {
  color: #bb141a !important;
}

/* Bootstrap Background Colors */
.bg-primary {
  background-color: #bb141a !important;
}

.bg-secondary {
  background-color: #bb141a !important;
}

.bg-light {
  background-color: #d2d3d5 !important;
}

/* Bootstrap Border Colors */
.border-primary {
  border-color: #bb141a !important;
}

.border-secondary {
  border-color: #bb141a !important;
}

/* Bootstrap Buttons */
.btn-primary {
  background: linear-gradient(135deg, #bb141a 0%, #bb141a 100%);
  border: none;
  color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background: linear-gradient(135deg, #8f0f14 0%, #8f0f14 100%);
  border: none;
}

.btn-secondary {
  background-color: #bb141a;
  border-color: #bb141a;
  color: #fff;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
  background-color: #8f0f14;
  border-color: #8f0f14;
}

.btn-outline-primary {
  color: #bb141a;
  border-color: #bb141a;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: #bb141a;
  border-color: #bb141a;
  color: #fff;
}

.btn-outline-secondary {
  color: #bb141a;
  border-color: #bb141a;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active {
  background-color: #bb141a;
  border-color: #bb141a;
  color: #fff;
}

/* Bootstrap Badges */
.badge.bg-primary {
  background-color: #bb141a !important;
}

.badge.bg-secondary {
  background-color: #bb141a !important;
}

/* Bootstrap Alerts */
.alert-primary {
  color: #003057;
  background-color: #cce0f0;
  border-color: #b3d1e8;
}

.alert-secondary {
  color: #0a5750;
  background-color: #d1f2ee;
  border-color: #baeee7;
}

/* Bootstrap Links */
.link-primary {
  color: #bb141a !important;
}

.link-primary:hover,
.link-primary:focus {
  color: #8f0f14 !important;
}

.link-secondary {
  color: #bb141a !important;
}

.link-secondary:hover,
.link-secondary:focus {
  color: #8f0f14 !important;
}

/* Bootstrap Forms - Focus States */
.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 rgba(187, 20, 26, 0.5);
}

.form-check-input:checked {
  background-color: #bb141a;
  border-color: #bb141a;
}

/* Bootstrap Progress Bars */
.progress-bar {
  background-color: #bb141a;
}

.progress-bar.bg-secondary {
  background-color: #bb141a !important;
}

/* Bootstrap List Group */
.list-group-item-primary {
  color: #003057;
  background-color: #cce0f0;
}

.list-group-item-secondary {
  color: #0a5750;
  background-color: #d1f2ee;
}

/* Bootstrap Tables */
.table-primary {
  --bs-table-bg: #cce0f0;
  --bs-table-border-color: #b8ceda;
}

.table-secondary {
  --bs-table-bg: #d1f2ee;
  --bs-table-border-color: #bcdad6;
}

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;
}
a {
    color: #bb141a;
    text-decoration: none;
}
.footer .btn {
    box-shadow:unset;
}
.header-bg {
/*    background-image: url(../img/bg-2.jpg);
*/    background-size: cover;
    background-position: center;
    background-attachment: scroll;
    background-repeat: no-repeat;
    width: 100%;
  height: 680px;
  min-height: 680px;
}

.header-carousel .owl-carousel-item {
  overflow: hidden;
}

.header-carousel .owl-item .header-bg {
  transform: scale(1.06);
  filter: saturate(1.02);
  transition: transform 9000ms ease, filter 1200ms ease;
}

.header-carousel .owl-item.slide-active .header-bg {
  transform: scale(1.14);
  filter: saturate(1.1);
}

.header-carousel .owl-item .owl-carousel-item h3,
.header-carousel .owl-item .owl-carousel-item h2,
.header-carousel .owl-item .owl-carousel-item p,
.header-carousel .owl-item .owl-carousel-item .btn {
  opacity: 0;
  transform: translateY(26px);
}

.header-carousel .owl-item.slide-active .owl-carousel-item h3 {
  animation: heroTextIn 620ms ease forwards 120ms;
}

.header-carousel .owl-item.slide-active .owl-carousel-item h2 {
  animation: heroTextIn 680ms ease forwards 260ms;
}

.header-carousel .owl-item.slide-active .owl-carousel-item p {
  animation: heroTextIn 680ms ease forwards 420ms;
}

.header-carousel .owl-item.slide-active .owl-carousel-item .btn {
  animation: heroTextIn 620ms ease forwards 560ms;
}

/* Keep the light CTA visible while other hero elements animate in. */
.header-carousel .owl-item .owl-carousel-item .hero-contact-btn,
.header-carousel .owl-item .owl-carousel-item .btn.btn-light.py-md-3.px-md-5.animated.slideInRight {
  /*opacity: 1 !important;
  transform: translateX(0);*/
}

.header-carousel .owl-item.slide-active .owl-carousel-item .hero-contact-btn,
.header-carousel .owl-item.slide-active .owl-carousel-item .btn.btn-light.py-md-3.px-md-5.animated.slideInRight {
  animation: heroSlideInRightNoFade 700ms ease both 220ms !important;
}

@keyframes heroSlideInRightNoFade {
  from {
    opacity: 1;
    transform: translateX(50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes heroTextIn {
  from {
    opacity: 0;
    transform: translateY(26px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 768px) {
  .header-bg {
    height: 560px;
    min-height: 560px;
  }
}
.sticky-top.shadow-sm{
    background-color:#fff;
}

.contact-detail-card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.2rem 1.1rem;
  border-radius: 16px;
  border: 1px solid rgba(187, 20, 26, 0.12);
  background:
    radial-gradient(120% 140% at 0% 100%, rgba(187, 20, 26, 0.08), transparent 55%),
    linear-gradient(145deg, #ffffff 0%, #fbfbfc 100%);
  box-shadow: 0 12px 30px rgba(27, 33, 48, 0.08);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  overflow: hidden;
}

.contact-detail-card::before {
  content: "";
  position: absolute;
  inset: auto -20% -55% auto;
  width: 170px;
  height: 170px;
  background: radial-gradient(circle, rgba(187, 20, 26, 0.16), rgba(187, 20, 26, 0));
  pointer-events: none;
}

.contact-detail-card:hover {
  transform: translateY(-6px);
  border-color: rgba(187, 20, 26, 0.35);
  box-shadow: 0 16px 40px rgba(27, 33, 48, 0.14);
}

.contact-detail-icon {
  flex: 0 0 60px;
  width: 60px;
  height: 60px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  background: linear-gradient(145deg, #bb141a 0%, #8f0f14 100%);
  color: #fff;
  box-shadow: 0 10px 22px rgba(187, 20, 26, 0.3);
  font-size: 1.6rem;
}

.contact-detail-content {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.contact-detail-content h4 {
  margin: 0 0 0.25rem;
  font-size: 1.35rem;
  color: #2a2f3a;
}

.contact-detail-content p {
  margin: 0;
  color: #596074;
  font-size: 1rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.contact-detail-content a {
  color: #2f3442 !important;
  font-weight: 600;
}

.contact-detail-content a:hover {
  color: #bb141a !important;
}

.map-container {
  border-radius: 18px;
  border: 1px solid rgba(187, 20, 26, 0.15);
  box-shadow: 0 16px 38px rgba(31, 40, 60, 0.12);
}

.map-container iframe {
  width: 100%;
  min-height: 430px;
  border: 0;
}

html[dir="rtl"] .contact-detail-card {
  text-align: right;
}

@media (max-width: 991.98px) {
  .contact-detail-card {
    padding: 1rem;
    border-radius: 14px;
  }

  .contact-detail-icon {
    width: 54px;
    height: 54px;
    flex-basis: 54px;
    font-size: 1.45rem;
  }
}

/* Legacy home contact boxes (current runtime markup) + new card class */
.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1,
.contact-detail-card {
  background:
    radial-gradient(140% 120% at 0% 100%, rgba(187, 20, 26, 0.12), transparent 55%),
    linear-gradient(145deg, #ffffff 0%, #f8f9fc 100%) !important;
  border: 1px solid rgba(187, 20, 26, 0.18);
  border-radius: 18px !important;
  box-shadow: 0 12px 30px rgba(26, 33, 47, 0.09);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1:hover,
.contact-detail-card:hover {
  transform: translateY(-6px);
  border-color: rgba(187, 20, 26, 0.42);
  box-shadow: 0 18px 42px rgba(26, 33, 47, 0.16);
}

.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1 > i {
  width: 60px;
  height: 60px;
  min-width: 60px;
  border-radius: 15px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-inline-end: 0.95rem !important;
  color: #fff !important;
  font-size: 1.5rem !important;
  background: linear-gradient(145deg, #bb141a 0%, #8f0f14 100%);
  box-shadow: 0 10px 22px rgba(187, 20, 26, 0.33);
}

.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1 h4,
.contact-detail-content h4 {
  margin: 0 0 0.25rem;
  color: #1f2635;
  font-size: 1.3rem;
}

.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1 p,
.contact-detail-content p {
  margin: 0;
  color: #5c6375;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1 a,
.contact-detail-content a {
  font-weight: 600;
  color: #2f3648 !important;
}

.container-xxl .row.g-4 > .col-md-6.col-lg-3 .d-flex.h-100.align-items-center.p-4.bg-light.rounded-1 a:hover,
.contact-detail-content a:hover {
  color: #bb141a !important;
}

.about-page-modern {
  position: relative;
  background:
    radial-gradient(90rem 50rem at 8% -8%, rgba(187, 20, 26, 0.1), transparent 55%),
    radial-gradient(80rem 48rem at 100% 0%, rgba(23, 28, 38, 0.08), transparent 60%),
    linear-gradient(180deg, #f6f7fa 0%, #ffffff 42%);
  overflow: hidden;
}

.about-page-modern::before,
.about-page-modern::after {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  pointer-events: none;
}

.about-page-modern::before {
  inset: 80px auto auto -120px;
  background: radial-gradient(circle, rgba(187, 20, 26, 0.16), rgba(187, 20, 26, 0));
}

.about-page-modern::after {
  inset: auto -140px 60px auto;
  background: radial-gradient(circle, rgba(29, 38, 52, 0.1), rgba(29, 38, 52, 0));
}

.about-surface {
  position: relative;
  border-radius: 28px;
  border: 1px solid rgba(187, 20, 26, 0.16);
  background: linear-gradient(130deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.88));
  box-shadow: 0 25px 60px rgba(25, 33, 46, 0.12);
  backdrop-filter: blur(5px);
  overflow: hidden;
}

.about-figure {
  position: relative;
  min-height: 440px;
  overflow: hidden;
}

.about-figure-media {
  position: relative;
  isolation: isolate;
}

.about-figure-media::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(18, 24, 35, 0.16) 0%, rgba(18, 24, 35, 0.5) 100%);
}

.about-figure img {
  object-fit: cover;
  transition: transform 1.6s ease;
}

.about-surface:hover .about-figure img {
  transform: scale(1.08);
}

.about-figure-glow {
  position: absolute;
  inset: auto 0 -15%;
  z-index: 2;
  height: 45%;
  background: linear-gradient(180deg, rgba(187, 20, 26, 0), rgba(187, 20, 26, 0.38));
}

.about-copy {
  padding: 3rem 2.6rem;
}

.about-eyebrow {
  display: inline-block;
  padding: 0.38rem 0.9rem;
  border-radius: 999px;
  background: rgba(187, 20, 26, 0.1);
  color: #991117;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.about-description {
  color: #3c4252;
  line-height: 1.85;
}

.about-description p:last-child {
  margin-bottom: 0;
}

.about-stat {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 1rem 1rem;
  border-radius: 16px;
  border: 1px solid rgba(187, 20, 26, 0.14);
  background:
    radial-gradient(120% 150% at 0% 100%, rgba(187, 20, 26, 0.11), transparent 55%),
    linear-gradient(145deg, #ffffff, #f8f8fb);
  box-shadow: 0 10px 24px rgba(31, 39, 56, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.about-stat:hover {
  transform: translateY(-6px);
  border-color: rgba(187, 20, 26, 0.35);
  box-shadow: 0 16px 34px rgba(31, 39, 56, 0.14);
}

.about-stat-icon {
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #bb141a, #8f0f14);
  box-shadow: 0 10px 24px rgba(187, 20, 26, 0.33);
  color: #fff;
  font-size: 1.3rem;
}

.about-stat-value {
  color: #bb141a;
  font-size: 1.8rem;
  line-height: 1;
}

.about-stat-label {
  color: #4d5465;
  font-weight: 600;
}

.about-cta {
  border-radius: 12px;
  box-shadow: 0 12px 26px rgba(187, 20, 26, 0.35);
}

.about-cta:hover {
  transform: translateY(-2px);
}

.about-pillars {
  position: relative;
}

.about-pillars-kicker {
  display: inline-block;
  margin-bottom: 0.8rem;
  padding: 0.4rem 1rem;
  border-radius: 999px;
  background: rgba(187, 20, 26, 0.11);
  color: #981217;
  font-weight: 700;
}

.about-pillar-card {
  position: relative;
  padding: 1.8rem 1.4rem 1.35rem;
  border-radius: 18px;
  border: 1px solid rgba(30, 38, 52, 0.1);
  background: linear-gradient(150deg, #ffffff 0%, #f7f8fb 100%);
  box-shadow: 0 12px 28px rgba(30, 38, 52, 0.09);
  transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  overflow: hidden;
}

.about-pillar-card::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, #bb141a, rgba(187, 20, 26, 0.25));
}

.about-pillar-card:hover {
  transform: translateY(-7px);
  border-color: rgba(187, 20, 26, 0.32);
  box-shadow: 0 20px 38px rgba(30, 38, 52, 0.15);
}

.about-pillar-icon {
  width: 66px;
  height: 66px;
  margin-bottom: 1rem;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.5rem;
  background: linear-gradient(145deg, #bb141a, #8f0f14);
  box-shadow: 0 12px 26px rgba(187, 20, 26, 0.34);
}

.about-pillar-copy {
  color: #4d5464;
  line-height: 1.75;
}

.about-pillar-copy p:last-child {
  margin-bottom: 0;
}

html[dir="rtl"] .about-copy,
html[dir="rtl"] .about-description,
html[dir="rtl"] .about-pillar-copy {
  text-align: right;
}

@media (max-width: 1199.98px) {
  .about-copy {
    padding: 2.3rem 1.8rem;
  }
}

@media (max-width: 991.98px) {
  .about-surface {
    border-radius: 22px;
  }

  .about-figure {
    min-height: 300px;
  }

  .about-copy {
    padding: 1.8rem 1.3rem;
  }

  .about-stat-value {
    font-size: 1.55rem;
  }
}

@media (max-width: 575.98px) {
  .about-page-modern::before,
  .about-page-modern::after {
    display: none;
  }

  .about-copy {
    padding: 1.4rem 1rem;
  }

  .about-stat {
    padding: 0.9rem;
  }

  .about-pillar-card {
    padding: 1.5rem 1.1rem 1.2rem;
  }
}

.layout-deco {
  position: absolute;
  z-index: -1;
  pointer-events: none;
  user-select: none;
  filter: saturate(1.03) contrast(1.02);
  transition: opacity 0.25s ease;
}

.layout-deco svg {
  display: block;
  will-change: transform;
  transform: translateZ(0);
}

.layout-deco--orb {
  top: 0;
  right: 0;
  opacity: 0.75;
}

.layout-deco--waves {
  top: 390px;
  left: 0;
  opacity: 0.62;
}

.header-carousel .owl-item.slide-active .owl-carousel-item .btn.btn-primary.py-md-3.px-md-5,
.header-carousel .owl-item.slide-active .owl-carousel-item .hero-contact-btn,
.header-carousel .owl-item.slide-active .owl-carousel-item .btn.btn-light.py-md-3.px-md-5.animated.slideInRight {
  box-shadow: 0 14px 30px rgba(187, 20, 26, 0.32);
}

@media (max-width: 1199.98px) {
  .layout-deco--orb {
    opacity: 0.45;
  }

  .layout-deco--waves {
    opacity: 0.36;
  }
}

@media (max-width: 767.98px) {
  .layout-deco {
    display: none;
  }
}