/*
Theme Name: Scientific Animations Ribbons
Theme URI:
Author: xxx
Author xxx
Description: Do not activate this theme.
*/

@charset "UTF-8";
:root {
  --clr_dark_purple: #2F135D;
  --clr_purple: #A538CD;
  --clr_purple_blue: #3A10AE;
  --clr_cyan: #32C8E9;
  --clr_gray: #707070;
  --clr_light_gray: #B0ADAD;
  --clr_magenta: #ED19BB;
  --clr_gold: #FFD243;
  --clr_highlight: #32C8E9;

  --search_height: 58px;
  --headerSearchBarWidth: 338px;
  --footerSearchBarWidth: 290px;
  --headerHomeMarginLeft: 90px;
  --headerHomeLeftMaxWidth: 420px;
  --SiteMaxWidth: 1366px;
  --siteLogoWidth: 306px;
  --footerLeftCalc: calc(var(--siteLogoWidth) + 115px);

  --headerPad: 76px;

  --maxVideoWidth: 974px;
  --maxVideoHeight: 548px;
  --siteMargin: 160px;
}

@media only screen and (max-width: 1920px){
  :root {
    --siteMargin: 100px;
  }
}
@media only screen and (max-width: 1600px){
  :root {
    --headerPad: 20px
  }
}

@media only screen and (max-width: 1280px){
  :root {
    --maxVideoWidth: 575px;
    --maxVideoHeight: 324px;
    --headerHomeLeftMaxWidth: 100%;
  }
}

@media only screen and (max-width: 1150px){
  :root {
    --headerHomeMarginLeft: 0;
    --footerSearchBarWidth: 100%;
    --headerSearchBarWidth: 100%;

  }
}

@media only screen and (max-width: 960px){
  :root {
    --siteMargin: 20px;
  }
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 300;
  src: url(assets/fonts/khula/khula_light_latin_ext.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 300;
  src: url(assets/fonts/khula/khula_light_latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 400;
  src: url(assets/fonts/khula/khula_regular_latin_ext.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 400;
  src: url(assets/fonts/khula/khula_regular_latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 600;
  src: url(assets/fonts/khula/khula_semi_bold_latin_ext.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 600;
  src: url(assets/fonts/khula/khula_semi_bold_latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 700;
  src: url(assets/fonts/khula/khula_bold_latin_ext.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 700;
  src: url(assets/fonts/khula/khula_bold_latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 800;
  src: url(assets/fonts/khula/khula_extra_bold_latin_ext.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Khula';
  font-style: normal;
  font-weight: 800;
  src: url(assets/fonts/khula/khula_extra_bold_latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
html,body {
  scroll-behavior: smooth;
  position: relative;
  margin: 0;
  padding: 0;
  border: none;
  width: auto;
  background: var(--clr_dark_purple);
  background: linear-gradient( 180deg, rgba(37,7,87,1) 0%, rgba(51,21,71,1) 43%, rgba(83,28,149,1) 100%);
  font-family: 'Khula', Arial, Helvetica, sans-serif;
  font-weight: 300;
  color: white;
  min-width: 320px;
}

h1 {
  font-size: 75px;
  font-weight: 800;
  margin: 0;
  padding: 0;
  line-height: 75px;
}

a {
  color: white;
  text-decoration: none;
}

.wpEditor {
  margin-top: 32px;
}
@media only screen and (max-width: 600px){
  .wpEditor {
    margin-top: 0;
  }
}

.mwShell  {
  position: relative;
  margin: 0 auto;
}

header  {
  position: relative;
  background: rgba(85, 0, 255, 0.13);
  width: auto;
  min-height: 320px;
  overflow: hidden;

}

.hdrHome {
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center !important;
  background-blend-mode: luminosity;
}

.hdrHome h1 {
  --txtClr: #000;
  --txtWP: 1px;
  --txtWN: -1px;
  text-shadow:
    var(--txtWN) var(--txtWN) 0 var(--txtClr),
    var(--txtWP) var(--txtWN) 0 var(--txtClr),
    var(--txtWN) var(--txtWP) 0 var(--txtClr),
    var(--txtWP) var(--txtWP) 0 var(--txtClr);

}

.showImage {
  opacity: 1;
}

.hdrHome .mwShell {
  display: grid;
  position: relative;
  padding: 150px var(--siteMargin) 60px var(--siteMargin);
  margin-top: 146px;
}
.explainerVideo .mwShell {
  display: grid;
  position: absolute;
  z-index: 1;
  align-content: center;
  width: auto;
  height: auto;
  top: 91px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: 0 !important;
}
#homeBannerVideo {
  position: absolute;
  display: grid;
  width: 100%;
  height: 100%;
  align-content: center;
  transition: opacity 0.5s;
  opacity: 0;
}

.explainerVideo #homeBannerVideo {
  position: relative;
  height: auto;
}

#homeBannerVideo video {
  position: relative;
  display: inline-grid;
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 1700px) {

  #homeBannerVideo video {
    width: 140%;
  }

  #homeBannerVideo {
    align-content: start;
  }

}



@media only screen and (max-width: 960px) {

  #homeBannerVideo {
    justify-content: center;
  }

  #homeBannerVideo video {
    width: auto;
    height: 140%;
  }
}

.explainerVideo video {
  width: 100% !important;
  height: auto !important;
  justify-self: center;
}

@media only screen and (max-width: 640px) {
  .explainerVideo video {
    /*width: 160% !important;*/
  }
}

@media only screen and (max-width: 376px) {
  .explainerVideo video {
    /*width: 200% !important;*/
  }
}
@media only screen and (max-width: 340px) {
  .explainerVideo video {
    /*width: 230% !important;*/
  }
}


.hdrSub {
  min-height: 757px;
  background-repeat: no-repeat !important;
  background-size: auto 100% !important;
  background-position: right !important;
  background-blend-mode: luminosity;
}

.hdrVideo {
  min-height: 147px;
  background-repeat: no-repeat !important;
  background-size: auto 100% !important;
  background-position: right !important;
  background: none;
  user-select: none;
}

.pageTopBar {
  position: fixed;
  font-weight: 600;
  font-size: 14px;
  left: 0;
  right: 0;
  width: auto;
  align-items: center;
  z-index: 2;
}

.explainerVideo .pageTopBar {
  top: 0;
}


.pageTopBar:before {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  width: 100%;
  height: 105px;
}


.pageTopBar:after {
  content: '';
  position: absolute;
  z-index: -1;
  top: 0;
  width: 100%;
  height: 105px;
  background-size: cover;
  background:
    linear-gradient(to bottom,
    rgba(34, 29, 36, 1),
    rgba(47, 19, 93, 0) 100%);
  mix-blend-mode: multiply;
}

html:not([data-scroll='0']) .pageTopBar:before {
  background: var(--clr_dark_purple);
}

.hdrLogoSearch {
  position: relative;
  display: grid;
  grid-template-columns: calc(var(--siteLogoWidth) + 40px) auto var(--headerSearchBarWidth)  calc(112px + var(--headerPad));
  height: auto;
  padding: 0 var(--headerHomeMarginLeft);
}

.hdrLogoSearch:after {
  content: '';
  position: absolute;
  z-index: -1;
  bottom: 0;
  right: 30px;
  left: 30px;
  width: auto;
  opacity: 0.2;
  border-bottom: 2px solid var(--clr_cyan);
}

.headerMenu {
  position: relative;
  display: flex;
  align-items: center;
  justify-self: end;
  min-height: 105px;
  user-select: none;
  font-weight: 400;
}
.headerMenu > div {
  position: relative;
  display:inline-flex;
  margin: 0 var(--headerPad) 0 0;
  cursor: pointer !important;
  line-height: 18px;
}
@media(hover: hover) and (pointer: fine) {
  .headerMenu > div:hover,
  .headerMenu > div a:hover {
    text-decoration: underline;
  }
}

.siteLogo {
  position: relative;
  display: inline-grid;
  align-self: center;
  max-width: var(--siteLogoWidth);
  width: 100%;
  height: 41px;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background: url(assets/images/sicencetific_animations_logo.png);
  background-position-y: center !important;
}

.headerSearch {
  position: relative;
  display: grid;
  grid-template-columns: var(--headerSearchBarWidth);
  align-items: center;
  min-height: 105px;
  justify-self: end;
}
.searchIsOn:before {
  content: '';
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);

}

#searchResults {
  position: absolute;
  left: 0;
  width: 100%;
  box-shadow: 2px 3px 18px rgba(0,0,0,.5);
  user-select: none;
  transition: opacity 0.3s, top 0.3s;
  font-size: 15px;
  font-weight: 400;
}

.searchOff {
  top: 58px;
  opacity: 0;
  user-select: none;
  pointer-events: none;
}
.searchOn {
  top: 68px;
  opacity: 1;
}

#searchResults > div {
  position: relative;
  display: grid;
  width: auto;
  min-height: 64px;
  background: white;
  padding: 36px 18px 36px 18px;
}
#searchResults > div:before {
  content: '';
  position: absolute;
  width: 15px;
  height: 15px;
  left: 44px;
  top: -6px;
  background: white;
  transform: rotate(45deg);
}

