/* Extra styles for Uncode Child Theme */

/* ==========================================================================
   Google Fonts Import
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Droid+Serif:ital,wght@0,400;0,700;1,400&family=Lora:ital,wght@0,400..700;1,400..700&family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Quicksand:wght@300..700&family=Roboto+Condensed:ital,wght@0,300..900;1,300..900&family=Roboto:ital,wght@0,300;0,400;0,500;0,700;1,400&display=swap');

/* ==========================================================================
   Utility Font Classes (Available site-wide and inside WPBakery / Page Builders)
   ========================================================================== */

/* 1. Poppins */
.font-poppins,
.font-poppins * {
  font-family: 'Poppins', sans-serif !important;
}

/* 2. Droid Serif */
.font-droid-serif,
.font-droid-serif * {
  font-family: 'Droid Serif', serif !important;
}

/* 3. Playfair Display */
.font-playfair,
.font-playfair * {
  font-family: 'Playfair Display', serif !important;
}

/* 4. Roboto */
.font-roboto,
.font-roboto * {
  font-family: 'Roboto', sans-serif !important;
}

/* 5. Quicksand */
.font-quicksand,
.font-quicksand * {
  font-family: 'Quicksand', sans-serif !important;
}

/* 6. Lora */
.font-lora,
.font-lora * {
  font-family: 'Lora', serif !important;
}

/* 7. Roboto Condensed */
.font-roboto-condensed,
.font-roboto-condensed * {
  font-family: 'Roboto Condensed', sans-serif !important;
}

/* 8. Open Sans */
.font-open-sans,
.font-open-sans * {
  font-family: 'Open Sans', sans-serif !important;
}

/* ==========================================================================
   Footer Custom Styles (Targeted via #colophon & Footer Containers)
   ========================================================================== */
#colophon,
footer,
.site-footer,
.vc_custom_1698153263987 {
  border-top: 1px solid rgba(139, 92, 246, 0.25) !important;
  background: linear-gradient(135deg, #0d0614 0%, #160b28 45%, #08030f 100%) !important;
  padding-top: 30px !important;
  padding-bottom: 20px !important;
  transition: all 0.3s ease-in-out;
  position: relative;
  overflow: hidden;
}

#colophon::before,
.vc_custom_1698153263987::before {
  content: '';
  position: absolute;
  top: 0;
  left: -20%;
  width: 140%;
  height: 1px;
  background: linear-gradient(90deg, transparent, #ec4899, #8b5cf6, #3b82f6, transparent);
  opacity: 0.8;
}

#colophon .heading-text h6,
#colophon .heading-text h3,
.vc_custom_1698153263987 .heading-text h6,
.vc_custom_1698153263987 .heading-text h3 {
  letter-spacing: 1.2px;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 20px;
  position: relative;
  display: inline-block;
  color: #f3e8ff !important;
  font-size: 19px !important;
}

#colophon .heading-text h3::after,
.vc_custom_1698153263987 .heading-text h3::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 35px;
  height: 2px;
  background: linear-gradient(90deg, #ec4899, #8b5cf6);
  border-radius: 2px;
  transition: width 0.3s ease;
}

#colophon .heading-text:hover h3::after,
.vc_custom_1698153263987 .heading-text:hover h3::after {
  width: 60px;
}

#colophon .uncode-vc-social .social-icon,
.vc_custom_1698153263987 .uncode-vc-social .social-icon {
  margin-right: 12px;
  transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

#colophon .uncode-vc-social .social-icon a,
.vc_custom_1698153263987 .uncode-vc-social .social-icon a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(139, 92, 246, 0.12);
  color: #e9d5ff;
  border: 1px solid rgba(236, 72, 153, 0.2);
  transition: all 0.3s ease;
}

#colophon .uncode-vc-social .social-icon:hover,
.vc_custom_1698153263987 .uncode-vc-social .social-icon:hover {
  transform: translateY(-4px);
}

#colophon .uncode-vc-social .social-icon:hover a,
.vc_custom_1698153263987 .uncode-vc-social .social-icon:hover a {
  background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%);
  color: #ffffff;
  border-color: transparent;
  box-shadow: 0 6px 18px rgba(236, 72, 153, 0.4);
}

/* Nav Menu Items & Bullet Icons */
.widget_nav_menu ul.menu li {
  margin-bottom: 12px;
  position: relative;
  list-style: none !important;
}

.widget_nav_menu ul.menu li a {
  color: #cbd5e1 !important;
  text-decoration: none;
  font-size: 0.95rem;
  display: inline-flex;
  align-items: center;
  transition: color 0.25s ease, transform 0.25s ease;
}

.widget_nav_menu ul.menu li a::before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 10px;
  border-top: 2px solid #ec4899;
  border-right: 2px solid #ec4899;
  transform: rotate(45deg);
  transition: transform 0.25s ease, border-color 0.25s ease;
}

