@import url('https://fonts.googleapis.com/css2?family=Dancing+Script:wght@600;700&family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600&display=swap');

:root {
  --primary: #0f2385;
  --primary-hover: #0a1860;
  --secondary: #3269ff;
  --secondary-hover: #2554d6;
  --dark: #040922;
  --text-main: #1e293b;
  --text-muted: #64748b;
  --bg-light: #f8fafc;
}

body {
  font-family: 'Plus Jakarta Sans', sans-serif;
  color: var(--text-main);
  background-color: #ffffff;
  overflow-x: hidden;
}

.font-script {
  font-family: 'Dancing Script', cursive;
}

/* =========================================================================
   HEADER & NAVIGATION OPTIMIZATIONS (Clean, Spaced, No Wrapping)
   ========================================================================= */

#main-header {
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Scrolled state */
.header-scrolled {
  background-color: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.08), 0 2px 6px -2px rgba(15, 23, 42, 0.04) !important;
  border-bottom: 1px solid rgba(226, 232, 240, 0.8) !important;
  height: 74px !important;
}

.header-scrolled .nav-link-item {
  color: #1e293b !important;
}

.header-scrolled .nav-link-item:hover {
  color: #3269ff !important;
}

.header-scrolled .logo-white {
  display: none !important;
}

.header-scrolled .logo-dark {
  display: block !important;
}

.header-scrolled .lang-toggle {
  border-color: rgba(203, 213, 225, 0.9) !important;
  background-color: rgba(241, 245, 249, 0.85) !important;
  color: #1e293b !important;
}

.header-scrolled .header-cta-btn {
  background-color: var(--primary) !important;
  color: #ffffff !important;
  border-color: var(--primary) !important;
  box-shadow: 0 4px 14px rgba(15, 35, 133, 0.25) !important;
}

.header-scrolled .mobile-menu-trigger {
  color: #0f172a !important;
}

/* Navigation active indicator */
.nav-link-active {
  color: #3269ff !important;
  font-weight: 700 !important;
  position: relative;
}

.nav-link-active::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 0;
  width: 100%;
  height: 2.5px;
  background: #3269ff;
  border-radius: 99px;
}

/* Modern Dropdown Animation */
.dropdown-menu {
  transform: translateY(10px) scale(0.98);
  opacity: 0;
  visibility: hidden;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  pointer-events: none;
}

.group:hover .dropdown-menu {
  transform: translateY(0) scale(1);
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* =========================================================================
   BACKGROUND MASKS & VISUALS
   ========================================================================= */
.mbws-bg-mask {
  position: relative;
}

.mbws-bg-mask::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,%3Csvg%20width%3D%221920%22%20height%3D%22954%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url%28%23prefix__clip0_75_23031%29%22%20fill%3D%22rgba%2815%2C35%2C133%2C1%29%22%3E%3Cpath%20d%3D%22M1321.57%20538C1357.08%20287.516%201273.7%2089.91%201127-.418L1374.18-6c65.77%20100.68-15.89%20431.512-52.61%20544zM312%20955c432.242%200%20746.77-180.667%20850-271-90.34%20157.09-176.766%20246.121-208.688%20271H312z%22%20fill%3D%22rgba%2866%2C90%2C158%2C1%29%22%20fill-opacity%3D%22.25%22%2F%3E%3Cpath%20d%3D%22M1344.5%20427c0-252.4-212.67-390.833-319-428.5H1373c70%2082.4%2010.17%20320-28.5%20428.5z%22%20fill%3D%22rgba%2866%2C90%2C158%2C1%29%22%20fill-opacity%3D%22.1%22%2F%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M839.644%20954C1138.37%20793.549%201337%20508.902%201337%20184.5c0-63.218-7.54-124.926-21.9-184.5H1920v954H839.644zm0%200C676.842%201041.44%20484.311%201092%20278%201092c-584.87%200-1059-406.302-1059-907.5S-306.87-723%20278-723c511.098%200%20937.63%20310.269%201037.1%20723H0v954h839.644z%22%20fill%3D%22rgba%2866%2C90%2C158%2C1%29%22%20fill-opacity%3D%22.5%22%2F%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M1011.55%20954C1221.42%20793.95%201353%20564.007%201353%20308.5c0-108.584-23.76-212.552-67.2-308.5H1920v954h-908.45zm0%200c-187.291%20142.83-436.933%20230-711.05%20230C-280.78%201184-752%20792.025-752%20308.5S-280.78-567%20300.5-567c450.743%200%20835.31%20235.692%20985.3%20567H0v954h1011.55z%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22prefix__clip0_75_23031%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%200h1920v954H0z%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E");
  background-size: cover;
  background-position: center top;
  transform: scale(-1, -1);
  pointer-events: none;
  z-index: 0;
}

