/*
* Theme Name: visidon
* Version: 1.0.0
* Description: Visidon theme
* Template: basic
* License: GNU General Public License v2 or later
* License URI: http://www.gnu.org/licenses/gpl-2.0.html
* Text Domain: basic
*/
a, p, h1, h2, h3, h4, h5, h6, span, li, body {
  font-family: 'Roboto', sans-serif!important;
  font-weight: 300;
}
p {
  font-size: 18px;
}
input[type="submit"], input[type="button"], button, .submit, .button {
  font-size: 14.7px;
  padding: 12px 20px;
}
#mega-menu-wrap-top #mega-menu-top > li.mega-menu-item > a.mega-menu-link, #mega-menu-wrap-top #mega-menu-top li.mega-menu-item span {
   font-weight: 400!important;
 }
 #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
   font-weight: 300;
 }
 #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item li.mega-menu-item > a.mega-menu-link {
   color: #000000;
   font-size: 16px;
 }
.footmenu li a, .footmenu li span, .footmenu li {
  font-size: 20px;
}
#footer-sidebar1 ul li:first-child {
  font-size: 20px;
}
 a:hover, #footer .footer-menu a:hover {
   color: #ff5b00;
 }
#header .header-wrapper{
  display: inline-flex;
  flex-direction: row;
  width: 95%;
  margin: 0 auto;
  align-items: center;
}
*::-ms-backdrop, #header .header-wrapper {
  transform: translateY(50%);
}
#header {
  display: flex;
  width: 100%;
  background: #ffffff;
  position: fixed;
  z-index: 99999999999;
  border-bottom: 1px solid lightgray;
}
.after-header {
  height: 100px;
  width: 100%;
}

#mega-menu-wrap-top #mega-menu-top {
  text-align: right;
}
* {
  box-sizing: border-box;
}
#wpadminbar{
z-index: 9999999999;
}
.logo {
  margin: 0 auto;
}
#mega-menu-wrap-top #mega-menu-top li.mega-menu-item span{
  color: #ff5b00;
  font-size: 16px;
  padding: 0px 30px 0px 30px;
}
.header-image img {
  width: 100%;
  display: flex;
  flex: 1 1 auto;
  object-fit: cover;
}
.header-image {
  max-height: 900px;
  display: flex;
  overflow: hidden;
}
#logo {
  display: flex;
}
/*contact form*/
div.wpcf7-mail-sent-ok {
  background: #398f14;
}
div.wpcf7-validation-errors, div.wpcf7-acceptance-missing {
  border: 2px solid #f70000;
  background: #b90808;
}
div.wpcf7-response-output {
  color: #ffffff;
}
/*Content*/
 .entry-box {
  margin: 0;
}
#main {
  padding: 2em 0 0 0;
  text-align: center;
  width: 100%;
  max-width: none;
}
.entry h1, main h1{
  padding-bottom: 1em;
}
.entry-box ul {
  list-style: disc;
}
h2 {
  margin: 1em 0;
  padding: 0;
}
.image-wrapper {
  display: flex;
  height: 280px;
  position: relative;
}
.image-wrapper img {
  flex: 1 1 auto;
  display: flex;
  object-fit: cover;
}
*::-ms-backdrop, .image-wrapper img {
  height: 100%;
}
.half {
  display: flex;
  flex: 1 1 auto;
  width: 50%;
  flex-direction: column;
}
.half p {
  padding: 0;
  margin: 0 auto 2em auto;
  flex: 1 1 auto;
  display: flex;
  /*width: 80%;*/
}
.half-content {
  display: flex;
  flex-direction: column;
  width: 80%;
  margin: 0 auto;
  flex: 1 1 auto;
}
.half-content .button-wrapper {
  width: 80%;
  margin: 1em auto;
  display: flex;
}
.overlay-wrapper {
  visibility: hidden;
  display: inline-flex;
  flex-wrap: wrap;
  opacity: 0;
  padding: 0.5em;
  flex-direction: row;
  background: #ec6b20;
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  align-items: center;
  -webkit-transition: opacity 1s, visibility 1s;
  transition: opacity 1s, visibility 1s;

}