#searchResults > div:after {
  content: '';
  position: absolute;
  width: auto;
  height: 12px;
  left: 0;
  right: 0;
  top: -12px;
  background: transparent;
}

#searchResults > div > div:first-child {
  color: var(--clr_cyan);
  margin: 0 10px 8px 10px;
}
.sResults {
  position: relative;
  margin: 0;
  cursor: pointer;
  height: 100%;
  min-height: 32px;
  color: var(--clr_gray);
}
.showScroll {
  padding: 36px 0 36px 18px !important;
}
.showScroll .sResults {
  overflow-y: scroll;
}

.no_result {
  display: block;
  padding: 12px 10px 0 10px;
  line-height: 20px;
}

.result {
  display: grid;
  grid-template-columns: auto auto;
  padding: 6px 10px;
  line-height: 20px;
  column-gap: 10px;
}
.result > div {
  pointer-events: none;
  display: inline-grid;
  align-items: end;
}
@media(hover: hover) and (pointer: fine) {
  .result:hover,
  .result:hover > div:last-child {
    cursor: pointer;
    background: var(--clr_cyan);
    color: white;
  }
}

.result > div:last-child {
  font-size: 12px;
  color: var(--clr_light_gray);
  justify-self: end;
  text-transform: lowercase;
}
.contactButton {
  position: relative;
  display: inline-grid;
  align-content: center;
  font-size: 35px;
  cursor: pointer;
  font-weight: 300;
  justify-self: end;
}

@media(hover: hover) and (pointer: fine) {
  .contactButton:hover {
    text-decoration: underline;
  }
}

input[type="text"] { border: none; outline: none; }


#fSearch,
#hdrSearch {
  position: relative;
  display: grid;
  z-index: 0;
  grid-template-columns: auto 37px;
  max-width: var(--headerSearchBarWidth);
  width: 100%;
  height: var(--search_height);
  border: 1px solid var(--clr_cyan);
  border-radius: 5px;
  transition: opacity 0.3s;
  pointer-events: none;
  opacity: 0.3;
}

.searchReady {
  pointer-events: all !important;
  opacity: 1 !important;
}

.voiceOn {
  border: 2px solid white !important;
  animation-duration: 3s;
  animation-name: pulseBorder;
  animation-iteration-count: infinite;
  animation-play-state: running;
}

@keyframes pulseBorder {
  0% {
    background: black;
  }

  50% {
    background: #3A10AE;
  }

  100% {
    background: black;
  }
}

.voiceOn input::placeholder {
  color: white !important;
}


#fSearch:before,
#hdrSearch:before {
  content: '';
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  backdrop-filter: blur(10px) brightness(125%);
  -webkit-backdrop-filter: blur(10px) brightness(125%);
  border-radius: 5px;

}

#fSearch {
  grid-template-columns: auto 37px;
  width: var(--footerSearchBarWidth);
  height: 40px;
}

#contentSearch form, #contentSearch fieldset,
#fSearch form, #fSearch fieldset, #fSearch input,
#hdrSearch form, #hdrSearch fieldset, #hdrSearch input{
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: none !important;
}

#fSearch input,
#hdrSearch input {
  position: absolute;
  width: auto;
  height: var(--search_height);
  color: white !important;
  left: 16px;
  right: 80px;
}
#fSearch input {
  height: 40px;
}

#search_button {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 40px;
  height: var(--search_height);
  width: 36px;

  border-radius: 0;
  border: none;
  padding: 0;
  background-size: 100% auto !important;
  background: url(assets/svgs/search_icon_blue.svg) !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  cursor: pointer;
}

@media(hover: hover) and (pointer: fine) {
  #search_button:hover {
    background: url(assets/svgs/search_icon_white.svg) !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
}

#fSearch ::placeholder,
#hdrSearch ::placeholder {
  color: var(--clr_gray);
  font-size: 15px;
}
#search_voice {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: var(--search_height);
  border-radius: 0;
  border: none;
  padding: 0;
  background-size: 100% auto !important;
  background: url(assets/svgs/microphone_icon_blue.svg) !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  cursor: pointer;
}
@media(hover: hover) and (pointer: fine) {
  #search_voice:hover {
    background: url(assets/svgs/microphone_icon_white.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
  }
}

.hdrContent {
  position: relative;
  display: grid;
  max-width: var(--headerHomeLeftMaxWidth);
  width: auto;
  margin-left: var(--headerHomeMarginLeft);
}

.tagline {
  line-height: 39px;
  color: var(--clr_cyan);
  font-size: 26px;
  font-weight: 400;
  margin: 25px 0 30px 6px;
  white-space: break-spaces;
  overflow: hidden;
  text-overflow: ellipsis;
}

