.elementor-kit-7{--e-global-color-primary:#002755;--e-global-color-secondary:#24AC89;--e-global-color-text:#000000;--e-global-color-accent:#FCFCFC;--e-global-color-a5fc2ef:#134D4A;--e-global-color-43b03f5:#FFA000;--e-global-color-e756ffb:#F2F2F2;--e-global-typography-primary-font-family:"Inter Tight";--e-global-typography-primary-font-size:58px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-text-transform:capitalize;--e-global-typography-primary-line-height:1.22em;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:50px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-text-transform:capitalize;--e-global-typography-secondary-line-height:1.22em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:26px;--e-global-typography-text-font-weight:700;--e-global-typography-text-text-transform:capitalize;--e-global-typography-text-line-height:1.22em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-line-height:1.6em;--e-global-typography-36b6f84-font-family:"Inter";--e-global-typography-36b6f84-font-size:20px;--e-global-typography-36b6f84-font-weight:600;--e-global-typography-36b6f84-text-transform:capitalize;--e-global-typography-884345a-font-family:"Inter";--e-global-typography-884345a-font-size:40px;--e-global-typography-884345a-font-weight:700;--e-global-typography-884345a-text-transform:capitalize;--e-global-typography-884345a-line-height:1.22em;background-color:var( --e-global-color-accent );}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Inter", Sans-serif;font-size:20px;font-weight:600;text-transform:capitalize;color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;padding:17px 28px 17px 28px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1338px;}.e-con{--container-max-width:1338px;--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){--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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1160px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:800px){.elementor-kit-7{--e-global-typography-primary-font-size:38px;--e-global-typography-secondary-font-size:34px;--e-global-typography-text-font-size:24px;--e-global-typography-36b6f84-font-size:18px;--e-global-typography-36b6f84-line-height:1.6em;--e-global-typography-884345a-font-size:34px;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{font-size:18px;line-height:1.5em;padding:14px 028px 14px 028px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* === Header logo transition on scroll === */
.logo {
  -webkit-transition: opacity 0.3s ease-in-out;
  -moz-transition: opacity 0.3s ease-in-out;
  -o-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

.elementor-sticky--effects .logo {
  opacity: 0;
}

/* === Blur Header Effect === */
.blur-header {
  position: relative;
  background: transparent !important;
  box-shadow: none !important;  /* no shadow before scroll*/
  z-index: 9999;
  background-clip: padding-box;
  will-change: background-color, box-shadow, backdrop-filter;
  transition:
    background-color .5s ease,
    backdrop-filter .5s ease,
    -webkit-backdrop-filter .5s ease,
    box-shadow .5s ease;
  border-bottom: none !important; /* no inline border */
}

/* Divider line (acts as outline, not border) */
.blur-header::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:1px;
  background: rgba(0,0,0,0.12); /* subtle */
  opacity:0;
  pointer-events:none;
  transition: opacity .5s ease;
  z-index:10;
}

/* Sticky state */
.elementor-sticky--effects.blur-header,
.elementor-sticky--effects .blur-header {
  background: rgba(255,255,255,0.8) !important;
  -webkit-backdrop-filter: saturate(160%) blur(20px);
  backdrop-filter: saturate(160%) blur(20px);

  /* Subtler shadow */
  box-shadow: 0 6px 14px rgba(0,0,0,0.05) !important;

  /* --- Alternative presets (uncomment to test) ---
    Medium: box-shadow: 0 6px 20px rgba(0,0,0,0.08) !important;
    Strong: box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
  */
}

/* Show the outline divider only on scroll*/
.elementor-sticky--effects.blur-header::after,
.elementor-sticky--effects .blur-header::after {
  opacity: 1;
}

/* Mobile: slightly stronger background for readability*/
@media (max-width: 767px) {
  .elementor-sticky--effects.blur-header,
  .elementor-sticky--effects .blur-header {
    background: rgba(255,255,255,0.9) !important;
  }
}


/*Button icon and hover animations*/
.custom-button
    .elementor-button {
    box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.2);
}

.custom-button .elementor-button:hover {
  box-shadow: none !important;
  transition-duration: 0.7s;
}

/*sticky container effect*/
@media (min-width: 1161px) {
  .sticky-container {
    position: sticky;
    top: 130px;          /* offset from the top */
    align-self: flex-start; /* keep it inside the column */
  }
}

/*Footer nav underline effect*/
.footer-icon-list .elementor-icon-list-item a,
.footer-icon-list .elementor-icon-list-item span {
  text-decoration: none;
}

.footer-icon-list .elementor-icon-list-item a:hover,
.footer-icon-list .elementor-icon-list-item span:hover {
  text-decoration: underline;
  text-underline-offset: 4px; /* space between text and underline */
  text-decoration-thickness: 1.6px; /* consistent underline width */
}

.footer-icon-box .elementor-icon-box-description {
  text-decoration: none;
}

.footer-icon-box .elementor-icon-box-title:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1.6px; /* consistent underline width */
}