.image-wrapper:hover .overlay-wrapper {

  opacity: 0.8;
  visibility: visible;
}
.overlay-wrapper a {
  display: flex;
  text-decoration: none;
  color: #fcfcfc;
  padding: 0 0.2em;


}
.half .overlay-wrapper p {
  margin: 0;
}
.half .overlay-wrapper .slash {
  margin: 0 0.5em;
}
.half .overlay-wrapper .slash {
  margin: 0;
  padding: 0;
  width: 10px;
  color: #ffffff;
  flex: none;
}
.half .overlay-wrapper .slash:last-child {
  display: none;
}
.content-area {
  display: inline-flex;
  width: 100%;
  margin-bottom: 2em;
}
.button, input[type="submit"] {
  max-width: 260px;
  width: 100%;
  border-radius: 20px;
  margin: 0 auto;
  text-decoration: none;
}
.form-inside input[type="submit"] {
  background: #ff5b00;
}
.button:hover {
  color: #fcfcfc;
}
.single-post-wrapper {
  display: flex;
  flex-direction: row-reverse;
  width: 100%;
  margin-bottom: 1em;
}
.page-template-page-chooseus .single-post-wrapper {
  flex-direction: row;
}
.page-template-page-chooseus .single-post-wrapper:nth-child(2n) {
  flex-direction: row-reverse;
}
.page-template-page-contact .content-area {
  flex-direction: column;
}
.page-template-page-contact .single-post-wrapper {
  flex-direction: row;
}
.page-template-page-contact .single-post-wrapper:nth-child(2n) {
  flex-direction: row-reverse;
}
.location-description {
  display: flex;
  flex-direction: column;
  width: 40%;
  text-align: left;
}
.location-description ul, .location-description h3, .location-description h2 {
  width: 80%;
  margin: 0 auto;
}
.single-post-wrapper .single-post-content {
  width: 40%;
  text-align: left;
  display: flex;
  flex-direction: column;
  padding: 1em 0;
}
.single-post-wrapper .single-post-content .button {
  text-align: center;
  background: #ff5b00;
  margin: 0;
}
.page-template-page-aboutus .single-post-content .button {
  background: #3a0039;
}
.single-post-wrapper .single-post-content .button-wrapper {
  width: 80%;
  margin: 1em auto;
  display: flex;
}
.single-post-wrapper .single-post-content p {
  width: 80%;
  margin: 0 auto;
}
.single-post-wrapper .single-post-content h2 {
  width: 80%;
  margin: 0 auto 1em auto;
}
.single-post-wrapper .single-post-content h3 {
  width: 80%;
  margin: 0 auto;
  padding: 0;
}
.single-post-wrapper img {
  width: 100%;
}
.single-post-wrapper .image-wrapper {
  width: 60%;
}
.single-posts-area {
  flex-direction: column-reverse;
}
.single-post-wrapper:nth-child(2n) {
  flex-direction: row;
}
.footer-menu {
  display: flex;
  border: none;
  margin-bottom: 0;
  max-width: none;

}
.footmenu {
  display: flex;
  flex-direction: column;
  text-align: left;
  padding-bottom: 0;
}
#footer .widget {
  margin-bottom: 30px;
}
.copytext, .copyrights {
  display: flex;
  justify-content: center;
}
#footer a{
  text-decoration: none;
}
#footer-sidebar1 aside .textwidget ul {
  display: flex;
  flex-direction: column;
}
#footer-sidebar1 {
  margin-left: 4em;
}
#footer-sidebar2 {
  width: 90%;
  margin: 0 auto;
  padding: 5px 10px;
}
main {
  padding-bottom: 30px;
}
.technologies-area {
  flex-wrap: wrap;
}
.technologies-area .half {
  margin-bottom: 1em;
  margin-top: 1em;
}
.technologies-area .half p {
  display: block;
  text-align: center;
}
.entry-box .entry {
  width: 60%;
  margin: 0 auto;
}
.image-full-size, .image-full-size img {
  width: 100%;
}
.additional-content, .page-template-page-aboutus .entry-box .entry {
  width: 80%;
  margin: 0 auto;
  text-align: center;
}
#toTop {
  background: #000;
}
#toTop:hover {
  background: #ff5b00;
}
.contact-form-area {
    background: #000000;
    margin-bottom: 0;
}
.contact-form-area h2, .contact-form-area h3, .contact-form-area h4 {
  color: #ffffff;
}
.form-inside {
  width: 30%;
  margin: 0 auto;
}
.form-inside input[type="text"], .form-inside textarea, .form-inside input[type="email"] {
  width: 90%;
  border-radius: 10px;
}
.error-404 .searchform, .search #content .searchform {
  margin: 1em auto;
  max-width: 600px;
}
.error-404 h1 {
  font-size: 80px;
  color: #ff5b00;
  padding-bottom: 0;
}
.search-term {
  color: #ff5b00;
}
.search h1 {
  padding-bottom: 0;
}
.error-404 .search_submit, .search .search_submit {
  font-size: 45px;
}
.search #content {
  margin-top: 1em;
}
 /*.button {
  border: 4px ridge transparent;
  -webkit-transition: border-left 1.5s, border-top 2.5s, border-right 3.5s, border-bottom 1s;
  -moz-transition: border-left 1.5s, border-top 2.5s, border-right 3.5s, border-bottom 1s;
  -o-transition: border-left 1.5s, border-top 2.5s, border-right 3.5s, border-bottom 1s;
  transition: border-left 1.5s, border-top 2.5s, border-right 3.5s, border-bottom 1s;
}
 .button:hover{
  border: 4px ridge #838282;
}*/
.page-template-page-technologies main h1 {
  padding-bottom: 0;
}
/*Font sizes*/
h3 {
  font-size: 20px;
}
h1, h2 {
  font-size: 45px;
}
.single-post-wrapper .single-post-content h2, .page-template-page-contact h2 {
  font-size: 25px
}
.page-template-page-contact .form-inside h2, .page-template-page-aboutus .single-post-wrapper .single-post-content h2 {
  font-size: 45px;
}
.page-template-page-aboutus .entry h2, .entry h2 {
  font-size: 30px;
}
.search .serp::before {
  display: none;

}
.search .serp h1 a, .search .serp h2 a{
  font-weight: 500;
}
/*Media queries*/
@media all and (min-width: 1500px) {
  .image-wrapper {
    height: 450px;
  }

}
@media all and (max-width: 1500px) {
  .form-inside {
    width: 40%;
  }
}
@media all and (min-width: 1024px) {
  .grid [class*="col"] {
    margin-left: 0;
  }
#mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu {
  position: fixed;
  left: 0;
  width: 100%;
  text-align: center;
  margin-top: 25px;
}
*::-ms-backdrop, #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu {
  margin-top: 50px;
}

