.elementor-kit-4{--e-global-color-primary:#292561;--e-global-color-secondary:#138CAD;--e-global-color-text:#7A7A7A;--e-global-color-accent:#F5C842;--e-global-color-62187d6:#FFF6F6;--e-global-color-cb6a910:#333333;--e-global-color-58407fa:#F2FAFD;--e-global-typography-primary-font-family:"proxima-nova";--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;--e-global-typography-c31f7c5-font-family:"proxima-nova";--e-global-typography-c31f7c5-font-size:clamp(2.5rem, 2.5vw, 3rem);--e-global-typography-c31f7c5-font-weight:600;--e-global-typography-c31f7c5-line-height:1em;--e-global-typography-3a3a382-font-family:"proxima-nova";--e-global-typography-3a3a382-font-size:clamp(2.25rem, 2.5vw, 2.75rem);--e-global-typography-3a3a382-font-weight:600;--e-global-typography-3a3a382-line-height:1.1;--e-global-typography-a32ded1-font-family:"proxima-nova";--e-global-typography-a32ded1-font-size:clamp(1.35rem, 2.5vw, 1.75rem);--e-global-typography-a32ded1-font-weight:600;--e-global-typography-a32ded1-line-height:1.25;--e-global-typography-586d613-font-size:clamp(1.25rem, 2.5vw, 1.5rem);--e-global-typography-586d613-line-height:1.25;--e-global-typography-451d7be-font-family:"proxima-nova";--e-global-typography-451d7be-font-size:clamp(1.35rem, 2.5vw, 1.75rem);--e-global-typography-451d7be-font-weight:600;--e-global-typography-f9a9962-font-family:"proxima-nova";--e-global-typography-f9a9962-font-size:clamp(1rem, 3vw, 1.2rem);--e-global-typography-f9a9962-font-weight:500;--e-global-typography-f9a9962-line-height:1.5;color:#333333;font-family:"proxima-nova", Sans-serif;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:#F16545;font-size:1rem;font-weight:700;color:#FFFFFF;border-radius:5px 5px 5px 5px;padding:16px 30px 16px 30px;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:var( --e-global-color-secondary );}.elementor-kit-4 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-c31f7c5-font-family ), Sans-serif;font-size:var( --e-global-typography-c31f7c5-font-size );font-weight:var( --e-global-typography-c31f7c5-font-weight );line-height:var( --e-global-typography-c31f7c5-line-height );}.elementor-kit-4 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-3a3a382-font-family ), Sans-serif;font-size:var( --e-global-typography-3a3a382-font-size );font-weight:var( --e-global-typography-3a3a382-font-weight );line-height:var( --e-global-typography-3a3a382-line-height );}.elementor-kit-4 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-a32ded1-font-family ), Sans-serif;font-size:var( --e-global-typography-a32ded1-font-size );font-weight:var( --e-global-typography-a32ded1-font-weight );line-height:var( --e-global-typography-a32ded1-line-height );word-spacing:var( --e-global-typography-a32ded1-word-spacing );}.elementor-kit-4 h4{color:var( --e-global-color-primary );font-size:var( --e-global-typography-586d613-font-size );line-height:var( --e-global-typography-586d613-line-height );}.elementor-kit-4 h5{color:var( --e-global-color-primary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1640px;}.e-con{--container-max-width:1640px;--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:2rem;}.elementor-element{--widgets-spacing:2rem 2rem;--widgets-spacing-row:2rem;--widgets-spacing-column:2rem;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-4 h1{font-size:var( --e-global-typography-c31f7c5-font-size );line-height:var( --e-global-typography-c31f7c5-line-height );}.elementor-kit-4 h2{font-size:var( --e-global-typography-3a3a382-font-size );line-height:var( --e-global-typography-3a3a382-line-height );}.elementor-kit-4 h3{font-size:var( --e-global-typography-a32ded1-font-size );line-height:var( --e-global-typography-a32ded1-line-height );word-spacing:var( --e-global-typography-a32ded1-word-spacing );}.elementor-kit-4 h4{font-size:var( --e-global-typography-586d613-font-size );line-height:var( --e-global-typography-586d613-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4 h1{font-size:var( --e-global-typography-c31f7c5-font-size );line-height:var( --e-global-typography-c31f7c5-line-height );}.elementor-kit-4 h2{font-size:var( --e-global-typography-3a3a382-font-size );line-height:var( --e-global-typography-3a3a382-line-height );}.elementor-kit-4 h3{font-size:var( --e-global-typography-a32ded1-font-size );line-height:var( --e-global-typography-a32ded1-line-height );word-spacing:var( --e-global-typography-a32ded1-word-spacing );}.elementor-kit-4 h4{font-size:var( --e-global-typography-586d613-font-size );line-height:var( --e-global-typography-586d613-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */html {
font-size: clamp(15px, 3vw, 21px);
overflow-x: hidden;
overflow-y: scroll;
}