.explainerVideo .tagline {
  color: black;
  --txtClr: #fff;
  --txtWP: 1px;
  --txtWN: -1px;
  text-shadow:
    var(--txtWN) var(--txtWN) 0 var(--txtClr),
    var(--txtWP) var(--txtWN) 0 var(--txtClr),
    var(--txtWN) var(--txtWP) 0 var(--txtClr),
    var(--txtWP) var(--txtWP) 0 var(--txtClr);
}


#contentSearch {
  position: relative;
  display: grid;
  grid-template-columns: 60px auto;
  width: auto;
  max-width: var(--headerHomeLeftMaxWidth);
  background: #A538CD00;
  height: 55px;
  border-radius: 5px;
  backdrop-filter: blur(10px) brightness(125%);
  -webkit-backdrop-filter: blur(10px) brightness(125%);
  align-items: center;
}

#contentSearch > div:first-child {
  justify-self: center;
}

#contentSearch form {
  width: 100% !important;
  height: 100% !important;
}
#contentSearch fieldset {
  display: grid;
  grid-template-columns: auto 160px;
  align-items: center;
}
#contentSearch button {
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: var(--clr_cyan) !important;
  border-radius: 5px;
  width: 132px;
  height: 43px;
  justify-self: end;
  margin: 0 6px 0 0;
  color: white;
  font-family: 'Khula', Arial, Helvetica, sans-serif;
  font-size: 16px;
}

#contentSearch input {
  height: 55px;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: none !important;
}

.icon_Search {
  position: relative;
  width: 19px;
  height: 19px;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background: url(assets/svgs/search_icon_blue.svg);
}

.hdrLinks {
  position: relative;
  margin: 80px auto 0 auto;
  width: auto;
  max-width: 354px;
  border-top: 2px solid rgb(50, 200, 233, 0.2);
  text-align: center;
  font-size: 14px;
}
.hdrLinks > div:first-child {
  margin: 30px 0 0 0;
}
.hdrLinks > div:last-child {
  margin-top: 10px;
}
.hdrLinks > div:last-child a {
  color: var(--clr_cyan);
  font-weight: 700;
}

.explainerVideo .hideHeaderLinks {
  display: none;
}
@media only screen and (max-width: 640px) {
  .explainerVideo {
    background-color: white !important;
  }
  .explainerVideo .mwShell {
    align-content: end;
  }
}
@media only screen and (max-width: 480px) {
  .explainerVideo {
    min-height: 302px !important;
    background-color: white !important;
  }

  .explainerVideo #homeBannerVideo {
    top: 91px;
  }
  .explainerVideo .hdrContent {
    top: 39px;
  }
  .explainerVideo .tagline {
    line-height: 29px !important;
  }

}

#menuButton {
  position: relative;
  display: none;
  width: 48px;
  height: 48px;
  justify-self: end;
  background: rgba(0, 0, 0, 0.1);
  border: 2px solid var(--clr_cyan);
  border-radius: 5px;
  cursor: pointer;
}

#menuButton:before {
  content: '';
  position: absolute;
  top: 10px;
  left: 10px;
  right: 10px;
  width: auto;
  height: 4px;
  background: white;
}
#menuButton:after {
  content: '';
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 10px;
  width: auto;
  height: 4px;
  background: white;
}

#menuButton > div {
  position: absolute;
  top: 22px;
  left: 10px;
  right: 10px;
  width: auto;
  height: 4px;
  background: white;
  pointer-events: none;
}

#searchButton {
  position: relative;
  display: none;
  width: 48px;
  height: 48px;
  justify-self: end;
  background: rgba(0, 0, 0, 0.1);
  border: 2px solid var(--clr_cyan);
  border-radius: 5px;
  cursor: pointer;

  background-size: 100% auto !important;
  background: url(assets/svgs/search_icon_blue.svg) !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}

.hVid {
  position: relative;
  width: auto;
  height: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin-top: 125px;
}

@media only screen and (max-width: 1280px){

  #searchResults > div {
    padding: 20px 10px 10px 10px;
  }

  .showScroll {
    padding: 20px 10px 10px 10px !important;
  }

  #searchResults > div > div:first-child {
    margin:0 0 10px 0;
  }

  .headerSearch {
    grid-template-columns: 100%;
    justify-self: initial;
    grid-column-start: 1;
    grid-column-end: 4;
    margin: 0;
  }

  .hdrLogoSearch {
    grid-template-columns: 306px auto;
    padding: 0 var(--siteMargin);
  }

  #hdrSearch {
    justify-self: center;
  }

  .headerSearch {
    display: none;
  }


  .menuIsOn .headerMenu,
  .menuIsOn .contactButton {
    display: inline-grid;
    justify-self: center;
    text-align: center;
    width: 100%;
    padding: 20px 0 0 0;
  }

  .menuIsOn .contactButton {
    margin: 0;
    padding: 0 var(--headerPad) var(--headerPad) var(--headerPad);
  }

  .contactButton {
    grid-column-end: 4;

  }
  .contactButton a {
    font-weight: 400;
  }

  .searchIsOn .headerSearch {
    display: grid;
  }


  #searchButton,
  #menuButton {
    display: grid;
  }

  .hdrLogoSearch {
    margin: 20px 0 0 0;
    padding-bottom: 20px;
    grid-template-columns: auto 64px 64px;
  }

  .headerMenu {
    display: none;
    grid-template-columns: auto;
    grid-column-end: 4;
    grid-column-start: 1;
    margin: 40px 0 0 0;
    min-height: initial;
    justify-self: start;
  }

  .headerMenu > div {
    margin: 5px 0;
    font-size: 20px;
    justify-self: center;
    font-weight: 400;
  }

  .hdrContent {
    text-align: center;
  }

  h1 {
    font-size: 50px;
    line-height: 55px;
  }
  .tagline {
    font-size: 20px;
    margin: 0 0 30px 6px;
  }
  .pageTopBar {
    backdrop-filter: blur(13px) brightness(90%);
    -webkit-backdrop-filter: blur(13px) brightness(90%);
  }

  .pageTopBar:before {
    border-bottom: 2px solid rgba(50, 200, 233, 0.2);
  }

  .pageTopBar:before,
  .pageTopBar:after {
    height: 90px;
  }


  .hdrHome .mwShell {
    margin-top: 240px;
    padding: 0 var(--siteMargin) 40px var(--siteMargin);
  }

  .explainerVideo .mwShell {
    /*margin-top: 130px;*/
  }

  #hdrSearch {
    grid-column-start: 1;
    grid-column-end: 3;
  }
  .contactButton {
    margin: 0;
    justify-self: start
  }
  .contactButton {
    display: none;
    font-size: 20px;
    padding: 0;
    margin: 0 0 10px 0;
    grid-column-start: 1;
    grid-row-start: 3;
  }

  .hVid  {
    margin-top: 92px;
  }
  .hdrLogoSearch:after {
    left: 0;
    right: 0;
  }

}