#mega-menu-wrap-top #mega-menu-top li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row {
  float: none;
  width: 75%;
  margin: 0 auto;

}
#mega-menu-wrap-top #mega-menu-top li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  justify-content: center;
  padding: 0.5em 0;
}
#mega-menu-wrap-top #mega-menu-top li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-3-of-12 {
  width: 25%;

}
#mega-menu-wrap-top #mega-menu-top li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item {
  justify-content: left;
  display: flex;
  flex-direction: column;
}
#mega-menu-wrap-top #mega-menu-top li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row .mega-menu-column > ul.mega-sub-menu > li.mega-menu-item .mega-sub-menu {
  flex-direction: column;
}
#mega-menu-wrap-top #mega-menu-top .mega-menu-row li.mega-menu-item span {
  padding: 0;

}
#mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
  text-transform: none;
}
#mega-menu-wrap-top #mega-menu-top > li.mega-menu-item > a.mega-menu-link {
  padding: 0 25px;
}
#mega-menu-wrap-top #mega-menu-top li.mega-menu-item-has-children > a.mega-menu-link:after {
  content: '';
  display: none;
}
#footer .maxwidth, #footer-sidebar2 {
  width: 80%;
}
}
@media all and (max-width: 1024px) {
/*  #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu {
    background: transparent;
  }*/
  #header.sticky-header {
    min-height: 50px;
    height: 50px;
  }
  .sticky-header .after-header {
    height: 50px;
  }
  .form-inside {
    width: 50%;
  }
  .search h1, .search h2, .error-404 h1, .error-404 h2 {
    font-size: 38px;
    margin: 1em auto;
    width: 80%;
    text-align: center;
  }
  .error-404 h1 {
    font-size: 45px;
  }
  .search #content .searchform {
    max-width: 80%;
  }
  .search .serp h1, .search .serp h2 {
    font-size: 20px;
  }


  .serp .entry {
    text-align: center;
  }
  .search .nav-links {
    width: 80%;
    margin: 0 auto;
  }
  .error-404 .searchform {
    max-width: 100%;
  }
  .error-404 .page-content {
    width: 80%;
    margin: 0 auto;
    text-align: center;
  }
  .error-404 .search_submit, .search .search_submit {
    width: 33.333%;
    font-size: 38px;
  }
  #mega-menu-wrap-top #mega-menu-top {
    background: rgb(245, 240, 240);
  }
  .display-block {
    display: block!important;

  }
  #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu {
    height: 300px;
    max-height: 300px;
    overflow-y: auto;
    -webkit-overflow-scrolling:touch;
  }

