/* Start FAQ */
.topSection.v2 { position: relative; z-index: 100;  }


.page-template-tpl-faqs #page_header_dh h1, 
.page-template-tpl-faqs-results #page_header_dh h1 {
  font-family: "Bliss ExtraBold";
  letter-spacing: 8px;
}

.page-template-tpl-faqs .topSection,
.page-template-tpl-faqs-results .topSection {
  padding: 0 20px;
  padding-top: 36px;
  -webkit-transform: translateY(-99px);
  -moz-transform: translateY(-99px);
  -ms-transform: translateY(-99px);
  -o-transform: translateY(-99px);
  transform: translateY(-99px);
}

#search-hub {  }
.page-template-tpl-faqs-results .page-top-title, .page-template-tpl-faqs .page-top-title{ display: none; }
#search-hub .q-base { position: relative; margin: 0 15px 10px 15px; }
#search-hub .q { display: block; width: 100%; background: url(../images/search_hub.png) 98% center no-repeat #fff; border: none; font-size: 22px; line-height: 32px; padding: 15px 50px 15px 20px; columns: #666; font-weight: 300; height: auto; position: relative; z-index: 10; letter-spacing: 6px; text-transform: uppercase; color: #ad9962; border-bottom: 1px solid #ad9962;}
#search-hub .q::placeholder { color: #ad9962; font-size: 22px; }
#search-hub .q.filled { background: none; }
#search-hub .x { position:  absolute; z-index: 20; display: block; background: url(../images/search_hub_clear.png) center center no-repeat; width: 30px; height: 30px; border: none; right: 10px; top: 17px; padding: 0; margin: 0; line-height: 0; min-width: 0; display: none; }
#search-hub .q.filled + .x { display: block; }
#search-hub .y { position:  absolute; z-index: 20; display: block; background: url(../images/search_hub_clear.png) center center no-repeat; width: 30px; height: 30px; border: none; right: 10px; top: 17px; padding: 0; margin: 0; line-height: 0; min-width: 0; display: none; }
#search-hub .q.filled + .y { display: block; }

#search-hub .ac, .searchwp-live-search-results-showing { position:  absolute; left: 0; top: 100%; width: 100%; background: #f9f9f9; border-top: solid 1px #e5e5e5; padding: 20px 20px 20px 55px; display: none; z-index: 10; }
#search-hub .ac.open { display: block;; }
#search-hub .ac .acss { font-size: 20px; color: #A38D51; text-transform: uppercase; font-weight: bold; line-height: 1.3em; margin: 0 0 0.8em 0; }
#search-hub .ac ul { list-style: none; padding: 0; margin: 0; display: block; font-size: 22px; line-height: 1.3em; }
#search-hub .ac ul li { list-style: none; padding: 0; margin: 0 0 0 0; display: block; }
#search-hub .ac ul li a { display: block; padding:  0.225em 0 0.225em 30px; background: url(../images/search_hub.png) -16px 10px no-repeat; transition:  all 0.1s; }
#search-hub .ac ul li a:hover,
#search-hub .ac ul li a:focus { color:  #fff !important; background-color: #004313; background-image: url(../images/search_hub2.png) }

#faq { padding: 0 30px 100px 30px; }
#faq .faq-menu { margin: 0 0 40px 0; }
/*#faq .faq-menu ul { display:  table; width: 100%; vertical-align: top; list-style: none; padding:  0; margin: 0; text-align:  center; color: #004313; font-weight: 300; }
#faq .faq-menu ul li { display:  table-cell; vertical-align: inherit; list-style: none; padding:  0; margin: 0; cursor: pointer; }*/
#faq .faq-menu ul { display: flex; margin: 0; cursor: pointer; justify-content: space-around; }
#faq .faq-menu ul li { text-align: center; list-style: none; }
#faq .faq-menu ul li .ico { margin:  0 0 20px 0; }
#faq .faq-menu ul li .ico img { display: block; margin: auto; width: 100px; }
#faq .faq-menu ul li .tt { display:  block; text-transform: uppercase; font-weight: 300; letter-spacing: 0.2em; line-height: 1.3em; position: relative; }
#faq .faq-menu ul li .tt span { display: inline-block; position: relative; padding: 0 0 10px 0; color: #004313; }
#faq .faq-menu ul li .tt span:after { content: ""; position: absolute; left: 0; bottom: 0; height: 1px; width: 100%; background: #004313; transition:  all 0.2s; opacity: 0; transform:  translateY(-4px);  }
#faq .faq-menu ul li.open .tt span:after { opacity: 1; transform: translateY(0);  }
#faq .faq-page { display: none;  }
#faq .faq-page.open { display: block;  }
#faq .faq-question { border-bottom: solid 1px #d6d6d6;  font-size: 22px; line-height:  1.4em; color: #004313; }
#faq .faq-question .header { cursor: pointer; display: table; width: 100%; padding: 30px 50px; }
#faq .faq-question .header .question { display:  table-cell; vertical-align: top; padding-right: 10px; }
#faq .faq-question .header:hover .question,
#faq .faq-question.open .header .question { color: #AD9961; }
#faq .faq-question.open .header .question { font-weight: bold; }
#faq .faq-question .header .caret { display:  table-cell; vertical-align: middle; width: 1%; color: #AD9961; font-size: 1.3em; }
#faq .faq-question.open .header .caret { transform: scaleY(-1); }
#faq .faq-question .answer { padding: 0 50px; overflow:  hidden; max-height: 0px; }
#faq .faq-question.open .answer { max-height: 300vh; padding-top: 10px; padding-bottom: 30px; transition:  all 0.3s;  font-family: bliss_pro_light; }
#faq .faq-question.open .answer a { text-decoration: underline; }