.widget_nav_menu ul.menu li a:hover {
  color: #ffffff !important;
  transform: translateX(4px);
}

.widget_nav_menu ul.menu li a:hover::before {
  border-color: #8b5cf6;
  transform: rotate(45deg) translate(2px, -2px);
}

#colophon .uncode_text_column.text-lead,
.vc_custom_1698153263987 .uncode_text_column.text-lead {
  color: #cbd5e1;
  line-height: 1.75;
}

#colophon .uncode_text_column.text-lead a,
.vc_custom_1698153263987 .uncode_text_column.text-lead a {
  color: #ec4899;
  font-weight: 500;
  transition: color 0.2s ease;
}

#colophon .uncode_text_column.text-lead a:hover,
.vc_custom_1698153263987 .uncode_text_column.text-lead a:hover {
  color: #8b5cf6;
  text-decoration: underline;
}

/* ==========================================================================
   Footer Bottom Legal Bar & Copyright Styling (.footer-last)
   ========================================================================== */
#colophon .footer-last,
.footer-last {
  background: linear-gradient(135deg, #0d0614 0%, #160b28 45%, #08030f 100%) !important;
  border-top: 1px solid rgba(139, 92, 246, 0.25) !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.footer-last .ac-gf-footer-legal-copyright {
  color: #94a3b8;
  font-size: 0.85rem;
  line-height: 1.6;
  padding: 0;
  margin: 0;
  background: transparent !important;
  border: none !important;
}

.footer-last .ac-gf-footer-legal-copyright a {
  color: #cbd5e1 !important;
  text-decoration: none;
  font-weight: 400;
  padding: 0 4px;
  transition: color 0.25s ease, text-shadow 0.25s ease;
}

.footer-last .ac-gf-footer-legal-copyright a:hover {
  color: #ec4899 !important;
  text-shadow: 0 0 8px rgba(236, 72, 153, 0.4);
  text-decoration: none;
}

/* ==========================================================================
   Footer Logo Sizing & Entrance Animation (.footer-logo)
   ========================================================================== */
.footer-logo,
.footer-logo .single-wrapper,
.footer-logo .tmb,
.footer-logo .t-inside,
.footer-logo .t-entry-visual,
.footer-logo .t-entry-visual-tc,
.footer-logo .uncode-single-media-wrapper {
  display: inline-block !important;
  overflow: visible !important;
}

.footer-logo {
  animation: logoFadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.footer-logo img {
  max-width: 220px !important;
  height: auto !important;
  object-fit: contain !important;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), filter 0.3s ease !important;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.3));
}

.footer-logo:hover img {
  transform: scale(1.05) translateY(-2px) !important;
  filter: drop-shadow(0 6px 16px rgba(236, 72, 153, 0.45)) !important;
}

