/***********************************************
Reset & Basics
***********************************************/
html, body, div, span, applet,
object, iframe, h1, h2, h3, h4,
h5, h6, p, blockquote, pre, a,
abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd,
q, s, samp, small, strike, strong,
sub, sup, tt, var, b, u, i, center,
dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption,
tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details,
embed, figure, figcaption, footer,
header, hgroup, menu, nav, output,
ruby, section, summary, time, mark,
audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

article, aside, details, figcaption,
figure, footer, header, hgroup, menu,
nav, section {
  display: block;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  margin: 0;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

html {
  overflow-y: scroll;
  overflow: -moz-scrollbars-vertical;
}

body {
  margin: 0;
  padding: 0;
  background-color: #FFF;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* enable to allow sticky header */
body {
  overflow-x: unset !important;
}

/***********************************************
Variables
***********************************************/
/***********************************************
Owl Spacing
***********************************************/
/* Owl Spacing 
.ct-section.owl-spacing--s .ct-section-inner-wrap > * + *,
.owl-spacing--s:not(.ct-section) > * + * {
margin-top: 1rem;
}

.ct-section.owl-spacing--m .ct-section-inner-wrap > * + *,
.owl-spacing--m:not(.ct-section) > * + * {
margin-top: 2rem;
}

.ct-section.owl-spacing--l .ct-section-inner-wrap > * + *,
.owl-spacing--l:not(.ct-section) > * + * {
margin-top: 3rem;
}

.ct-section.owl-spacing--xl .ct-section-inner-wrap > * + *,
.owl-spacing--xl:not(.ct-section) > * + * {
margin-top: 4rem;
}
*/
/* Fix for Kadence Row content & Oxygen Inner Content */
/*
.kt-inside-inner-col > * + *,
.wp-block-column > * + *,
span.inner-content > * + *,
.ct-text-block .ct-span > * + *,
.ct-inner-content > * + * {
    margin-top: 3rem;
}
*/
#main p + *, #main pre + *, #main address + *, #main hr + *, #main .h1 + *, #main .h2 + *, #main .h3 + *,
#main .h4 + *, #main .h5 + *, #main .h6 + *, #main dt + *, #main dd + *, #main figure + *, #main figcaption + *, #main ul + *, #main ol + *, #main dl + *,
#main .media + *, #main table + *, #main caption + *, #main .img-left + *, #main .img-right + *,
#main .message + *, #main .btn--container + *, #main .btn--group + * {
  margin-top: var(--space-s);
}

#main h1 + *, #main h2 + *, #main h3 + *, #main h4 + *, #main h5 + *, #main h6 + * {
  margin-top: var(--space-s);
}

.ct-inner-content > .ct-section {
  margin-top: 0;
}

/***********************************************
Gravity Forms
***********************************************/
.gform_wrapper ul.gform_fields {
  padding-left: 0 !important;
}

.gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper textarea {
  background: #fff;
  color: #333;
  border: 0;
  padding: 10px !important;
}

/***********************************************
Fluent Forms
***********************************************/
body .fluentform .ff-el-form-control {
  background-color: var(--accent-trans-20);
  border: 0 !important;
}
body .fluentform .ff-el-form-control:focus {
  background-color: var(--accent-trans-10);
}
body .fluentform .ff-btn-submit {
  background: var(--base) !important;
  color: #ffffff;
  padding: var(--space-xs) var(--space-m);
  transition-duration: 0.3s;
  border-color: var(--base);
  border-width: 0px;
  border-style: none;
  border-radius: 0 !important;
}
body .fluentform .ff-btn-submit:hover {
  background: var(--accent-trans-40) !important;
  color: var(--base) !important;
}

