/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 10 2025 | 08:23:04 */
/* ================================================
   LAYOUT & CONTAINER STYLES
   ================================================ */

/* Main container padding - creates responsive margins */
.e-con.e-parent {
  width: 100%;
  padding-left: max(5%, calc((100vw - 1570px) / 2));
  padding-right: max(5%, calc((100vw - 1570px) / 2));
}


/* ================================================
   NAVIGATION STYLES
   ================================================ */

/* Tablet and Desktop Navigation (768px+) */
@media (min-width: 768px) {
  /* Prevent fixed inline width after resize for horizontal nav */
  .hfe-nav-menu__layout-horizontal {
    width: auto !important;
  }
}

/* Mobile Navigation (767px and below) */
@media (max-width: 767px) {
  /* Mobile menu icon color */
  .hfe-nav-menu-icon svg {
    fill: var(--e-global-color-781c97d);
  }
}


/* ================================================
   HERO SECTION STYLES
   ================================================ */

/* Hero Header - Page Title */
.hero-header .elementor-widget-page-title a {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1.75px;
}

/* Hero Header - Main Heading with Gradient */
.hero-header h2.elementor-heading-title {
  line-height: 1.09;
  letter-spacing: -.9px;
  margin-top: 3px;
  margin-bottom: 3px;
  /* Gradient text effect */
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-image: linear-gradient(to left, #f68933, #f26532), 
                    linear-gradient(#f26532, #f26532);
}

/* Hero Header - Body Text */
.hero-header .elementor-widget-text-editor {
  line-height: 2;
  letter-spacing: .4px;
  font-size: 1.125em;
}

/* Hero Section - CTA Button */
.elementor-widget-button .elementor-button {
  padding: 24px 40px;
  background-image: linear-gradient(to left, #f68933, #f26532);
  font-size: 20px;
  letter-spacing: -.4px;
  text-decoration: none;
}


/* ================================================
   HERO ARROW ANIMATION
   ================================================ */

/* Center hero arrow horizontally */
.hero-arrow {
  transform: translateX(-50%) !important;
}

/* Default floating animation for hero arrow */
.hero-arrow .elementor-icon {
  animation: fm-float 2.2s ease-in-out infinite;
  will-change: transform;
}

/* Mobile-specific hero arrow adjustments */
@media (max-width: 767px) {
  .hero-arrow {
    align-items: center;
  }
  
  /* Faster animation on mobile for better visibility */
  .hero-arrow .elementor-icon {
    animation: fm-float 1.4s ease-in-out infinite !important;
  }
}

/* Floating animation keyframes */
@keyframes fm-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
}

/* Accessibility: Respect reduced motion preferences */
@media (prefers-reduced-motion: reduce) {
  .hero-arrow .elementor-icon {
    animation: none;
  }
}


/* ================================================
   FOOTER STYLES
   ================================================ */

/* Footer LinkedIn Icon */
.footer-contact svg.e-font-icon-svg.e-fab-linkedin {
  fill: var(--brand) !important;
  height: 3em;
  width: 3em;
  position: relative;
  display: block;
}


/* Desktop */
@media (min-width: 1025px) {
  h1, h2 {
    font-size: 4.0625em;
  }
}

/* Tablet and Mobile */
@media (max-width: 1024px) {
  h1, h2 {
    font-size: 2.625em;
  }
}