.elementor-kit-306{--e-global-color-primary:#DDE5ED;--e-global-color-secondary:#D9D9D6;--e-global-color-text:#101820;--e-global-color-accent:#0047BB;--e-global-color-13cf570:#26D07C;--e-global-color-88063fe:#F3F3F3;--e-global-color-debeee9:#FFFFFF;--e-global-typography-primary-font-family:"Helvetica Now Pro Text";--e-global-typography-primary-font-size:clamp(12.94px, 3vw, 15.22px);--e-global-typography-primary-font-weight:300;--e-global-typography-primary-line-height:1.2em;--e-global-typography-accent-font-family:"Helvetica Now Pro Text";--e-global-typography-accent-font-size:clamp(12.94px, 3vw, 15.22px);--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.2em;--e-global-typography-text-font-family:"Helvetica Now Pro Text";--e-global-typography-text-font-size:clamp(37.4px, 3vw, 44px);--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:1.2em;--e-global-typography-secondary-font-family:"Helvetica Now Pro Text";--e-global-typography-secondary-font-size:clamp(37.4px, 3vw, 44px);--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-0838a43-font-family:"Helvetica Now Pro Text";--e-global-typography-0838a43-font-size:clamp(16.17px, 3vw, 20.29px);--e-global-typography-0838a43-font-weight:300;--e-global-typography-0838a43-line-height:1.2em;--e-global-typography-26b2080-font-family:"Helvetica Now Pro Text";--e-global-typography-26b2080-font-size:clamp(16.17px, 3vw, 20.29px);--e-global-typography-26b2080-font-weight:400;--e-global-typography-26b2080-line-height:1.2em;}.elementor-kit-306 a{font-family:"Helvetica Now Pro Text";font-size:clamp(12.94px, 3vw, 15.22px);font-weight:300;line-height:1.2em;}.elementor-kit-306 h1{font-family:"Helvetica Now Pro Text";font-weight:300;line-height:1.2em;}.elementor-kit-306 h2{font-family:"Helvetica Now Pro Text";font-size:clamp(37.4px, 3vw, 44px);font-weight:300;line-height:1.2em;}.elementor-kit-306 h3{font-family:"Helvetica Now Pro Text";font-size:clamp(16.17px, 3vw, 20.29px);font-weight:400;line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:100vw;}.e-con{--container-max-width:100vw;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.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 *//* Removes the default focus outline and shadow from buttons inside Elementor popups */

.elementor-popup .elementor-button:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* Defines layout and animation for full-screen menu */

.full-screen-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: white;
  z-index: 9999;
  overflow-y: auto;
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
}

/* Enables full-screen menu visibility on activation */

.full-screen-menu.active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* Shows full-screen menu buttons on smaller screens */

#full-screen-button,
#OpenMeshMenu {
  display: none;
}

@media (max-width: 1439px) {
  #full-screen-button,
  #OpenMeshMenu {
    display: inline-flex;
  }
}

/* Controls animation for sticky floating header */

#container-floating-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transform: translateY(-100%);
  visibility: hidden;
  pointer-events: none;
  transition: transform 0.4s ease, background-color 0.3s ease, visibility 0s linear 0.4s;
  z-index: 9999;
  background-color: transparent;
}

#container-floating-header.floating-header.active {
  transform: translateY(0);
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

/* Adjusts link and logo colors for light-content mode */

#container-floating-header.light-content .floating-menu a {
  color: #dde5ed;
  transition: color 0.3s ease;
}

.logo-primary-dark-blue {
  display: block;
}

.logo-primary-light-blue {
  display: none;
}

#container-floating-header.light-content .logo-primary-dark-blue {
  display: none;
}

#container-floating-header.light-content .logo-primary-light-blue {
  display: block;
}

/* Prevents color override on submenu items in light-content mode */

#container-floating-header.light-content ul.sub-menu a {
  color: #101820;
}

/* Sets hover color for submenu items */

#container-floating-header.light-content ul.sub-menu a:hover {
  color: #0047bb;
}

/* Reduces size of submenu arrow icons */

.elementor-nav-menu .sub-arrow {
  font-size: 0.6em;
}

/* Hides desktop elements below 1440px */

