/*
 *Theme Name: Cardioserv 2016
 *Description: Custom Theme for Cardioserv 2016
 *Version: 1.0
 *Author: Hannes van der Merwe
 *Author URL: http://www.planet-grid.com
*/

@font-face {
    font-family: 'TrajanProRegular';
    src: url('fonts/trajanpro-webfont.eot');
    src: url('fonts/trajanpro-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/trajanpro-webfont.woff') format('woff'),
         url('fonts/trajanpro-webfont.ttf') format('truetype'),
         url('fonts/trajanpro-webfont.svg#TrajanProRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}

body {margin: 0; padding: 0; background: #fff; font-family: 'Source Sans Pro', Arial, 'Arial Unicode MS', Helvetica, Sans-Serif;}

.updateing {position: absolute; right: 0%; top:10%;  }

.text_wrap { width: 200px; z-index: 1000; display: block; position: absolute; bottom: 10%; right: 12%; text-align: center;
            text-decoration: none; color: #9e9d9d; font-size: 12px; font-family: 'Source Sans Pro', Arial, 'Arial Unicode MS', Helvetica, Sans-Serif;
  font-style: normal;
  font-weight: 400;}
.facebook_link {position: relative; top:20px}
.text_wrap:hover { text-decoration: none;}

.clearfix:before,
.clearfix:after { display: table; content: ''; height: 0; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }



html, body h1, h2,  h3,  h4, h5, h6 { font-family: 'Source Sans Pro', Arial, 'Arial Unicode MS', Helvetica, Sans-Serif; font-weight: 400;  margin: 0 0 27px 0;  padding: 0; 
                                      /* color: #d4b012; */ color: #434242;  }

a,a:active, p, li, ul, body , div { font-family: 'Source Sans Pro', Arial, 'Arial Unicode MS', Helvetica, Sans-Serif; font-weight: 400; font-size: 16px; color: #434242; color: #434242; text-decoration: none; }
a:hover { text-decoration: none;font-family: 'Source Sans Pro', Arial, 'Arial Unicode MS', Helvetica, Sans-Serif; font-weight: 100;    color: #515bb4;  }
li {margin-bottom: 5px;}
p { margin: 0 0 22px 0; line-height: 22px;font-family: 'Source Sans Pro', Arial, 'Arial Unicode MS', Helvetica, Sans-Serif; font-weight: 100; }

p strong { font-weight: 900;}
h2 { font-size: 25px; letter-spacing: 2px; text-transform: uppercase; color: #434242;}
h2 span {  color: #515bb4 !important; }
h3 { font-size: 22px; color: #434242; }
h3 span {  color: #515bb4 !important; }
h4 { font-size: 20px; color: #434242; } 
h4 a { font-size: 20px; color: #434242; }
h4 span {  color: #515bb4 !important; }

/*   Header   */
.term_name h2 a { text-align: center !important; width: 100%; display: block;}
.term_name_top a { color: #fff; opacity: 1;}
.back_wrap { width: 100%; min-height: 500px; position: fixed;  background-size: cover !important;}
.header { width: 100%;  background: #000;top: 0; z-index: 10000; text-align: center;}

.logo_wrap {display: block; float: left; text-align: center; width: 40%;}
.logo {display: inline-block;   width: 100%; background: url('images/logo.png') 0 0 no-repeat; width: 224px; height: 230px;
      background-size: cover;
}

.header_right { float: left; width: 60%; padding: 40px 0;}
.header_right h1 {  font-size: 50px; font-family: 'TrajanProRegular'; }
.header_right .slogan,
.header_right .slogan p { font-size: 15px; font-family: 'TrajanProRegular';}

.header h1, .header p  { color: #bbc2fe;}
.header_in {}
.page_wrap { min-height: 380px;}

.spacer { height: 198px;}
.page_wrap_top { width: 100%; float: left; opacity: 0.8; }
.page_wrap_in_top { }
.shell {width: 1024px; margin: 0 auto;  }
input[type="tel"],
input[type="email"],
input[type="text"],
select { border: #c1c1c1 1px solid; border-radius: 5px; padding: 3px 10px;  color: #434242; margin-bottom: 20px; width: 90%;}
textarea { border: #c1c1c1 1px solid; border-radius: 5px; padding: 3px 10px;  color: #434242; margin-bottom: 20px; width: 90%;}
.form_submit_btn,
input[type="submit"] { font-size: 13px;
    background: #515bb4; background-size: cover;
    border: none; border-radius: 5px; padding: 6px 10px; color: #fff; 
    box-shadow: 3px 3px 3px #a1a1a1; text-transform: uppercase; font-weight: 400;
}
.form_submit_btn:hover { color: #fff; font-weight: bolder;}
.aligncenter {margin: 0 auto; }

/*   Menu   */
.normal_menu {background: #515bb4; width: 100%; height: 30px; }
.menu_wrap { float: left; width: 100%;  padding: 0;
             text-align: center; height: 30px;  }
.main_menu_container > ul { display: inline-block; text-align: left;
                                    padding: 0; margin: 0; list-style: none; height: 30px;}
.main_menu_container > ul > li {display: block; float: left; margin: 0; padding: 0;
                                       list-style: none; position: relative; top: 0; left: 0;}
.main_menu_container > ul > li > a {display: block; margin: 0; padding: 8px 20px ; font-size: 11px; color: #fff;  ;
                          letter-spacing: 1.5px;  text-transform: uppercase;}

.document_view { width: 150px; float: left; margin: 15px 20px 25px 20px; text-align: center;}
.document_view a img { width: 50%; margin: 0 15%; }
.document_view a span { font-weight: bold; text-transform: uppercase;}

.main_menu_container > ul > li > ul { display: none;}
.main_menu_container > ul > li:hover  > a {background: #bbc2fe;}


.main_menu_container > ul > li:hover > ul { display: block; width: 250px; position: absolute; left: 0;
                                            top: 98%; 
                                            border-bottom-left-radius:  5px;
                                            border-bottom-right-radius:  5px; background: #bbc2fe; padding: 10px;}

.main_menu_container > ul > li:hover > ul > li {display: block; float: left; width: 98%;
                                        display: block; float: left; margin: 0; padding: 0;
                                       list-style: none; position: relative; top: 0; left: 0;
}
.main_menu_container > ul > li:hover > ul > li > a { display: block; margin: 0;  padding: 10px 0px 10px 10px; font-size: 11px; 
                      font-weight: 400; color: #fff; letter-spacing: 1px;}
 
.sub-menu  > li:hover > a {  font-weight: 900 !important; }                                                 
                                                    





.slide { overflow: hidden;}
.slide > img {width: 100%;}
.slide_image .grey_banner { position: absolute; bottom: 0; left: 0; width: 100%;
               background: url('images/grey_back1.png') repeat;  text-align: center;}
.slide_image.below .grey_banner { position: relative; top: -1px;  background-color: #3d3d3e; opacity: 1;}
.slide_image .grey_banner_in {transition: all .7s ease-in-out;}
.slide_image h2 {  color: #fff;    text-align: ceneter; padding: 0 0px 0 0; margin: 0;
                    text-transform: uppercase;  letter-spacing: 2px;  width: 100%; }
.slide_image .slide_content { color: #fff; display: block;  width: 100%; margin: 0 0 10px; text-align: center; letter-spacing: 1px;  font-size: 20px;}
.slide_image  a { color: #ad2525;   margin: 0 0 10px 0;  letter-spacing: 1px;  }

.block_title h2 { margin: 0 0 47px; text-align: center; text-transform: uppercase; color: #434242; }
.block_title h2 span {color: #515bb4;}
.top_spacer { width: 100%; height: 47px;}

.slide_warp_out { width: 100%; overflow: hidden;}
.slide_warp_in {width: 100%; position: relative; top: 0;}
.slide_image {  position: relative; top: 0; left: 0; background-size:  auto 100%; float: left;}
.slide_image.left , .slide_image.right { opacity: 0.2}
.slide_image_pc { display: block; height: 100%;}
.slide_image_mobile { display: none;}

/*   Home - help_block   */
.product_categories { margin: 50px 0;}
.product_category { width: 25%; margin: 20px 2%; padding: 20px 2%; float: left; border-radius: 10px; 
                   background: #515bb4; text-align: center; min-height: 380px;}
.product_category h2,
.product_category a h2 { color: #fff;}
.product_category .product_image { display: inline-block; width: 100%; height: 200px; }
.product_category .product_description p {color: #fff; padding: 10px;}
.product_category .more_info { color: #515bb4; background: #fff; float: right; margin: 10px 0 10px 50%; text-align: center;
            padding: 5px 20px; border-radius: 5px;}
.block_title { margin: 30px 0 20px 0;}

/* Products Page */
.page_intro { padding: 0 10px;}
.page_left { width: 67%; margin: 0 0 0 2%; padding: 0; float: left; min-height: 600px;}
.page_left img { max-width: 100%;}
.page_right { width: 20%; margin: 0 0 0 5%; padding: 0 0 0 5%; float: left; border-left: 1px solid #c1c1c1; min-height: 600px;}
 .page_title { margin: 40px 0 0 0; text-align: center;}
 .products_wrap { margin: 0;}
 .product_wrap { width: 80%; margin: 20px 5%; padding: 20px 5%; float: left; border-radius: 10px; 
                   background: #515bb4; text-align: center; }
.product_wrap .product_left { width: 40%; height: 200px; float: left; margin: 0; padding: 0; display: block;
                                background-size: cover !important;}
.product_wrap .product_right { width: 50%;  float: left; margin: 0 5% 0 5%; padding: 0; color: #fff !important; text-align: left;}
.product_wrap .product_right a h3 { color: #fff;}
.product_wrap .product_right a,
.product_wrap .product_right div,
.product_wrap .product_right p { color: #fff;}
.product_wrap .product_right .more_info { color: #515bb4; background: #fff; float: right; margin: 10px 0 10px 60%; text-align: center;
            padding: 5px 20px; border-radius: 5px;}
.pagination { width: 100%; text-align: center;}
.page-numbers {color: #fff; background: darkgray; display: inline-block; margin: 20px 5px;  padding: 5px 15px; border-radius: 30px; }
.page-numbers.current {background: #515bb4;}
.product_wrap .product_right .options { float: right; margin: 10px 0;}
.product_wrap .product_right .options .option { float: right; width: 100%; }
.product_wrap .product_right .options .options_option { display: inline-block; float: right;  font-size: 13px;}
.product_wrap .product_right .options .options_price { display: inline-block; min-width: 100px; font-size: 13px; float: right; margin: 0 0 0 10px; text-align: right;}
.product_cat_list { margin: 0 0 400px 0;}
.product_cat_list .category{ margin: 5px 0;}
.product_cat_list .category a  { font-size: 18px; }
.product_cat_list .category.active a { color:#515bb4;  }


/* Product Single */
.description_left { float: left; width: 69%;}
.options_right { float: left; width: 25%; margin: 0 0 0 5%;}
.options_right .options h3 { color:#515bb4; text-align: right; text-transform: uppercase; padding: 0; margin: 0;}
.price_terms  { width: 100%; margin: 20px 0px; float: left;}
.price_terms h4 { font-weight: 900; font-size: 15px; margin: 0 0 10px 0;}
.price_terms .terms_content,
.price_terms .terms_content ul,
.price_terms .terms_content ul li { font-size: 12px; }
.options_right .options .option { float: right; width: 100%; }
.options_right .options .options_option { display: inline-block; float: right; }
.options_right .options .options_price { display: inline-block; float: right; margin: 0 0 0 10px; text-align: right;}

.image_prev {width: 40%; height: 200px; float: left; margin: 20px 4%; padding: 0; display: block;
                                background-size: cover !important;}

.show_offset { width: 100%; position: absolute; border-bottom: 1px solid red;}
.price_note { text-align: right; font-size: 11px; text-transform: uppercase;}
.products_wrap_intro { margin-bottom: 40px;}
/* Contact Us */
.contact_wrap .page_left  { width: 40% !important; float: left; margin: 0 0 0 5%  !important; border: none;}
.contact_wrap .page_right { width: 40% !important; float: left; margin: 0 0 0 5%  !important; border: none;}
.contact_wrap .page_left .block_title h2 {margin: 27px 0 27px !important;}
.contact_field.contact_format {margin: 0 2% 20px;}
.contact_field.contact_format {margin: 0 2% 20px;}
.contact_format label { font-weight: 400; font-size: 11px; width: 100%; }
.contact_format label { font-weight: 400; font-size: 11px; width: 100%; }
.contact_format > label {margin: 0 0 0; display: block;}
.contact_format > label {margin: 0 0 0; display: block;}

.map {margin: 0 auto; width: 1100px !important; height:  300px  !important;}

.wpcf7-radio { width: 80%; float: right; }
.wpcf7-radio label { width: 100%; float: left;}
/*   Meet the Staff   */
.map_back iframe { width: 100%;}
.no_scroll { pointer-events: none;}


/* Footer */
.footer { width: 100%;  background: #000; display: block;  text-align: center;
        position: relative; top: 0; left: 0; margin: 47px 0 0 0; padding: 0 0 15px; }
.page-template-page-contact .footer { margin: 0;}
.footer_blocks {width: 100%;  color: #bbc2fe; }
.footer_blocks .footer_block {  width: 40%; margin: 15px 5% 0px 5%; float : left; }
.footer_blocks .footer_block p,
.footer_blocks .footer_block a,
.footer_blocks .footer_block h3,
.footer_blocks .footer_block li { color: #bbc2fe;}
.footer_blocks .footer_block h3 {text-align: center; margin: 0 0 5px 0; padding: 0;}
.footer_blocks .footer_block h3 span {color: #bbc2fe; }
.footer_blocks .footer_block a:hover {color: #bbc2fe; }
.footer_blocks .footer_block.footer_block_2 { float: right; margin: 15px 5% 5px 0;}
/*.footer_blocks .footer_block_2 { margin: 10px 0 5px 130px;}
.footer_blocks .footer_block_3 { margin: 10px 0 5px 130px;}
.footer_blocks .footer_block_4 { margin: 10px 0 5px 130px;}*/


.footer_icons { display: inline-block; position: relative; top: -200px;}
.footer_icon { display: block; float: left; margin: 0px 5px 10px 5px; width: 40px;  }
.footer_icon img {width: 100%;}
/* Copyright */

.copyright { width: 100%;  background: #000; height: 30px; text-transform: uppercase;
             position: absolute; bottom: 5px;
             line-height: 30px; color: #bbc2fe; margin-bottom: 10px; text-align: center; font-size: 16px; 

}  
.mobile_menu_triger { display: none;}
.mobile_menu_container { display: none; }
.content_rows { padding: 0 10px;}
@-ms-viewport {
	width: device-width;
}

@viewport {
	width: device-width;
}

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 35px;
    height: 0;
    overflow: hidden;
}
.video-container iframe {
    position: absolute;
    top:0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width:1150px) {
}

@media screen and (max-width:1024px) {
   
    
}

@media screen and (max-width:1020px) {
    .shell { width: 100%; overflow: hidden; }
    .content_rows { padding: 0 10px;}
    
    .mobile_menu { display: inline-block; position: relative; left:0; top:0;  
                  width: 50%;  height: auto; margin-right: 10px;}
    .normal_menu, .spacer { display: none;}
    .header {position: relative;}
    .menu_wrap { background: #fff; margin: 0 0px; height: 60px;}
    
    
    input[type="tel"],
    input[type="email"],
    input[type="text"],
    select {  width: 80%;}
    textarea {  width: 80%;}
    .call_to_action_form > div { display: block; float: left; width: 80%;}
    .mobile_menu_triger { display: inline-block;; position: relative; z-index: 10000; border-radius: 5px;  float: right;
                             background: #515bb4; background-size: cover;
                             width: 45px !important; height: 40px !important; overflow: hidden;  
                             margin: 10px 10px 0 0;}
/*        .logo {margin-left: 10px;}
        .footer {  padding: 0; }*/
        
        /*.mobile_menu_triger { position: absolute; left: 50%; top: 50%; }*/

        .mobile_menu_triger { cursor: pointer; }
                /* padding: 28px 50px 35px 18px; */
        .mobile_menu_triger span {
                    margin: 17px 10px 5px 10px;
        }
        .mobile_menu_triger.active span {margin: 17px 10px 5px 10px; }
        
        
        .mobile_menu_triger span, .mobile_menu_triger span:before, .mobile_menu_triger span:after {
          cursor: pointer;
          border-radius: 1px;
          height: 4px !important;
          width: 25px;
          background: white;
          position: absolute;
          display: block;
          content: '';
          
          
        }
        .mobile_menu_triger span:before {
          top: -10px; 
        }
        .mobile_menu_triger span:after {
          bottom: -10px;
        }

        .mobile_menu_triger span, .mobile_menu_triger span:before, .mobile_menu_triger span:after {
          transition: all 0.25s ease-in-out;
        }
        .mobile_menu_triger.active {
            }
        
        .mobile_menu_triger.active span {
          background-color: transparent;
        }
        .mobile_menu_triger.active span:before, .mobile_menu_triger.active span:after {
          top: 0;
        }
        .mobile_menu_triger.active span:before {
          transform: rotate(45deg);
          -moz-transform:rotate(45deg);
    /* Safari and Chrome */
    -webkit-transform:rotate(45deg);
    /* Opera */
    -o-transform:rotate(45deg);
    /* IE9 */
    -ms-transform:rotate(45deg);
    /* IE6,IE7 */
    filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476);
    /* IE8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476)"; 

        }
        .mobile_menu_triger.active span:after {
          transform: rotate(-45deg);
          -moz-transform:rotate(-45deg);
    /* Safari and Chrome */
    -webkit-transform:rotate(-45deg);
    /* Opera */
    -o-transform:rotate(-45deg);
    /* IE9 */
    -ms-transform:rotate(-45deg);
    /* IE6,IE7 */
    filter: progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=-0.7071067811865476, M12=0.7071067811865475, M21=-0.7071067811865475, M22=-0.7071067811865476);
    /* IE8 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=-0.7071067811865476, M12=0.7071067811865475, M21=-0.7071067811865475, M22=-0.7071067811865476)"; 

        }
     .mobile_menu_wrap  { position: relative; top: 0; margin: 20px 0;} 
    .mobile_menu_container { width: 100%; position: relative; display: block; min-width: 170px; }
    .mobile_menu_container > ul { list-style: none;  width: 100%; display: block; padding: 10px; border-radius: 10px; 
                                 text-align: left; background: #515bb4; min-width: 150px;}
    .mobile_menu_container  ul li {    min-width: 130px; }
    .mobile_menu_container ul li a { margin: 0 10%;  font-size: 18px; min-width: 130px;
                                   color: #fff; padding: 10px 0; width: auto;}
    .mobile_menu_container ul li:last-child a {border-bottom: none;}
    .mobile_menu_container > ul > li> ul { list-style: none;  display: block; padding: 10px; border-radius: 10px; text-align: left; background: #515bb4;}


        
        .flexslider .slides { height: 400px !important;}
     .product_category { width: 27%; margin: 20px 1%; padding: 20px 2%; }
     .product_category a h2 { font-size: 18px;}
}



@media screen and (max-width: 850px) {
	
       .header_right { margin: 0; padding: 10px 0;}
       .header_right h1 { font-size: 40px; } 
       
       .description_left {  width: 90%; margin: 0 0 20px;}
    .options_right {  width: 90%; margin: 0;}


.options_right .options .option { float: right; width: 100%; }
.options_right .options .options_option { display: inline-block; float: right; }
.options_right .options .options_price { display: inline-block; float: right; margin: 0 0 0 10px; text-align: right;}

.image_prev {width: 40%; height: 200px; float: left; margin: 20px 4%; padding: 0; display: block;
                                background-size: contain !important;}
}

@media screen and (max-width: 790px) {
    
    
}
@media screen and (max-width: 750px) {
        
    
}
@media screen and (max-width: 650px) {
   .header_right h1 { font-size: 30px; } 
   .header_right .slogan { padding: 0 20px;}
   .header_right .contact_line { padding: 0 20px;}
   
   .product_category { width: 60%; margin: 20px 15%; padding: 20px 5%; }
     .product_category a h2 { font-size: 18px;}
     .contact_wrap .page_left,
    .contact_wrap .page_right { width: 90%; float: left; margin: 0 0 0 10%;}
    
    .page_left { width: 90%; margin: 0 5% 0 5%; padding: 0; float: left; }
    .page_right { width: 90%; margin: 0 5% 0 5%;  float: left; border: none; border-top: 1px solid #c1c1c1; min-height: 0px;}
    .product_cat_list { margin: 0;}
    .product_wrap .product_left { width: 100%; margin-bottom: 20px;  height: 250px;}
    .product_wrap .product_right { width: 90%;}
}
@media screen and (max-width: 570px) {
   .logo_wrap { width: 100%;}
   .header_right { width: 100%; margin: 0; padding: 0;}
   .header_right .slogan { padding: 0 20px;}
   .header_right .contact_line { padding: 0 20px;}
   .product_wrap .product_left { width: 100%; margin-bottom: 20px;  height: 200px;}
   .contact_wrap .page_left  { width: 95% !important; float: left; margin: 0 0 0 4%  !important; border: none;}
.contact_wrap .page_right { width: 95% !important; float: left; margin: 0 0 0 4%  !important; border: none;}
}
@media screen and (max-width: 420px) {
    .product_category { width: 80%; margin: 20px 5%; padding: 20px 5%; }
    .footer_blocks .footer_block {  width: 90%; margin: 15px 5% 0 5%; float : left; }
}


@media only screen and (max-width:  768px)  {


}
/* iPad Styles */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (-webkit-min-device-pixel-ratio: 2) {
	
}
/* iPhone 6 Styles */
@media only screen and (min-device-width : 375px) and (max-device-width : 667px) and (-webkit-min-device-pixel-ratio: 2) { 
	
}
/* iPhone 6+ Styles */
@media only screen and (min-device-width : 540px) and (max-device-width : 1140px) {
	
}
/* iPhone 5 & 5s Styles */
@media only screen and (min-device-width : 320px) and (max-device-width : 568px) {
}