@keyframes logoFadeInUp {
  0% {
    opacity: 0;
    transform: translateY(18px) scale(0.95);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}



/* ==========================================================================
   BEGIN FLY-MENU MOBILE OFF-CANVAS STYLES
   ========================================================================== */

/* Menu items typography and link styling */
.fly-menu a {
  color: #e2e8f0 !important;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  display: inline-block;
  position: relative;
}

.fly-menu a:hover {
  color: #ffffff !important;
  transform: translateX(-6px);
  background: linear-gradient(135deg, #ffffff 0%, #ec4899 60%, #8b5cf6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Category & Title Section Headings */
.fly-menu .menu-smart,
.fly-menu .menu-accordion {
  margin-bottom: 25px;
}

.fly-menu .menu-smart > li,
.fly-menu .menu-accordion > li {
  margin-bottom: 16px;
}

/* Sub-menu items */
.fly-menu ul.sub-menu {
  margin-top: 10px;
  padding-left: 0;
}

.fly-menu ul.sub-menu li a {
  font-size: 0.95rem;
  font-weight: 400;
  color: #94a3b8 !important;
}

.fly-menu ul.sub-menu li a:hover {
  color: #ec4899 !important;
  -webkit-text-fill-color: initial;
}

/* Toggle close button */
.fly-menu .uncode-menu-toggle {
  margin-bottom: 20px;
}

.fly-menu .uncode-menu-toggle span {
  background-color: #ec4899 !important;
  border-radius: 2px;
}

/* Separators */
.fly-menu .vc_separator {
  border-color: rgba(139, 92, 246, 0.25) !important;
  margin: 20px 0 !important;
}

/* Social icons styling */
.fly-menu .uncode-vc-social .social-icon {
  margin-left: 10px;
  display: inline-block;
}

.fly-menu .uncode-vc-social .social-icon a {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(139, 92, 246, 0.15);
  border: 1px solid rgba(236, 72, 153, 0.25);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #e2e8f0 !important;
  transition: all 0.3s ease;
}

.fly-menu .uncode-vc-social .social-icon a:hover {
  background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%);
  color: #ffffff !important;
  transform: translateY(-3px);
  box-shadow: 0 6px 15px rgba(236, 72, 153, 0.4);
}

/* Mobile Responsiveness */
@media (max-width: 768px) {
  .fly-menu {
    padding: 25px 18px !important;
  }

  .fly-menu a {
    font-size: 1.35rem;
  }
}
/* ==========================================================================
   END FLY-MENU MOBILE OFF-CANVAS STYLES
   ========================================================================== */

/* ==========================================================================
   Horizontal & Sidebar Navigation Menu Sizing (.menu-horizontal-inner, .menu-sidebar-inner, .uncb-86865)
   ========================================================================== */
.menu-horizontal-inner,
.menu-sidebar-inner,
.uncb-86865 {
  font-size: 0.9rem !important;
}

.menu-horizontal-inner .unmenu-title,
.menu-horizontal-inner .unmenu-title span,
.menu-horizontal-inner .menu-item-link > a,
.menu-horizontal-inner .menu-item-link > div,
.menu-sidebar-inner .unmenu-title,
.menu-sidebar-inner .unmenu-title span,
.menu-sidebar-inner .menu-item-link > a,
.menu-sidebar-inner .menu-item-link > div,
.uncb-86865 .unmenu-title,
.uncb-86865 .unmenu-title span,
.uncb-86865 .menu-item-link > a,
.uncb-86865 .menu-item-link > div {
  font-size: 2.2rem !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
}

/* Sub-menu font size and spacing adjustments */
.menu-horizontal-inner ul.sub-menu,
.menu-sidebar-inner ul.sub-menu,
.uncb-86865 ul.sub-menu {
  padding: 12px 0 !important;
}

.menu-horizontal-inner ul.sub-menu li.menu-item a,
.menu-horizontal-inner ul.sub-menu li.menu-item a span,
.menu-sidebar-inner ul.sub-menu li.menu-item a,
.menu-sidebar-inner ul.sub-menu li.menu-item a span,
.uncb-86865 ul.sub-menu li.menu-item a,
.uncb-86865 ul.sub-menu li.menu-item a span {
  font-size: 0.95rem !important;
  line-height: 1.5 !important;
  font-weight: 500 !important;
  letter-spacing: 0.2px !important;
  color: #cbd5e1 !important;
  transition: color 0.25s ease, transform 0.25s ease !important;
}

.menu-horizontal-inner ul.sub-menu li.menu-item a:hover,
.menu-horizontal-inner ul.sub-menu li.menu-item a:hover span,
.menu-sidebar-inner ul.sub-menu li.menu-item a:hover,
.menu-sidebar-inner ul.sub-menu li.menu-item a:hover span,
.uncb-86865 ul.sub-menu li.menu-item a:hover,
.uncb-86865 ul.sub-menu li.menu-item a:hover span {
  color: #ec4899 !important;
}

/* Gradient hover text effect for top-level menu items (CREATIVE, TECHNOLOGY, EVENTS, etc.) */
.menu-horizontal-inner .unmenu-title:hover,
.menu-horizontal-inner .unmenu-title:hover span,
.menu-horizontal-inner .menu-item-link > a:hover,
.menu-horizontal-inner .menu-item-link > a:hover span,
.menu-sidebar-inner .unmenu-title:hover,
.menu-sidebar-inner .unmenu-title:hover span,
.menu-sidebar-inner .menu-item-link > a:hover,
.menu-sidebar-inner .menu-item-link > a:hover span,
.uncb-86865 .unmenu-title:hover,
.uncb-86865 .unmenu-title:hover span,
.uncb-86865 .menu-item-link > a:hover,
.uncb-86865 .menu-item-link > a:hover span {
  background: linear-gradient(135deg, #ffffff 0%, #ec4899 50%, #8b5cf6 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  transition: all 0.3s ease !important;
}

/* ==========================================================================
   Mobile Fly Menu Styles (.mobile-fly)
   ========================================================================== */
.mobile-fly a,
.mobile-fly .unmenu-title,
.mobile-fly .unmenu-title span,
.mobile-fly .menu-item-link > a,
.mobile-fly .menu-item-link > div {
  font-size: 1.54rem !important;
  line-height: 1.2 !important;
  color: #e2e8f0 !important;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: inline-block;
  position: relative;
}

/* Gradient hover text effect for .mobile-fly top-level links & titles */
.mobile-fly .unmenu-title:hover,
.mobile-fly .unmenu-title:hover span,
.mobile-fly a:hover,
.mobile-fly a:hover span {
  background: linear-gradient(135deg, #ffffff 0%, #ec4899 50%, #8b5cf6 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  transform: translateY(-2px);
}

/* Sub-menu items inside .mobile-fly (Reduced 30%) */
.mobile-fly ul.sub-menu li a,
.mobile-fly ul.sub-menu li a span {
  font-size: 0.67rem !important;
  font-weight: 400 !important;
  color: #94a3b8 !important;
}

.mobile-fly ul.sub-menu li a:hover,
.mobile-fly ul.sub-menu li a:hover span {
  color: #ec4899 !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
}

/* Contact button & Opening hours inside .mobile-fly */
.mobile-fly .vc_button {
  background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 6px 18px rgba(236, 72, 153, 0.35);
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.mobile-fly .vc_button:hover {
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 10px 25px rgba(236, 72, 153, 0.5) !important;
}

.mobile-fly .uncode_text_column {
  color: #cbd5e1 !important;
  font-size: 0.9rem;
  margin-top: 15px;
}

.mobile-fly .uncode-vc-social .social-icon a {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #e2e8f0 !important;
  transition: all 0.3s ease;
}

.fly-menu .uncode-vc-social .social-icon a:hover,
.mobile-fly .uncode-vc-social .social-icon a:hover,
.menu-sidebar-inner .uncode-vc-social .social-icon a:hover,
.uncb-86865 .uncode-vc-social .social-icon a:hover,
.uncode-vc-social .social-icon a:hover {
  background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
  border-color: transparent !important;
  transform: translateY(-3px) scale(1.1) !important;
  box-shadow: 0 6px 20px rgba(236, 72, 153, 0.5) !important;
}

.fly-menu .uncode-vc-social .social-icon a:hover i,
.mobile-fly .uncode-vc-social .social-icon a:hover i,
.menu-sidebar-inner .uncode-vc-social .social-icon a:hover i,
.uncb-86865 .uncode-vc-social .social-icon a:hover i,
.uncode-vc-social .social-icon a:hover i,
.fly-menu .uncode-vc-social .social-icon a:hover i::before,
.mobile-fly .uncode-vc-social .social-icon a:hover i::before,
.menu-sidebar-inner .uncode-vc-social .social-icon a:hover i::before,
.uncb-86865 .uncode-vc-social .social-icon a:hover i::before,
.uncode-vc-social .social-icon a:hover i::before {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}



/* ==========================================================================
   Page Hero Header Title Styling & Dark Overlay Background
   ========================================================================== */
.header-wrapper,
.header-basic,
.main-header {
  position: relative;
}

/* Semi-transparent 70% dark overlay layer sitting on top of the background image */
.header-wrapper .header-bg-overlay,
.header-basic .header-bg-overlay,
.header-content .header-bg-overlay,
.header-bg .header-bg-overlay,
.header-wrapper .block-bg-overlay,
.header-bg .block-bg-overlay,
.header-overlay {
  background: linear-gradient(135deg, rgba(8, 4, 14, 0.7) 0%, rgba(22, 11, 40, 0.7) 50%, rgba(5, 2, 10, 0.7) 100%) !important;
  opacity: 0.7 !important;
  display: block !important;
}




.header-content-inner {
  position: relative;
  z-index: 5 !important;
}

.header-content.header-bottom,
.header-content.header-center {
  justify-content: center !important;
  align-items: center !important;
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

.header-content-inner,
.header-align-center .header-content-inner {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.header-content-inner,
.custom-header-hero-title,
h1.header-title,
h1.header-title span {
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  transition: none !important;
}

.custom-header-hero-title,
h1.header-title {
  position: relative;
  display: inline-block;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  letter-spacing: -0.5px !important;
  line-height: 1.4 !important;
  overflow: visible !important;
}

.custom-header-hero-title span,
h1.header-title span {
  background: linear-gradient(135deg, #ffffff 0%, #f3e8ff 40%, #ec4899 80%, #8b5cf6 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  text-align: center;
  line-height: 1.4 !important;
  padding-top: 6px !important;
  padding-bottom: 12px !important;
  transition: transform 0.3s ease, filter 0.3s ease;
  filter: drop-shadow(0 4px 15px rgba(236, 72, 153, 0.45)) drop-shadow(0 2px 25px rgba(139, 92, 246, 0.35));
}

.custom-header-hero-title:hover span,
h1.header-title:hover span {
  transform: translateY(-2px);
}

/* ==========================================================================
   Full-Width Header Bottom Shape Divider Line (White & Increased Height)
   ========================================================================== */
.header-wrapper,
.header-basic,
.main-header {
  position: relative;
}

.header-wrapper::after,
.header-basic::after,
.main-header::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8px !important;
  background: #ffffff !important;
  box-shadow: 0 -2px 15px rgba(255, 255, 255, 0.4);
  z-index: 10;
  pointer-events: none;
}

/* ==========================================================================
   Global Button Sizing (+20% Size Boost) & Premium Styling (.btn)
   ========================================================================== */
.btn,
a.btn,
button.btn,
input[type="submit"].btn,
.vc_button,
a.vc_button {
  padding: 14px 32px !important;
  font-size: 1.08rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  border-radius: 50px !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Primary Accent Buttons Custom Gradient Styling */
.btn-accent,
a.btn-accent,
.btn.btn-accent {
  background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
  color: #ffffff !important;
  border: none !important;
}

/* Global Button Hover & Active Micro-Interactions */
.btn:hover,
a.btn:hover,
button.btn:hover,
input[type="submit"].btn:hover,
.vc_button:hover,
a.vc_button:hover,
.btn:hover span,
a.btn:hover span,
button.btn:hover span,
input[type="submit"].btn:hover span,
.vc_button:hover span,
a.vc_button:hover span,
.btn:hover i,
a.btn:hover i,
.btn-accent:hover,
a.btn-accent:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  transform: translateY(-3px) scale(1.05) !important;
  box-shadow: 0 12px 28px rgba(236, 72, 153, 0.45) !important;
}

.btn:active,
a.btn:active {
  transform: translateY(-1px) scale(1.02) !important;
}

/* Dedicated Hover Styling for Light/White Buttons (.btn-color-xsdn / #styleme) */
.btn-color-xsdn:hover,
a.btn-color-xsdn:hover,
#styleme:hover,
.btn-color-xsdn:hover span,
a.btn-color-xsdn:hover span,
#styleme:hover span,
.btn-color-xsdn:hover i,
a.btn-color-xsdn:hover i,
#styleme:hover i {
  color: #8b5cf6 !important;
  -webkit-text-fill-color: #8b5cf6 !important;
  border-color: #8b5cf6 !important;
  box-shadow: 0 12px 28px rgba(139, 92, 246, 0.4) !important;
}

/* ==========================================================================
   Accent Sub-Heading Font Sizing (+20% Size Boost) (.fontsize-160000)
   ========================================================================== */
.heading-text h6.fontsize-160000,
h6.fontsize-160000,
.fontsize-160000 {
  font-size: 1.2rem !important;
  letter-spacing: 1.5px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
}

/* ==========================================================================
   Prominent Circular Footer Scroll-To-Top Button (.footer-scroll-top)
   ========================================================================== */
.footer-scroll-top {
  position: fixed !important;
  bottom: 30px !important;
  right: 30px !important;
  z-index: 9999 !important;
}

.footer-scroll-top a.scroll-top,
.footer-scroll-top .scroll-top {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #ec4899 0%, #8b5cf6 100%) !important;
  box-shadow: 0 8px 25px rgba(236, 72, 153, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.2) !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-decoration: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.footer-scroll-top .scroll-top i,
.footer-scroll-top .scroll-top i.fa,
.footer-scroll-top .scroll-top i.fa-stack {
  color: #ffffff !important;
  font-size: 22px !important;
  line-height: 52px !important;
  height: 52px !important;
  width: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transition: transform 0.3s ease !important;
}

/* Hover & Micro-Interaction Glow */
.footer-scroll-top a.scroll-top:hover,
.footer-scroll-top .scroll-top:hover {
  transform: translateY(-5px) scale(1.1) !important;
  box-shadow: 0 14px 35px rgba(236, 72, 153, 0.65), 0 0 20px rgba(139, 92, 246, 0.5) !important;
}

.footer-scroll-top .scroll-top:hover i {
  transform: translateY(-2px) !important;
}

/* ==========================================================================
   Bottom CTA Section Video Background (.custom-bottom-cta-video-wrap)
   ========================================================================== */
.custom-bottom-cta-video-wrap {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background: #0d0614 !important;
}

.custom-bottom-cta-video-wrap video {
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  opacity: 0.75 !important;
  filter: brightness(0.85) contrast(1.1) !important;
}

.custom-video-cta-row {
  position: relative !important;
  overflow: hidden !important;
}

/* Force inner text columns & buttons above video layer inside custom-video-cta-row */
.custom-video-cta-row > .row-inner,
.custom-video-cta-row .column_child,
.custom-video-cta-row .vc_column_container,
.custom-video-cta-row .row-inner,
.custom-video-cta-row .uncode-single-media,
.custom-video-cta-row .btn-container {
  position: relative !important;
  z-index: 2 !important;
}

/* ==========================================================================
   Always Center Post Title Elements (.post-title)
   ========================================================================== */
h1.post-title,
.post-title,
.post-title span,
.entry-title.post-title {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
}





















