/*
Theme Name: DSM Base Theme
Author: DSM
Author URI: http://dsm-design.co.uk

*/

/**
*	Fonts
*
*	Change the font names here to match the fonts folder.
*/


@font-face {
    font-family: 'Source Sans Pro Bold';
    src: url('fonts/sourcesanspro-bold-webfont.woff');
    src: url('fonts/sourcesanspro-bold-webfont.woff2') format('woff2'), 
        url('fonts/sourcesanspro-bold-webfont.woff') format('woff'); 
    font-display: swap;
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Source Sans Pro';
    src: url('fonts/sourcesanspro-regular-webfont.woff');
    src: url('fonts/sourcesanspro-regular-webfont.woff2') format('woff2'),
        url('fonts/sourcesanspro-regular-webfont.woff') format('woff');
    font-display: swap;
    font-weight: normal;
    font-style: normal;
}

html{ 
    font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
}

/**
* Tags
*
*/

*{
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
}

html{
    font-size: 1rem;
    line-height: 1.5;
}
body{
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1{    
    font-size: calc(1rem + 2vw);
    line-height: 1;
    margin: 0rem auto 0.5rem;
}
h2{    
    font-size: calc(1rem + 1.25vw);
    line-height: 1.0;
    margin: 0rem auto 0.5rem;
    text-transform: uppercase;
}
h3{    
    font-size: calc(1rem + 1vw);
    line-height: 1.25;
    margin: 1rem auto 0.5rem;
}

h4,h5,h6{
    font-size: 1.2rem;
    margin: 1rem auto 0.25rem;
}
h5 {
    text-transform: uppercase;
}
p{
    margin: 0 auto 0.5rem;
    font-size: calc(1rem + 1.25vw);
}
p,
li,
select,
input,
input[type="submit"],
input[type="button"]
table,
textarea,
label,
select,
select option,
#site .vc_general.vc_btn3{
    font-size: calc(0.8rem + 0.3vw);
}

a{
    text-decoration: none;
}

blockquote {
  border-left: 10px solid;
  margin: 1.5em 10px;
  padding: 0.5em 10px;
  quotes: "\201C""\201D""\2018""\2019";
}
blockquote:before {
  color: #ccc;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  vertical-align: -0.4em;
}
blockquote p {
   display: inline;
}
ul, ol{
    padding-left: 1.5rem;
    margin-bottom: 0.5rem;
}

li{
    
}
img {
    width: 100%;
    height: auto;
}
table {
    border-collapse: collapse;
    width: 100%;
}

table caption {
/*    font-size: 1rem;*/
    font-weight: bold;
    padding: 0.5rem 1rem;
}

thead{
    font-weight: bold;
}

th,
td {
    text-align: left;
    padding: 0.5rem;
    border: 1px solid;
}
label{

    font-weight: bold;
    display: block;
/*    font-size: 1rem;*/
}
input,
textarea,
select{

    border: 0;
    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
    font-weight: bold;
    padding: 1rem 2rem;
/*    font-size: 1rem;*/
    margin-right: -4px;
    cursor: pointer;
}
textarea{
/*    font-size: 1.3rem;*/
}
input[type="submit"],
#site button, 
#site .vc_general.vc_btn3{
    text-transform: uppercase;
    border: 0;
    border-radius: 4px;
    padding: 1rem 1.5rem;
    font-weight: bold;
/*    font-size: 1rem;*/
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    z-index: 100;
    -webkit-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in;
    outline: 0;
}
input:focus,
textarea:focus,
select:focus{
    border-width: 1px;
}
select option {
    padding: 6px 0;
/*    font-size: 1.0rem;*/
}
#site #header button {
    font-size: calc(1.2rem + 0.5vw);
    display: none;
}
#site .vc_general.vc_btn3.vc_btn3-icon-left {
    padding-left: 3rem;
}
#site .vc_general.vc_btn3.vc_btn3-icon-right {
    padding-right: 3rem !important;
}
#site .vc_btn3.vc_btn3-icon-left .vc_btn3-icon {
    top: 45%;
    left: 10%;
}
#site .vc_btn3.vc_btn3-icon-right .vc_btn3-icon {
    top: 45%;
    left: auto;
    right: 10%;
}
.center {
	text-align: center;
}
#content .widget ul {
    padding: 0;
    border-width: 1px;
    border-style: solid;
}

