.elementor-kit-5{--e-global-color-primary:#E20D00;--e-global-color-secondary:#151515;--e-global-color-text:#80807E;--e-global-color-accent:#DAD6C9;--e-global-color-1d69201:#EFEEEB;--e-global-color-adc2210:#FE9900;--e-global-color-c92cd33:#FFFFFF;--e-global-color-b9029db:#083630;--e-global-color-136b3a4:#1F514A;--e-global-color-4cea4db:#CED7D6;--e-global-color-bf9cf6f:#444444;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-size:3rem;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:3rem;--e-global-typography-primary-letter-spacing:-0.06em;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:2.4rem;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:2.8rem;--e-global-typography-secondary-letter-spacing:-0.06em;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:1rem;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.75rem;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:0.9375rem;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.2rem;--e-global-typography-accent-letter-spacing:0.02em;--e-global-typography-572763f-font-family:"Inter";--e-global-typography-572763f-font-size:0.9375rem;--e-global-typography-572763f-font-weight:400;--e-global-typography-572763f-line-height:1.5rem;--e-global-typography-338e525-font-family:"Inter";--e-global-typography-338e525-font-size:1.125rem;--e-global-typography-338e525-font-weight:400;--e-global-typography-338e525-line-height:1.9rem;--e-global-typography-20f0be5-font-family:"Inter";--e-global-typography-20f0be5-font-size:1.8rem;--e-global-typography-20f0be5-font-weight:600;--e-global-typography-20f0be5-line-height:2.2rem;--e-global-typography-20f0be5-letter-spacing:-0.04em;--e-global-typography-dd6b03d-font-family:"Inter";--e-global-typography-dd6b03d-font-size:1.5rem;--e-global-typography-dd6b03d-font-weight:600;--e-global-typography-dd6b03d-line-height:2rem;--e-global-typography-dd6b03d-letter-spacing:-0.03em;--e-global-typography-64a77dc-font-family:"Inter";--e-global-typography-64a77dc-font-size:1.25rem;--e-global-typography-64a77dc-font-weight:500;--e-global-typography-64a77dc-line-height:1.8rem;--e-global-typography-64a77dc-letter-spacing:-0.02em;--e-global-typography-f82bca4-font-family:"Inter";--e-global-typography-f82bca4-font-size:1.1rem;--e-global-typography-f82bca4-font-weight:500;--e-global-typography-f82bca4-line-height:1.6rem;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.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);}.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:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:2.4rem;--e-global-typography-primary-line-height:2.4rem;--e-global-typography-primary-letter-spacing:-0.06em;--e-global-typography-secondary-font-size:2rem;--e-global-typography-secondary-line-height:2.4rem;--e-global-typography-text-font-size:1rem;--e-global-typography-text-line-height:1.7rem;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-size:0.9375rem;--e-global-typography-accent-line-height:1.2rem;--e-global-typography-accent-letter-spacing:0.02em;--e-global-typography-572763f-font-size:0.9375rem;--e-global-typography-572763f-line-height:1.5rem;--e-global-typography-338e525-font-size:1.125rem;--e-global-typography-338e525-line-height:1.8rem;--e-global-typography-20f0be5-font-size:1.6rem;--e-global-typography-20f0be5-line-height:2rem;--e-global-typography-20f0be5-letter-spacing:-0.04em;--e-global-typography-dd6b03d-font-size:1.4rem;--e-global-typography-dd6b03d-letter-spacing:-0.03em;--e-global-typography-64a77dc-font-size:1.2rem;--e-global-typography-64a77dc-line-height:1.6rem;--e-global-typography-64a77dc-letter-spacing:-0.02em;--e-global-typography-f82bca4-font-size:1.2rem;--e-global-typography-f82bca4-line-height:1.6rem;--e-global-typography-f82bca4-letter-spacing:-0.02em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.form-text{
    font-size: 0.9rem;
    color: #808080;
}

P:last-child{
    margin-bottom: 0px;
}

.black{
    color: black;
}

@media (max-width: 768px) {
  .no-br br {
    display: none;
  }
}

.elementor-button-icon svg {
    height: 1.5rem;
    width: 1.5rem;
}


.elementor-button-content-wrapper{
    align-items: center;
}

.ASD-button {
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.ASD-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
  transition: all 0.4s ease-in-out;
}

.ASD-button:hover::before {
  left: 100%;
}

.ASD-button:hover {
  transform: translateY(-3px);
 /* box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.2); */
}