body {
padding: 0px;
margin: 0px;
overflow-x: hidden;
max-width: 100vw;
}

h2 {
margin: 0px;
}

h3 {
margin: 0px;
}

h4 {
margin: 0px;
}

p {
margin-top: 0px;
margin-bottom: 1.5rem;
}

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

.elementor-widget-text-editor {
font-size: clamp(16px, 3.5vw, 21px);
line-height: 1.7;
}

.elementor-widget-text-editor ul ul {
margin-top: 1rem; 
}

@view-transition {
  navigation: auto;
}

.small-section {
padding: 3rem 5%;
}

.section {
padding: 6rem 5%;
}

@media (max-width: 767px) {
.section {
padding: 3rem 5%;
}
}

.large-section {
padding: 8rem 5%;
}

.section-padding-x {
padding: 0px 5%;
}

.hover-pop {
transition: all .5s ease;
}

.hover-pop:hover {
box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 5px;
font-size: 1rem;
margin: 0px;
transition: all .5s ease;
}

.elementor-stat-widget {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}

@media (max-width: 767px) {
.elementor-stat-widget {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center !important;
}
}

.elementor-stat-widget .stat-number {
font-size: clamp(3rem, 5vw, 4rem);
font-weight: 700;
line-height: 1;
color: var(--e-global-color-primary);
text-align: center;
}

.elementor-stat-widget .stat-label {
font-size: clamp(1.5rem, 3.5vw, 1.75rem);
text-transform: lowercase;
color: var(--e-global-color-secondary);
font-weight: 600;
text-align: center;
}

.elementor-mask-button {
  position: relative;
  width: 100px;
  height: 50px;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid #000;
  border-radius: 8px;
  font-family: 'Lato', sans-serif;
}

.elementor-mask-button .mas {
  position: absolute;
  color: #000;
  text-align: center;
  width: 100%;
  font-size: 11px;
  top: 17px;
  font-weight: bold;
  pointer-events: none;
}

.elementor-mask-button .elementor-button {
  width: 100%;
  height: 100%;
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
  background: #000;
  color: #fff;
  -webkit-mask-image: url("https://raw.githubusercontent.com/robin-dela/css-mask-animation/master/img/urban-sprite.png");
  mask-image: url("https://raw.githubusercontent.com/robin-dela/css-mask-animation/master/img/urban-sprite.png");
  -webkit-mask-size: 3000% 100%;
  mask-size: 3000% 100%;
  border: none;
  animation: ani2 0.7s steps(29) forwards;
}

.elementor-mask-button .elementor-button:hover {
  animation: ani 0.7s steps(29) forwards;
}

@keyframes ani {
  from {
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
  }
  to {
    -webkit-mask-position: 100% 0;
    mask-position: 100% 0;
  }
}

@keyframes ani2 {
  from {
    -webkit-mask-position: 100% 0;
    mask-position: 100% 0;
  }
  to {
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
  }
}