#content .widget ul.children {
    padding-left: 1rem;
}

#content .widget li {
    border-width: 1px;
    border-style: solid;
    display: block;
}
#content .widget li:last-child {
    border-bottom: 0;
}

#content .widget li a {
    padding: 0.5rem;
    display: block;
}

#site .left {
    float: left;
}
#site .right {
    float: right;
}



/**
*
* Navigation
*/

.menu {
    padding: 0;
    margin: 0;
    text-align: center;
}
#menu-footer-menu.menu {
    text-align: left;
}
.menu li{
    display: inline-block;
    margin-right: -3px;
}

.menu a{
    text-transform: uppercase;
    display: block;
    font-weight: bold;
    cursor: pointer;
}

.menu li .sub-menu li {
	display: block;
}
.menu li:hover .sub-menu {
	display: block;
}
.menu {
    text-align: left;
}

.menu a {
    padding: 1rem 0.5rem;
}
.menu .sub-menu a {
    padding: 0.3rem 0.5rem;
	text-align: left;
}
#side-nav .menu a {
    padding: 0.3rem 0rem;
    font-size: calc(0.8rem + 0.5vw);
}
/**
* PLUGINS - VISUAL COMPOSER
*
*/

#site .vc_row {
    margin-left: 0;
    margin-right: 0;
}

#site .vc_column_container>.vc_column-inner {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
}


#site .wpb_gallery *{
    box-sizing: initial;
    -webkit-box-sizing: initial;
}

#site .wpb_images_carousel{
    overflow: hidden;
}

#site .flexslider .slides img {
    display: block;
    height: auto;
    margin: auto;
}

.wpb-js-composer #site .vc_tta-tab a {
    padding: 0.5rem 1.5rem;
    border-radius: 0.5rem 0.5rem 0 0;
}
.wpb-js-composer #site .vc_tta-title-text{
    text-transform: uppercase;
    font-weight: bold;
}
#site .vc_toggle .vc_toggle_title{
    transition: all 0.5s ease;
}

#site .vc_toggle_title {
    padding: 0.5rem;
    padding-left: 1.5rem;
}

#site .vc_toggle_default .vc_toggle_icon {
    margin-left: 0.5rem;
}
#site .vc_tta-container,
#site .vc_cta3-container,
#site .wpb_button, 
#site .wpb_content_element, 
#site ul.wpb_thumbnails-fluid>li{
    margin-bottom: 0;
}

/**
* Theme Custom Styles
*
*/
#site{
    position: relative;
    overflow: hidden;
    min-height: 100vh;
}
#site-inner{
    position: relative;
    transition: all 0.5s ease;
    left: 0;
}
#header img {
    width: 100%;
}

/*  ---------------  NINJA overides ------------------------*/
#site .label-above .nf-field-label {
    margin-bottom: 0;
}
#site .field-wrap>div input[type="checkbox"] {
    width: auto;
}
#site .nf-field-element select {
    border: 1px solid;
    border-radius: 4px;
}
.is-selected .pika-button {
    border-radius: 0px;
}
/**
* Custom Classes
*
*/

.clear{clear: both;}

#site .dsm-col-12{ width: 100%; }
#site .dsm-col-11{ width: 91.6666%; }
#site .dsm-col-10{ width: 83.3333%; }
#site .dsm-col-9{ width: 75%; }
#site .dsm-col-8{ width: 66.6666%; }
#site .dsm-col-7{ width: 58.3333%; }
#site .dsm-col-6{ width: 50%; }
#site .dsm-col-5{ width: 41.6666%; }
#site .dsm-col-4{ width: 33.3333%; }
#site .dsm-col-3{ width: 25%; }
#site .dsm-col-2{ width: 16.6666%; }
#site .dsm-col-1{ width: 8.3333%; }