@media only screen and (max-width: 1024px){
  h1 {
    font-size: 35px;
    line-height: 35px;
  }
  .tagline {
    font-size: 16px;
    margin: 0 0 30px 6px;
  }
}
@media only screen and (max-width: 640px){
  .hdrHome {
    min-height: initial;
  }
  #contentSearch {
    grid-template-columns: 40px auto;
  }
  #contentSearch fieldset {
    grid-template-columns: auto auto;
  }
  #contentSearch button {
    width: auto;
    padding: 0 10px !important;
  }
  .hdrLinks {
    margin: 40px auto 60px auto;
  }

}

.videoHeader {
  position: relative;
  display: grid;
  width: 100%;
  height: auto;
  overflow: hidden;
  pointer-events: all;
}

.videoHeader div {
  max-height: 768px !important;
  max-width: 1366px !important;
}
.videoHeader > div {
  position: relative;
  top: 0;
  width: 100% !important;
  height: auto;
  margin: 0 auto;
  box-shadow: 0 5px 20px black;
  justify-self: center;
  align-self: start;
}

.subFrame > div {
  position: absolute;
  height: 100% !important;
}
.subFrame iframe {
  width: 100% !important;
  height: 100% !important;
}

.videoHeader > img {
  position: relative;
  display: inline-grid;
  align-self: start;
  top: 0;
  max-height: 798px;
}

.postHeaderContent {
  position: relative;
  display: grid;
  max-width: var(--headerHomeLeftMaxWidth);
  width: auto;
  margin-top: 236px;

  background: #A538CD00;
  border-radius: 10px;
  backdrop-filter: blur(30px) brightness(135%);
  -webkit-backdrop-filter: blur(30px) brightness(135%);
  padding: 50px 50px 50px 365px !important;
}

.hdrBold {
  font-size: 37px;
  font-weight: 800;
  line-height: 1em;
}

.hdrLight {
  margin: 20px 0;
  font-size: 25px;
  font-weight: 300;
  line-height: 1em;
}

.keyBubbles {
  position: relative;
  display: flex;
  margin: 20px 0;

}
.keyBubbles > div {
  display: inline-flex;
  padding:2px 20px 0 20px;
  border-radius: 5px;
  border: 1px solid white;
  margin-right: 10px;
  cursor: pointer;
}

@media(hover: hover) and (pointer: fine) {
  .keyBubbles > div:hover {
    background: black;
  }
}

.keyBubbles > div:last-child {
  margin-right: 0;
}
.aboutBubbles {
  position: relative;
  display: flex;
}

.aboutBubbles a {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: transparent;
}

.aboutBubbles > div {
  display: block;
  font-size: 13px;
  font-weight: 600;
  margin-right: 20px;
  text-overflow: ellipsis;
  max-width: 130px;
  white-space: break-spaces;
  overflow: hidden;
}
.aboutBubbles > div:last-child {
  margin: 0;
}

.aboutBubbles > div > div:first-child {
  color: var(--clr_gold);
}

@media only screen and (max-width: 960px) {
  .postHeaderContent {
    padding: 50px !important;
    text-align: center;
  }
}

#VideoRibbons {
  position: relative;
  z-index: 1;
  padding: 0 0 35px 0;
  overflow: hidden;
  pointer-events: none;
}

.ribbon {
  position: relative;
  width: auto;
  height: auto;
  margin-top: 50px;
  pointer-events: all;
  user-select: none;
}

.ribbon:before {
  display: block;
  position: relative;
  content: '';
  height: 120px;
  margin-top: -120px;
  visibility: hidden;
  pointer-events: none !important;
  z-index: -1;
}

.topPageShift:before{
  display: block;
  position: relative;
  content: '';
  height: 100px;
  margin-top: -100px;
  visibility: hidden;
  pointer-events: none !important;
  z-index: -1;
}

.ribbon > div {
  position: relative;
  margin: 0 auto;
  padding: 0 0 0 48px;
  height: auto;
  z-index: 1;
}

.ribbon > div > div:first-child {
  font-size: 28px;
  font-weight: 600;
  line-height: 28px;
  margin: 0 0 21px 0;
}
.ribbonCards {
  position: relative;
  display: flex;
  overflow-x: scroll;
}
.ribbonCards::-webkit-scrollbar {
  display: none;
  -webkit-appearance: none;
  width: 0;
  height: 0;
}

.ribbonCards > div {
  position: relative;
  display: inline-flex;
}
.rCard {
  position: relative;
  display: grid;
  width: 295px;
  height: 195px;
  margin-right:25px;
  background: var(--clr_dark_purple);
  cursor: pointer;
  overflow: hidden;
}
.rCard a {
  position: absolute;
  width: auto;
  height: auto;
  background: transparent;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.rCard > div {
  pointer-events: none;
  height: 195px;
}
.rCard > div:first-child img {
  width: auto;
  height: 195px;
}

.rCard > div:nth-child(2) {
  position: absolute;
  display: grid;
  width: auto;
  left: 0;
  right: 0;
  height: auto;
  background: var(--clr_purple_blue);
  bottom: 0;
  padding: 12px 40px 10px 20px;
  font-size: 14px;
  line-height: 16px;
  font-weight: 600;
  align-items: center;
}

.cardOn div:nth-child(2) {
  background: var(--clr_highlight);
}

.rCard > div:nth-child(2):after {
  content: '';
  position: absolute;
  top: 14px;
  right: 20px;
  width: 11px;
  height: 7px;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background: url(assets/svgs/arrow_small.svg);
}

.icoArrowSM {
  width: 11px;
  height: 7px;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background: url(assets/svgs/arrow_small.svg);
}

.ribbonArrows {
  position: absolute;
  width: auto;
  height: auto;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  pointer-events: none;
  visibility: hidden;
}
.ribbonArrows > div {
  position: absolute;
  width: 48px;
  height: 195px;
  bottom: 0;
  display: grid;
  justify-items: center;
  align-items: center;
  background: #2f135d99;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  pointer-events: all;
  cursor: pointer;

}

.ribbonArrows > div > div {
  position: relative;
  display: inline-grid;
  width: 21px;
  height: 31px;
  pointer-events: none;
}
.ribbonArrows > div > div:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 31px;
  height: 21px;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background: url(assets/svgs/arrow_large.svg);
}

.ribbonLeft > div {
  transform: translateX(3px) rotate(-90deg);
}
.ribbonRight {
  right: 0;
}
.ribbonRight > div {
  transform: translateX(-3px) rotate(90deg);
}

.showControls {
  visibility: initial;
}

.thumbImage {
  visibility: hidden;
}
@media only screen and (max-width: 1150px){
  .ribbon > div {
    padding: 0 0 0 28px;
  }
}