@custom-media --extra-small-viewport (min-width: 20em);
@custom-media --small-viewport (min-width: 25em);
@custom-media --medium-small-viewport (min-width: 48em);
@custom-media --medium-viewport (min-width: 62em);
@custom-media --large-viewport (min-width: 75em);
.glightbox-container {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999 !important;
  overflow: hidden;
  touch-action: none;
  -webkit-text-size-adjust: 100%;
  -webkit-backface-visibility: hidden;
  outline: none;
}
.glightbox-container.inactive {
  display: none;
}
.glightbox-container .gcontainer {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: hidden;
}
.glightbox-container .gslider {
  transition: transform 0.4s ease;
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: absolute;
}
.glightbox-container .gslide {
  height: 100%;
  width: 100%;
  position: absolute;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  user-select: none;
}
.glightbox-container .gslide.current {
  opacity: 1;
  z-index: 99999;
}
.glightbox-container .gslide.prev {
  opacity: 1;
  z-index: 9999;
}
.glightbox-container .gslide-inner-content {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.glightbox-container .ginner-container {
  width: 100%;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 100%;
  max-height: 100vh;
}
.glightbox-container .ginner-container.gvideo-container {
  width: 100%;
}
@media (--medium-small-viewport) {
  .glightbox-container .ginner-container {
    width: auto;
    flex-direction: row;
  }
}
.glightbox-container .ginner-container.desc-bottom, .glightbox-container .ginner-container.desc-top {
  flex-direction: column;
}
.glightbox-container .ginner-container.desc-left, .glightbox-container .ginner-container.desc-right {
  max-width: 100% !important;
}
@media (--medium-small-viewport) {
  .glightbox-container .ginner-container.desc-left .gslide-description, .glightbox-container .ginner-container.desc-top .gslide-description {
    order: 0;
  }
  .glightbox-container .ginner-container.desc-left .gslide-media, .glightbox-container .ginner-container.desc-top .gslide-media {
    order: 1;
  }
}

.gslide iframe,
.gslide video {
  outline: none !important;
  border: none;
  min-height: 165px;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  touch-action: auto;
}

.gslide-image {
  align-items: center;
  will-change: transform, opacity;
}
.gslide-image img {
  max-height: 90vh;
  display: block;
  max-width: 90% !important;
  margin: 0;
  padding: 0;
  float: none;
  outline: none;
  border: none;
  user-select: none;
  will-change: transform, opacity;
  max-width: 100vw;
  width: auto;
  height: auto;
  object-fit: cover;
  touch-action: none;
}
@media (--medium-small-viewport) {
  .gslide-image img {
    /* width: initial; */
    max-height: 97vh;
  }
}
.desc-top .gslide-image img, .desc-bottom .gslide-image img {
  width: 100%;
}

.gslide-video {
  width: 100%;
  max-width: 100%;
  position: relative;
  width: 100vh;
  max-width: 100vh;
  width: 100% !important;
}
.gslide-video .gvideo-wrapper {
  width: 100%;
}
.gslide-video::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(255, 0, 0, 0.34);
  display: none;
}
.gslide-video.playing::before {
  display: none;
}

.gslide-inline {
  background: #fff;
  padding: 20px;
  text-align: left;
  max-height: calc(100vh - 40px);
  overflow: auto;
}
@media (--medium-small-viewport) {
  .gslide-inline {
    max-height: 95vh;
  }
}

.ginlined-content {
  overflow: auto;
  display: block !important;
  opacity: 1;
}

.gslide-external {
  display: flex;
  width: 100%;
  min-width: 100%;
  background: #fff;
  padding: 0;
  overflow: auto;
  max-height: 62vh;
}
@media (--medium-small-viewport) {
  .gslide-external {
    max-height: 95vh;
  }
}

.gslide-media {
  display: block;
  display: inline-flex;
  width: auto;
  justify-content: center;
  align-items: center;
  /* @media (--medium-small-viewport) {
      display: block;
      display: inline-flex;
      justify-content: center;
  } */
}
.desc-top .gslide-media, .desc-bottom .gslide-media {
  margin: 0 auto;
}

.gslide-description {
  float: left;
}
.gslide-description.description-left, .gslide-description.description-right {
  max-width: 100%;
}
@media (--medium-small-viewport) {
  .gslide-description.description-left, .gslide-description.description-right {
    max-width: 275px;
  }
}
.gslide-description p {
  margin-bottom: 12px;
}
.gslide-description p::last-child {
  margin-bottom: 0;
}