#site .dsm-mar-l-11{ margin-left: 91.6666%; }
#site .dsm-mar-l-10{ margin-left: 83.3333%; }
#site .dsm-mar-l-9{ margin-left: 75%; }
#site .dsm-mar-l-8{ margin-left: 66.6666%; }
#site .dsm-mar-l-7{ margin-left: 58.3333%; }
#site .dsm-mar-l-6{ margin-left: 50%; }
#site .dsm-mar-l-5{ margin-left: 41.6666%; }
#site .dsm-mar-l-4{ margin-left: 33.3333%; }
#site .dsm-mar-l-3{ margin-left: 25%; }
#site .dsm-mar-l-2{ margin-left: 16.6666%; }
#site .dsm-mar-l-1{ margin-left: 8.3333%; }
#site .dsm-mar-l-0{ margin-left: 0; }

#site .dsm-mar-r-0{ margin-right: 0; }
#site .dsm-mar-r-11{ margin-right: 91.6666%; }
#site .dsm-mar-r-10{ margin-right: 83.3333%; }
#site .dsm-mar-r-9{ margin-right: 75%; }
#site .dsm-mar-r-8{ margin-right: 66.6666%; }
#site .dsm-mar-r-7{ margin-right: 58.3333%; }
#site .dsm-mar-r-6{ margin-right: 50%; }
#site .dsm-mar-r-5{ margin-right: 41.6666%; }
#site .dsm-mar-r-4{ margin-right: 33.3333%; }
#site .dsm-mar-r-3{ margin-right: 25%; }   
#site .dsm-mar-r-2{ margin-right: 16.6666%; }  
#site .dsm-mar-r-1{ margin-right: 8.3333%; }



#site #site-inner .dsm-pad-l-05{ padding-left: 4.1515%; }
#site #site-inner .dsm-pad-l-1{ padding-left: 8.3333%; }
#site #site-inner .dsm-pad-l-15{ padding-left: 12.4848%; }
#site #site-inner .dsm-pad-l-2{ padding-left: 16.6666%; }
#site #site-inner .dsm-pad-l-25{ padding-left: 20.8484%; }
#site #site-inner .dsm-pad-l-3{ padding-left: 25%; }
#site #site-inner .dsm-pad-l-35{ padding-left: 29.1515%; }
#site #site-inner .dsm-pad-l-4{ padding-left: 33.3333%; }
#site #site-inner .dsm-pad-l-45{ padding-left: 37.4848%; }
#site #site-inner .dsm-pad-l-5{ padding-left: 41.6666%; }
#site #site-inner .dsm-pad-l-55{ padding-left: 45.8484%; }
#site #site-inner .dsm-pad-l-6{ padding-left: 50%; }
#site #site-inner .dsm-pad-r-05{ padding-right: 4.1515%; }
#site #site-inner .dsm-pad-r-1{ padding-right: 8.3333%; }
#site #site-inner .dsm-pad-r-15{ padding-right: 12.4848%; }
#site #site-inner .dsm-pad-r-2{ padding-right: 16.6666%; }
#site #site-inner .dsm-pad-r-25{ padding-right: 20.8484%; }
#site #site-inner .dsm-pad-r-3{ padding-right: 25%; }
#site #site-inner .dsm-pad-r-35{ padding-right: 29.1515%; }
#site #site-inner .dsm-pad-r-4{ padding-right: 33.3333%; }
#site #site-inner .dsm-pad-r-45{ padding-right: 37.4848%; }
#site #site-inner .dsm-pad-r-5{ padding-right: 41.6666%; }
#site #site-inner .dsm-pad-r-55{ padding-right: 45.8484%; }
#site #site-inner .dsm-pad-r-6{ padding-right: 50%; }
#site #site-inner .dsm-pad-l-r-01{ padding-left: 1.0379%; padding-right: 1.0379%; }
#site #site-inner .dsm-pad-l-r-02{ padding-left: 2.0758%; padding-right: 2.0758%; }
#site #site-inner .dsm-pad-l-r-05{ padding-left: 4.1515%; padding-right: 4.1515%; }
#site #site-inner .dsm-pad-l-r-1{ padding-left: 8.3333%; padding-right: 8.3333%; }
#site #site-inner .dsm-pad-l-r-15{ padding-left: 12.4848%; padding-right: 12.4848%; }
#site #site-inner .dsm-pad-l-r-2{ padding-left: 16.6666%; padding-right: 16.6666%; }
#site #site-inner .dsm-pad-l-r-25{ padding-left: 20.8484%; padding-right: 20.8484%; }
#site #site-inner .dsm-pad-l-r-3{ padding-left: 25%; padding-right: 25%; }
#site #site-inner .dsm-pad-l-r-35{ padding-left: 29.1515%; padding-right: 29.1515%; }
#site #site-inner .dsm-pad-l-r-4{ padding-left: 33.3333%; padding-right: 33.3333%; }
#site #site-inner .dsm-pad-l-r-45{ padding-left: 37.4848%; padding-right: 37.4848%; }
#site #site-inner .dsm-pad-l-r-5{ padding-left: 41.6666%; padding-right: 41.6666%; }
#site #site-inner .dsm-pad-l-r-55{ padding-left: 45.8484%; padding-right: 45.8484%; }
#site #site-inner .dsm-pad-l-r-6{ padding-left: 50%; padding-right: 50%; }

