/*
<?php if( $detect->isMobile() && !$detect->isTablet() ){ ?><!--mobile--><?php } ?> 
<?php if( $detect->isTablet() ){ ?><!--tablet--><?php } ?>
<?php if( !$detect->isTablet() && !$detect->isMobile() ){ ?><!--desktop--><?php } ?>
*/

/***************
GENERAL CSS
***************/
ul{
  list-style-type:none;
  padding: 0;
  margin: 0;
}

*,:after,:before {
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box
}

/***************
MEDIA FOR DEVICES
***************/
.noDiviceTouch{
  display:none;
}

@media screen and (max-width: 1024px) {
  .noDiviceTouch{
    display:inherit;
  }
  
  .onlyDesktop{
    display:none!important;
  }
}
 
/***************
POSITIONS
***************/
.pos-relative{
  position:relative
}


@media screen and (max-width: 1024px) {
  .switch-tablet-margin-sep{
    margin-bottom: 100px;
    display: table;
  }
}


/***************
ALIGN POSITIONS
***************/
.taC{
  text-align:center;
}

.taL{
  text-align:left;
}

.taR{
  text-align:right;
}

/***************
CLEAR
***************/
.clear{
  clear:both;
  height:0;
  display:block;
}

.clear10{
  clear:both;
  height:10px;
  display:block;
}

.clear20{
  clear:both;
  height:20px;
  display:block;
}

.clear30{
  clear:both;
  height:30px;
  display:block;
}

.clear40{
  clear:both;
  height:40px;
  display:block;
}


/***************
MIN-WIDTH
***************/
.min-width-desktop-300{
  min-width:300px;
}



/***************
COL
***************/
.col-2,
.col-3,
.col-3-s,
.col-4,
.col-5,
.col-6,
.col-x,
.col-flex,
.col-flex-auto,
.col-auto{
  display: flex;
  flex-direction: row;
  flex-wrap:wrap;
  width: 100%;
}

.col-flex,
.col-flex-auto{
  flex-wrap:nowrap;
}

.col-auto{
  width: inherit;
}

.col-flex .col{
  width:100%;
}

.col-flex-auto .col{
  width:auto;
}


/** col-2 **/
.col-1 .col{
	width: calc(100% / 1);
}

.col-2 .col{
	width: calc(90% / 2);
  margin-right:10%;
}

.col-3 .col {
  width: calc(90% / 3);
  margin-right:5%;
}

.col-3-s .col-s {
  width: calc(90% / 3);
  margin-right:5%;
  text-align:center;
}

.col-4 .col {
  width: calc(94% / 4);
  margin-right:2%;
}

.col-5 .col {
  width: calc(90% / 5);
  margin-right:2%;
}

.col-6 .col {
  width: calc(88% / 6);
  margin-right:2%;
}

.col-2 .col:nth-child(2n+2),
.col-3 .col:nth-child(3n+3),
.col-4 .col:nth-child(4n+4),
.col-4 .col:nth-child(5n+5),
.col-4 .col:nth-child(6n+6) {
  margin-right:0%;
}

.col-3-s .col-s:nth-child(3n+3){
  margin-right:0%;
}

.col-2b{
  display:table;
  width:100%;
}

.col-2b .col{
  width: 48%;
  margin-right: 4%;
  float: left;
}

.col-2b .col:nth-child(2n+2){
  margin-right:0
}

/***************
COLUMNS
***************/
.col-x-12{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}

.col-x-12 .col-x {
  max-width:100%;
  width:100%;
} 

.col-x-12 .col-x-right {
  max-width:100%;
  width:100%;
  margin-left:50px
} 

.col-x-12 .col-x-left {
  max-width:100%;
  width:100%;
  margin-right:50px
} 

.col-x-12 .col-x-2 {
  max-width:20%;
  width:100%;
} 

.col-x-12 .col-x-3 {
  max-width:30%;
  width:100%;
} 

.col-x-12 .col-x-3--right {
  max-width:25%;
  width:100%;
  margin-left:5%;
} 


.col-x-12 .col-x-3-large-right {
  max-width:20%;
  width:100%;
  margin-left:10%;
} 


.col-x-12 .col-x-4 {
  max-width:40%;
  width:100%;
} 

.col-x-12 .col-x-4--right {
  max-width:35%;
  width:100%;
  margin-left:5%;
} 

.col-x-12 .col-x-4-large-right {
  max-width:30%;
  width:100%;
  margin-left:10%;
} 


.col-x-12 .col-x-5 {
  max-width:50%;
  width:100%;
} 

.col-x-12 .col-x-6 {
  max-width:60%;
  width:100%;
} 

.col-x-12 .col-x-7 {
  max-width:70%;
  width:100%;
} 

.col-x-12 .col-x-8 {
  max-width:80%;
  width:100%;
} 

.col-x-12 .col-x-9 {
  max-width:90%;
  width:100%;
} 

/************
MARGINS RESPONSIVE
***************/
.rMb20 .col{
  margin-bottom:20px;
}