/*
 * Description for mobiles
 * something like facebook does the description
 * for the photos
*/
.glightbox-mobile .glightbox-container .gslide-description {
  background: transparent;
  position: absolute;
  bottom: 15px;
  padding: 19px 11px;
  max-width: 100vw !important;
  order: 2 !important;
  max-height: 78vh;
  overflow: auto !important;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 100%);
  transition: opacity 0.3s linear;
}
.glightbox-mobile .glightbox-container .gslide-title {
  color: #fff;
  font-size: 1em;
}
.glightbox-mobile .glightbox-container .gslide-desc {
  color: #a1a1a1;
}
.glightbox-mobile .glightbox-container .gslide-desc a {
  color: #fff;
  font-weight: bold;
}
.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
  color: #fff;
  opacity: 0.4;
}

.gdesc-open .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 0.4;
}
.gdesc-open .gdesc-inner {
  padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
  transition: opacity 0.5s ease;
  opacity: 1;
}

.greset {
  transition: all 0.3s ease;
}

.glightbox-desc {
  display: none;
}

.glightbox-open {
  overflow: hidden;
}
@media (--medium-small-viewport) {
  .glightbox-open {
    height: auto;
  }
}

.gloader {
  height: 25px;
  width: 25px;
  animation: lightboxLoader 0.8s infinite linear;
  border: 2px solid #fff;
  border-right-color: transparent;
  border-radius: 50%;
  position: absolute;
  display: block;
  z-index: 9999;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 47%;
}

.goverlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  will-change: opacity;
}
@media (--medium-small-viewport) {
  .goverlay {
    background: rgba(0, 0, 0, 0.92);
  }
}
@media screen and (max-height: 420px) {
  .goverlay {
    background: #000;
  }
}

.gprev,
.gnext,
.gclose {
  background-repeat: no-repeat;
  z-index: 99999;
  cursor: pointer;
  width: 26px;
  height: 44px;
  display: block;
  background-position: 0 0;
}
.gprev.disabled,
.gnext.disabled,
.gclose.disabled {
  opacity: 0.1;
}
.gprev .garrow,
.gnext .garrow,
.gclose .garrow {
  stroke: #fff;
}

iframe.wait-autoplay {
  opacity: 0;
}

.glightbox-closing .gnext,
.glightbox-closing .gprev,
.glightbox-closing .gclose {
  opacity: 0 !important;
}