@media (max-width: 1439px) {
  .hide-original-menu-1440,
  .hide-original-menu-float-1440,
  #header-menu,
  #plan-button,
  #header-menu-float,
  #plan-button-float {
    display: none !important;
  }
}

.show-mobile-menu-1440,
.show-mobile-menu-float-1440 {
  display: flex;
}

/* Hides floating menu elements and adjusts layout below 1440px */

@media (max-width: 1439px) {
  #container-floating-header .logo-primary-dark-blue,
  #container-floating-header .logo-primary-light-blue {
    display: none !important;
  }

  #container-floating-header .floating-menu {
    display: none !important;
  }

  #container-floating-header.light-content {
    background-color: transparent !important;
  }

  #container-floating-header.light-content .floating-menu a {
    color: inherit !important;
  }

  #container-floating-header.light-content .menu-item-has-children > a .ue-nav-menu-icon svg path {
    fill: inherit !important;
  }

  #container-floating-header {
    justify-content: flex-end !important;
  }
}

/* Prevents button text from wrapping to multiple lines */

.elementor-button-text {
  white-space: nowrap;
}

/* Defines styles for animated icons inside buttons */

.move-icon-onhover-right .elementor-button-icon svg,
.move-icon-onhover-down .elementor-button-icon svg,
.move-icon-diagonal-up-right .elementor-button-icon svg,
.custom-submit-hero-consultation .elementor-button-icon svg,
.custom-submit-schedule-consultation .elementor-button-icon svg,
.custom-submit-contact .elementor-button-icon svg {
  width: 0.6em;
  height: 0.6em;
  display: inline-block;
  vertical-align: middle;
  transform-origin: center center;
  transition: transform 0.65s cubic-bezier(0.3, 0.6, 0.3, 1);
  will-change: transform;
}
.move-icon-onhover-up .elementor-button-icon svg {
width: 1.1em;
  height: 1.1em;
  display: inline-block;
  vertical-align: middle;
  transform-origin: center center;
  transition: transform 0.65s cubic-bezier(0.3, 0.6, 0.3, 1);
  will-change: transform;
}

/* Default state for diagonal movement icon */

.move-icon-diagonal-up-right .elementor-button-icon svg {
  transform: translate(0, 0);
}

/* Moves icon diagonally up-right on hover */

.move-icon-diagonal-up-right:hover .elementor-button-icon svg {
  transform: translate(4px, -4px);
}

/* Moves icon to the right on hover */

.move-icon-onhover-right .elementor-button-icon svg {
  transform: translateX(0);
}

.move-icon-onhover-right:hover .elementor-button-icon svg {
  transform: translateX(4px);
}

/* Moves icon up on hover */

.move-icon-onhover-up:hover .elementor-button-icon svg {
  transform: translateY(-4px);
}

/* Moves icon down on hover */

.move-icon-onhover-down .elementor-button-icon svg {
  transform: translateY(0);
}

.move-icon-onhover-down:hover .elementor-button-icon svg {
  transform: translateY(4px);
}

/* Adds entry animation for floating boxes on large screens */

.floating-box {
  transform: translateY(calc(-30em - 4vh));
  transition: transform 1.2s cubic-bezier(0.23, 1, 0.32, 1);
  will-change: transform;
  z-index: 2;
  position: relative;
}

.floating-box.scrolled {
  transform: translateY(0);
}

/* Disables animation on smaller screens */

@media (max-width: 1280px) {
  .floating-box,
  .floating-box.scrolled {
    transform: none !important;
    transition: none !important;
  }
}

/* Adds hover lift effect for floating boxes */

.floating-box {
  transition: transform 0.4s ease;
}

.floating-box.hover-enabled:hover {
  transform: translateY(-1vh);
}

/* Disables hover lift effect on smaller screens */

@media (max-width: 1280px) {
  .floating-box.hover-enabled:hover {
    transform: none !important;
  }
}

/* Makes all buttons inside grid layout equal in size */

