/* Fly Mukalla: enhancements for the existing SilverStripe theme. */
:root { --fm-primary: #087dbb; --fm-dark: #075782; --fm-ease: cubic-bezier(.22, 1, .36, 1); }
html { scroll-behavior: smooth; }
/* The original logo follows the pointer with a gentle 3D tilt. */
#nav-bar .navbar-brand { display: inline-block; perspective: 700px; }
#nav-bar .navbar-brand img { display: block; transform: rotateX(var(--fm-logo-x, 0deg)) rotateY(var(--fm-logo-y, 0deg)) scale(var(--fm-logo-scale, 1)); transition: transform .25s ease-out, filter .25s ease-out; transform-style: preserve-3d; }
#nav-bar .navbar-brand:hover img { --fm-logo-scale: 1.055; filter: drop-shadow(0 10px 10px rgba(7,87,130,.22)); }
/* Blue details from the existing identity. */
@media (hover: hover) {
  #nav-bar .navbar-nav .nav-link { position: relative; }
  #nav-bar .navbar-nav .nav-link::after { content: ''; position: absolute; right: 0; bottom: 0; width: 0; height: 2px; background: var(--fm-primary); transition: width .3s var(--fm-ease); }
  #nav-bar .navbar-nav .nav-link:hover::after, #nav-bar .navbar-nav .nav-link:focus-visible::after { width: 100%; }
  .custom_btn, .btn { transition: transform .25s var(--fm-ease), box-shadow .25s var(--fm-ease); }
  .custom_btn:hover, .btn:hover { transform: translateY(-3px); box-shadow: 0 12px 22px rgba(7,87,130,.16); }
}
::selection { background: var(--fm-primary); color: #fff; }
#nav-bar.fm-nav-scrolled { box-shadow: 0 8px 24px rgba(7,87,130,.12); background-color: rgba(255,255,255,.97) !important; }
#nav-bar .nav-link:focus-visible, .fm-back-top:focus-visible { outline: 3px solid var(--fm-primary); outline-offset: 3px; }
.our_services .nav-link { transition: transform .25s var(--fm-ease), box-shadow .25s var(--fm-ease); }
.News .news-item, .statistic-item, .service-card { transition: transform .35s var(--fm-ease), box-shadow .35s var(--fm-ease); }
.News .news-item:hover, .statistic-item:hover, .service-card:hover { box-shadow: 0 18px 32px -18px rgba(7,87,130,.25); }
.News .news-item img { transition: transform .45s var(--fm-ease); }
@media (hover: hover) and (pointer: fine) {
  .News .news-item, .statistic-item { transform: perspective(900px) rotateX(var(--fm-card-x, 0deg)) rotateY(var(--fm-card-y, 0deg)); transition: transform .2s ease-out, box-shadow .35s var(--fm-ease); }
}
@media (hover: hover) {
  .our_services .nav-link:hover { transform: translateX(-4px); }
  .News .news-item:hover, .statistic-item:hover { box-shadow: 0 18px 30px -14px rgba(7,87,130,.28); }
  .service-card:hover { transform: translateY(-4px); }
  .News .news-item:hover img { transform: scale(1.035); }
}
/* Optional category filter; only active after its markup is added. */
.fm-filterbar { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 0 0 28px; }
.fm-filter-btn { border: 1px solid var(--fm-primary); border-radius: 999px; background: #fff; color: var(--fm-dark); padding: 8px 20px; font: inherit; cursor: pointer; }
.fm-filter-btn:hover, .fm-filter-btn.fm-active { background: var(--fm-primary); color: #fff; }
.fm-filter-btn:focus-visible { outline: 3px solid var(--fm-dark); outline-offset: 3px; }
.fm-filterable[hidden] { display: none !important; }
.fm-back-top { position: fixed; inset-inline-end: 24px; bottom: 94px; z-index: 9998; width: 46px; height: 46px; display: grid; place-items: center; border: 0; border-radius: 50%; background: var(--fm-primary); color: #fff; font-size: 23px; box-shadow: 0 8px 24px rgba(7,87,130,.25); opacity: 0; visibility: hidden; transform: translateY(12px); transition: opacity .25s, visibility .25s, transform .25s; cursor: pointer; }
.fm-back-top.fm-show { opacity: 1; visibility: visible; transform: none; }
.fm-back-top:hover { background: var(--fm-dark); }
@media (max-width: 767px) { .fm-back-top { inset-inline-end: 15px; bottom: 80px; width: 42px; height: 42px; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  #nav-bar .navbar-brand img { transition: none; transform: none; }
  #nav-bar .navbar-brand:hover img { filter: none; }
  .our_services .nav-link, .News .news-item, .statistic-item, .service-card, .News .news-item img, .fm-back-top { transition: none !important; }
  .our_services .nav-link:hover, .News .news-item:hover, .statistic-item:hover, .service-card:hover, .News .news-item:hover img { transform: none; }
}

/* Fly Mukalla emblem in two quiet edge clusters. Reuses the existing favicon. */
section.my-5:has(> .our_services) {
  position: relative;
  isolation: isolate;
}
section.my-5:has(> .our_services)::before,
.News .news_bg::after {
  content: "";
  position: absolute;
  width: 240px;
  height: 240px;
  background-color: #dfe3e6;
  -webkit-mask-image: url("../images/favicon.png");
  mask-image: url("../images/favicon.png");
  -webkit-mask-size: 60px 60px;
  mask-size: 60px 60px;
  -webkit-mask-repeat: repeat;
  mask-repeat: repeat;
  pointer-events: none;
}
/* One cluster at the outer edge of Services, behind its content. */
section.my-5:has(> .our_services)::before {
  top: 18px;
  left: 0;
  z-index: 0;
}
section.my-5:has(> .our_services) > .container,
section.my-5:has(> .our_services) > .our_services {
  position: relative;
  z-index: 1;
}
/* The second cluster sits inside the short news backdrop. */
.News .news_bg { background-color: #f4f6f7; }
.News .news_bg::after {
  top: 24px;
  right: 0;
}
@media (max-width: 767px) {
  section.my-5:has(> .our_services)::before,
  .News .news_bg::after {
    width: 120px;
    height: 144px;
    -webkit-mask-size: 40px 48px;
    mask-size: 40px 48px;
  }
  section.my-5:has(> .our_services)::before { top: 26px; }
  .News .news_bg::after { top: 18px; }
}

/* 2026-10-16: a calmer, more useful presentation of the existing homepage. */
:root { --fm-ink: #20334a; --fm-muted: #64768a; --fm-soft: #f3f8fa; }
body[dir="rtl"] { overflow-x: clip; }
body[dir="rtl"] :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid #0a8fca;
  outline-offset: 3px;
}

/* Keep the established photo-filled emblem and text animation untouched. */
@media (min-width: 1200px) {
  body[dir="rtl"] .fm-motion-hero .content {
    width: min(47vw, 610px);
    right: 0;
    top: 170px;
  }
  body[dir="rtl"] .fm-motion-hero .content p {
    max-width: 36ch;
    line-height: 1.75;
    margin-top: 22px !important;
  }
}
.fm-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 25px; }
.fm-action {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 10px 19px;
  border: 1px solid var(--fm-primary);
  border-radius: 10px;
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none !important;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.fm-action--primary { background: var(--fm-primary); color: #fff !important; box-shadow: 0 8px 18px rgba(8,125,187,.14); }
.fm-action--outline { background: rgba(255,255,255,.92); color: var(--fm-dark) !important; }
@media (hover: hover) {
  .fm-action:hover { transform: translateY(-2px); }
  .fm-action--primary:hover { background: var(--fm-dark); }
  .fm-action--outline:hover { background: #eaf7fc; }
}

/* Sections use one spacing rhythm and restrained blue accents. */
body[dir="rtl"] section.my-5:has(> .our_services) > .container h1,
body[dir="rtl"] .beforCounterSection h1,
body[dir="rtl"] .News h1,
body[dir="rtl"] section:has(> .owl-carousel) h1 {
  color: var(--fm-ink);
  letter-spacing: -.025em;
}
body[dir="rtl"] section.my-5:has(> .our_services) > .container .prograph_color,
body[dir="rtl"] .beforCounterSection > .text-center .prograph_color { color: var(--fm-muted); }
body[dir="rtl"] .our_services .tab-content { border-radius: 18px; background-color: #edf8fc; }
body[dir="rtl"] .our_services .tab-pane h5 { color: var(--fm-dark); }
.fm-service-action {
  display: inline-flex;
  align-items: center;
  margin-top: 15px;
  color: var(--fm-dark);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: #76c1dd;
  text-underline-offset: 5px;
}
.fm-service-action:hover { color: var(--fm-primary); }

/* Lightweight request panel; no weather API, third-party widget, or extra asset. */
#fm-services, .fm-inquiry { scroll-margin-top: 110px; }
.fm-inquiry { padding: 20px 16px 55px; }
.fm-inquiry__shell {
  position: relative;
  max-width: 1180px;
  margin-inline: auto;
  padding: clamp(22px, 4vw, 48px);
  overflow: hidden;
  border: 1px solid #deedf3;
  border-radius: 24px;
  background: linear-gradient(130deg, #f4fafc 0%, #fff 72%);
  box-shadow: 0 20px 54px -42px rgba(7,87,130,.4);
}
.fm-inquiry__shell::before {
  content: "";
  position: absolute;
  left: -65px;
  bottom: -95px;
  width: 245px;
  height: 245px;
  border: 32px solid rgba(8,125,187,.055);
  border-radius: 50%;
  pointer-events: none;
}
.fm-inquiry__layout { position: relative; display: grid; grid-template-columns: minmax(0, .78fr) minmax(0, 1.22fr); gap: clamp(24px, 4vw, 54px); align-items: center; }
.fm-inquiry__eyebrow { color: var(--fm-primary); font-size: .9rem; font-weight: 700; }
.fm-inquiry h2 { margin: 10px 0 15px; color: var(--fm-ink); font-size: clamp(1.65rem, 2.6vw, 2.4rem); line-height: 1.35; }
.fm-inquiry__intro p { max-width: 36ch; margin: 0; color: var(--fm-muted); line-height: 1.9; }
.fm-inquiry__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.fm-inquiry__field { display: grid; gap: 7px; min-width: 0; color: var(--fm-ink); font-size: .88rem; font-weight: 700; }
.fm-inquiry__field--wide { grid-column: 1 / -1; }
.fm-inquiry :is(select, input, textarea) {
  width: 100%;
  min-height: 45px;
  padding: 10px 12px;
  border: 1px solid #cadde6;
  border-radius: 9px;
  background: #fff;
  color: var(--fm-ink);
  font: inherit;
  font-weight: 400;
}
.fm-inquiry textarea { min-height: 76px; resize: vertical; }
.fm-inquiry__submit { grid-column: 1 / -1; justify-self: start; cursor: pointer; }
.fm-inquiry__note { grid-column: 1 / -1; margin: -3px 0 0; color: var(--fm-muted); font-size: .77rem; line-height: 1.6; }

/* Consistent card treatment without extra photography or hover scripts. */
.beforCounterSection .statistic-item {
  min-height: 126px;
  border: 1px solid #e0edf3;
  background: #fff;
  box-shadow: 0 10px 28px -23px rgba(7,87,130,.26);
}
.News .news-item a { display: block; height: 100%; overflow: hidden; border-radius: 16px; background: #fff; text-decoration: none; box-shadow: 0 11px 26px -18px rgba(7,87,130,.28); }
.News .news-item img { display: block; width: 100%; aspect-ratio: 4 / 3; height: auto; object-fit: cover; }
.News .news-item .content { min-height: 100px; color: var(--fm-ink); line-height: 1.6; }
.News .news-item .content span { display: inline-block; font-size: 1.03rem; font-weight: 700; }

@media (max-width: 991px) {
  .fm-motion-hero .content .fm-hero-actions { justify-content: center; margin: 18px auto 0; }
  .fm-inquiry__layout { grid-template-columns: 1fr; gap: 20px; }
  .fm-inquiry__intro p { max-width: none; }
  body[dir="rtl"] .our_services .tab-content { border-radius: 16px; }
}
@media (max-width: 767px) {
  .fm-inquiry { padding: 12px 12px 37px; }
  .fm-inquiry__shell { border-radius: 17px; }
  .fm-inquiry__form { grid-template-columns: 1fr; }
  .fm-inquiry__field--wide, .fm-inquiry__submit, .fm-inquiry__note { grid-column: auto; }
  .fm-inquiry__submit { justify-self: stretch; }
  .fm-hero-actions .fm-action { min-height: 44px; padding-inline: 15px; font-size: .88rem; }
  .whatsapp-float { width: 50px !important; height: 50px !important; bottom: calc(15px + env(safe-area-inset-bottom)) !important; right: 15px !important; }
  .whatsapp-float i { font-size: 29px !important; }
  .fm-back-top { inset-inline-end: 14px; bottom: calc(78px + env(safe-area-inset-bottom)); }
  .News .news-item .content { min-height: auto; }
}
@media (prefers-reduced-motion: reduce) {
  .fm-action { transition: none; }
  .fm-action:hover { transform: none; }
}

/* The footer belongs to Mukalla: a light, low coastal silhouette. */
body[dir="rtl"] footer .bg_footer {
  background-color: #fff;
  background-image:
    linear-gradient(to top, rgba(255,255,255,.82), rgba(255,255,255,.5) 68px, transparent 150px),
    url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNjAwIDQyMCIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSLYo9mB2YIg2LPYp9it2YTZiiDZhdiz2KrZiNit2Ykg2YXZhiDYudmF2KfYsdipINit2LbYsdmF2YjYqiI+CiAgPGRlZnM+CiAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImhhemUiIHgxPSIwIiB4Mj0iMCIgeTE9IjAiIHkyPSIxIj4KICAgICAgPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjZjRmNmY3IiBzdG9wLW9wYWNpdHk9IjAiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZWRmMWYzIiBzdG9wLW9wYWNpdHk9Ii44OCIvPgogICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDxsaW5lYXJHcmFkaWVudCBpZD0iYnVpbGRpbmciIHgxPSIwIiB4Mj0iMCIgeTE9IjAiIHkyPSIxIj4KICAgICAgPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjZWVmMmY0IiBzdG9wLW9wYWNpdHk9Ii41NiIvPgogICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNkY2U0ZTgiIHN0b3Atb3BhY2l0eT0iLjcyIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPHBhdHRlcm4gaWQ9IndpbmRvd3MiIHdpZHRoPSIyNSIgaGVpZ2h0PSIyOSIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgIDxwYXRoIGQ9Ik0xMCAxMmg1djloLTV6IiBmaWxsPSIjZmZmIiBvcGFjaXR5PSIuNTIiLz4KICAgIDwvcGF0dGVybj4KICA8L2RlZnM+CiAgPHBhdGggZmlsbD0iI2Y0ZjZmNyIgb3BhY2l0eT0iLjUyIiBkPSJNMCAyODNjOTYtOSAxOTAtNDMgMjgwLTM3IDgyIDYgMTM3IDQyIDIyNiA0MCAxMzYtMyAyMjctNjIgMzQ2LTU2IDk4IDUgMTQ1IDUwIDI1OCA0OCA5MS0yIDE3MC0zNSAyNDgtMjQgODEgMTEgMTU3IDM4IDI0MiAzMnYxMzRIMHoiLz4KICA8ZyBmaWxsPSJ1cmwoI2J1aWxkaW5nKSI+CiAgICA8cGF0aCBkPSJNMCAzMjdoNzB2LTY3aDZ2LTIyaDh2MjJoNnY2N2gyMnYtOTFoMTJ2LTEyaDU1djEyaDEydjkxaDI2di00M2g1OHY0M2gxNnYtMTA4aDE4di0xM2g1OXYxM2gxOHYxMDhoMjZ2LTUxaDUxdjUxaDE4di05NGgxNnYtMTloNzB2MTloMTd2OTRoMjV2LTQyaDUzdjQyaDIwdi02NmgxN3YtMTloOHYtMzFoNXYzMWg4djE5aDE3djY2aDI4di01OWg2NHY1OWgyMXYtODZoMTd2LTE0aDc4djE0aDE2djg2aDI1di00NGg0NnY0NGgxOHYtOTZoMTh2LTE4aDY2djE4aDE3djk2aDIydi00OGg1M3Y0OGgxNXYtNjhoMTR2LTE2aDU5djE2aDE2djY4aDE5di0xMDVoMTd2LTE2aDcydjE2aDE2djEwNWgyMHYtNDNoNjh2NDNoMzF2LTg5aDE1di0xOWg2M3YxOWgxNXY4OWgyNXYtNTFoNTh2NTFoMzh2OTNIMHoiLz4KICAgIDxwYXRoIGQ9Ik0yMDIgMzI3di0xMTJsMTMtMTF2LTEwbDExLTkgMTEgOXYxMGwxMyAxMXYxMTJ6bTI2NSAwdi0xMjJsMTEtMTJ2LTExaDM1djExbDEyIDEydjEyMnptNDI0IDB2LTEwMWwxMC0xM3YtMTFoNDJ2MTFsMTAgMTN2MTAxem0zNTcgMHYtMTI5bDE0LTEzdi0xMWg0NHYxMWwxMyAxM3YxMjl6Ii8+CiAgICA8cGF0aCBkPSJNNTQ4IDMyN3YtNjZjMC0zMCAzMC01NiA2Mi01NnM2MiAyNiA2MiA1NnY2NnoiLz4KICAgIDxwYXRoIGQ9Ik01ODYgMjExdi0xMGgxM3YtOGg4di0xN2g2djE3aDh2OGgxM3YxMHoiLz4KICAgIDxwYXRoIGQ9Ik0xMDg2IDMyN3YtNTVjMC0yMiAxOS00MSA0My00MXM0MyAxOSA0MyA0MXY1NXoiLz4KICA8L2c+CiAgPGcgZmlsbD0idXJsKCN3aW5kb3dzKSIgb3BhY2l0eT0iLjc0Ij4KICAgIDxwYXRoIGQ9Ik0xMTUgMjM4aDc3djkwaC03N3ptMTgyLTIwaDg4djExMGgtODh6bTQ2MyAyM2gxMTF2ODhINzYwem0yMzctMzFoMTEzdjExOUg5OTd6bTM1NyAxOGg5MnYxMDBoLTkyeiIvPgogIDwvZz4KICA8ZyBmaWxsPSIjZTFlOGViIiBvcGFjaXR5PSIuNjUiPgogICAgPHBhdGggZD0iTTcxNSAzMjdWMTc5aDh2LTE4aDZ2LTQxaDV2NDFoNnYxOGg4djE0OHoiLz4KICAgIDxwYXRoIGQ9Ik03MzggMTc4aDEwdi02aC0zNHY2aDEwem0tMjAgNjNoMjZ2NGgtMjZ6Ii8+CiAgICA8cGF0aCBkPSJNMTQzIDMyN3YtOTJoN3YtMTdoNXYtMzVoNXYzNWg2djE3aDd2OTJ6Ii8+CiAgICA8cGF0aCBkPSJNMTUxNCAzMjd2LTEwMWg2di0xOGg1di00MGg1djQwaDV2MThoN3YxMDF6Ii8+CiAgPC9nPgogIDxnIHN0cm9rZT0iI2Q5ZTJlNiIgc3Ryb2tlLXdpZHRoPSIzIiBzdHJva2UtbGluZWNhcD0icm91bmQiIGZpbGw9Im5vbmUiIG9wYWNpdHk9Ii42Ij4KICAgIDxwYXRoIGQ9Ik0zNyAyOThjOC0xMyAyNC0xNyAzOC0xM000MCAyOTVjMC0xNS03LTI2LTIxLTMyTTQ1IDI5M2M5LTE3IDgtMzIgMS00NiIvPgogICAgPHBhdGggZD0iTTE0OTQgMjk1YzgtMTggMjQtMjQgNDAtMTlNMTQ5OCAyOTFjMC0yMS0xMC0zNy0yNS00M00xNTA1IDI4OGMxMi0xOSAxMy0zNyA1LTU0Ii8+CiAgICA8cGF0aCBkPSJNMTI3NCAxMjRxOS04IDE4IDAgOS04IDE4IDBNMTMyMCAxNTFxOC03IDE2IDAgOC03IDE2IDAiIHN0cm9rZS13aWR0aD0iMiIvPgogIDwvZz4KICA8cGF0aCBmaWxsPSJ1cmwoI2hhemUpIiBkPSJNMCAzMTBjMjMwIDE2IDQzMCAxNSA2MzAgNXMzNjIgNCA1MjcgNSAyOTctMTIgNDQzLTd2MTA3SDB6Ii8+CiAgPHBhdGggZmlsbD0iI2VkZjJmNCIgb3BhY2l0eT0iLjQyIiBkPSJNMCAzNTJjMjMyIDQgNDI2LTcgNjMzLTUgMjMwIDIgNDg3IDE0IDcyMCA1IDEwNC00IDE3OC01IDI0Ny0zdjcxSDB6Ii8+CiAgPHBhdGggZmlsbD0iI2ZmZiIgb3BhY2l0eT0iLjQ2IiBkPSJNMCAzNzRjMjU0IDkgNDYxLTEwIDY5Ny02IDE5MCA0IDM1MyAxMyA1NDQgNiAxMzUtNSAyNTAtMyAzNTkgMXY4Yy0yMzItNC00MTkgNS02MDMgMy0xODAtMi0zNjAtMTAtNTQzLTYtMTc4IDQtMjk0IDYtNDU0IDF6Ii8+Cjwvc3ZnPgo=");
  background-position: center bottom, center bottom;
  background-repeat: no-repeat;
  background-size: 100% 100%, 100% auto;
}
body[dir="rtl"] footer .bg_footer > .container {
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  body[dir="rtl"] footer .bg_footer {
    background-position: center bottom, right bottom;
    background-size: 100% 100%, auto 255px;
  }
}

/* Phone layout: keep the animated mark in view and give every service its own row. */
@media (max-width: 575px) {
  body[dir="rtl"] .slide_bg.fm-motion-hero {
    height: auto;
    margin: 0 0 30px;
    padding: 8px 0 0;
  }
  body[dir="rtl"] .fm-motion-hero .fm-hero-frame {
    width: min(calc(100% - 40px), 330px);
    overflow: visible;
  }
  body[dir="rtl"] .fm-motion-hero > .container {
    padding-inline: 18px;
  }
  body[dir="rtl"] .fm-motion-hero .content {
    position: static;
    width: 100%;
    text-align: center;
  }
  body[dir="rtl"] .fm-motion-hero .content .customTitle {
    font-size: clamp(1.9rem, 8vw, 2.65rem);
    line-height: 1.35;
  }
  body[dir="rtl"] .fm-motion-hero .content h1.fs_60 {
    font-size: clamp(1.2rem, 5vw, 1.65rem);
  }
  body[dir="rtl"] .fm-motion-hero .content p {
    font-size: .98rem;
    line-height: 1.8;
    margin: 10px auto 0 !important;
  }
  body[dir="rtl"] .fm-motion-hero .fm-hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: min(100%, 340px);
    gap: 9px;
    margin: 18px auto 0;
  }
  body[dir="rtl"] .fm-motion-hero .fm-hero-actions .fm-action {
    width: 100%;
    min-height: 44px;
  }
  body[dir="rtl"] section.my-5:has(> .our_services)::before,
  body[dir="rtl"] .News .news_bg::after { display: none; }
  body[dir="rtl"] .our_services { padding-inline: 12px; }
  body[dir="rtl"] .our_services #v-pills-tab {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
  body[dir="rtl"] .our_services #v-pills-tab > .nav-link {
    position: relative;
    inset: auto;
    display: flex;
    align-items: center;
    width: 100% !important;
    min-height: 58px;
    padding: 8px 12px;
    line-height: 1.45;
  }
  body[dir="rtl"] .our_services #v-pills-tab .icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
  }
  body[dir="rtl"] .our_services .tab-content { padding: 18px !important; }
  body[dir="rtl"] .our_services .tab-pane img.w-100 {
    max-height: 240px;
    object-fit: cover;
    border-radius: 12px;
  }
  body[dir="rtl"] footer .bg_footer {
    height: auto;
    min-height: 300px;
    padding: 105px 0 calc(20px + env(safe-area-inset-bottom));
    background-size: 100% 100%, auto 235px;
  }
  body[dir="rtl"] footer .bg_footer .row.g-5 { --bs-gutter-y: 14px; }
  body[dir="rtl"] footer .bg_footer > .container { margin-bottom: 0 !important; }
}