/* ----- Wipe-down reveal + Smooth Un-Blur (plays once when .is-in is added) ----- */
.asd-wipe {
  position: relative;
  display: inline-block;                /* keeps wrapper tight to the image */
  overflow: hidden;                     /* ensures the cover doesn't escape */

  /* Timing & look */
  --wipe-duration: 2000ms;              /* tweak speed here */
  --wipe-ease: ease-in-out;             /* or cubic-bezier(.4,0,.2,1) */
  --wipe-color: var(--e-global-color-background, #EFEEEB); /* match section bg */

  /* Blur controls */
  --blur-start: 10px;                   /* blur at start */
  --blur-mid: 2px;                      /* slight blur around 60% */
  --blur-duration: var(--wipe-duration);
  --blur-ease: cubic-bezier(.4,0,.2,1); /* smooth professional easing */
}

/* Ensure image fills its wrapper cleanly */
.asd-wipe img,
.asd-wipe picture,
.asd-wipe figure,
.asd-wipe .elementor-widget-container img {
  display: block;
  width: 100%;
  height: auto;
}

/* The cover that reveals the image */
.asd-wipe::after {
  content: "";
  position: absolute;
  inset: 0;                             /* cover entire image */
  background: var(--wipe-color);
  transform: translateY(0%);            /* start fully covering */
  will-change: transform;
}

/* Image starts nearly invisible + blurred (no sliding) */
.asd-wipe img {
  opacity: 0.001;                       /* almost invisible until reveal starts */
  filter: blur(var(--blur-start));
  will-change: filter, opacity;
  transition: none;                     /* animation drives timing */
  backface-visibility: hidden;
}

/* When in view, run the wipe and un-blur once */
.asd-wipe.is-in::after {
  animation: asd-wipe-down var(--wipe-duration) var(--wipe-ease) forwards;
}
.asd-wipe.is-in img {
  animation: asd-unblur var(--blur-duration) var(--blur-ease) forwards;
}

/* Keyframes: slide the cover downward to reveal from top to bottom */
@keyframes asd-wipe-down {
  from { transform: translateY(0%); }
  to   { transform: translateY(100%); }  /* cover moves out of view below */
}

/* Keyframes: smooth un‑blur finishing ~70% into the duration */
@keyframes asd-unblur {
  0%   { filter: blur(var(--blur-start)); opacity: 0.001; }
  60%  { filter: blur(var(--blur-mid));  opacity: 0.6;   }
  70%  { filter: blur(0px);              opacity: 0.85;  }
  100% { filter: blur(0px);              opacity: 1;     }
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  .asd-wipe::after { display: none; }
  .asd-wipe img { opacity: 1; filter: none; animation: none; }
}


/* Sticky */

.stick-25{
    top: 25px;
}
.stick-50{
    top: 50px;
}
.stick-75{
    top: 75px;
}
.stick-100{
    top: 25px;
}

@media (max-width: 767px) {
  .stick-25,
  .stick-50,
  .stick-75,
  .stick-100 {
    top: 50px !important;
  }
}

/* 1) Pure CSS sticky with 15px gap */
.stick {
  position: -webkit-sticky; /* Safari/iOS */
  position: sticky;
 /* top: 15px; 
  z-index: 5;       */        /* above background, below header */
  align-self: flex-start;   /* if the column uses flex, don't stretch */
  box-sizing: border-box;
  will-change: top;
}

/* 2) Critical: make sure ancestors don't break sticky */
.stick,
.stick * {
  /* prevent accidental transforms on child elements from creating new containing blocks */
  transform: none !important; /* only if you’re NOT using motion effects inside this block */
}

/* 3) Ensure sticky can compute boundaries properly */
.stick-col,
.stick-col > .elementor-widget-wrap,
.stick-col > .elementor-container,
.stick-col > .elementor-element-populated {
  overflow: visible !important; /* sticky fails if ancestor has overflow != visible */
}

/* 4) If you previously used Elementor Sticky, neutralize its active style */
.elementor-sticky--active.elementor-sticky--effects,
.elementor-sticky--effects {
  transform: none !important;   /* Elementor sometimes adds transforms that break sticky */
  /* also stop Elementor from tweaking padding via CSS vars */
  padding-top: inherit !important;
}


/* Custom */
/* ====== Marquee: variables you can tweak ====== */
.ps-marquee{
  --bg: #000000;                 /* banner background */
  --fg: #ffffff;              /* text color */
  --pill-bg: #fee2e2;         /* optional pill bg */
  --pill-fg: #991b1b;         /* optional pill text */
  --gap: 2.5rem;              /* space between items */
  --pad-y: .30rem;            /* vertical padding */
  --pad-x: 1rem;              /* horizontal padding */
  --radius: 12px;             /* banner radius */
  --duration: 28s;            /* scroll speed (smaller = faster) */
}

/* ====== Marquee shell ====== */
.ps-marquee{
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--gap);
  overflow: hidden;
  padding: var(--pad-y) 0;
  background: var(--bg);
  color: var(--fg);
  border-radius: var(--radius);
  font: 500 15px/1.3 system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
}

/* subtle fade edges */
.ps-marquee::before,
.ps-marquee::after{
  content:"";
  position:absolute;
  top:0; bottom:0;
  width: 56px;
  pointer-events:none;
  z-index:2;
}
.ps-marquee::before{
  left:0;
  background: linear-gradient(to right, var(--bg), transparent);
}
.ps-marquee::after{
  right:0;
  background: linear-gradient(to left, var(--bg), transparent);
}

/* ====== Track ====== */
.ps-marquee__track{
  display: flex;
  flex: 0 0 auto;            /* don’t shrink */
  gap: var(--gap);
  align-items: center;
  min-width: max-content;     /* content-width track */
  padding: 0 var(--pad-x);
  animation: ps-scroll var(--duration) linear infinite;
}

/* Pause when user hovers or focuses inside */
.ps-marquee:hover .ps-marquee__track,
.ps-marquee:focus-within .ps-marquee__track{
  animation-play-state: paused;
}

/* Optional reverse direction: add .ps-marquee--reverse to .ps-marquee */
.ps-marquee.ps-marquee--reverse .ps-marquee__track{
  animation-direction: reverse;
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
  .ps-marquee__track{ animation: none; }
}

/* ====== Items ====== */
.ps-marquee__item{
  position: relative;
  white-space: nowrap;
  padding: .35rem .85rem;
  /* border-radius: 999px;               pill look 
  background: var(--pill-bg); 
  color: var(--pill-fg); */
}

/* small dot separator (visually) if you don't use pills
.ps-marquee__item::before{
  content:"";
  position:absolute; left:-1.1rem; top:50%;
  width:6px; height:6px; border-radius:50%;
  background: currentColor; transform: translateY(-50%);
}
.ps-marquee__item:first-child::before{ display:none; }
*/

/* ====== Animation ====== */
@keyframes ps-scroll{
  from{ transform: translateX(0); }
  to  { transform: translateX(calc(-100% - var(--gap))); }
}/* End custom CSS */