.grid-buttons-equal .elementor-widget-container {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.grid-buttons-equal .elementor-button-wrapper {
  flex-grow: 1;
  display: flex !important;
  width: 100% !important;
}

.grid-buttons-equal .elementor-button {
  flex-grow: 1;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  text-align: center !important;
  white-space: normal !important;
  box-sizing: border-box !important;
}

.grid-buttons-equal .elementor-button-link {
  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  align-items: center !important;
  justify-content: center !important;
}

.grid-buttons-equal .elementor-button-text,
.grid-buttons-equal .elementor-button-icon {
  flex-shrink: 0 !important;
}

/* Defines behavior for sticky boxes inside layout */

.sticky-box {
  position: relative;
  width: 100%;
  transition: none;
}

.sticky-box.is-stuck {
  position: fixed;
  top: 16vh;
  left: auto;
  right: auto;
  z-index: 10;
  max-width: 100%;
  will-change: transform;
}

.sticky-box.is-stopped {
  position: absolute;
  top: auto;
  bottom: 0;
  width: 100%;
}

.left-sticky-wrapper {
  position: relative;
  min-height: 100vh;
  overflow: visible;
}

.offer-trigger {
  position: relative;
  min-height: 100vh;
  z-index: 1;
}

@media (max-width: 1024px) {
  .left-sticky-wrapper {
    min-height: auto !important;
    height: auto !important;
  }

  .sticky-box {
    width: 100% !important;
    height: auto !important;
    position: relative !important;
    top: auto !important;
  }

  .sticky-box.is-stuck,
  .sticky-box.is-stopped {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    height: auto !important;
  }
}

/* Hover effect for pricing plan boxes */

.plan-box {
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.plan-box:hover {
  transform: translateY(10px);
}

/* Limits the testimonial text with ellipsis truncation */

.testimonial-box .elementor-testimonial__text {
  display: -webkit-box !important;
  -webkit-line-clamp: 5 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Forces visible and consistent placeholder styles across browsers */

input::placeholder,
textarea::placeholder {
  color: #101820 !important;
  opacity: 1 !important;
  font-style: normal !important;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #101820 !important;
  opacity: 1 !important;
  font-style: normal !important;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #101820 !important;
  opacity: 1 !important;
  font-style: normal !important;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #101820 !important;
  opacity: 1 !important;
  font-style: normal !important;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #101820 !important;
  opacity: 1 !important;
  font-style: normal !important;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #101820 !important;
  opacity: 1 !important;
  font-style: normal !important;
}

/* Sets default input and select colors */

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select {
  color: #101820 !important;
  box-sizing: border-box;
}

/* Defines text color for select dropdown options */

select option {
  color: #101820 !important;
}

/* Prevents textarea resizing */

textarea {
  resize: none !important;
}

/* Hides default Elementor submit buttons */

.elementor-form .e-form__buttons {
  display: none !important;
}

/* Applies color and font size to form messages */

.form-hero-consultation .elementor-message,
.form-hero-consultation .elementor-message-danger {
  color: #dde5ed !important;
  font-size: 0.7rem !important;
}

.form-schedule-consultation .elementor-message,
.form-schedule-consultation .elementor-message-danger {
  color: #101820 !important;
  font-size: 0.7rem !important;
}

.form-contact .elementor-message,
.form-contact .elementor-message-danger {
  color: #101820 !important;
  font-size: 0.7rem !important;
}

/* Removes default message icons in Elementor */

.elementor-message::before,
.elementor-message-danger::before {
  display: none !important;
}

/* Footer link styling */

a.footer-link {
  font-size: 0.7rem !important;
  color: #dde5ed !important;
  text-decoration: none !important;
  transition: color 0.3s ease;
}

a.footer-link:hover {
  color: #8f9396 !important;
}

/* Slight vertical correction for the button using relative units */

.view-on-map-button {
  transform: translateY(-0.12em);
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Helvetica Now Pro Text';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: url('https://follow-finances.com/wp-content/uploads/2025/04/font.woff2') format('woff2'),
		url('https://follow-finances.com/wp-content/uploads/2025/04/font.woff') format('woff');
}
@font-face {
	font-family: 'Helvetica Now Pro Text';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://follow-finances.com/wp-content/uploads/2025/04/font-1.woff2') format('woff2'),
		url('https://follow-finances.com/wp-content/uploads/2025/04/font-1.woff') format('woff');
}
/* End Custom Fonts CSS */