.rMb30 .col{
  margin-bottom:30px;
}

.rMb40-1-col .col,
.rMb40-2-col .col,
.rMb40 .col{
  margin-bottom:40px;
}

.rMb50 .col{
  margin-bottom:50px;
}

.rMb60 .col{
  margin-bottom:60px;
}

.rMb20 .col:last-child,
.rMb30 .col:last-child,
.rMb40 .col:last-child,
.rMb50 .col:last-child{
  margin-bottom:00px;
}

.rMb40-2-col .col:nth-last-child(-n+2),
.rMb40-1-col .col:last-child{
  margin-bottom:00px;
}


/***************
COLUMNS MARGINS BOTTOM 
***************/
.col-x-12-bm-20 .col{
  margin-bottom:20px;
}

.col-x-12-bm-30 .col{
  margin-bottom:30px;
}

.col-x-12-bm-40 .col{
  margin-bottom:40px;
}

.col-x-12-bm-50 .col{
  margin-bottom:50px;
}

/***************
 MARGINS LEFT 
***************/
.colMarginLeft20px{
  margin-left:20px;
}

.colMarginLeft50px{
  margin-left:50px;
}

.colMarginLeft5{
  margin-left:5%;
}

.colMarginLeft5{
  margin-left:10%;
}


/***************
MARGINS BOTTOM 
***************/
.mb10{
  margin-bottom:10px;
}

.mb20{
  margin-bottom:20px;
}

.mb30{
  margin-bottom:30px;
}

.mb40{
  margin-bottom:40px;
}

/***************
MARGINS TOP 
***************/
.mt10{
  margin-top:10px;
}

.mt20{
  margin-top:20px;
}

.mt30{
  margin-top:30px;
}

.colMarginBottom20px .col{
  margin-bottom:20px;
}

.colMarginBottom30px .col{
  margin-bottom:30px;
}

.colMarginBottom40px .col{
  margin-bottom:40px;
}

.colMarginBottom50px .col{
  margin-bottom:50px;
}

.colMarginBottom40px .col:last-child{
  margin-bottom:00px;
}
 
/***************
COL MARGINS BOTTOMS
***************/
.sw-col-mb-40-2-1 .col{
  margin-bottom:40px;
}

.sw-col-mb-40-2-1 .col:nth-last-child(-n+2){
  margin-bottom:40px;
}

/***************
PADDINGS SECTIONS
***************/
.section-padd-top-50{
  padding-top:50px;
}

.section-padd-top-80{
  padding-top:80px;
}

.section-padd-top-100{
  padding-top:100px;
}

.section-padd-bottom-50{
  padding-bottom:50px;
}

.section-mar-bottom-80{
  padding-bottom:80px;
}

.section-padd-bottom-100{
  padding-bottom:100px;
}

.padd20{
  padding:20px;
}

/***************
MARGINS SECTIONS
***************/
.sections-seperator-space-first{
  margin-top:70px;
  margin-bottom:170px;
}

.sections-seperator-space{
  margin-top:170px;
  margin-bottom:170px;
}

@media screen and (max-width: 1024px) {
  .sections-seperator-space-first,
  .sections-seperator-space{
    margin-top: 80px;
    margin-bottom: 80px;
  }
  
  .sections-seperator-space-first{
    margin-top:80px;
  }
  
  .sections-seperator-space-first:after,
  .sections-seperator-space:after{
    clear:both;
    height:50px;
    content:"";
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .sections-seperator-space-first{
  margin-top:100px;
  margin-bottom:0;
  }

  .sections-seperator-space{
  margin-top:80px;
  margin-bottom:0;
  }

  .sections-seperator-space-first{
  margin-top:110px;
  }

  .sections-seperator-space-first:after,
  .sections-seperator-space:after{
  clear:both;
  height:0px;
  content:"";
  display: block;
  }

  .sections-seperator-space.last-section{
  margin-bottom: 80px;
  }
}

.section-mar-top-40{
  margin-top:40px;
}

.section-mar-top-80{
  margin-top:80px;
}

.section-mar-top-100{
  margin-top:100px;
}

.section-mar-top-140{
  margin-top:140px;
}

.section-mar-bottom-80{
  margin-bottom:80px;
}

.section-mar-bottom-100{
  margin-bottom:100px;
}

/***************
PADDINGS 
***************/
.padd-tb-10{
  padding-top:10px;
  padding-bottom:10px;
}

.padd-tb-30{
  padding-top:30px;
  padding-bottom:30px;
}

.padd-tb-50{
  padding-top:50px;
  padding-bottom:50px;
}


@media screen and (max-width: 1024px) {
  .seperate-tablet-section-top-50{
    margin-top:50px;
    padding-top:50px;
    border-top: 2px solid #393939;
  }
}

@media screen and (max-width: 768px) {
  .seperate-mobile-section-top-50{
    margin-top:50px;
    padding-top:50px;
    border-top: 2px solid #393939;
  }

  .min-width-desktop-300{
    min-width:auto;
  }

  .device-mb-50{
    margin-bottom:50px;
  }
}