body {
  transition: background  1s;
 //overflow-x:hidden;
  margin: 0;
  padding: 0;
  font-size: 16px;
  /*color: #fff !important;*/
  overflow-x: hidden;
}
html {
  scroll-behavior: smooth;
}
p, h1, h2, h3 {
  //color: #fff;
}

.backgroundRed {
  background-color: #782f40;
}

.backgroundLighterGray {
  background-color: #eee;
}

.backgroundLightestGray {
  background-color: #f8f8f8;
}

.backgroundLightGray {
  background-color: #ccc;
}

.backgroundMidGray {
  background-color: #999;
}

.backgroundDarkGray {
  background-color: #666;
}

.backgroundDarkerGray{
  background-color: #333;
}

.backgroundBlack {
  background-color: #000;
}

.backgroundWhite {
  background-color: #fff;
}

.light,
.light p, .light h1, .light h , .light h3, .light h4 {
  color: #fff !important;
}

.red,
.red p, .red h1, .red h2, .red h3, .red h4 {
  color:  #782f40;
}

.sectionFull {
  display: block;
  box-sizing: border-box;
  height: auto;
  //min-height: calc(100vh - 8rem);
  //min-width: 100vw;
  min-height: 100vh;
  width: 100%;
  text-align: center;
  position: relative;
  overflow-x: clip;
  padding-top: 4rem;
  padding-bottom: 4rem;
}



a {
  z-index: 1;
}

.hidestart {
 opacity:0 !important;
}

.panel {
  box-sizing: border-box;
  max-width: 1280px;
  display: flex;
  margin: auto;
  /*min-height: calc(100vh - 8rem);*/
  white-space: normal;
}

.panelRow {
  min-height: calc(100vh - 8rem);
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}

/*
#bodyContainer > .sectionFull div.panelRow:nth-child(1)  > div:nth-child(1) {
  min-height: calc(100vh - 13.625rem) !important; 
}*/
#bodyContainer > .sectionFull div.panelRow:nth-child(1){
  min-height: calc(100vh - 13.625rem) !important;
}


.overlay,
.sectionFull .overlay,
.panel .overlay {
  background-color: rgba(0, 0, 0, .4);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;

  width: 100%;
  height: 100%;
}


.panel-col-12 {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100vh;
}

.panel-col-9 {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    width: 66.6666%;
    height: 100vh;
}

.panel-col-6 {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    width: 50%;
    height: 100vh;
}

.panel-col-3 {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    width: 33.3333%;
    height: 100vh;
    box-sizing: border-box;
}
.col {
  width: 100%;
}
.panel .col-slim,
.panel .col-3, .panel .col-md-3,
.panel .col-4, .panel .col-md-4,
.panel .col-6, .panel .col-md-6,
.panel .col-8, .panel .col-md-8,
.panel .col-9, .panel .col-md-9,
.panel .col-12,  .panel .col-md-12
{
  display: flex;
  flex-direction: column;
  padding: 1rem;

}

.col-md-slim,
.col-slim {
  width: 100%;
  max-width: 70%;
  margin: auto;
}



.textDark,
.panel.textDark h1,
.panel.textDark h2,
.panel.textDark h3,
.panel.textDark h4,
.panel.textDark h5,
.panel.textDark h6,
.panel.textDark p  {
  color: #666 !important;
}

.textRed,
.panel.textRed h1,
.panel.textRed h2,
.panel.textRed h3,
.panel.textRed h4,
.panel.textRed h5,
.panel.textRed h6,
.panel.textRed p {
  color: #782f40 !important;
}



.panel.slim {
  max-width: 70%;
}

.panel-push-1 {
  margin-top:100vh;
}

.panel-push-2 {
  margin-top:200vh;
}
.panel-push-3 {
  margin-top:300vh;
}

.panel-push-4 {
  margin-top:400vh;
}

.panel-push-25 {
  margin-top:25vh;
}

.panel-push-50 {
  margin-top:50vh;
}

.panel-push-75 {
  margin-top:75vh;
}


.panel-push-bottom-25 {
  margin-bottom:25vh;
}


.panel-push-bottom-50 {
  margin-bottom:50vh;
}

.panel-push-bottom-75 {
  margin-bottom:75vh;
}

.panel-push-bottom-1 {
  margin-bottom:100vh;
}

.panel-push-bottom-2 {
  margin-bottom:200vh;
}

.panel-push-bottom-3 {
  margin-bottom:300vh;
}

.panel-push-bottom-4 {
  margin-bottom:400vh;
}

.panel-padding-left-1 {
  padding-left:100vw !important; 
}

.panel-padding-right-1 {
  padding-right:100vw !important; 
}

.panel .sticky {
  position: sticky;
}
.panel h1, .panel h3, .panel h4 {
  margin: 0 !important;
  padding: 0;
}
.panel .centerMiddleOld {
  align-items: center;
  justify-content: center;
  text-align: center;
}


.panel .centerTop {
  align-items: center;
  justify-content: left;
  text-align: center;
}


.panelRow .centerMiddle,
.panel .centerMiddle {
  align-items: center;
  justify-content: center;
  text-align: center;
}

.panel .centerBottom {
  justify-content: flex-end;  
  align-items: center;
  text-align: center;
}

.panel .leftMiddle {
  justify-content: center;
  text-align: left;
}

.panel .leftTop {
  align-items: flex-start;
  justify-content: left;
  text-align: left;
}

.panel .leftBottom {
  justify-content: flex-end;
  text-align: left;
}

.panel .vh250 {
  height: 250vh;
}
.nested {

}
.nested .sectionFull {
  width: 100vw;
  max-width: 100%;
  overflow: hidden;
  position: relative;
}

