/* Heading and content */

/*
********************
******************** 
Version 1 styles 
********************
********************
*/

.element-01.version-1 {
  line-height: 1.5;
  color: var(--wpt-text-colour);
}

.element-01.version-1 .wpt-title {
  text-align: center;
  padding-bottom: 20px;
  margin-bottom: 20px;
  display: block;
  position: relative;
  font-family: var(--wpt-headings-secondary-font);
  color: var(--wpt-primary-colour);
}

.element-01.version-1 *.left {
  text-align: left;
}

.element-01.version-1 *.right {
  text-align: right;
}

.element-01.version-1 *.center {
  text-align: center;
}

.element-01.version-1 h1.wpt-title {
  font-size: 2.5em;
}

.element-01.version-1 h2 {
  font-size: 2em;
}

.element-01.version-1 h3 {
  font-size: 1.75em;
}

.element-01.version-1 h4 {
  font-size: 1.5em;
}

.element-01.version-1 h5 {
  font-size: 1.25em;
}

.element-01.version-1 h6 {
  font-size: 1em;
}

.element-01.version-1 *.center:not(.innercontent)::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background: var(--wpt-primary-colour)
}

.element-01.version-1 *.left:not(.innercontent)::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 0%;
  transform: translateX(0%);
  width: 60px;
  height: 4px;
}

.element-01.version-1 *.right:not(.innercontent)::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  right: 0%;
  transform: translateX(0%);
  width: 60px;
  height: 4px;
}

.element-01.version-1 .wpt-container {
}

.element-01.version-1 .wpt-container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto
}

@media (min-width: 576px) {
  .element-01.version-1 .wpt-container {
    max-width: 540px
  }
}

@media (min-width: 768px) {
  .element-01.version-1 .wpt-container {
    max-width: 720px
  }
}

@media (min-width: 992px) {
  .element-01.version-1 .wpt-container {
    max-width: 960px
  }
}

@media (min-width: 1200px) {
  .element-01.version-1 .wpt-container {
    max-width: 1140px
  }
}

.element-01.version-1 .wpt-row {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.element-01.version-1 .wpt-row .wpt-contents {
  width: 100%;
}


/*
********************
********************
Version 2 styles
********************
********************
*/

.element-01.version-2.has-img-bg {
  overflow: hidden;
}

[class*='element-']:not(.element-04).version-2 {
  /*overflow:hidden;*/
  position: relative;
}

[class*='element-'].version-2 > img {
  filter: blur(10px);
  height: calc(100% + 20px);
  left: -10px;
  max-width: unset;
  position: absolute;
  object-fit: cover;
  top: -10px;
  width: calc(100% + 20px);
  z-index: 0;
}

[class*='element-'].version-2[style*="background"] {
  position: relative;
}

[class*='element-'].version-2[style*="background"] .backgroundOverlay {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 0;
}

.darkness-medium {
  opacity: 0.3
}

.blur-low {
  backdrop-filter: blur(2px);
}

.blur-medium {
  backdrop-filter: blur(5px);
}

.blur-high {
  backdrop-filter: blur(10px);
}

.blur-very-high {
  backdrop-filter: blur(20px);
}

.blur-position-none {
  filter: blur(0px) !important;
  left: 0px !important;
  top: 0px !important;
  width: calc(100% + 0) !important;
  height: calc(100% + 0) !important;
}

.blur-position-low {
  filter: blur(2px) !important;
  left: -2px !important;
  top: -2px !important;
  width: calc(100% + 4px) !important;
  height: calc(100% + 4px) !important;
}

.blur-position-medium {
  filter: blur(5px) !important;
  left: -5px !important;
  top: -5px !important;
  width: calc(100% + 10px) !important;
  height: calc(100% + 10px) !important;
}

.blur-position-high {
  filter: blur(10px) !important;
  left: -10px !important;
  top: -10px !important;
  width: calc(100% + 20px) !important;
  height: calc(100% + 20px) !important;
}

.blur-position-very-high {
  filter: blur(20px) !important;
  left: -20px !important;
  top: -20px !important;
  width: calc(100% + 40px) !important;
  height: calc(100% + 40px) !important;
}

.element-01.version-2 .nb-iframe {
  margin-top: 2em;
}

.element-01.version-2.rounded-corners-true .nb-iframe {
  border-radius: 20px;
  overflow: hidden;
}