/*Skin */
@media (--medium-small-viewport) {
  .glightbox-clean .ginner-container {
    box-shadow: 1px 2px 9px 0px rgba(0, 0, 0, 0.65);
  }
}
.glightbox-clean .gslide-description {
  background: #fff;
}
.glightbox-clean .gdesc-inner {
  padding: 22px 20px;
}
.glightbox-clean .gslide-title {
  font-size: 1em;
  font-weight: normal;
  font-family: arial;
  color: #000;
  margin-bottom: 19px;
  line-height: 1.4em;
}
.glightbox-clean .gslide-desc {
  font-size: 0.86em;
  margin-bottom: 0;
  font-family: arial;
  line-height: 1.4em;
}
.glightbox-clean .gslide-video {
  background: #000;
}
.glightbox-clean .gprev,
.glightbox-clean .gnext,
.glightbox-clean .gclose {
  border: none;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGMAAAA2CAYAAADTeCfRAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIE1hY2ludG9zaCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo5NThDMEMwNzg3NjgxMUU1QUM2MUYwRDYwNTNEN0UxMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDo5NThDMEMwODg3NjgxMUU1QUM2MUYwRDYwNTNEN0UxMSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjk1OEMwQzA1ODc2ODExRTVBQzYxRjBENjA1M0Q3RTExIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjk1OEMwQzA2ODc2ODExRTVBQzYxRjBENjA1M0Q3RTExIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+htE8KwAAA9BJREFUeNrsm1tIFGEYhndDI4OSLgqkMrKjBXYwCjt40QkpL4pMyoqMgigIgm6iiy66KSwpj2vrucKgpINRRhYRooQkWYEWUkaWERokhVQXbu/QOyDhpjPzz3H/Dx7W1f2+753/3X9mnPnHHwqFfDKcEWPkEEgzZEgzpBkybDbjHLhvIP8GKLNhPILgksEaFaDKKWacAMdAn4Ean8F+kGOxGXFgDyjSmZ8L9oFpurKVU1uBnAr9jZMCah1hrQLBGkciyL7FGvNymXdZb2+RG3GGYo4LrHmINS9abEiZRkMu8PNXjPQVJV4Vc9SEgclm7WqLDSkd5RdBiBGizCihmMMmDkwWe1yz2JBy9g2E+ft5o7smkWZUUMwBCwYmg71u2nQMCZhphFEzaihmt4UDk86e9TYZUsj3OaKNMGJGHcVkWjwoChvZ+7HFfQvZt42vpaJ76Em6SzHbbDBCZR01NFvct519u8yorzXhEcWk2WiESiq1tFrUT901veZrnp1mNFHEWgcYoZJMTe0m98ljn3K+z+f7oB1mtLD5agcZoZJEbZ3Ab0J9deCrwpzSB6004xWbLnegESqJ1NgNok04aFeF+XtA5MF8pA90stkiBxuhkkCtvSBGQL2iEYz415Bys8yIAu/ZZKELjFCJp+Z+EGugTgHrVGq8ClEm2oxZ4CUYAHNcZIRKHOjj6ed8A8eISo15xUaPIcP9spFFk11ohMp0bkOHxrxa5lXo7Ksack9Pvn+YpTqLwS0QDZbxRo+bYgJoBZPAZtCiIVe5QzceZBroXwP8YKfWRH+YdVOx4AOYCOJBt0uMUAz4BGLAVNDjhXvg/bwF2UdTElywLVOoN5o/97hsRv/3HvgAv10fwVuQ6ODtUO45f6HmyaDXi6tDfoMZNKMdJDlwG2ZyN/qVs/mbl5fqDILZoAO8AMkO0j8XvONJhjKLf0TKuqkF4Dl4BlY6QLty1vcGdHE39SvSFrEtBc2gCWywUfcKfjE6eHIxGKkrCleBRvAApNmgOQU8BW2crRG/vDMV1JN0C/WmcmYqZizxeSyMLO/cBG6DOyDDAq3rwRPOyhSfB8PoWtst4DrJMlGnYnwDeMjZ4c0QdGGumhfIsk246LeVtetcfOFyVEQJ8nQv+AkqwThQIqjuDnAV1ILtPo9HlMBaB/kfewCMBfkG6ylL85VnJZSroLt8kRAmTLezOpfUD+W0WQvFnIzfpEePlaeO5oE1OvOVp56+R8KuaWiYZYYMG05tZUgzpBkypBnSDBnSDGmGDGmGDGmGNEOGNEOaIUOa4YH4I8AAM9m8BFEzyDIAAAAASUVORK5CYII=");
}
.glightbox-clean button:focus:not(.focused):not(.disabled) {
  outline: none;
}
.glightbox-clean .gprev {
  background-color: rgba(0, 0, 0, 0.08);
  background-position: 4px 5px;
  position: absolute;
  top: -100%;
  left: 30px;
  width: 38px;
  height: 56px;
}
@media (--medium-small-viewport) {
  .glightbox-clean .gprev {
    top: 45%;
  }
}
.glightbox-clean .gnext {
  background-color: rgba(0, 0, 0, 0.08);
  background-position: -27px 5px;
  position: absolute;
  top: -100%;
  right: 30px;
  width: 38px;
  height: 56px;
}
@media (--medium-small-viewport) {
  .glightbox-clean .gnext {
    top: 45%;
  }
}
.glightbox-clean .gclose {
  background-color: rgba(0, 0, 0, 0.08);
  width: 35px;
  height: 35px;
  top: 15px;
  right: 10px;
  position: absolute;
  opacity: 0.7;
  background-position: -59px 2px;
}
@media (--medium-viewport) {
  .glightbox-clean .gclose {
    right: 20px;
  }
}
.glightbox-clean .gclose:hover {
  opacity: 1;
}