*::-ms-backdrop, #mega-menu-wrap-top .mega-menu-toggle.mega-menu-open + #mega-menu-top, #mega-menu-wrap-top #mega-menu-top {
    margin-top: 60px;
  }
.overlay-wrapper {
  visibility: visible;
  opacity: 0.8;
  position: relative;
}
.image-wrapper {
  height: 300px;
  flex-direction: column-reverse;
}
.image-wrapper img {
  width: 100%;
}
  #mega-menu-wrap-top #mega-menu-top li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu {
    margin: 0 1em;
  }
  .form-inside {
    width: 60%;
    margin: 0 auto;
  }
  #mega-menu-wrap-top .mega-menu-toggle .mega-toggle-block-1:after {
    color: #000000;
  }
  .topnav nav {
    display: block;
  }
  #mega-menu-wrap-top #mega-menu-top li.mega-menu-item span {
    padding: 0 0 0 10px;
  }
  #mega-menu-wrap-top .mega-menu-toggle {
    width: 40px;
    margin: 0 0 0 auto;
  }
  .sticky-header #mega-menu-wrap-top .mega-menu-toggle.mega-menu-open + #mega-menu-top, #mega-menu-wrap-top #mega-menu-top {
    margin-top: 0;
  }
  #mega-menu-wrap-top .mega-menu-toggle.mega-menu-open + #mega-menu-top, #mega-menu-wrap-top #mega-menu-top {
    position: fixed;
    width: 100%;
    left: 0;
    margin-top: 30px;
    z-index: 99999;
  }

  #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link,
   #mega-menu-wrap-top #mega-menu-top > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link,
   #mega-menu-wrap-top #mega-menu-top li.mega-menu-item span
    {
    font-size: 16px;
    font-weight: 400;
    text-transform: none;
  }
  #mega-menu-wrap-top #mega-menu-top > li.mega-menu-item > a.mega-menu-link {
    font-size: 16px;
  }
  #mega-menu-wrap-top #mega-menu-top li.mega-menu-item-has-children span {
    /*padding: 0;*/
  }
}
@media all and (max-width: 850px) {
  .form-inside input[type="text"], .form-inside textarea, .form-inside input[type="email"] {
    width: 100%;
  }
  .image-wrapper {
    height: auto;
  }
  *::-ms-backdrop, .home .image-wrapper {
    height: 300px;
  }
  *::-ms-backdrop, .overlay-wrapper {
    min-height: 100px;
  }
  .location-description ul, .location-description h3, .location-description h2 {
    width: 100%;
  }
  .form-inside {
    width: 80%;
    margin: 0 auto;
  }
  .content-area {
    flex-direction: column;
  }
  .half {
    flex-direction: column;
    width: 100%;
    /*flex-wrap: wrap;*/
    margin-bottom: 3em;
    flex-wrap: nowrap;
  }
  .single-post-wrapper, .single-post-wrapper:nth-child(2n), .page-template-page-chooseus .single-post-wrapper, .page-template-page-chooseus .single-post-wrapper:nth-child(2n),
  .page-template-page-contact .single-post-wrapper, .page-template-page-contact .single-post-wrapper:nth-child(2n) {
    flex-direction: column;
  }
  .single-post-wrapper .image-wrapper, .single-post-wrapper .single-post-content h3, .single-post-wrapper .single-post-content h2, .single-post-wrapper .single-post-content p,
  .single-post-wrapper .single-post-content .button-wrapper {
    width: 100%;
  }
  .single-post-wrapper .single-post-content, .entry-box .entry, .location-description {
    width: 80%;
    margin: 0 auto;
  }
  .page-template-page-technologies main h1 {
    padding-bottom: 0;
  }
  .single-post-wrapper .single-post-content {
    padding: 2em 0;
  }
  .content-area {
    margin-bottom: 0;
  }
  .single-post-wrapper {
    margin-bottom: 0;
  }
  .half-content .button-wrapper {
    width: 100%;
  }
  .half-content, .additional-content, .page-template-page-aboutus .entry-box .entry {
    text-align: left;
  }
  .half-content .button-wrapper .button {
    text-align: center;
    margin: 0;
  }
  #main, .technologies-area .half p {
    text-align: left;
  }
  article h1 {
    width: 80%;
    margin: 0 auto;
  }
  article .entry h1, .technologies-area .half p {
    width: 100%;
  }
  .location-description {
    margin: 1em auto 2em auto;
  }
  .image-full-size {
    margin-bottom: 2em;
  }
}
@media all and (max-width: 550px) {
  .image-wrapper img {
    object-fit: contain;
  }

}