#site .slide-left{
    left: -480px;
}

#site .align-left{ left: 0; }
#site .align-center{ left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); }
#site .align-right{ right: 0; }

#site .static{ position: static; }
#site .absolute{ position: absolute; }
#site .relative{ position: relative; }
#site .fixed{ position: fixed; }

#site .top{ top: 0;}
#site .bottom{ bottom: 0; }
#site .bottom-005{ bottom: 0.5rem; }
#site .bottom-010{ bottom: 1; }
#site .bottom-015{ bottom: 1.5rem; }
#site .bottom-020{ bottom: 2; }
#site .bottom-025{ bottom: 2.5rem; }
#site .bottom-030{ bottom: 3; }

#site .column-gap_025vw > .vc_column_container{ padding: 0 0.25vw}
#site .column-gap_05vw > .vc_column_container{ padding: 0 0.5vw}
#site .column-gap_075vw > .vc_column_container{ padding: 0 0.75vw}
#site .column-gap_1vw > .vc_column_container{ padding: 0 1vw}
#site .column-gap_125vw > .vc_column_container{ padding: 0 1.25vw}
#site .column-gap_15vw > .vc_column_container{ padding: 0 1.5vw}
#site .column-gap_175vw > .vc_column_container{ padding: 0 1.75vw}
#site .column-gap_2vw > .vc_column_container{ padding: 0 2vw}
#site .column-gap_225vw > .vc_column_container{ padding: 0 2.25vw}
#site .column-gap_25vw > .vc_column_container{ padding: 0 2.5vw}
#site .column-gap_275vw > .vc_column_container{ padding: 0 2.75vw}
#site .column-gap_3vw > .vc_column_container{ padding: 0 3vw}
#site .column-gap_325vw > .vc_column_container{ padding: 0 3.25vw}
#site .column-gap_35vw > .vc_column_container{ padding: 0 3.5vw}
#site .column-gap_375vw > .vc_column_container{ padding: 0 3.75vw}
#site .column-gap_4vw > .vc_column_container{ padding: 0 4vw}
#site .column-gap_425vw > .vc_column_container{ padding: 0 4.25vw}
#site .column-gap_45vw > .vc_column_container{ padding: 0 4.5vw}
#site .column-gap_475vw > .vc_column_container{ padding: 0 4.75vw}
#site .column-gap_5vw > .vc_column_container{ padding: 0 5vw}
#site .column-gap_525vw > .vc_column_container{ padding: 0 5.25vw}
#site .column-gap_55vw > .vc_column_container{ padding: 0 5.5vw}
#site .column-gap_575vw > .vc_column_container{ padding: 0 5.75vw}