/*CSS Animations*/
.gfadeIn {
  animation: gfadeIn 0.5s ease;
}

.gfadeOut {
  animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
  animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
  animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
  animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
  animation: gslideInRight 0.3s ease;
}

.gzoomIn {
  animation: gzoomIn 0.5s ease;
}

.gzoomOut {
  animation: gzoomOut 0.5s ease;
}

@keyframes lightboxLoader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes gfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes gfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes gslideInLeft {
  from {
    opacity: 0;
    transform: translate3d(-60%, 0, 0);
  }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideOutLeft {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
    visibility: hidden;
  }
}
@keyframes gslideInRight {
  from {
    opacity: 0;
    visibility: visible;
    transform: translate3d(60%, 0, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes gslideOutRight {
  from {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
}
@keyframes gzoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 1;
  }
}
@keyframes gzoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
/* Full Alignment */
.alignfull {
  margin: 0 calc(50% - 50vw);
  max-width: 100vw;
  width: 100vw;
}

.alignwide {
  margin: 0 calc(50% - 670px);
  max-width: 100vw;
  width: 1220px;
}

.aligncenter {
  margin: 0 auto;
  max-width: 100vw;
  width: 780px;
}

@media (max-width: 1380px) {
  .alignwide {
    margin: 0 calc(50% - 50vw);
    max-width: 100vw;
    width: 100vw;
  }
}
.wp-block-kadence-rowlayout.aligncenter,
.wp-block-kadence-rowlayout.alignwide,
.wp-block-kadence-rowlayout.alignfull {
  margin: 0 calc(50% - 50vw) !important;
  max-width: 100vw;
  width: 100vw;
}

.wp-block-kadence-rowlayout.alignnone .kt-row-column-wrap {
  margin: 0 auto;
  max-width: 780px;
}

.wp-block-kadence-rowlayout.aligncenter .kt-row-column-wrap {
  margin: 0 auto;
  max-width: 780px;
}

.wp-block-kadence-rowlayout.alignwide .kt-row-column-wrap {
  margin: 0 auto;
  max-width: 1220px;
}

.wp-block-kadence-rowlayout.alignfull .kt-row-column-wrap {
  margin: 0 auto;
  max-width: 100vw;
  padding-left: 0;
  padding-right: 0;
}
.wp-block-kadence-rowlayout.alignfull .kt-row-column-wrap .kt-inside-inner-col {
  width: 100%;
}

.wp-block-kadence-rowlayout.alignfull.nomargin .kt-row-column-wrap {
  max-width: 100vw;
  padding: 0;
  margin: 0;
}

.wp-block-kadence-rowlayout.alignfull .kt-row-layout-inner {
  padding-left: var(--space-m);
  padding-right: var(--space-m);
}
.wp-block-kadence-rowlayout.alignfull .kt-row-layout-inner .kt-row-layout-inner {
  padding-left: 0;
  padding-right: 0;
}

.kt-row-has-bg > .kt-row-column-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media only screen and (max-width: 1279px) {
  /*
  .aligncenter .kt-row-column-wrap,
  .alignwide .kt-row-column-wrap,
  .alignfull .kt-row-column-wrap {
      padding-left: 3.2rem !important;
      padding-right: 3.2rem !important;
  }
  */
  .wp-block-kadence-rowlayout.aligncenter .kt-row-column-wrap .kt-inside-inner-col,
  .wp-block-kadence-rowlayout.alignwide .kt-row-column-wrap .kt-inside-inner-col {
    padding-left: var(--space-m);
    padding-right: var(--space-m);
  }
}
.kt-row-layout-inner > .kt-row-column-wrap > .wp-block-kadence-column.align-center .kt-inside-inner-col {
  align-items: center;
}

/***********************************************
ACF Accordion
***********************************************/
.accordion {
  display: block;
  width: 100%;
  clear: both;
  margin-top: 2.5rem;
}
.accordion h3.accTitle {
  border: 1px solid #999;
  padding: 20px 50px 20px 20px;
  background: #fff;
  cursor: pointer;
  margin-bottom: 0;
  margin-top: 3px;
  position: relative;
  font-weight: 700;
}
.accordion h3.accTitle:before {
  content: "\f078";
  font-family: "Font Awesome 5 Pro";
  position: absolute;
  right: 20px;
  top: 19px;
}
.accordion h3.accTitle.ui-state-active {
  border-bottom: 0;
}
.accordion h3.accTitle.ui-state-active:before {
  content: "\f077";
  font-family: "Font Awesome 5 Pro";
  position: absolute;
  right: 20px;
  top: 19px;
}
.accordion h3.accTitle:focus {
  outline: none;
}
.accordion .panel {
  background: #fff;
  border-left: 1px solid #999;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  padding: 0 20px 20px 20px;
  margin-top: 0 !important;
}

nav#nav ul#menu {
  margin: 0;
  width: auto;
  position: relative;
  display: flex;
}
nav#nav ul#menu li {
  list-style: none;
  position: relative;
}
nav#nav ul#menu li a {
  display: block;
  text-decoration: none;
  padding: 1rem var(--space-s);
  font-weight: 400;
  color: var(--base);
}
nav#nav ul#menu li a:hover {
  color: var(--primary);
}
nav#nav ul#menu li.menu-item-has-children {
  padding-right: 1rem;
}
nav#nav ul#menu li.menu-item-has-children .menu-expand {
  position: absolute;
  right: 0.5rem;
  top: 2.2rem;
  width: 16px;
  height: 6px;
}
nav#nav ul#menu li.menu-item-has-children .menu-expand span {
  background: var(--base);
  width: 8px;
  height: 2px;
  position: absolute;
  display: block;
}
nav#nav ul#menu li.menu-item-has-children .menu-expand .plus1 {
  left: 0;
  transform: rotateZ(45deg);
}
nav#nav ul#menu li.menu-item-has-children .menu-expand .plus2 {
  left: 5px;
  transform: rotateZ(-45deg);
}
nav#nav ul#menu li ul.sub-menu {
  position: absolute;
  top: 100%;
  left: var(--space-s);
  margin: 0;
  visibility: hidden;
  background: #fff;
  background: rgb(255, 255, 255);
  padding: 0;
  margin-top: 0;
  opacity: 0;
  box-shadow: 0px 2px 8px 0px rgba(51, 51, 51, 0.2);
  transition: all 0.3s ease;
  z-index: 2000;
}
nav#nav ul#menu li ul.sub-menu li {
  white-space: nowrap;
  text-align: left;
}
nav#nav ul#menu li ul.sub-menu li a {
  padding: 0.5rem 1rem;
}
nav#nav ul#menu li.current-menu-item > a, nav#nav ul#menu li.current-menu-parent > a {
  color: var(--primary);
}
nav#nav ul#menu li:hover > ul.sub-menu {
  visibility: visible;
  opacity: 1;
}

