.elementor-kit-48{--e-global-color-primary:#00537D;--e-global-color-secondary:#01A8EA;--e-global-color-text:#333333;--e-global-color-accent:#E89A45;--e-global-color-b4d255c:#003652;--e-global-color-32197fcc:#FFFFFF00;--e-global-color-680910f7:#EDF4F9;--e-global-color-65890ee0:#000;--e-global-color-ea39f1c:#FFF;--e-global-color-866b283:#77D9FF;--e-global-color-8d90f38:#148AD4;--e-global-color-eb8db39:#3D9C94;--e-global-color-a2d2a1f:#FFC07C;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;font-family:"Open Sans", Sans-serif;font-size:1rem;font-weight:500;}.elementor-kit-48 a{color:var( --e-global-color-secondary );font-weight:bold;}.elementor-kit-48 a:hover{color:var( --e-global-color-primary );}.elementor-kit-48 h1{color:var( --e-global-color-primary );font-family:"Fjalla One", Sans-serif;font-size:2.6rem;font-weight:bold;text-transform:uppercase;}.elementor-kit-48 h2{color:var( --e-global-color-primary );font-family:"Fjalla One", Sans-serif;font-size:2.3rem;font-weight:bold;text-transform:uppercase;}.elementor-kit-48 h3{font-family:"Fjalla One", Sans-serif;font-size:1.6rem;font-weight:500;text-transform:uppercase;}.elementor-kit-48 h4{font-size:1.4rem;}.elementor-kit-48 button,.elementor-kit-48 input[type="button"],.elementor-kit-48 input[type="submit"],.elementor-kit-48 .elementor-button{font-weight:bold;text-transform:uppercase;color:#FFFFFF;background-color:var( --e-global-color-secondary );padding:15px 20px 15px 20px;}.elementor-kit-48 button:hover,.elementor-kit-48 button:focus,.elementor-kit-48 input[type="button"]:hover,.elementor-kit-48 input[type="button"]:focus,.elementor-kit-48 input[type="submit"]:hover,.elementor-kit-48 input[type="submit"]:focus,.elementor-kit-48 .elementor-button:hover,.elementor-kit-48 .elementor-button:focus{color:var( --e-global-color-ea39f1c );background-color:var( --e-global-color-b4d255c );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-48 e-page-transition{background-color:#FFBC7D;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}@media(max-width:1366px){.elementor-kit-48{font-size:0.9rem;letter-spacing:0px;}.elementor-kit-48 h1{font-size:2rem;}.elementor-kit-48 h2{font-size:1.8rem;}}@media(max-width:1200px){.elementor-kit-48{font-size:1rem;}.elementor-kit-48 h1{font-size:2.6rem;}.elementor-kit-48 h2{font-size:2.4rem;}}@media(max-width:1024px){.elementor-kit-48 h1{font-size:2.2rem;}.elementor-kit-48 h2{font-size:2rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-48 h1{font-size:2rem;}.elementor-kit-48 h2{font-size:1.8rem;}.elementor-kit-48 button,.elementor-kit-48 input[type="button"],.elementor-kit-48 input[type="submit"],.elementor-kit-48 .elementor-button{padding:15px 15px 15px 15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==================================================
   1. GLOBAL STYLES
   ================================================== */

b,
strong {
  font-weight: bold;
}

body,
html {
  overflow-x: hidden !important;
}


/* ==================================================
   2. NAVIGATION
   ================================================== */

/* Dropdown minimum width */
.elementor-nav-menu--main .elementor-nav-menu ul {
  min-width: 100% !important;
}

/* Remove spacing after the final menu item */
.menu-last a {
  margin-right: 0 !important;
  padding-right: 0 !important;
}


/* ==================================================
   3. RECAPTCHA — MOBILE VISIBILITY
   ================================================== */

@media (max-width: 880px) {
  .grecaptcha-badge {
    visibility: hidden !important;
  }
}


/* ==================================================
   4. IMAGE EFFECT — FLOWING WATER BORDER
   Class: water-image
   ================================================== */

/* Register the animated gradient angle */
@property --water-angle {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}

/* Frame settings and spacing */
.water-image {
  --border-width: 5px;
  --image-gap: 10px;
  --corner-radius: 5px;

  position: relative;
  isolation: isolate;
  padding: calc(var(--border-width) + var(--image-gap));
  border-radius: var(--corner-radius);
  background: transparent;
  box-shadow: 0 0 12px rgba(11, 155, 221, 0.15);
  transition: box-shadow 0.4s ease;
}

/* Image sizing and corners */
.water-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: max(
    0px,
    calc(
      var(--corner-radius) -
      var(--border-width) -
      var(--image-gap)
    )
  );
}