.contentShell {
  position: relative;
  z-index: 2;
  width: auto;
  height: auto;
  overflow: hidden;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: bottom right !important;
  max-height: 0;
  opacity: 0;
  transition: max-height 1s ease-in-out 0s, opacity 1s;
  background-color: black;
}

.contentShell:before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: linear-gradient(169deg, rgba(88,3,70,0.85) 0%, rgba(132,28,159,0.85) 56%, rgba(224,137,0,0.57) 100%);
  mix-blend-mode: multiply;
  opacity: 1;
  transition: opacity 0.3s;
}
.badVideoID:after {
  content:  '';
  position: absolute;
  display: grid;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: auto;
  height: auto;
  padding-top: 50px;
  justify-content: center;
  align-content: start;
  font-size: 48px;
  color: red;
  font-weight: 600;
  user-select: all !important;
}

.csFade:before {
  opacity: 0;
}
.csOff {
  max-height: 0;
}
.csOn {
  transition: max-height 0.1s;
}

.csOpen {
  animation-duration: 1s;
  animation-name: openContent;
}
.csClose {
  animation-duration: 1s;
  animation-name: closeContent;
}

@keyframes openContent {
  from {
    max-height: 0;
    display: block;
  }
  to {
    max-height: 1000px;
  }
}

@keyframes closeContent {
  from {
    max-height: 1000px;
  }
  to {
    max-height: 0;
    display: none;
  }
}


.contentShell > div {
  position: relative;
  display: grid;
  height: auto;
  grid-template-columns: 480px auto;
  grid-template-rows: auto auto;
  align-items: center;
  align-content: start;
  padding: 84px var(--siteMargin);
  margin: 0 auto;
  grid-column-gap: 150px;
  max-width: 1920px;
}

@media only screen and (max-width: 1920px){
  .contentShell > div {
    grid-template-columns: 420px auto;
    grid-column-gap: 100px;
  }
}

@media only screen and (max-width: 1380px){
  .contentShell > div {
    grid-column-gap: 0;
  }
}

.contentClose {
  position: absolute !important;
  top: 24px;
  right: var(--siteMargin);
  width: 31px;
  height: 21px;
  cursor: pointer;
  pointer-events: all;
}
.contentClose > div {
  position: relative;
  top: 0;
  right: 0;
  width: inherit;
  height: inherit;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background: url(assets/svgs/arrow_large.svg);
  pointer-events: none;
}

.contentShell > div > div {
  position: relative;
  display: inline-grid;
  justify-self: start;
  align-self: start;
}

.contentShell > div > div:nth-child(2) {
  grid-column-start: 1;
}

.contentShell > div > div:nth-child(3) {
  overflow: hidden;
  background-color: black;
  border-radius: 12px;
  box-shadow: 0 20px 30px rgb(0 0 0 / 50%);
  margin-left: 30px;
  justify-self: end;
  align-self: start;
  grid-column-start: 2;
  grid-row-start: 1;
  grid-row-end: 3;
  isolation: isolate;
}


.contentShell > div > div:last-child {
  justify-self: center;
}

.csTitle {
  font-size: 32px;
  font-weight: 800;
  line-height: 35px;
}
.csSubTitle {
  margin: 20px 0 0 0;
  font-size: 25px;
  line-height: 30px;
}
.csAbout {
  display: inline-flex;
  font-size: 15px;
  line-height: 18px;
  font-weight: 300;
  margin: 30px 0 0 0;
}
.csAbout > div {
  margin-right: 32px;
  white-space: break-spaces;
  text-overflow: ellipsis;
  max-width: 130px;
  overflow: hidden;
  width: auto;
}
.csAbout > div > div:first-child {
  color: var(--clr_gold);
}
.csKeyword {
  display: block;
  font-size: 12px;
  line-height: 14px;
  font-weight: 400;
  margin: 20px 0 0 0;
  pointer-events: all !important;
  user-select: none;
  cursor: pointer;
}
.csKeyword > div {
  display: inline-grid;
  width: auto;
  height: 29px;
  border: 2px solid white;
  border-radius: 5px;
  align-items: center;
  justify-items: center;
  padding: 3px 40px 0 40px;
  margin: 8px 35px 8px 0;
  line-height: initial;
}

@media(hover: hover) and (pointer: fine) {
  .csKeyword > div:hover {
    background: black;
  }
}

.csDescription {
  font-size: 15px;
  line-height: 18px;
  font-weight: 300;
  margin: 30px 0 0 0;
}

.buttonStart {
  position: relative;
  display: inline-grid;
  width: 126px;
  height: 31px;
  font-size: 12px;
  line-height: 14px;
  font-weight: 600;
  border: 2px solid var(--clr_gold);;
  color: var(--clr_gold);
  justify-items: center;
  align-items: center;
  margin: 25px 0 0 0;
  user-select: none;
  height: 36px;
}
.buttonStart div {
  display: grid;
  color: inherit;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  cursor: pointer;
  align-items: center;
  pointer-events: all;
  text-align: center;
  padding: 4px 0 0 0;
}

@media(hover: hover) and (pointer: fine) {
  .buttonStart div:hover {
    background-color: black;
  }
}