.two-images {
position: relative !important;
    width: 27.5vw;
    max-width: 600px !important;
    top: 2.5vh !important;
    left: 0px;
}

@media (max-width: 767px) {
.two-images {
max-width: 70%;
left: 25%;
width: 200px;
}
}

.two-images img {
width: 100%;
}

.two-images .two-images__img {
border: 15px solid #fff;
border-radius: 5%;
}

@media (max-width: 767px) {
.two-images .two-images__img {
border: 8px solid #fff;
}
}

.two-images .two-images__img--1 {
position: absolute;
z-index: 2;
width: 70%;
top: -10%;
left: -35%;
aspect-ratio: 1 / 1;
object-fit: cover;
}

@media (max-width: 767px) {
.two-images .two-images__img--1 {

}  
}

.two-images .two-images__img--2 {
position: relative;
width: 100%;
z-index: 1;
aspect-ratio: 1 / 1;
object-fit: cover;
}

@media (max-width: 767px) {
.two-images .two-images__img--2 {

}  
}

.hero::before, .skew-overlay::before {
animation: skewWave 20s ease-in-out infinite;
}

@keyframes skewWave {
  0%,100% { transform: scale(1) rotateX(0deg) skewX(0deg); filter: contrast(1) saturate(1); }
  50% { transform: scale(1.3) rotateX(6deg) skewX(2deg); filter: contrast(1.15) saturate(1.1); }
}

.hover-grow {
  transition: transform 0.3s ease;
}

.hover-grow:hover {
  transform: scale(1.05);
}

.alt-hero {
max-height: 840px;
height: 80vh;
}

.slidefade {
opacity: 0;
transform: translateY(50px);
transition: opacity 1.5s ease-out, transform 1.25s ease-out;
}

/* State of the elements when they are in view */
.slidefade.in-view, body.e-preview--show-hidden-elements .slidefade {
opacity: 1 !important;
transform: translateY(0) !important;
}

/* Card shell */
.iac.iac--card {
  display: flex;
  align-items: stretch;
  gap: 0;                 /* change if you want a gutter */
  border-radius: 18px;        /* optional */
  overflow: hidden;          /* keeps the image neatly cropped inside the radius */
  background: #fff;          /* optional */
}

/* Left: 1/3 image (square crop) */
.iac__image {
  flex: 0 0 33.333%;
  max-width: 33.333%;
  position: relative;
}

.iac__image-inner {
  width: 100%;
  aspect-ratio: 1 / 1;   /* modern way to keep it square */
  position: relative;
}

.iac__image-inner img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;     /* crops to a square nicely */
  display: block;
  border-radius: 18px;
}

/* Right: 2/3 content */
.iac__content {
  flex: 1 1 100%;
  max-width: 100%;
  padding: 2.5rem 3rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
}

.iac__title {
  line-height: 1;
}

.iac__desc {
margin-bottom: .5rem;
}

.iac__button {
  display: inline-block;
  text-decoration: none;
  /* add your button styles */
}

/* Responsive: stack on small screens */
@media (max-width: 768px) {
  .iac.iac--card {
    flex-direction: column;
  }
  .iac__image,
  .iac__content {
    max-width: 100%;
    flex-basis: auto;
  }
}

.pb-0 {
padding-bottom: 0px;
}

.box-item {
display: flex;
flex-direction: column;
background: #fff;
padding: 2.5rem;
border-radius: 18px;
gap: 2rem;
width: 100%;
}

.box-item {
width: 100% !important;
transition: all .5s ease;
}

.box-item:hover {
transform: scale(1.025);
transition: all .5s ease;
}

.box-item.simple {
min-height: 260px;
}

.box-item.simple .content-area {
display: flex;
flex-direction: column;
gap: 1rem;
}

.box-item.simple .content-area .content {
font-size: 1rem;
line-height: 1.5;
}

