/* assets/css/style.css */
@theme {
  --color-orange-50: #fff7ed;
  --color-orange-100: #ffedd5;
  --color-orange-200: #fed7aa;
  --color-orange-300: #fdba74;
  --color-orange-400: #fb923c;
  --color-orange-500: #f97316;
  --color-orange-600: #ea580c;
  --color-orange-700: #c2410c;
}



/* Base Styles */
html {
  scroll-behavior: smooth;
}

/* Header Styling */
#masthead.scrolled {
  @apply shadow-md bg-white/95 backdrop-blur-md;
}

/* WordPress Menu Styling - target wp_nav_menu() output */
#site-navigation ul {
  @apply flex items-center space-x-6 m-0 p-0 list-none;
}
#site-navigation > ul > li > a {
  @apply text-slate-700 font-semibold text-sm tracking-wide transition-colors duration-200 uppercase;
}
#site-navigation > ul > li > a:hover,
#site-navigation > ul > li.current-menu-item > a {
  @apply text-orange-600;
}



/* Dropdown Sub-menu */
#site-navigation ul.sub-menu {
  @apply hidden absolute top-full left-0 w-48 bg-white shadow-xl rounded-xl py-2 mt-2 z-50 border border-slate-100 opacity-0 translate-y-2 transition-all duration-300;
}
#site-navigation > ul > li.menu-item-has-children:hover > ul.sub-menu {
  @apply block opacity-100 translate-y-0;
}
#site-navigation ul.sub-menu a {
  @apply block px-4 py-2 text-sm text-slate-700 hover:text-orange-600 hover:bg-orange-50 font-medium;
}

/* Mobile Menu */
#mobile-menu-panel.active {
  @apply block;
}
#mobile-menu-panel ul > li > a {
  @apply block px-4 py-3 text-base font-semibold text-slate-800 hover:text-orange-600 hover:bg-orange-50 rounded-lg transition-colors;
}

/* FluentForm overrides */
.fluentform-wrapper .fluentform {
  @apply max-w-none !important;
}
.fluentform-wrapper .ff-el-form-control {
  @apply px-4 py-3 bg-slate-50 border border-slate-200 rounded-xl focus:outline-none focus:ring-2 focus:ring-orange-500 focus:border-orange-500 focus:bg-white w-full transition-all text-slate-800 !important;
}
.fluentform-wrapper .ff-el-is-required {
  @apply text-orange-600 !important;
}
.fluentform-wrapper .ff-btn-submit {
  @apply w-full sm:w-auto px-8 py-4 bg-orange-600 text-white rounded-xl hover:bg-orange-700 font-semibold transition-colors shadow-sm cursor-pointer border-0 !important;
}
.fluentform .ff-message-success {
  @apply bg-emerald-50 border border-emerald-100 text-emerald-800 p-5 rounded-2xl font-semibold text-[15px] my-4 shadow-sm border-l-4 border-l-emerald-500 text-center transition-all duration-300 !important;
}
.fluentform .ff-message-danger,
.fluentform .ff-errors-in-stack,
.fluentform .ff-message-error {
  @apply bg-rose-50 border border-rose-100 text-rose-800 p-5 rounded-2xl font-semibold text-[15px] my-4 shadow-sm border-l-4 border-l-rose-500 text-center transition-all duration-300 !important;
}


/* Screen Reader Text Fallback */
.screen-reader-text {
  @apply sr-only;
}

/* Pagination Custom */
.navigation.pagination {
  @apply w-full flex justify-center mt-12;
}
.navigation.pagination .nav-links {
  @apply flex items-center gap-2;
}
.navigation.pagination .page-numbers {
  @apply inline-flex items-center justify-center w-10 h-10 rounded-lg text-sm font-semibold text-slate-700 bg-white border border-slate-200 hover:bg-orange-50 hover:text-orange-600 transition-colors;
}
.navigation.pagination .page-numbers.current {
  @apply text-white bg-orange-600 border-orange-600;
}

/* Hide scrollbars for slider container */
.scrollbar-none::-webkit-scrollbar {
  display: none;
}
.scrollbar-none {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

/* Force images in aspect-ratio card containers to fill container correctly */
.aspect-\[4\/3\] img,
.aspect-square img {
  object-fit: cover !important;
  height: 100% !important;
  width: 100% !important;
}

/* Partner Swiper Slider Shared Styles */
.partner-swiper {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.partner-swiper .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1024px) {
  .partner-swiper .swiper-slide {
    width: auto !important;
  }
}
.partner-nav-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #fff;
  border: 1.5px solid #e2e8f0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  color: #1e3a5f;
}
.partner-nav-btn:hover {
  background: #f93f35;
  border-color: #f93f35;
  color: #fff;
  box-shadow: 0 4px 12px rgba(249,63,53,0.25);
}
.partner-nav-btn svg {
  width: 14px;
  height: 14px;
  stroke-width: 2.5;
}
@media (min-width: 480px) {
  .partner-nav-btn {
    width: 36px;
    height: 36px;
  }
  .partner-nav-btn svg {
    width: 16px;
    height: 16px;
  }
}
.partner-btn-prev { left: 0; }
.partner-btn-next { right: 0; }
.partner-swiper-wrapper {
  position: relative;
  padding: 0 32px;
}
@media (min-width: 480px) {
  .partner-swiper-wrapper {
    padding: 0 44px;
  }
}