.buttonStart div a {
  position: absolute;
  display: inline-grid;
  color: inherit;
  background-color: transparent;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

@media only screen and (max-width: 1920px){
  .csTitle {
    font-size: 30px;
  }
  .csSubTitle {
    margin: 10px 0 0 0;
    font-size: 22px;
    line-height: 25px;
  }
  .csAbout {
    font-size: 13px;
    line-height: 14px;
  }
  .csKeyword {
    margin: 36px 0 0 0;
  }
  .csKeyword > div {
    height: 25px;
    padding: 0 24px;
  }

  .csDescription {
    font-size: 13px;
    line-height: 14px;
    margin: 28px 0 0 0;
  }
  .buttonStart {
    margin: 36px 0 0 0;
  }

}

.videoBlock {
  position: relative;
  display: grid;
  max-width: var(--maxVideoWidth);
  max-height: var(--maxVideoWidth);
  width: 100%;
  height: auto;
  overflow: hidden;
  pointer-events: all;
  opacity: 1;
  transition: opacity 0.5s;
}

.videoBlock > div {
  display: grid;
}
.videoBlock:before {
  content: '';
  position: absolute;
  z-index: 1;
  background-color: black !important;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  opacity: 0;
  background-repeat: no-repeat !important;
  background-size: 33% auto !important;
  background-position: center !important;
  background: url(assets/images/sicencetific_animations_logo.png);
  transition: opacity .5s;
  pointer-events: none;
}

.contentShell > div > div:nth-child(3):before,
.videoBlockXXX:after {
  content: '';
  position: absolute;
  z-index: 1;
  display: inline-grid;
  align-self: center;
  max-width: var(--siteLogoWidth);
  width: 100%;
  height: 100%;
  background-repeat: no-repeat !important;
  background-size: 100% auto !important;
  background-position: center !important;
  background: url(assets/images/sicencetific_animations_logo.png);
  justify-self: center;
  opacity: 0;
  pointer-events: none;

}

.contentShell > div > div:nth-child(2):before {
  opacity: 1;
  z-index: 0;
}

@keyframes loading{
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.badVideoID .videoBlock {
  opacity: 0 !important;
}

.csFade .videoBlock:before {
  opacity: 1 !important;
}
.w-foreground.w-css-reset > div:nth-child(3) > div {
  box-shadow: none !important;
}
.videoBlock a {
  color: white;
  font-size: 20px;
  background: blue;
}
.videoBlock img {
  position: relative;
  width: 100%;
  height: auto;
}
.videoBlock > div {
  position: absolute;
  top: 0;
  width: 100%;
  height: auto;
}
.videoBlockXX > div div {
  width: 360px !important;
  height: 338px !important;
}

.videoBlock video {
  width: 100%;
  height: auto;
  pointer-events: all;
}

.videoBlock iframe {
  width: 100%;
  height: 100%;
}

.videoOff {
  display: none !important;
}
.iFrameVideo {
  width: 100% !important;
  height: 100% !important;
}


@media only screen and (max-width: 1280px){

  .contentShell > div {
    grid-template-columns: auto;
    grid-template-rows: auto auto auto;
    grid-column-gap: 0;
  }

  .contentShell > div > div:first-child {
    grid-row-start: 2;
    margin-top: 40px;
  }

  .contentShell > div > div:nth-child(1) {
    grid-row-start: 1;
    margin: 0 0 30px 0;
  }
  .contentShell > div > div:nth-child(2) {
    grid-row-start: 3;

  }
  .contentShell > div > div:nth-child(3) {
    margin-left: 0;
    grid-column-start: 1;
    grid-row-start: 2;
    justify-self: center;
  }
  .videoBlock {
    margin: 0 auto;
  }
  .contentShell > div > div {
    margin: 0;
    padding: 0;
  }

  .csDescription {
    margin: 30px 0 0 0;
    font-size: 18px;
    line-height: 22px;
  }

  .csKeyword {
    font-size: 16px;
  }

  .csAbout {
    font-size: 16px;
  }

  element.style {
  }
  .buttonStart {
    margin: 30px 0 0 0;
  }

  .csTitle {
    font-size: 20px;
    line-height: 22px;
  }

  .csSubTitle {
    margin: 10px 0 0 0;
    font-size: 18px;
    line-height: 20px;
  }

  .contentClose {
    top: 20px;
  }

  .csDescription {
    font-size: 18px;
    line-height: 22px;
  }

}

@media only screen and (max-width: 1024px){
  .csTitle {
    font-size: 23px;
    line-height: 28px;
  }
}

@media only screen and (max-width: 640px) {
  .csKeyword {
    grid-template-columns: auto auto;
  }

  .videoBlock:before {
    width: 70%;
  }
}

@media only screen and (max-width: 480px) {
  .csKeyword {
    grid-template-columns: auto;
    grid-column-gap: 0;
  }

  .csKeyword {
    display: grid;
    grid-template-columns: auto auto auto;
    grid-column-gap: 20px;
    justify-content: start;
  }

  .csKeyword > div {
    height: auto;
    margin: 0 0 10px 0;
    text-align: center;
    line-height: 18px;
    padding: 6px;
  }

}

.postContent {
  position: relative;
  min-height: 120px;
  padding: 60px;
  font-size: 18px;
  font-weight: 400;
}

.postContent > div {
  position: relative;
  display: grid;
  grid-template-columns: 70% 30%;
  max-width: var(--SiteMaxWidth);
  margin: 0 auto;
}
.postLeft {
  position: relative;
  width: auto;
  display: block;
  padding: 0 50px 0 0;
  overflow: hidden;
}

.postLeft:after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border-right: 1px solid var(--clr_cyan);
  opacity: 0.5;
}

.postRight {
  position: relative;
  width: auto;
  display: block;
  padding: 0 0 0 50px;
}

.videoDetailBlock {
  margin: 0 0 50px 0;
}
.videoDetailBlock .aboutBubbles {
  margin: 20px 0 30px 0;
}

.dateSocialBlock {
  position: relative;
  margin: 0 0 40px 0;
}

.postDate {
  margin: 0 0 32px 48px;
}

.postDate:before {
  content: '';
  position: absolute;
  width: 32px;
  height: 32px;
  background: var(--clr_purple);
  border-radius: 32px;
  left: 0;
  top: 5px;
}

.postDate > div:first-child {
  font-size: 16px;
  color: var(--clr_cyan);
}
.postDate > div:last-child {
  font-size: 14px;
  color: #AAAAAA;
}

.dateSocialBlock > div:last-child {
  display: flex;
  grid-column-gap: 16px;
}

.inlineVideo {
  position: relative;
  display: grid;
  max-width: 80%;
  width: auto;
  margin: 60px auto;
  border-radius: 5px;
  box-shadow: 0 20px 30px rgba(0,0,0,.5);
}
.inlineVideo img {
  position: relative;
  width: 100%;
  height: auto;
}
.inlineVideo > div {
  position: absolute;
  top: 0;
}

.inlineImage {
  position: relative;
  display: grid;
  max-width: 80%;
  width: auto;
  height: auto;
  margin: 60px auto;
  border-radius: 5px;
  box-shadow: 0 20px 30px rgba(0,0,0,.5);
  overflow: hidden;
}
.inlineImage img {
  position: relative;
  width: 100%;
  height: auto;
}

#seeMoreBlock {
  position: relative;
  z-index: 1;
  margin: 35px 0;
  overflow: hidden;
  pointer-events: none;
}
#seeMoreBlock .ribbon {
  position: relative;
  margin: 0;
}
#seeMoreBlock .ribbon > div {
  padding: 0;
}

.bottomDate {
  position: relative;
  font-size: 18px;
  color: var(--clr_cyan);
  margin: 50px 0;
}

.postRight > div:first-child {
  font-size: 30px;
  font-weight: 800;
}

.postForm {
  position: relative;
  border: none;
}
.postForm fieldset {
  position: relative;
  border: none;
  display: grid;
  margin: 0;
  padding: 0;
}
.postForm input {
  padding: 10px 10px 10px 0;
  height: 50px;
  background: none;
  border-bottom: 1px solid var(--clr_cyan);
  color: white;
}
.postForm textarea {
  margin-top: 50px;
  padding: 10px;
  min-height: 275px;
  background: none;
  border: 1px solid var(--clr_cyan);
  color: white;
}

@media only screen and (max-width: 1024px){

  .postContent {
    padding: 50px 20px;
  }

  .postContent > div {
    grid-template-columns: auto;
  }
  .postLeft, .postRight {
    padding: 0;
  }
  .postRight {
    display: none;
  }
  .postLeft:after {
    display: none;
  }

  .keyBubbles {
    display: block;
  }

  .keyBubbles > div {
    margin: 10px;
    text-align: center;
  }

}

