.v2-page {
  --color-primary: #ca9956;

  --spacing: 30px;
}

.v2-accent__red1 {
  --color-primary: #f51e01;
  --color-primary--bg: #ffe9e6;
}

.v2-page h1 em,
.v2-page h2 em,
.v2-page h3 em {
  color: var(--color-primary) !important;
}

.v2-page h1 {
  font-size: 30px !important;
}

.v2-hero img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.v2-padding--t,
.v2-padding--tb {
  padding-top: var(--spacing) !important;
}

.v2-padding--b,
.v2-padding--tb {
  padding-bottom: var(--spacing) !important;
}

.v2-margin--t,
.v2-margin--tb {
  margin-top: var(--spacing) !important;
}

.v2-margin--b,
.v2-margin--tb {
  margin-bottom: var(--spacing) !important;
}

.v2-align-center {
  text-align: center !important;
}

.v2-section-style1 {
  margin: var(--spacing) 0;
}

.v2-section-style1__image {
  margin-bottom: var(--spacing);
}

.v2-section-style1__image img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.v2-section-style1__content {
  text-align: center;
}

.v2-section-style2 {
  position: relative;
}

@keyframes v2-section-style2__move-dash {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 60px 0; /* Should match total pattern width */
  }
}

@keyframes v2-section-style2__move-dash--invert {
  from {
    background-position: 0 0;
  }
  to {
    background-position: -60px 0; /* Should match total pattern width */
  }
}

.v2-section-style2::after {
  content: "";
  display: block;
  width: 100%;
  margin-top: var(--spacing);

  height: 5px;
  background: repeating-linear-gradient(90deg,
    var(--color-primary) 0px,
    var(--color-primary) 30px,  /* Width of dash */
    transparent 30px,
    transparent 60px  /* Gap between dashes */
  );
  animation: v2-section-style2__move-dash 1s linear infinite;
}

.v2-section-style2--invert::after {
  animation: v2-section-style2__move-dash--invert 1s linear infinite;
}

.v2-section-style2__inner {
  position: relative;
  z-index: 20;
}

.v2-section-style2__title {
  background-color: var(--color-primary);
  background-size: cover !important;
  background-position: center center !important;
  color: #fff !important;
  padding: var(--spacing);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.v2-section-style2__title h2 {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.v2-section-style2__text {
  padding: var(--spacing);
  background-color: var(--color-primary--bg);
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.w153c-img-video .wpb_row {
  gap: 0;
  align-items: center !important;
  position: relative;
  padding-right: 30px;
}

.w153c-img-video .wpb_row > .wpb_column:nth-child(1) {
  flex: 0 0 64% !important;
}

.w153c-img-video .wpb_row > .wpb_column:nth-child(2) {
  flex: 0 0 36% !important;
}

/*
.w153c-img-video .wpb_row > .wpb_column:nth-child(2) {
  width: 29% !important;
  position: absolute;
  z-index: 50;
  top: 0;
  right: 30px;
  bottom: 0;
}
*/

/*
.w153c-img-video .wpb_row > .wpb_column:nth-child(2) > .vc_column-inner {
  display: flex;
  align-items: center;
}
*/

.w153c-img-video .wpb_row > .wpb_column:nth-child(2) > .vc_column-inner > div {
  flex: 0 0 100%;
}

.w153c-img-video .wpb_video_widget,
.w153c-img-video iframe {
  margin: 0 !important;
  display: block;
  width: 100% !important;
  min-width: auto !important;
  height: auto !important;
  aspect-ratio: 450 / 800;
}

.v2-section-style2__content--video .wpb_video_widget,
.v2-section-style2__content--video iframe {
  display: block !;
  margin: 0 !important;
}

.v2-section-style2__content--video .wpb_video_widget {
  display: flex;
  align-items: center;
  background-color: #000000;
}

.v2-section-style2__content--video .wpb_video_widget > div {
  flex: 0 0 100%;
}

.v2-section-style2__content--video iframe {
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  aspect-ratio: 450 / 800 !important;
}

@media (max-width: 750px) {
  /*
  .w153c-img-video .wpb_row > .wpb_column:nth-child(2) {
    right: 0;
    width: 32% !important;
  }
  */

  .w153c-img-video .wpb_row {
    padding-right: 0;
  }
}

@media (min-width: 700px) {
  .v2-section-style1 {
    background-color: var(--color-primary--bg);
    padding: 20px 0;
  }

  .v2-section-style1__inner > .vc_column-inner > .wpb_wrapper {
    display: flex;
    gap: var(--spacing);
    align-items: center;
  }

  .v2-section-style1__image {
    flex: 0 0 calc( 40% - ( var(--spacing) / 2) );
    margin-bottom: 0;
  }

  .v2-section-style1__content {
    text-align: left;
  }
}

@media (min-width: 1000px) {
  .v2-page {
    --spacing: 50px;
  }

  .v2-page h1 {
    font-size: 40px !important;
  }

  .v2-section-style1 {
    margin: calc( var(--spacing) * 2 ) 0;
  }

  .v2-section-style1__image {
    flex-basis: calc( 35% - ( var(--spacing) / 2) );
    margin-top: calc( var(--spacing) * -1 );
    margin-bottom: calc( var(--spacing) * -1 );
  }

  .v2-section-style2__content > .wpb_column > .vc_column-inner > .wpb_wrapper {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    align-items: stretch;
  }

  .v2-section-style2 .v2-section-style2__title {
    flex: 0 0 40%;
  }

  .v2-section-style2 .v2-section-style2__text {
    flex: 1 1 0%;
  }

  .v2-section-style2--invert .v2-section-style2__title {
    order: 2;
  }

  .v2-section-style2--invert .v2-section-style2__text {
    order: 1;
  }
}

@media (min-width: 1500px) {
  .v2-page {
    --spacing: 70px;
  }

  .v2-page h1 {
    font-size: 60px !important;
  }

  .v2-section-style1__image {
    flex-basis: calc( 50% - ( var(--spacing) / 2) );
  }

  .v2-section-style2::after {
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 0;
    width: 50%;
    transform: translateY(-50%);
    margin-top: 0;
    height: 10px;
  }

  .v2-section-style2--invert::after {
    left: auto;
    right: 0;
  }
}