/* mobile menu hamburger button */
.showhide {
  background: #fff;
  width: 46px;
  height: 46px;
  position: absolute;
  top: 22px;
  right: 20px;
  cursor: pointer;
  z-index: 999999;
}

.showhide:hover {
  background: #fff;
}

.showhide--inner {
  margin: 9px;
  position: relative;
  box-sizing: border-box;
  width: 32px;
  height: 32px;
  display: block;
}

.showhide span {
  position: absolute;
  background: var(--base);
  height: 3px;
  width: 28px;
  transition: 0.5s;
  opacity: 1;
  left: 0;
}

.showhide span.ham1 {
  top: 4px;
}

.showhide span.ham2 {
  top: 14px;
}

.showhide span.ham3 {
  top: 24px;
}

.showhide.open span.ham1 {
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 14px;
}

.showhide.open span.ham2 {
  opacity: 0;
  right: -20px;
}

.showhide.open span.ham3 {
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 14px;
}

/* mobile menu container */
.mobilenav--wrap {
  padding: 0;
  width: 320px;
  height: 100vh;
  background: var(--base-ultra-light);
  -webkit-box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.3);
  top: 0;
  right: -320px;
  position: fixed;
  overflow: scroll;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.mobilenav--wrap.show--mobilenav {
  right: 0;
}