#ContactArea {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding: 0 var(--siteMargin) 60px var(--siteMargin);
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center !important;
}

#ContactArea > div {
  position: relative;
  max-width: var(--SiteMaxWidth);
  margin: 0 auto;

}
#ContactArea > div > div:first-child {
  font-size: 40px;
  font-weight: 800;
  line-height: 2.5em;
}

#ContactArea > div > div:nth-child(2) {
  display: grid;
  grid-template-columns: auto 460px;
  grid-column-gap: 150px;
  margin: 0 40px;
}

.contactForm {
  position: relative;
  border-radius: 10px;
  backdrop-filter: blur(13px) brightness(50%);
  -webkit-backdrop-filter: blur(13px) brightness(50%);
  padding: 40px;
}
.contactForm form {
  position: relative;
  display: grid;
}
.contactForm fieldset {
  border: none;
  margin: 0;
  padding: 0;
  margin: 15px 0;
}

.contactForm textarea:focus {
  outline: none;
}

.contactForm input, .contactForm textarea {
  position: relative;
  width: auto;
  height: 32px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 5px;
  background: none;
  color: white !important;
  padding: 0 10px;
  font-size: 15px;
  line-height: 18px;
  font-weight: 400;
  font-family: 'Khula', Arial, Helvetica, sans-serif !important;
}

textarea,
textarea::placeholder {
  font-size: 15px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
  font-family: 'Khula', Arial, Helvetica, sans-serif !important;
}

input:autofill {
  border: 1px solid yellow !important;
  background: none !important;
}
.contactForm textarea {
  position: relative;
  min-height: 100px;
  padding: 10px;
}
.contactForm ::placeholder {
  color: white;
  font-size: 15px;
}

::-webkit-file-upload-button {
  background-color: transparent;
  color: white;
  border: 1px solid white;
}
.contactForm button,
.contactForm a {
  position: relative;
  height: 45px;
  border-radius: 3px;
  background: var(--clr_cyan);
  border: none;
  color: white;
  text-align: center;
  margin: 20px 0 0 0;
  cursor: pointer;
  padding: 0 10px;
  min-width: 200px;
}
.contactForm [type='file'] {
  background: var(--clr_cyan);
  border-radius: 3px;
  text-align: center;
  display: inline-grid;
  align-items: center;
  align-content: center;
  justify-content: center;
  justify-items: center;
  padding: 10px 10px 0 10px;
  cursor: pointer;
  border: none;
  margin: 20px 0 10px 0;
}
@media(hover: hover) and (pointer: fine) {
  .contactForm [type='file']:hover,
  .contactForm a:hover,
  .contactForm button:hover {
    background-color: black !important;
  }
}

.buttonGray {
  background: #809499 !important;
}
.captchaGrid {
  display: flex;
  margin: 10px 0 0 0;
  align-content: center;
}
.captchaGrid img {
  max-width: 185px;
}
.captchaGrid a {
  display: inline-grid;
  align-items: center;
  margin: 0 0 0 20px;
  align-self: center;
  line-height: 50px;
}
.fbTwo {
  display: inline-grid;
  grid-template-columns: auto auto;
  grid-column-gap: 20px;
}

.fbFull {
  display: inline-grid;
}

.fCenter {
  justify-self: center;
}

.fileSmall {
  font-size: 12px
}

.contactSocial {
  position: relative;
  display: inline-grid;
  text-align: center;
  align-self: center;
  grid-row-gap: 100px;
}
.contactSocial > div {
  display: inline-grid;
}
.contactSocial > div > div {
  overflow: hidden;
}
.contactSocial > div:first-child {
  display: flex;
  grid-column-gap: 36px;
  justify-self: center;
}

.contactSocial > div:nth-child(2) {
  margin: 20px 0;
  display: none;
}

.contactSocial > div:last-child {
  grid-template-columns: auto auto;
  width: 400px;
  justify-self: center;
}
.contactSocial > div:last-child > div {
  justify-self: center;

}

.cEmail,
.cPhone {
  position: relative;
}

.cPhone > div:first-child, .cEmail> div:first-child {
  display: inline-grid;
}



.csIcos {
  position: relative;
  width: 27px;
  height: 27px;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background: red;
}

.csIcos a,
.cEmail a,
.cPhone a {
  position: absolute;
  width: auto;
  height: auto;
  background: transparent;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  color: transparent;
  user-select: none;
}

.icon_facebook_white {
  background-size: 10px 22px !important;
  background: url(assets/svgs/icon_facebook_white.svg);
}

.icon_linkedin_white {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_linkedin_white.svg);
}

.icon_instagram_white {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_instagram_white.svg);
}
.icon_pinterest_white {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_pinterest_white.svg);
}

.icon_twitter_white {
  background-size: 22px 18px !important;
  background: url(assets/svgs/icon_twitter_white.svg);
}

.icon_youtube_white {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_youtube_white.svg);
}



.cIcos {
  position: relative;
  width: 30px;
  height: 30px;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.icon_Phone_White {
  background-size: 27px 27px !important;
  background: url(assets/svgs/icon_phone_white.svg);
}
.icon_Email_White {
  background-size: 29px 30px !important;
  background: url(assets/svgs/icon_email_white.svg);
}

@media only screen and (max-width: 1200px){
  #ContactArea > div > div:nth-child(2) {
    display: grid;
    grid-template-columns: auto;
    margin: 0;
  }
  .contactForm {
    margin: 0 0 30px 0;
    padding: 20px;
  }

  #ContactArea > div > div:first-child {
    text-align: center;
  }

  .contactSocial {
    grid-row-gap: 30px;
  }

}
.captchaGrid img {
  height: auto !important;
}
@media only screen and (max-width: 600px){

  .fbTwo {
    grid-template-columns: auto;
  }
  #f_name {
    margin: 0 0 20px 0;
  }
  .contactSocial > div:last-child {
    grid-template-columns: auto;
    width: auto;
    grid-row-gap: 30px;
  }
  .fbFull {
    margin: 10px 0 0 0;
  }

  .captchaGrid {
    display: grid;
  }
  .captchaGrid img {
    max-width: 100%;
  }
  .captchaGrid a {
    margin: 10px 0 0 0;
  }

  .fbTwo {
    margin: 0 !important;
  }

  .fbTwo input {
    margin: 0 0 30px 0;
  }
}


footer  {
  position: relative;
  width: auto;
  min-height: 260px;
  background: linear-gradient(to right,
  rgba(165, 56, 205, 0.2),
  rgba(58, 16, 174, 0.2) 50%,
  rgba(50, 200, 233, 0.2) 100%);
  font-size: 16px;
  padding: 40px 80px;
  border-top: 1px solid #707070;
}

footer .mwShell {
  max-width: var(--SiteMaxWidth);
}
footer .siteLogo {
  margin-left: 0;
}