#site .column-gap_025vw > .vc_column_container .wpb_single_image {margin:0 -0.25vw}
#site .column-gap_05vw > .vc_column_container .wpb_single_image {margin:0 -0.5vw}
#site .column-gap_075vw > .vc_column_container .wpb_single_image {margin:0 -0.75vw}
#site .column-gap_1vw > .vc_column_container .wpb_single_image {margin:0 -1vw}
#site .column-gap_125vw > .vc_column_container .wpb_single_image {margin:0 -1.25vw}
#site .column-gap_15vw > .vc_column_container .wpb_single_image {margin:0 -1.5vw}
#site .column-gap_175vw > .vc_column_container .wpb_single_image {margin:0 -1.75vw}
#site .column-gap_2vw > .vc_column_container .wpb_single_image {margin:0 -2vw}
#site .column-gap_225vw > .vc_column_container .wpb_single_image {margin:0 -2.25vw}
#site .column-gap_25vw > .vc_column_container .wpb_single_image {margin:0 -2.5vw}
#site .column-gap_275vw > .vc_column_container .wpb_single_image {margin:0 -2.75vw}
#site .column-gap_3vw > .vc_column_container .wpb_single_image {margin:0 -3vw}
#site .column-gap_325vw > .vc_column_container .wpb_single_image {margin:0 -3.25vw}
#site .column-gap_35vw > .vc_column_container .wpb_single_image {margin:0 -3.5vw}
#site .column-gap_375vw > .vc_column_container .wpb_single_image {margin:0 -3.75vw}
#site .column-gap_4vw > .vc_column_container .wpb_single_image {margin:0 -4vw}
#site .column-gap_425vw > .vc_column_container .wpb_single_image {margin:0 -4.25vw}
#site .column-gap_45vw > .vc_column_container .wpb_single_image {margin:0 -4.5vw}
#site .column-gap_475vw > .vc_column_container .wpb_single_image {margin:0 -4.75vw}
#site .column-gap_5vw > .vc_column_container .wpb_single_image {margin:0 -5vw}
#site .column-gap_525vw > .vc_column_container .wpb_single_image {margin:0 -5.25vw}
#site .column-gap_55vw > .vc_column_container .wpb_single_image {margin:0 -5.5vw}
#site .column-gap_575vw > .vc_column_container .wpb_single_image {margin:0 -5.75vw}



/**
* Responsive
*
*/
@media( min-width : 1200px ){
	.menu li .sub-menu {
		display: none;
		position: absolute;
		top: 100%;
		background-color: #fff;
		min-width: 300px;
        z-index: 10;
        padding: 0;
	}

    
    footer{ 
        position: relative;
    }

}

@media( max-width : 1200px ){
    #site .dsm-mar-r-2{margin-right: 8.3333%;}
    #site .dsm-mar-l-2{margin-left: 8.3333%;}
    #site .dsm-col-8{ width: 83.3333%; }
}
@media( max-width : 768px ){ 
    #site .dsm-col-5,
    #site .dsm-col-6 {
        width: 100%;
    }
    #site .dsm-mar-r-2{margin-right: 4.1515%;}
    #site .dsm-mar-l-2{margin-left: 4.1515%;}
    #site .dsm-col-8{ width: 91.6666%; }
}


@media( min-width : 768px ){
    footer{ 
        position: relative;
    }

}
.learnpress-page .learn-press-courses-header {
    float: none;
}
.learnpress-page .learn-press-courses-header  h1 {
    text-align: center;
}