#search-results { padding: 0 35px 100px 35px; font-family: "Bliss Light"; }
#search-results h2 { text-transform:  none; color: #AD9961; font-size: 28px; line-height: 1.3em; font-weight: 300; margin:  0 0 1.7em 0; font-family: "Bliss Light"; padding:  0 35px; }
#search-results h2 span { color: #004313; }
#search-results .sresult { border-top: solid 1px #cbcbcb; color: #004313; font-size: 22px; line-height: 1.3em; font-weight: 300; padding: 40px 35px; }
#search-results .sresult h3 { color: #AD9961 !important; font-family: "Bliss Light"; font-size: 28px; line-height: 1.3em; text-transform: none; margin:  0 0 0.5em 0; }
#search-results .sresult h3 a { color: inherit; }
#search-results .sresult h3 a:hover,
#search-results .sresult p a:hover { text-decoration: underline;  }
#search-results .sresult .sr-cat { margin: 0 0 20px 0; font-size: 16px; text-transform: uppercase; color: #fff; letter-spacing: 0.2em; font-family: "Bliss Light"; }
#search-results .sresult .sr-cat span { display: inline-block; background: #ccc; padding: 5px 10px; line-height: 1.3em; color: #fff !important; }
#search-results .sresult .sr-cat span.src-green { background: #004313; }
#search-results .sresult .sr-cat span.src-gold { background: #99813D; }
#search-results .sresult .sr-cat span.src-grey { background: #999999; }
#search-results .sresult .sr-cat span.src-lgrey { background: #E7E7E7; color: #004313 !important; }
#search-results .sresult .content a { text-decoration: underline; }

#search-results .sr-more { background: #f9f9f9; font-size: 16px; text-transform: uppercase; letter-spacing: 0.2em; font-family: "Bliss Light"; display:  block; width: 100%; text-align: center; line-height: 1.4em; padding: 1.4em 10px; }
#search-results .sr-more:hover { background: #E7E7E7; }

@media screen and (max-width: 1000px) {
    .topSection.v2 { margin-bottom: 10px !important;  }
    #faq .faq-menu ul li .ico img { width: 50px; }
    #faq .faq-menu ul li .tt { font-size: 16px; letter-spacing: 0.1em;  }
    #faq .faq-question .header { padding: 20px;  }

    #search-results h2 { padding: 0 20px;  }
    #search-results .sresult { padding: 30px 20px;  }
}
@media screen and (max-width: 600px) {
    #faq .faq-menu ul { flex-wrap: wrap; }
    #faq .faq-menu ul li { width: 50%; margin-bottom: 25px; }
    #faq .faq-menu ul li .ico img { width: 70px; }
    #faq .faq-menu ul li .tt { font-size: 15px; letter-spacing: 0; }
    
    #search-results h2 { padding: 0;  }
    #search-results .sresult { padding: 20px 0;  }
}


.kg_loader {
  display: none;
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 4em;
  height: 4em;
  border-radius: 50%;
  background: #e7e7e7;
  background: -moz-linear-gradient(left, #e7e7e7 10%, rgba(231,231,231, 0) 42%);
  background: -webkit-linear-gradient(left, #e7e7e7 10%, rgba(231,231,231, 0) 42%);
  background: -o-linear-gradient(left, #e7e7e7 10%, rgba(231,231,231, 0) 42%);
  background: -ms-linear-gradient(left, #e7e7e7 10%, rgba(231,231,231, 0) 42%);
  background: linear-gradient(to right, #e7e7e7 10%, rgba(231,231,231, 0) 42%);
  position: relative;
  -webkit-animation: kg_load3 1.4s infinite linear;
  animation: kg_load3 1.4s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
}
.kg_loader:before {
  width: 50%;
  height: 50%;
  background: #e7e7e7;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
}
.kg_loader:after {
  background: #e7e7e7;
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: '';
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
@-webkit-keyframes kg_load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes kg_load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}


.two-blocks-section {
  position: relative;
  z-index: 1000;
}

@media screen and (max-width: 770px) {
  .faqMainContent {
    padding: 0;
  }
  .page-template-tpl-faqs .topSection,
  .page-template-tpl-faqs-results .topSection{
    padding-top: 0;
    -webkit-transform: translateY(-63px);
    -moz-transform: translateY(-63px);
    -ms-transform: translateY(-63px);
    -o-transform: translateY(-63px);
    transform: translateY(-63px);
  }
}
@media screen and (max-width: 550px) {
  #search-hub .q::placeholder { font-size: 18px; }
}
@media screen and (max-width: 500px) {
  .page-template-tpl-faqs #page_header_dh,
  .page-template-tpl-faqs-results #page_header_dh{
    padding-top: 200px;
  }
  .page-template-tpl-faqs .topSection,
  .page-template-tpl-faqs-results .topSection {
    padding: 0;
    margin-bottom: -40px !important;
  }
  #search-hub .ac {
    padding: 20px;
  }
  #faq .faq-menu {
    margin-bottom: 0;
  }
  #faq .faq-question .header .question {
    font-size: 16px;
    line-height: 22px;
  }
  #faq .faq-question.open .answer {
    font-size: 16px;
    line-height: 22px;
    padding: 20px;
  }
  #faq .faq-question.open .answer p {
    padding: 0;
  }
  #search-hub .q {
    padding-left: 5px;
    padding-right: 25px;
  }
}
@media screen and (max-width: 390px) {
  #search-hub .q::placeholder { font-size: 14px; }  
}