.elementor-kit-15{--e-global-color-primary:#D6CEBA;--e-global-color-secondary:#D78939;--e-global-color-text:#D6CEBA;--e-global-color-accent:#F1C58E;--e-global-color-d13f44c:#1A1A18;--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;color:#D6CEBA;font-family:"Inter", Sans-serif;font-size:18px;}.elementor-kit-15 button,.elementor-kit-15 input[type="button"],.elementor-kit-15 input[type="submit"],.elementor-kit-15 .elementor-button{background-color:#D78939;font-family:"larken", Sans-serif;font-size:18px;color:#1A1A18;border-radius:0px 0px 0px 0px;}.elementor-kit-15 button:hover,.elementor-kit-15 button:focus,.elementor-kit-15 input[type="button"]:hover,.elementor-kit-15 input[type="button"]:focus,.elementor-kit-15 input[type="submit"]:hover,.elementor-kit-15 input[type="submit"]:focus,.elementor-kit-15 .elementor-button:hover,.elementor-kit-15 .elementor-button:focus{background-color:#E99844;}.elementor-kit-15 e-page-transition{background-color:#FFBC7D;}.elementor-kit-15 a{color:#D78939;}.elementor-kit-15 h1{font-family:"larken", Sans-serif;}.elementor-kit-15 h2{font-family:"larken", Sans-serif;}.elementor-kit-15 h3{font-family:"larken", Sans-serif;}.elementor-kit-15 h4{font-family:"larken", Sans-serif;}.elementor-kit-15 h5{font-family:"larken", Sans-serif;}.elementor-kit-15 h6{font-family:"larken", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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);}@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 *//* ===== Entrance animations for Elementor (matches jasonhietbrink.com) ===== */
:root {
  --reveal-ease: cubic-bezier(0.22, 0.61, 0.36, 1);  /* text: rise + fade */
  --reveal-dur: 1.1s;
  --reveal-dist: 24px;
  --accent-ease: cubic-bezier(0.16, 1, 0.3, 1);      /* word reveal, mask, line draw */
  --focus-ease:  cubic-bezier(0.45, 0, 0.25, 1);     /* word reveal fade + blur */
  --word-blur: 0px;
  --stagger-step: 0.09s;
}

/* Keep Elementor's Fast / Slow speed settings working */
.elementor-element.animated-fast { --reveal-dur: 0.7s; }
.elementor-element.animated-slow { --reveal-dur: 1.6s; }

.elementor-element.animated.fadeIn {
  animation-name: dw-rise;
  animation-duration: var(--reveal-dur);
  animation-timing-function: var(--reveal-ease);
  animation-fill-mode: both;
}
.elementor-element.animated.fadeInUp {
  animation-name: dw-rise;
  animation-duration: var(--reveal-dur);
  animation-timing-function: var(--reveal-ease);
  animation-fill-mode: both;
}

@keyframes dw-fade {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes dw-rise {
  from { opacity: 0; transform: translate3d(0, var(--reveal-dist), 0); }
  to   { opacity: 1; transform: none; }
}

/* ===== Stagger: add class "stagger" to the parent container ===== */
:is(.stagger, .stagger > .e-con-inner, .stagger > .elementor-widget-wrap)
  > .elementor-element.animated:nth-child(2) { animation-delay: calc(var(--stagger-step) * 1); }
:is(.stagger, .stagger > .e-con-inner, .stagger > .elementor-widget-wrap)
  > .elementor-element.animated:nth-child(3) { animation-delay: calc(var(--stagger-step) * 2); }
:is(.stagger, .stagger > .e-con-inner, .stagger > .elementor-widget-wrap)
  > .elementor-element.animated:nth-child(4) { animation-delay: calc(var(--stagger-step) * 3); }
:is(.stagger, .stagger > .e-con-inner, .stagger > .elementor-widget-wrap)
  > .elementor-element.animated:nth-child(5) { animation-delay: calc(var(--stagger-step) * 4); }
:is(.stagger, .stagger > .e-con-inner, .stagger > .elementor-widget-wrap)
  > .elementor-element.animated:nth-child(6) { animation-delay: calc(var(--stagger-step) * 5); }

/* ===== Image mask reveal: class "reveal-mask" on an Image widget ===== */
.reveal-mask.animated { animation-name: dw-mask !important; animation-duration: 1.2s; }
.reveal-mask.animated img { animation: dw-settle 1.6s var(--accent-ease) both; }
@keyframes dw-mask   { from { clip-path: inset(100% 0 0 0); } to { clip-path: inset(0 0 0 0); } }
@keyframes dw-settle { from { transform: scale(1.12); } to { transform: none; } }

/* ===== Word reveal: class "reveal-words" on a Heading or Text Editor (needs the JS) ===== */
body:not(.elementor-editor-active) .reveal-words :is(.elementor-heading-title, p, li):not(.rw-ready) {
  visibility: hidden; /* prevents a flash of unsplit text before the script runs */
}
/* Ignore Elementor's entrance animation on word-reveal elements */
.reveal-words.elementor-invisible:has(.rw-ready) { visibility: visible; }
.reveal-words.animated { animation-name: none !important; }

.reveal-words .rw {
  display: inline-block; overflow: hidden; vertical-align: top;
  padding-bottom: .12em; margin-bottom: -.12em;
}
.reveal-words .rw-i { display: inline-block; transform: translateY(110%); }
.reveal-words .rw-in .rw-i {
  animation-name: dw-word, dw-word-focus;
  animation-duration: 1s, 1.3s;
  animation-timing-function: var(--accent-ease), var(--focus-ease);
  animation-fill-mode: both;
  animation-delay: calc(var(--i) * 0.055s);
}
@keyframes dw-word { from { transform: translateY(110%); } to { transform: none; } }
@keyframes dw-word-focus {
  0%   { opacity: 0; filter: blur(var(--word-blur)); }
  65%  { opacity: 1; }
  100% { opacity: 1; filter: none; }
}

/* ===== Line draw: class "reveal-line" on a Divider widget ===== */
.reveal-line.animated { animation-name: none !important; }
.reveal-line .elementor-divider-separator { transform: scaleX(0); transform-origin: left; }
.reveal-line.animated .elementor-divider-separator {
  animation: dw-line 1.4s var(--accent-ease) both;
}
@keyframes dw-line { from { transform: scaleX(0); } to { transform: none; } }

/* ===== Scroll drift: class "drift" on an Image widget ===== */
@supports (animation-timeline: view()) {
  .drift .elementor-widget-container { overflow: hidden; }
  .drift img {
    animation: dw-drift linear both;
    animation-timeline: view();
    animation-range: cover;
  }
  @keyframes dw-drift {
    from { transform: translateY(-6%) scale(1.12); }
    to   { transform: translateY(6%)  scale(1.12); }
  }
}

/* ===== Reduced motion ===== */
@media (prefers-reduced-motion: reduce) {
  .elementor-element.animated.fadeIn,
  .elementor-element.animated.fadeInUp {
    animation-name: dw-fade;
    animation-duration: 0.5s;
  }
  .reveal-words .rw-i,
  .reveal-line .elementor-divider-separator { animation: none !important; transform: none; }
  .drift img { animation: none !important; }
}/* End custom CSS */