/* Animated border with two flowing highlights */
.water-image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  padding: var(--border-width);
  border-radius: inherit;
  pointer-events: none;

  background: conic-gradient(
    from var(--water-angle),
    #045b84 0deg,
    #045b84 100deg,
    #0b9bdd 135deg,
    #d5f6ff 155deg,
    #0b9bdd 165deg,
    #045b84 180deg,
    #045b84 280deg,
    #0b9bdd 315deg,
    #d5f6ff 335deg,
    #0b9bdd 345deg,
    #045b84 360deg
  );

  /* Limit the gradient to the border */
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;

  mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  mask-composite: exclude;

  animation: water-border-flow 6s linear infinite;
}

/* Disable the image shimmer */
.water-image::after {
  content: none;
}

/* Image hover glow */
.water-image:hover {
  box-shadow:
    0 0 15px rgba(11, 155, 221, 0.35),
    0 0 30px rgba(11, 155, 221, 0.18);
}

/* Border animation */
@keyframes water-border-flow {
  to {
    --water-angle: 360deg;
  }
}


/* ==================================================
   5. BUTTON EFFECT — RISING WATER FILL
   Class: water-fill
   Supports regular buttons and Elementor widgets
   ================================================== */

/* Button appearance */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button) {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #01A8EA;
  color: #fff;
  border-radius: 100px;
  box-shadow: none;
}

/* Keep text and icons above the water */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button) > * {
  position: relative;
  z-index: 2;
}

/* Rising water layer */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button)::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;

  background: linear-gradient(
    to bottom,
    #50ddff 0%,
    #0b9bdd 55%,
    #0675b0 100%
  );

  transform: translateY(100%);
  transition: transform 0.75s ease;
}

/* Moving wave at the water surface */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button)::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 14px;
  z-index: -1;
  pointer-events: none;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='14' viewBox='0 0 120 14'%3E%3Cpath fill='%2350ddff' d='M0 7 Q15 0 30 7 T60 7 T90 7 T120 7 V14 H0Z'/%3E%3C/svg%3E");
  background-repeat: repeat-x;
  background-size: 120px 14px;

  transform: translateY(-13px);
  transition: top 0.75s ease;
  animation: button-water-wave 1.5s linear infinite;
  animation-play-state: paused;
}

/* Hover and keyboard focus — no glow */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button):is(:hover, :focus-visible) {
  color: #fff;
  box-shadow: none;
}

/* Raise the water */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button):is(:hover, :focus-visible)::before {
  transform: translateY(0);
}

/* Raise and animate the wave */
:is(a.water-fill, button.water-fill, .water-fill .elementor-button):is(:hover, :focus-visible)::after {
  top: 0;
  animation-play-state: running;
}

/* Wave animation */
@keyframes button-water-wave {
  to {
    background-position-x: 120px;
  }
}


/* ==================================================
   6. ACCESSIBILITY — REDUCED MOTION
   ================================================== */

@media (prefers-reduced-motion: reduce) {
  /* Image effect */
  .water-image {
    transition: none;
  }

  .water-image::before {
    animation: none;
  }

  /* Button effect */
  :is(a.water-fill, button.water-fill, .water-fill .elementor-button),
  :is(a.water-fill, button.water-fill, .water-fill .elementor-button)::before,
  :is(a.water-fill, button.water-fill, .water-fill .elementor-button)::after {
    transition: none;
    animation: none;
  }
}/* End custom CSS */