.paint {
  contain: paint;
}
.paraHorizontal {
  background-position: center center; background-repeat: no-repeat;  background-size: cover;
  /*transition: background-position 1s ease-out;*/
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-position: 0px 50%;
}

.paraHorizontalNEW {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
}

.backgroundContainerFixed.cover,
.backgroundContainer.cover,
.sectionFull.cover {
  background-position: center center;
  background-repeat: no-repeat;
  /*background-attachment: fixed;*/
  background-size: cover;
}

.backgroundContainerFixed {
  position: absolute;
  width: 100%;
  min-height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
 // background-repeat: no-repeat; 
  background-attachment: fixed;
  //background-position: center center;
}

.backgroundImage.cover {
  background-size: cover; 
  background-position: center center;
}

.paraVertical.cover {
  height: 100%;
  //background-attachment: fixed;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat; 

}

.paraHorizontal.right {
  background-position:  right center;
}

.paraHorizontal.left {
  background-position:  left center;
}

.backgroundContainer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  min-height: 100%;
  z-index: -1;
}


.standardBackgroundContainer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  min-height: 100%;
  z-index: -1;
}


.backgroundFixed {
  background-attachment: fixed;
}
.backgroundNoRepeat {
  background-repeat: no-repeat;
}
.backgroundContain {
  background-size: contain;
  background-position: left top;
}
.nested-placeholder {
  position: relative;
  overflow: clip;
  /* was hidden */
  font-size: 0px;

}
.panel {
  font-size: 1rem;
}

.opacity1 {
  opacity: 1;
}

.opacity75 {
  opacity: .75;
}

.opacity50 {
  opacity: .5;
}

.opacity25 {
  opacity: .25;
}

.sticky {
  position: fixed;
  /*z-index: 1;*/
  top: 0;
  height: 100vh;
  white-space: nowrap;
  //transition: left 1s ease-out;
}

.sticky .sectionFull {
  display: inline-block;
}

.stickyBgContainer {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.backgroundImage,
.backgroundVideo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  overflow: hidden;
}
.positionSticky {
  position:sticky;
}
/*
.stickyFull {
  position: sticky;
  min-width: 100vw;
  min-height: 100vh;
  width: auto;
  height: auto;
  overflow: hidden !important;
}
*/
.desktopHide {
  display: none; }
  @media (max-width: 60em) {
    .desktopHide {
      display: block !important; } }

.backgroundSticky > div,
.backgroundVideo > .stickyFull > video,
.backgroundVideo > video {
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -1;
  opacity: 1;
}

  .inCont {
    max-width: 1280px;

  }

  .sectionFull+div {
    margin-top: 0;
    margin-bottom: 0;
  }
/* Animation */

@keyframes blurOut {
    0% { filter: blur(0px);}
    50% { filter: blur(5px);}
    100% { filter: blur(0px);}
}


.blurOut {
    animation: blurOut 1s; 
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes wipe-enter {
  0% {
    transform: scale(0, .025);
  }
  50% {
    transform: scale(1, .025);
  }
}

@keyframes scale-down {
    0% {
        transform: scale(1.4);
        opacity: 0;
    }
    100% {
      transform: scale(1);
      opacity: 1;
    }
}

@keyframes opacity {
    100% {
      opacity: 1;
    }
}

@keyframes bounce {
  from,
  20%,
  53%,
  to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0);
  }

  40%,
  43% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -30px, 0) scaleY(1.1);
  }

  70% {
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -15px, 0) scaleY(1.05);
  }

  80% {
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0) scaleY(0.95);
  }

  90% {
    transform: translate3d(0, -4px, 0) scaleY(1.02);
  }
}

@media (prefers-reduced-motion: no-preference) {

  .fadeInDown {
    animation-name: fadeInDown;
    animation-duration: 1s;
  }

  .bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
  }
  .wipe-enter {
    animation-name: wipe-enter;
    animation-duration: 1s;
    animation-iteration-count: infinate;
  }
  .scale-down {
    animation-name: scale-down;
    animation-duration: 1s;
    animation-iteration-count: 1;
  }
}

.opacityZero {
  opacity: 0;
}

[data-animate="1"] {
  display:  inline-block;
  clear: bothl;
}

.animate__reverse {
  animation-direction: reverse;
}
.animate__animated {
 
 // animation-delay: .2s !important;
}

.animate__faster {
  animation-duration: .2s !important;
}


.blurOut {
  animation: blurOut 1s ease;
  -webkit-animation: blurOut 2s ease;
  -moz-animation: blurOut 2s ease;
  animation-direction: normal;
  animation-fill-mode:forwards;
}

.blurIn {
  animation: blurIn 1s ease;
  -webkit-animation: blurIn 2s ease;
  -moz-animation: blurIn 2s ease;
  animation-direction: normal;
  animation-fill-mode:forwards;
}



@keyframes blurOut {
  0% {
    -webkit-backdrop-filter: blur(0px);
    -moz-backdrop-filter: blur(0px);
    -o-backdrop-filter: blur(0px);
    -ms-backdrop-filter: blur(0px);
    backdrop-filter:  blur(0px);
  }
  100% {
    -webkit-backdrop-filter: blur(50px);
    -moz-backdrop-filter: blur(50px);
    -o-backdrop-filter: blur(50px);
    -ms-backdrop-filter: blur(50px);
    backdrop-filter:  blur(50px);
  }
}

@keyframes blurIn {
  0% {
    -webkit-filter: blur(50px);
    -moz-filter: blur(50px);
    -o-filter: blur(50px);
    -ms-filter: blur(50px);
  }
  100% {
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -o-filter: blur(0px);
    -ms-filter: blur(0px);
  }
}

[data-animate] {
  z-index: 1;
} 