footer > div > div {
  position: relative;
  display: grid;
}
.footerTop {
  grid-template-columns: var(--footerLeftCalc) auto auto;
}
.footerTop > div > div:first-child {
  margin-bottom: 20px;
}

.fNav {
  font-size: 12px;
  margin-bottom: 8px;
  user-select: none;
  cursor: pointer;
  justify-self: center;
}

.fContact {
  justify-self: center;
}

@media(hover: hover) and (pointer: fine) {
  .fNav > div:not(.fNav > div:first-child):hover {
    text-decoration: underline;
  }
}

.fContact > div:not(.fContact > div:first-child) {
  font-size: 14px;
  margin-bottom: 8px;
}

.footerBottom {
  grid-template-columns: var(--footerLeftCalc) auto auto;
  margin-top: 80px;
}

.footerSocial {
  display: flex;
  grid-column-gap: 16px;
  justify-self: center;
}


.fIcos {
  position: relative;
  width: 22px;
  height: 22px;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background: red;
  overflow: hidden;
}

.fIcos a {
  position: absolute;
  width: auto;
  height: auto;
  background: transparent;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  user-select: none;
  color: transparent;
}

.icon_facebook_blue {
  background-size: 10px 22px !important;
  background: url(assets/svgs/icon_facebook_blue.svg);
}

.icon_linkedin_blue {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_linkedin_blue.svg);
}

.icon_instagram_blue {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_instagram_blue.svg);
}
.icon_pinterest_blue {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_pinterest_blue.svg);
}

.icon_twitter_blue {
  background-size: 22px 18px !important;
  background: url(assets/svgs/icon_twitter_blue.svg);
}

.icon_youtube_blue {
  background-size: 22px 22px !important;
  background: url(assets/svgs/icon_youtube_blue.svg);
}


.footerBottom > div:first-child {
  font-size: 14px;
  color: var(--clr_cyan);
}

@media only screen and (max-width: 1280px){
  .footerTop,
  .footerBottom {
    grid-template-columns: var(--siteLogoWidth) auto auto;
    grid-column-gap: 40px;
  }
}

@media only screen and (max-width: 1150px){
  .footerBottom,
  .footerTop {
    grid-template-columns: 50% 50%;
    grid-column-gap: 0;
  }

  .footerBottom > div {
    justify-self: center;
  }

  footer .siteLogo {
    grid-column-start: 1;
    grid-column-end: 3;
    margin-bottom: 80px;
    justify-self: center;
  }
  .fNav {
    grid-row-start: 2;
    grid-column-start: 1;
  }
  .fContact {
    grid-row-start: 2;
    grid-column-start: 2;
    justify-self: center;
  }

  .footerSocial {
    justify-self: end;
  }
}

@media only screen and (max-width: 960px){

  footer .siteLogo {
    grid-column-start: 1;
    grid-column-end: 3;
    margin-bottom: 40px;
  }
  .fNav {
    grid-row-start: 2;
    grid-column-start: 1;
  }
  .fContact {
    grid-row-start: 2;
    grid-column-start: 2;
    justify-self: center;
  }
  .searchFooter {
    grid-row-start: 3;
    grid-column-start: 1;
    grid-column-end: 3;
    justify-self: initial;
    margin-top: 40px;
  }

  .footerSocial {
    justify-self: end;
  }
}
@media only screen and (max-width: 640px){
  footer  {
    padding: 40px 20px;
  }
  .footerBottom {
    grid-template-columns: auto auto;
  }
}
@media only screen and (max-width: 480px){
  .footerTop {
    display: block;
    text-align: center;
  }
  .fNav {
    margin: 0 0 40px 0;
  }
  .footerBottom {
    grid-template-columns: auto;
    margin-top: 40px;
  }
  .footerSocial {
    margin-top: 20px;
  }
}

#cookie-notice{display:block;visibility:hidden;position:fixed;min-width:100%;height:auto;z-index:100000;font-size:13px;line-height:20px;left:0;text-align:center}.cn-top{top:0}.cn-bottom{bottom:0}.cookie-notice-container{padding:10px;text-align:center;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.cookie-notice-revoke-container{position:absolute;bottom:0;width:100%;z-index:1;visibility:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.cn-top .cookie-notice-revoke-container{top:0;bottom:auto}#cookie-notice .cn-revoke-cookie{margin:0}.cn-button.wp-default,.cn-button.wp-default:hover,.cn-button.bootstrap,.cn-button.bootstrap:hover{box-shadow:none;text-decoration:none}#cookie-notice .cn-button{margin-left:10px}.cn-button.wp-default{font-family:sans-serif;line-height:18px;padding:2px 12px;background:linear-gradient(to bottom,#FEFEFE,#F4F4F4) repeat scroll 0 0 #F3F3F3;border-color:#BBB;color:#333;text-shadow:0 1px 0 #FFF;-moz-box-sizing:border-box;border-radius:3px 3px 3px 3px;border-style:solid;border-width:1px;cursor:pointer;display:inline-block;font-size:12px;font-style:normal;text-decoration:none;white-space:nowrap;outline:none}.cn-button.wp-default:hover{background:linear-gradient(to bottom,#FFFFFF,#F3F3F3) repeat scroll 0 0 #F3F3F3;border-color:#999;color:#222}.cn-button.bootstrap{font-family:sans-serif;display:inline-block;*display:inline;padding:4px 12px;margin-right:.3em;margin-bottom:0;*margin-left:.3em;line-height:20px;color:#333;text-align:center;text-shadow:0 1px 1px rgba(255,255,255,.75);font-style:normal;vertical-align:middle;cursor:pointer;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#0088cc,#0044cc);background-image:-webkit-gradient(linear,0 0,0 100%,from(#0088cc),to(#0044cc));background-image:-webkit-linear-gradient(top,#0088cc,#0044cc);background-image:-o-linear-gradient(top,#0088cc,#0044cc);background-image:linear-gradient(to bottom,#0088cc,#0044cc);background-repeat:repeat-x;border-style:solid;border-width:1px;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 1px 2px rgba(0,0,0,.05);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);padding:2px 10px;font-size:12px;text-decoration:none;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;outline:none}.cn-button.bootstrap:hover{color:#fff;background-color:#04c;*background-color:#003bb3;background-position:0 -15px;-webkit-transition:background-position 0.1s linear;-moz-transition:background-position 0.1s linear;-o-transition:background-position 0.1s linear;transition:background-position 0.1s linear}@media all and (max-width:900px){.cookie-notice-container #cn-notice-text{display:block;margin-bottom:5px}#cookie-notice .cn-button{margin-left:5px;margin-right:5px}}
.cn-button.wp-default {
  border-color: #c55f08 !important;
  text-transform: uppercase !important;
  color: #fff !important;
  border-radius: 0px !important;
  background: #ff8100;
  transition: all 0.3s ease;
}