/* === HERO LAYOUT WITH RIGHT-SIDE IMAGE (≥1161px) === */
@media (min-width:1161px){
  .hero{
    /* Vertical offsets */
    --pt: 180px;         /* text + image start offset from top */
    --pb: 100px;          /* bottom padding for text */
    --img-extra: 180px;  /* how much farther the image extends below the text area */

    position: relative;
    padding: var(--pt) 0 var(--pb);
    /* Hero grows enough to fit text + extra image height */
    min-height: calc(var(--pt) + var(--pb) + var(--img-extra));
    overflow: hidden; /* only crops right edge, not text */
  }

  /* Boxed container for text content (max 1338px) */
  .hero-content-left{
    max-width: min(100vw, 1338px);
    margin-inline: auto;
    position: relative;
    z-index: 2; /* ensures text stays above the image */
  }

 /* Right-side image widget (Elementor Image with class .hero-right) */
  .hero .hero-right{
    position: absolute !important;
    top: var(--pt);                            /* start aligned with text offset */
    bottom: calc(var(--pb) - var(--img-extra));/* extend below text area */
    right: 0;

    /* start at 60% of the boxed container instead of 50% */
    left: calc(
      (100vw - min(100vw,1338px)) / 2
      + min(100vw,1338px) * 0.5
    );

    margin: 0 !important;
    z-index: 1;        /* sits behind text */
    pointer-events: none; /* prevents image from blocking links/buttons */
  }

  /* Scale/crop the image to fill the right area */
  .hero .hero-right img{
    width: 100%;
    height: 100%;
    object-fit: cover; /* crop to maintain aspect ratio */
    display: block;
  }
}
/* === END HERO RIGHT LAYOUT === */

/* === HERO LAYOUT WITH LEFT-SIDE IMAGE (≥1161px) === */
@media (min-width: 1161px) {
  .hero {
    --pt: 180px;         /* Top spacing for content */
    --pb: 100px;         /* Bottom padding for content */
    --img-extra: 180px;  /* Extra image height below text */

    position: relative;
    padding: var(--pt) 0 var(--pb);
    min-height: calc(var(--pt) + var(--pb) + var(--img-extra));
    overflow: hidden;
  }

  .hero-inner {
    max-width: min(100vw, 1338px);
    margin-inline: auto;
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: flex-end;
  }

  .hero-content-right {
    width: 50%;
    position: relative;
    z-index: 2;
  }

  .hero .hero-left {
    position: absolute !important;
    top: 0; /* Flush with top of .hero */
    bottom: calc(-1 * var(--img-extra)); /* Extend image downward */
    left: 0;
    right: calc(
      (100vw - min(100vw, 1338px)) / 2 + 
      min(100vw, 1338px) * 0.5
    );

    margin: 0 !important;
    z-index: 1;
    pointer-events: none;
  }

  .hero .hero-left img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
}
/* === END HERO LEFT LAYOUT === */



/* Works whether the container is a DIV or an A (linked) */
.gradient-border-container,
a.gradient-border-container{
  /* DO NOT set display here—let Elementor keep flex */
  border: 4px solid transparent;
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.12);
  transition: border-image 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
  text-decoration: none; /* kill underline on linked container */
  color: inherit;        /* prevent link color from restyling children */
  width: 100%;           /* fills its column if needed */
}

/* Hover state */
.gradient-border-container:hover,
a.gradient-border-container:hover{
  border-image: linear-gradient(to bottom, #24AC89, #134D4A) 1;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
  transform: translateY(-6px);
}

/* === CLICKABLE ICON LIST (Chevron + Underline Effect) === */
.icon-list-clickable .elementor-icon-list-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  position: relative;
  line-height: 1.2;
  padding: 0;
  margin: 0;
}

.icon-list-clickable .elementor-icon-list-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  line-height: 1;
}

.icon-list-clickable .elementor-icon-list-text {
  display: inline-block;
  margin: 0;
  padding: 0;
  font-size: 18px;
  position: relative;
  z-index: 1;
  top: 2px; /* Slight downward nudge for alignment */
}

/* Chevron */
.icon-list-clickable .elementor-icon-list-text::after {
  content: "»";
  font-size: 1.2em;
  margin-left: 8px;
  vertical-align: middle;
  transition: color 0.2s ease;
}

/* Underline animation */
.icon-list-clickable .elementor-icon-list-text::before {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: orange;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  z-index: -1;
}

/* Hover and active states */
.icon-list-clickable .elementor-icon-list-item:hover .elementor-icon-list-text::before,
.icon-list-clickable .elementor-icon-list-item .elementor-icon-list-text.elementor-item-active::before,
.icon-list-clickable .elementor-icon-list-item .elementor-icon-list-text.active::before,
.icon-list-clickable .elementor-icon-list-item .elementor-icon-list-text.current-menu-item::before {
  transform: scaleX(1);
}

.icon-list-clickable .elementor-icon-list-item:hover .elementor-icon-list-text::after,
.icon-list-clickable .elementor-icon-list-item .elementor-icon-list-text.elementor-item-active::after,
.icon-list-clickable .elementor-icon-list-item .elementor-icon-list-text.active::after,
.icon-list-clickable .elementor-icon-list-item .elementor-icon-list-text.current-menu-item::after {
  color: orange;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://isasign.com/wp-content/uploads/2025/08/Inter-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://isasign.com/wp-content/uploads/2025/08/Inter-SemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://isasign.com/wp-content/uploads/2025/08/Inter-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://isasign.com/wp-content/uploads/2025/08/Inter-Medium.ttf') format('truetype');
}
/* End Custom Fonts CSS */