/* mobile menu */
.mobilenav {
  width: 100%;
  height: 100%;
  padding: 0;
}

.mobilenav > ul {
  width: 100%;
  box-sizing: border-box;
  margin: 1rem 0 2rem 0;
}

.mobilenav ul li {
  position: relative;
  border-bottom: 1px solid var(--base-ultra-dark-trans-20);
  list-style: none;
  font-size: 1.6rem;
}

.mobilenav ul li a {
  display: block;
  padding: 15px 20px;
  text-decoration: none;
  color: var(--base);
}

.mobilenav ul li a:hover,
.mobilenav ul li.current-menu-ancestor > a,
.mobilenav ul li.current-menu-item a {
  background: #fff;
  color: var(--primary);
}

.mobilenav ul li:hover ul {
  display: block;
  margin-left: 0;
}

.mobilenav ul ul li {
  border-top: 1px dotted var(--base-ultra-dark-trans-20);
  border-bottom: 0;
  position: relative;
  font-size: 90%;
}

.mobilenav ul ul {
  padding-left: 15px;
  margin-left: 0;
}

a.menu-expand {
  padding: 0 !important;
  background: transparent !important;
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
}

.mobilenav ul li.menu-item-has-children .plus1 {
  content: "";
  position: absolute;
  right: 10px;
  top: 24px;
  width: 20px;
  height: 2px;
  display: block;
  background: var(--base);
  transition: all 0.3s ease-in-out;
  transform: rotate(-180deg);
}

.mobilenav ul li.menu-item-has-children .plus2 {
  content: "";
  position: absolute;
  right: 10px;
  top: 24px;
  width: 20px;
  height: 2px;
  display: block;
  background: var(--base);
  transition: all 0.3s ease-in-out;
  transform: rotate(-270deg);
}

a.menu-expand:hover span {
  background: var(--primary) !important;
}

.mobilenav ul li.menu-item-has-children > a.menu-expand.menu-clicked .plus1 {
  transform: rotate(0);
}

.mobilenav ul li.menu-item-has-children > a.menu-expand.menu-clicked .plus2 {
  transform: rotate(0);
}

/*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

.flickity-button:hover {
  background: white;
  cursor: pointer;
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: -10px;
}

.flickity-prev-next-button.next {
  right: -10px;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

/***********************************************
Theme Styles
***********************************************/
:root {
  --transition: all 0.3s ease;
  --global-kb-spacing-sm: var(--space-s);
  --global-kb-spacing-md: var(--space-m);
  --global-kb-spacing-lg: var(--space-l);
  --global-kb-spacing-xl: var(--space-xl);
  --global-kb-spacing-xxl: var(--space-xxl);
  --global-kb-spacing-xxxl: calc(var(--space-xxl) + 1rem );
  --global-kb-gap-sm: var(--space-m);
  --global-kb-gap-md: var(--space-l);
  --global-kb-gap-lg: var(--space-xl);
  --global-kb-gap-xl: var(--space-xxl);
  --global-kb-gap-xxl: calc(var(--space-xxl) + 1rem);
  --global-kb-gap-xxxl: calc(var(--space-xxl) + 2rem);
  --global-kb-font-size-sm: var(--text-s);
  --global-kb-font-size-md: var(--text-m);
  --global-kb-font-size-lg: var(--text-l);
  --global-kb-font-size-xl: var(--text-xl);
  --global-kb-font-size-xxl: var(--text-xxl);
  --global-kb-font-size-xxxl: calc(var(--text-xxl) + 1rem );
}

figure.wp-block-image,
figure.wp-block-embed-vimeo {
  margin-left: 0;
  margin-right: 0;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-weight: inherit;
}

ul {
  padding-left: 0;
  margin-left: 15px;
}

