.elementor-kit-4{--e-global-color-primary:#52A446;--e-global-color-secondary:#0D6363;--e-global-color-text:#282828;--e-global-color-accent:#AA703E;--e-global-color-229aa41:#FFFFFF;--e-global-color-d511995:#000000;--e-global-color-0754e25:#FFF5E1;--e-global-color-97b1cd8:#6F431A;--e-global-color-33ec350:#B4B5B6;--e-global-color-5b37ca3:#6C6E6F;--e-global-color-43f3bff:#1FB1A8;--e-global-color-708ecf2:#C99230;--e-global-color-f12ccc5:#14453D;--e-global-color-0508c92:#FFCC00;--e-global-color-e23a2b6:#A46D3F;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Public Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Source Serif 4";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"PT Serif";--e-global-typography-accent-font-weight:500;--e-global-typography-785198f-font-family:"Outfit";--e-global-typography-785198f-font-size:15px;--e-global-typography-785198f-font-weight:500;--e-global-typography-7afc32c-font-size:14px;--e-global-typography-7afc32c-font-weight:400;--e-global-typography-7afc32c-font-style:italic;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-229aa41 );border-style:none;border-radius:100px 100px 100px 100px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:#AA703E;color:var( --e-global-color-229aa41 );border-style:none;border-radius:100px 100px 100px 100px;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 a:hover{color:var( --e-global-color-accent );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 h1{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-4 h2{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-4 h3{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-4 h4{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-4 h5{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-4 h6{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-4 label{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-4 input:not([type="button"]):not([type="submit"]),.elementor-kit-4 textarea,.elementor-kit-4 .elementor-field-textual{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1300px;}.e-con{--container-max-width:1300px;--container-default-padding-top:30px;--container-default-padding-right:30px;--container-default-padding-bottom:30px;--container-default-padding-left:30px;}.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-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:20px;--container-default-padding-right:20px;--container-default-padding-bottom:20px;--container-default-padding-left:20px;}}/* Start custom CSS */.underline-accent {
  display: inline-block !important;
  width: fit-content !important;
  max-width: fit-content !important;
  position: relative;
  padding-bottom: 14px;
}

/* If the heading widget's wrapper is flex/stretch, this forces it to shrink too */
.elementor-widget-container:has(.underline-accent) {
  display: inline-flex !important;
}

.underline-accent::before {
  content: "";
  position: absolute;
  left: 0;
  right: -32px;
  bottom: 0;
  height: 2px;
  background-color: #1C4B42;
}

.underline-accent::after {
  content: "";
  position: absolute;
  left: 0;
  width: 40px;
  bottom: 0;
  height: 5px;
  background-color: #71A44E;
}

.elementor-post-info__terms-list {
	line-height: 30px;
}

.primary-bg a {
    padding: 2px 10px;
    background: #1c4b42;
}

.primary-bg a:hover {
    background: #6f431a;
}

.secondary-3-bg a {
    padding: 2px 10px;
    background: #6f431a;
}

.secondary-3-bg a:hover {
    background: #1c4b42;
}

.accent-bg a {
    padding: 2px 10px;
    background: #71A44E;
}

.accent-bg a:hover {
    background: #6f431a;
}

.text-m-0 p {
    margin: 0;
}

@media(max-width:768px){
    .sm-w-100, .sm-w-100 button {
        width: 100%;
    }
}
@keyframes kenburns {
    from { transform: scale(1); }
    to   { transform: scale(1.10); }
}

.kb-hero {
    position: relative;
    overflow: hidden;
}

.kb-hero::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: inherit;
    background-size: inherit;
    background-position: inherit;
    background-repeat: inherit;
    transform-origin: 45% 12%;
    animation: kenburns 10s ease-out forwards;
    will-change: transform;
    z-index: 0;
    pointer-events: none;
}

.kb-hero::before {
    z-index: 1;
}
.kb-noclip { overflow: visible; }
.kb-center::after { transform-origin: center center; }
.kb-hero > .e-con-inner,
.kb-hero > .elementor-container {
    position: relative;
    z-index: 2;
}

@media (max-width: 767px) {
    .kb-hero::after {
        transform-origin: center center;
        background-position: center center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .kb-hero::after { animation: none; }
}

/* Events calendar date picker: cream background instead of green buttons */
.tribe-events .datepicker,
.tribe-events .datepicker button {
  background-color: #FFF5E1;
  color: #141827;
  border-radius: 4px;
}
.tribe-events .datepicker button:hover,
.tribe-events .datepicker button:focus {
  background-color: rgba(82, 164, 70, 0.15);
  color: #141827;
}
.tribe-events .datepicker button.active,
.tribe-events .datepicker button.active:hover,
.tribe-events .datepicker button.active:focus {
  background-color: var(--e-global-color-primary) !important;
  color: #FFFFFF !important;
}/* End custom CSS */