.mbws-bg-mask-dark::before {
  opacity: 0.15;
}

.mbws-bg-mask-light::before {
  opacity: 0.05;
}

.mbws-bg-mask-2 {
  position: relative;
}

.mbws-bg-mask-2::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml;utf8,%3Csvg%20width%3D%221920%22%20height%3D%22954%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url%28%23prefix__clip0_58_745%29%22%20fill%3D%22rgba%2815%2C35%2C133%2C1%29%22%3E%3Cpath%20d%3D%22M250.018-408.977c69.019-18.494%20142.66%201.238%20193.185%2051.763L718.31-82.107c50.525%2050.525%2070.258%20124.167%2051.764%20193.185L669.378%20486.881c-18.493%2069.019-72.403%20122.928-141.421%20141.422L152.154%20728.999c-69.019%2018.493-142.66-1.239-193.186-51.764l-275.106-275.107c-50.525-50.525-70.258-124.167-51.764-193.185l100.696-375.803c18.493-69.018%2072.403-122.928%20141.421-141.421l375.803-100.696zM1646.73%201264.15c33.13%208.88%2068.48-.59%2092.73-24.84l147.89-147.89a96.031%2096.031%200%200024.85-92.732l-54.13-202.022a96.012%2096.012%200%2000-67.89-67.882l-202.02-54.132c-33.13-8.877-68.47.595-92.73%2024.847l-147.89%20147.89a95.994%2095.994%200%2000-24.84%2092.729l54.13%20202.022a95.967%2095.967%200%200067.88%2067.88l202.02%2054.13zM1572.48%20252.659a23.996%2023.996%200%200023.18%206.211l50.5-13.533a23.97%2023.97%200%200016.97-16.97l13.54-50.506a24.004%2024.004%200%2000-6.21-23.182l-36.98-36.973a23.993%2023.993%200%2000-23.18-6.211l-50.5%2013.533a24%2024%200%2000-16.98%2016.97l-13.53%2050.506a24.004%2024.004%200%20006.21%2023.182l36.98%2036.973z%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22prefix__clip0_58_745%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%200h1920v954H0z%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E");
  background-size: cover;
  background-position: center;
  pointer-events: none;
  z-index: 0;
}

.mbws-bg-gradient {
  background-image: linear-gradient(152deg, rgb(255, 233, 179) 0%, rgb(210, 195, 244) 70%);
}

/* Divider shape */
.shape-divider-curve {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}

.shape-divider-curve svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 35px;
}

@media (min-width: 640px) {
  .shape-divider-curve svg {
    height: 50px;
  }
}

.shape-divider-curve .shape-fill {
  fill: #FFFFFF;
}

/* =========================================================================
   RESPONSIVE UTILITIES & TOUCH OPTIMIZATIONS
   ========================================================================= */

/* Hide scrollbar for Chrome, Safari and Opera */
.scrollbar-none::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.scrollbar-none {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

/* Mobile Touch Tap Targets */
@media (max-width: 1023px) {
  .mobile-nav-link {
    min-height: 44px;
    display: flex;
    align-items: center;
  }
}

/* Smooth Image scaling */
img {
  max-width: 100%;
  height: auto;
}

/* Prevent horizontal body overflow across all devices */
html, body {
  max-width: 100vw;
  overflow-x: hidden;
}