img {
  max-width: 100%;
  height: auto;
}

#header.fixed {
  box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.2);
  /* #logo-wrapper {margin-top: -51px;} */
}

/***********************************************
Smooth scroll to anchors with offset
***********************************************/
html {
  scroll-behavior: smooth;
}

:target:before {
  content: "";
  display: block;
  height: 69px;
  margin: -69px 0 0;
}

.space-around .kt-inside-inner-col {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}

/***********************************************
Service Blocks
***********************************************/
.rad-service-blocks {
  gap: 2rem;
}
.rad-service-blocks .rad-service-block {
  margin-top: 0;
  position: relative;
}
.rad-service-blocks .rad-service-block .service-title {
  color: var(--secondary);
}
.rad-service-blocks .rad-service-block .triangle-small {
  width: 14px;
  height: 17px;
  margin-right: var(--space-xs);
}
.rad-service-blocks .rad-service-block::before {
  content: "";
  width: 1px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -2.5rem;
  background: var(--accent);
}
.rad-service-blocks .rad-service-block:first-of-type::before {
  display: none;
}

@media only screen and (max-width: 992px) {
  .rad-service-blocks .rad-service-block:nth-of-type(3)::before {
    display: none;
  }
}
@media only screen and (max-width: 479px) {
  .rad-service-blocks .rad-service-block {
    border-bottom: 1px solid var(--accent);
    padding-bottom: var(--space-m);
  }
  .rad-service-blocks .rad-service-block::before {
    display: none;
  }
  .rad-service-blocks .rad-service-block:nth-of-type(4) {
    border-bottom: 0;
  }
}
/***********************************************
Testimonial Flickty Carousel
***********************************************/
.rad-testimonial-block {
  width: 100%;
  padding-right: 60px;
  margin-bottom: 5rem;
  margin-top: var(--space-s);
}
.rad-testimonial-block .testimonial {
  text-align: left;
  font-size: 2.2rem;
}
.rad-testimonial-block .flickity-button {
  background: var(--accent-light-trans-40);
  /* icon color */
}
.rad-testimonial-block .flickity-button .flickity-button-icon {
  fill: var(--shade-trans-60);
}
.rad-testimonial-block .flickity-button:hover {
  background: var(--secondary);
}
.rad-testimonial-block .flickity-button:hover .flickity-button-icon {
  fill: white;
}
.rad-testimonial-block .flickity-prev-next-button.previous {
  right: 0;
  left: auto;
  top: 7.5rem;
}
.rad-testimonial-block .flickity-prev-next-button.next {
  right: 0;
  top: 2rem;
}

/***********************************************
Top Page Banner
***********************************************/
.block-rad-photobanner-block .banner-photo--wrap {
  position: relative;
  min-height: 530px;
  width: 100%;
}
.block-rad-photobanner-block .banner-photo--wrap img.banner-photo--img {
  position: absolute;
  object-fit: cover;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.block-rad-photobanner-block .banner-photo--wrap .photo-banner--text {
  max-width: 440px;
  color: #fff;
  margin-bottom: var(--space-l);
}
.block-rad-photobanner-block .banner-photo--wrap .button-blue .blue-button--innerwrap {
  text-align: left;
  flex-direction: row;
  display: flex;
  align-items: center;
}
.block-rad-photobanner-block .banner-photo--wrap .button-blue .blue-button--innerwrap img {
  width: 14px;
  height: 17px;
  margin-right: var(--space-s);
}

/***********************************************
OxyExtras CSS overrides
***********************************************/
.oxy-read-more-link {
  align-items: flex-start !important;
  justify-content: flex-start !important;
}

/***********************************************
List marker styles
***********************************************/
#main li::marker {
  color: var(--secondary);
}
#main ul {
  list-style: none;
  margin-left: 0;
}
#main li {
  margin: 0.25rem;
  position: relative;
  padding-left: 2rem;
}
#main li::before {
  content: "";
  border-width: 6.5px 0 6.5px 11px;
  border-color: transparent transparent transparent var(--secondary);
  border-style: solid;
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0.6rem;
}
