:root {
  --booking-ink: var(--color-ink, #1e1e2e);
  --booking-surface: var(--color-white, #fff);
  --booking-muted: var(--color-graphite, #777b86);
}
.company-disclosure, .egypt-disclosure { color: var(--booking-muted); font-size: 13px; line-height: 1.8; margin-top: 16px; }
.company-footer { max-width: 1160px; margin-inline: auto; padding: 24px; font: inherit; }
.company-footer .footer-contacts { display: flex; flex-wrap: wrap; gap: 12px 20px; font-size: 14px; }
.company-footer a { color: inherit; }
.pricing-services-link { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.booking-actions { display: flex !important; flex-wrap: wrap; align-items: center; gap: 12px; }
.booking-actions--center { justify-content: center; }
a.booking-primary, a.booking-secondary {
  display: inline-flex !important; align-items: center; justify-content: center;
  min-height: 48px; padding: 12px 24px !important; border-radius: 9999px;
  font: inherit; font-size: 15px !important; font-weight: 600; line-height: 1.5;
  text-decoration: none; text-align: center; white-space: normal;
  box-sizing: border-box; max-width: 100%; margin: 0;
}
a.booking-primary { background: var(--booking-ink) !important; color: var(--booking-surface) !important; border: 1px solid var(--booking-muted) !important; }
a.booking-secondary { background: transparent !important; color: var(--booking-ink) !important; border: 1px solid currentColor !important; }
#contact a.booking-secondary { color: var(--booking-surface) !important; }
a.booking-primary:hover, a.booking-secondary:hover { opacity: .85; }
a.booking-primary:focus-visible, a.booking-secondary:focus-visible { outline: 2px solid var(--color-primary, currentColor); outline-offset: 4px; }
.booking-helper { color: var(--booking-muted); font-size: 14px; line-height: 1.8; margin-top: 12px; }
.booking-header-actions { display: flex; gap: 8px; align-items: center; }
.booking-header-actions.header-cta-wrap { opacity: 1 !important; transform: none !important; pointer-events: auto !important; max-width: none !important; overflow: visible !important; margin-inline-start: 0 !important; flex-shrink: 0; }
.booking-header-actions a { padding: 10px 16px !important; font-size: 14px !important; white-space: nowrap; }
body > header a.booking-primary, body > header a.booking-secondary { padding: 10px 16px !important; font-size: 14px !important; }
body > header a.booking-primary { background: var(--booking-ink) !important; border: 1px solid var(--booking-muted) !important; }
body > header a.booking-secondary { background: transparent !important; color: var(--booking-ink) !important; border: 1px solid currentColor !important; }
body > header a.booking-primary:focus-visible, body > header a.booking-secondary:focus-visible { outline: 2px solid var(--color-primary) !important; }
.booking-menu-item { list-style: none; width: 100%; }
.booking-menu-item a { width: 100%; }
header > nav { gap: 12px; }
header > nav > ul { gap: 12px !important; }
header > nav > ul a { font-size: 14px; white-space: nowrap; }
nav.nav { gap: 16px; flex-wrap: wrap; }
nav.nav img { max-width: 100%; }
@media (min-width: 768px) and (max-width: 1199px) {
  header > nav > ul { display: none !important; }
  header > nav button[aria-label="القائمة"] { display: inline-flex !important; }
}
@media (max-width: 767px) {
  main > section:first-of-type h1 > span:has(.rotating-word) {
    display: flex !important; align-items: center; justify-content: center; gap: .2em;
    width: 100%; height: 1.5em; line-height: 1.5; white-space: nowrap !important;
  }
  main > section:first-of-type h1 .rotating-word {
    animation: none !important; opacity: 1 !important; transform: none !important;
    color: var(--booking-ink) !important; line-height: 1.5;
  }
  main > section:first-of-type h1 > span:has(.rotating-word) + br { display: none; }
  .booking-header-actions { display: none !important; }
  .booking-actions { flex-direction: column; align-items: stretch; width: 100%; }
  .booking-actions > a { width: 100%; }
  main > section:first-of-type div.mt-6.booking-actions > a.btn-primary { width: 100% !important; }
}
@media (min-width: 768px) {
  main > section:first-of-type > div > div.hero-booking-copy {
    flex-direction: column !important; align-items: center !important; gap: 0 !important;
  }
  main > section:first-of-type .hero-booking-row {
    flex-direction: row !important; flex-wrap: nowrap !important; justify-content: center !important;
    direction: rtl; width: 100% !important;
  }
  main > section:first-of-type .hero-booking-copy > .booking-helper {
    width: 100%; white-space: nowrap; text-align: center; margin-top: 12px;
  }
  main > section:first-of-type div.mt-6.booking-actions { flex-direction: row !important; }
  main > section:first-of-type div.mt-6.booking-actions > a.btn-primary { width: auto !important; }
}
@media (min-width: 1200px) { body > header:has(.booking-header-actions) { width: 90% !important; max-width: 1200px !important; } }
@media (max-width: 860px) { nav.nav > .booking-header-actions { display: none !important; } }

@font-face { font-family: "Some Supplier Country Flags"; src: url("/landing/country-flags.ttf") format("truetype"); unicode-range: U+1F1E6-1F1FF; font-display: swap; }
/* Reuse the existing SHIFT quote and metrics directly above the story cards. */
.operating-countries { overflow: hidden; margin-top: 24px; display: flex; flex-direction: column; gap: 16px; }
.operating-countries .cm-container { display: flex; gap: 16px; overflow: hidden; direction: ltr; }
.operating-countries .cm-inner { display: flex; flex-shrink: 0; align-items: center; gap: 16px; animation: operatingCountriesScroll 32s linear infinite; }
.operating-countries .cm-container:nth-child(2) .cm-inner { animation-direction: reverse; animation-duration: 38s; }
.operating-countries .country-pill { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; width: 123px; height: 45px; border-radius: 999px; font-size: 15px; font-weight: 500; font-family: "Some Supplier Country Flags", "Tajawal", sans-serif; color: var(--booking-ink); background: var(--booking-surface); border: 1px solid var(--color-mist, var(--booking-muted)); }
.operating-countries .country-pill--dark { color: var(--booking-surface); background: var(--booking-ink); }
@keyframes operatingCountriesScroll { from { transform: translateX(0); } to { transform: translateX(calc(-100% - 16px)); } }
@media (prefers-reduced-motion: reduce) { .operating-countries .cm-inner { animation: none; } }
#success .success-featured { margin-bottom: 32px; }
#success .success-featured .ts-card { grid-area: auto; }
#success .success-featured .ts-stats { margin-top: 24px; margin-bottom: 32px; }
body:has(#success .success-featured) .ts-wrap .ts-card,
body:has(#success .success-featured) .ts-wrap .ts-stats { display: none; }
body:has(#success .success-featured) .ts-wrap .ts-grid { grid-template-areas: "title black"; }
@media (max-width: 767px) {
  body:has(#success .success-featured) .ts-wrap .ts-grid { grid-template-areas: "title" "black"; }
  #success .stories-grid { display: flex !important; gap: 12px !important; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 40px; padding-inline: 40px; margin-inline: -16px; scrollbar-width: none; }
  #success .stories-grid > a { flex: 0 0 calc(100% - 80px); scroll-snap-align: center; }
  #success .stories-grid::-webkit-scrollbar { display: none; }
}