.box-item .thumbnail {
max-width: 220px;
width: 40%;
aspect-ratio: 1 /1;
object-fit: cover;
overflow: hidden;
border-radius: 18px;
margin-bottom: 2rem;
transition: all 1s ease;
}

.box-item:hover .thumbnail {
max-width: 180px;
transition: all 4s ease;
}

.box-item .thumbnail img {
aspect-ratio: 1 /1;
object-fit: cover;
overflow: hidden;
}

.box-item .title {
font-size: 32px;
margin-bottom: 0px;
}

.box-item .title a {
color: var(--e-global-color-primary) !important;
}

.box-item .image {
border-radius: 18px;
}

.box-item .eyebrow {
font-size: clamp(1rem, 5vw, 1.15rem);
font-weight: bold;
color: var(--e-global-color-secondary);
line-height: 1.1;
}

.box-item .title a {
font-size: clamp(1.25rem, 5vw, 1.5rem);
font-weight: bold;
color: var(--e-global-color-primary);
}

.post-item .thumbnail {
margin-bottom: 0px;
}

.box-item .datetime {
margin-top: 1rem;
}

.event-item img {
aspect-ratio: 16 / 9;
object-fit: cover;
object-position: center center;
width: 100%;
}

.elementor-button {
  &:hover {
  box-shadow: 0px 1px 5px rgba(0,0,0, .3);
  font-size: 1rem;
  background-color: #F16545;
  padding: 18px 32px 18px 32px;
  margin: -2px -2px -2px -2px;
  }
}

.tribe-events-content a {
color: var(--e-global-color-secondary);
}

.dl .dl-label {
color: var(--e-global-color-primary) !important;
}

.award-stories-swiper .swiper-wrapper {
  align-items: stretch; /* forces equal height */
}

.award-stories-swiper .swiper-slide {
  display: flex;
}

.award-stories-swiper .story-item {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.elementor-widget-box .elementor-widget-container {
display: flex;
}

.award-npg {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
}

.award-npg .award-npg__item {
  margin: 0;
  overflow: hidden;
  flex: 1 1 calc(33.333% - 2.5rem);
}

.award-npg .award-npg__img {
  width: 100%;
  height: 110px;
  display: block;
  object-fit: contain !important;      /* crop to square */
}

@media (max-width: 991px) { .award-npg {
    flex-direction: column;
}
}

.elementor-faq-widget {
display: flex;
flex-direction: column;
gap: 1rem;
}

.faq-item {
display: flex;
flex-direction: column;
gap: 0rem;
width: 100%;
padding: 1rem 2rem;
cursor: pointer;
border-radius: 18px;
background: #fff;
}

.faq-item .faq-question {
display: flex;
align-items: center;
justify-content: space-between;
margin: 0px;
font-size: clamp(1rem, 2.5vw, 1.15rem);
text-transform: none;
font-weight: 600;
line-height: 120%;
color: var(--e-global-color-primary);
}

.faq-item .faq-toggle-icon {
  transition: transform 0.3s;
  width: 20px;
}

.faq-item .faq-toggle-icon.toggled {
  transform: rotate(180deg);
}

.faq-answer {
margin-top: 1rem;
margin-bottom: 1rem;
opacity: 1;
max-height: 800px;
transition: all .5s ease;
overflow: hidden;
}

.faq-answer.hidden {
margin-top: 0rem;
margin-bottom: 0rem;
opacity: 0;
max-height: 0px;
transition: all .5s ease;
}

.photostrip > * {
flex: 0 1 20%;
}

@media (max-width: 767px) {
.photostrip > * {
flex: 0 1 50% !important;
}

.photostrip > *:nth-child(4) {
display: none;
}
}

.white-outline img {
border: 15px solid #fff;
border-radius: 5%;
overflow: hidden;
}

#elementor-popup-modal-19533 {
position: fixed;
width: 100vw;
padding: 0px;
margin: 0px;
top: 0px;
margin: 0px;
}/* End custom CSS */