.elementor-kit-40{--e-global-color-primary:#094F9B;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-be5b4d4:#0E1A2C;--e-global-color-9b64ac3:#E50328;--e-global-color-8120c9f:#E8EBF1;--e-global-color-14729b3:#FFFFFF;--e-global-color-7ec3614:#1F3366;--e-global-color-b660791:#5A5F66;--e-global-color-f412a10:#111B21;--e-global-typography-primary-font-family:"Oswald";--e-global-typography-primary-font-size:64px;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Oswald";--e-global-typography-secondary-font-size:48px;--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Libre Franklin";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Libre Franklin";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-22ae835-font-family:"Libre Franklin";--e-global-typography-22ae835-font-size:24px;--e-global-typography-22ae835-font-weight:500;--e-global-typography-521551c-font-family:"Libre Franklin";--e-global-typography-521551c-font-size:16px;--e-global-typography-521551c-font-weight:500;--e-global-typography-d3ae1c3-font-family:"Libre Franklin";--e-global-typography-d3ae1c3-font-size:14px;--e-global-typography-d3ae1c3-font-weight:400;font-family:"nexa-text", Sans-serif;font-size:16px;font-weight:400;line-height:18px;}.elementor-kit-40 e-page-transition{background-color:#FFBC7D;}.elementor-kit-40 a{color:var( --e-global-color-primary );}.elementor-kit-40 h1{font-family:"nexa-text", Sans-serif;font-size:64px;font-weight:700;}.elementor-kit-40 h2{font-family:"nexa-text", Sans-serif;font-size:36px;font-weight:700;}.elementor-kit-40 h3{font-family:"nexa-text", Sans-serif;font-size:28px;font-weight:500;}.elementor-kit-40 h4{font-family:"nexa-text", Sans-serif;font-size:18px;font-weight:400;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1250px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */:root {
  --sticky-header: 80px;      /* your header height */
  --section-pad: 80px;        /* vertical padding per section */
  --section-overlap: 40px;    /* visual overlap amount */
}

/* Left nav */
.cat-nav { position: relative; padding: 24px 0; }
.cat-nav ul { list-style: none; margin: 0; padding: 0; }
.cat-nav li + li { margin-top: 10px; }

/* Links */
.cat-link {
  display: inline-block;
  font-weight: 500;
  font-size: 20px;
  text-decoration: none;
  opacity: .9;
  color: #E8EBF1;             /* base color */
  transition: color .2s, opacity .2s, transform .2s, text-decoration-color .2s;
}
.cat-link:hover { opacity: 1; }
.cat-link.active {
  color: #E50328;             /* active color */
  text-decoration: underline; /* underline only when active */
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
  transform: translateX(2px);
}

/* Optional accessibility */
.cat-link:not(.active):focus { text-decoration: none; }
.cat-link:focus-visible { outline: 2px solid #E50328; outline-offset: 2px; }

/* Right-side sections */
.category-section { position: relative; padding: var(--section-pad) 0; background: transparent; }

/* Apply the overlap to every section EXCEPT the first one (#categories) */
.category-section:not(#categories) {
  margin-top: calc(-1 * var(--section-overlap));
  padding-top: calc(var(--section-pad) + var(--section-overlap));
  z-index: 1;
}

/* First section (#categories): no overlap + tall enough so scrollspy moves on */
#categories.category-section {
  margin-top: 0;
  padding-top: var(--section-pad);
  min-height: calc(50vh - var(--sticky-header) - 20px);
}
/* Force base color */
.cat-nav a.cat-link {
  color: #E8EBF1 !important;
  text-decoration: none !important;
}

/* Keep hover the same color, just remove fade if you want */
.cat-nav a.cat-link:hover {
  color: #E8EBF1 !important;
  opacity: 1;
}

/* Active (highlighted) stays red + underline */
.cat-nav a.cat-link.active {
  color: #E50328 !important;
  text-decoration: underline !important;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.cat-sidebar {
  position: sticky;
  top: calc(var(--sticky-header) + 20px); /* adjust spacing under header */
  align-self: flex-start;
}
/* Layout for sidebar + content */
.cat-layout {
  display: flex;
  align-items: flex-start;
}

/* Sticky sidebar */
.cat-sidebar {
  position: sticky;
  top: calc(var(--sticky-header) + 20px); /* space under header */
  align-self: flex-start;
}

html, body,
body.elementor-page,
.elementor,
.elementor-location-header,
.elementor-location-footer,
.elementor-location-single,
.elementor-location-archive,
dialog,
main {
  scroll-snap-type: none !important;
  scroll-behavior: auto !important;
}/* End custom CSS */