/*
Theme Name: Firstcom Solutions
Author: Firstcom Solutions
Author URI: http://firstcom.com.sg/
Version: 1.0
*/


/*# sourceMappingURL=style.css.map */

/*# sourceMappingURL=style.css.map */


/*  Font Embedding */

/*
@font-face {
    font-family: 'HelveticaNeue';
    src: url('fonts/HelveticaNeue.woff') format('woff'),
         url('fonts/HelveticaNeue.ttf') format('truetype');
}
*/

@font-face {
    font-family: 'Swis 721 Normal';
    src: url('fonts/swis721.ttf') format('truetype');
    font-weight: 400;
}

@font-face {
    font-family: 'Swis 721 Light';
    src: url('fonts/swis721.ttf') format('truetype');
    font-weight: 300;
}

@font-face {
    font-family: 'Swis 721 Light Italics';
    src: url('fonts/swis721.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Bastardus Sans';
    src: url('fonts/bastardussans.ttf') format('truetype');
    font-weight: 400;
}



/* General / Foundation Overrides */

/* Foundation container size */
.row{
    max-width: 1050px;
}

body{
    /* Uncomment this to make the website unresponsive, and use small columns in the html */
    /* min-width: 1050px; */
    font-family: 'Swis 721 Normal', Arial, sans-serif;
    background-color: #fff;
    color: #6a6a6d;
    font-size: 18px;
    height: 100%;
    overflow-y: hidden;
}

body p,
body li{
    color: #6a6a6d;
    font-size: 18px;
    letter-spacing: 0.2px;
}

h1 {
    font-family: 'Swis 721 Normal', Arial, sans-serif;
    font-size: 44px;
    color: #00a6a7;
}

.red {
    color: #ff0000;
}

body a{
    color: inherit;
}

body a:hover,
body a:focus{
    color: #343453;
}

body input,
body textarea{
    margin-bottom: 8px;
}

textarea,
textarea[rows]{
    height: 100px;
}

.scroll-down-text {
    color: #00a6a7;	
    font-size: 10px;
    margin-top: 10px;
    display: none;
}

.margin-bottom-small{
    margin-bottom: 15px;
}

.margin-bottom-medium{
    margin-bottom: 30px;
}

.margin-bottom-large{
    margin-bottom: 60px;
}

.margin-top-small{
    margin-top: 15px;
}

.margin-top-medium{
    margin-top: 30px;
}

.margin-top-large{
    margin-top: 60px;
}

.margin-top-head{
    margin-top: 120px;
}


/* WordPress TinyMCE */
/* These styles are required for alignment to work */

img.alignright { float: right; margin: 0 0 1em 1em; }
img.alignleft { float: left; margin: 0 1em 1em 0; }
img.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignright { float: right; }
.alignleft { float: left; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }



/* Wordpress Plugins - Contact Form 7 */

.wpcf7-form-control-wrap{
    width: 100%;
}

.wpcf7-not-valid-tip{
    margin-bottom: 10px;
}

.wpcf7-response-output{
	margin: 0 !important;
}



/* Wordpress Plugins - Slider Revolution */
/* Arrows and Bullets */

/*
.tp-leftarrow{
    width: 18px !important;
    height: 28px !important;
    background-image: url() !important;
}

.tp-rightarrow{
    width: 18px !important;
    height: 28px !important;
    background-image: url() !important;
}

.tp-bullets.simplebullets.round .bullet{
    border-radius: 50%;
    background: none;
    background-color: white;
    border: none;
    width: 14px;
    height: 14px;
    margin: 0 8px;
}

.tp-bullets.simplebullets.round .bullet.selected{
    border-radius: 50%;
    background: none;
    background-color: red;
    border: none;
    width: 14px;
    height: 14px;
}
*/



/* Header & Menu */

header{
    background-color: #fff;
    padding: 10px 0;
}

#logo{
    display: inline-block;
}

.menu{
    list-style-type: none;
    margin: 0;
    margin-top: 30px;
}

.menu a{
    color: #6a6a6d;
    font-size: 19px;
    padding-left: 0 !important;
    padding-bottom: 0 !important;
}

.menu > li{
    /* display: inline-block; */
    display: block;
    margin-right: 20px;
    position: relative;
}

.menu > li:last-child{
    margin-left: 0;
}

.menu > li:hover > a,
.menu > .current-menu-item > a,
.menu > .current-menu-parent > a,
.menu > .current_page_ancestor > a,
.sub-menu .current-menu-item a {
    text-decoration: none;
    color: #00a6a7;
}

/*

.menu > .current-menu-item .sub-menu,
.menu > .current-menu-parent .sub-menu,
.menu > .current_page_ancestor .sub-menu {
    background: url(img/menu-subarrow.png) no-repeat left top 11px;
    display: block;
    position: absolute;
    top: 1px;
    left: 95px;
    z-index: 98;
    padding-left: 15px;
}
*/


.menu .sub-menu{
    display: none;
    list-style-type: none;
    margin: 0;
}

.menu > .menu-item-has-children:hover > .sub-menu{
    background: url(img/menu-subarrow.png) no-repeat left top 11px;
    display: block;
    position: absolute;
    top: 1px;
    left: 95px;
    z-index: 99;
    padding-left: 15px;
}

.menu .sub-menu > li {
    display: block;
    background: white;
    width: 180px;
    text-align: left;
}

.menu .sub-menu > li > a {
    display: block;
    padding: 5px 10px;
    font-size: 13px;
    line-height: 18px;
}

.menu .sub-menu > li > a:hover {
    color: #00a6a7;
}

.countries {
	margin-right: 8px;
	font-size: 9pt;
	font-weight: 700;
}


/* Footer * Copyright */

footer{
    background-color: #fff;
    /*padding: 40px 0 0;*/
    padding: 90% 0 0;
}

.copyright{
    font-family: 'Bastardus Sans', Arial, sans-serif;
    text-align: left;
    font-size: 11px;
}



/* Content */

::-webkit-scrollbar {
    width: 12px;
    display: none;
}
 
::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.1); 
    border-radius: 10px;
    display: none;
}
 
::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.8); 
    display: none;
}


.page-left-col {
    background:  transparent url(img/repeated-dot-divider.png) repeat-y right top;
}

.page-right-col {
    
}

.scroll-wrap {
    position: relative;
    margin-right: 10px;
    overflow-x: hidden;
    overflow-y: auto;
}

.scroll-content {
    max-height: 768px;
    /*
    max-height: 468px;
    overflow-y: scroll;
    overflow-x: hidden;
    margin-right: -17px;
    */
}

.home-slider{
    
}

.home-content{
    padding: 50px 0;
    background-color: white;
}

.free-text-holder {
    
}

.free-text-holder ul {
    list-style-image: url('img/bulletpoint.png');
}

.free-text-holder ul li {
    line-height: 22px;
}

.free-text-holder img {
    max-width: 100%;
}

.free-text-holder table td {
  padding: 10px 5px;
}

.diff-title {
    font-size: 18px;
    color: #00a6a7;
}

.diff-text p {
    font-size: 18px;
    line-height: 18px;
}

.sing-proj-item {
    position: relative;
    overflow: hidden !important;
}

.sing-proj-item .inner-wrap {
    position: relative;
    overflow: hidden !important;
    height: 130px;
}

.sing-proj-item .inner-wrap img {
    width: 200px !important;
    height: 125px !important;
}

.hoverlay {
    display: none;
    position: relative;
    background: #59595b;
    padding: 6px 10px;
}

.sing-proj-item:hover .hoverlay {
    position: absolute;
    display: block;
    bottom: 0;
    width: 100%;
    color: #fff;
}

.testimonial-wrap {
    border: 1px solid #e0e0e0;
    padding: 30px 40px;
    margin: 0 0px 20px 20px;
    width: 47% !important;
}

.testimonial-text {
    border-bottom: 1px solid #e0e0e0;
    background: url(img/comma.png) no-repeat left top;
    padding: 32px 0 5px;
}

.testimonial-logo {
    border-radius: 50%;
    border: 1px solid #e0e0e0;
    display: inline-block;
    height: 60px;
    width: 60px;
    text-align: center;
    overflow: hidden;
    margin-top: 20px;
}

.testimonial-logo img {
    max-height: 80%;
    max-width: 80%;
}

.testimonial-name {
    color: #00a6a7;
    margin-top: 30px;
}

.testimonial-pos {
    font-style: italic;
}

.helper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.client-frame {
    border: 1px solid #e0e0e0;
    width: 16.8% !important;
    margin: 10px;
    padding: 5px;
    text-align: center;
    height: 100px;
}

.client-frame img {
    max-height: 100%;
    max-width: 100%;
}

.gmap iframe{
    width: 100%;
    height: 300px;
    line-height: 0;
}




/** Master Slider **/

.ms-thumbs-cont {
    left: 0 !important;
    width: 85px;
    height: 90px;
    vertical-align: top;
    top: 35px !important;
}

.ms-thumb-frame {
    margin-bottom: 10px !important;
}

.ms-thumb-list.ms-dir-v {
    left: 2px !important;
}

.ms-bullets {
    bottom: -45px !important;
    background-position: -30px -79px !important;
}

.ms-skin-default .ms-bullet-selected {
    background-position: -30px -79px !important;
}

.prod-img-gallery .ms-view {
    margin-left: 0;
    position: relative;
    background: transparent;
}

.ms-inner-controls-cont {
    margin-left: 0;
    float: left;
    margin-right: 15px;
}

.ms-thumblist-fwd {
    display: block;
    background: #fff url(img/master-up.png) no-repeat center center;
    top: 0px;
    position: absolute;
    height: 30px;
    width: 100%;
    z-index: 99;
}

.ms-thumblist-bwd {
    display: block;
    background: #fff url(img/master-down.png) no-repeat center center;
    height: 30px;
    z-index: 99;
    position: relative;
    padding: 30px 0 0;
}



/** Form Styling **/

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'], textarea {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 35px;
    padding: 0.5rem;
    border: 1px solid #cacaca;
    margin: 0 0 10px;
    font-family: inherit;
    font-size: 1rem;
    color: #0a0a0a;
    background-color: #fefefe;
    box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
    border-radius: 0;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
}

select {
    height: 35px;
    padding: 0.5rem;
    border: 1px solid #cacaca;
    margin: 0 0 1rem;
    font-size: 1rem;
    font-family: inherit;
    line-height: normal;
    color: #0a0a0a;
    background-color: #fefefe;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-size: 9px 6px;
    background-position: right center;
    background-origin: content-box;
    background-repeat: no-repeat;
}

.contact-form p {
    margin-bottom: 0px;
}

.submit-btn {
    background: #00a6a7;
    color: #fff;
    border: none;
    padding: 10px 30px;
    float: right;
}

.email-btn {
    background: #00a6a7 url(img/email-icon.png) no-repeat 18px;
    color: #fff;
    border: none;
    padding: 8px 25px 8px 40px;
    float: right;
}



/* MMenu CSS */

.small-nav {
    position: relative;
    top: 10px;
}

#burger {
    display: block;
    width: 30px;
    height: 25px;
    position: relative;
    float: right;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
    margin-top: 20px;
    margin-right: 6px;
    top: 0;
}

#burger span {
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background: #00a6a7;
    opacity: 1;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    cursor: pointer;
}

#burger span:nth-child(1) { top: 0px; }

#burger span:nth-child(2), #burger span:nth-child(3) { top: 10px; }

#burger span:nth-child(4) { top: 20px; }

.mm-opening #burger span:nth-child(1) { top: 10px; width: 0%; left: 50%; }

.mm-opening #burger span:nth-child(2) {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg); 
}

.mm-opening #burger span:nth-child(3) {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg); 
}

.mm-opening #burger span:nth-child(4) { top: 10px; width: 0%; left: 50%; }



/** Stupid Right Floats **/

.the-content.column:last-child:not(:first-child), 
.the-content.columns:last-child:not(:first-child) {
    float: none;
}

.sing-proj-item.column:last-child:not(:first-child), 
.sing-proj-item.columns:last-child:not(:first-child) {
    float: left;
}

.testimonial-wrap.column:last-child:not(:first-child), 
.testimonial-wrap.columns:last-child:not(:first-child) {
    float: left;
}

.client-frame.column:last-child:not(:first-child), 
.client-frame.columns:last-child:not(:first-child) {
    float: left;
}

.row.medium-up-5 {
    margin-left: auto;
    margin-right: auto;
}


/** Mobile Menu Toggles **/

.desktop-nav {
    display: block;
}

.mobile-nav {
    display: none;
}


/** Media Queries **/

@media only screen and (max-width : 1015px) {
    
    body {
        overflow: scroll;
    }

    .desktop-nav {
        display: none;
    }

    .mobile-nav {
        display: block;
    }
    
    header {
        padding: 25px 0;
    }
    
    .margin-top-head {
        margin: 0;
    }
    
    .page-left-col {
        background: none;
    }
    
    .page-right-col {
        width: 100%;
    }
    
    .scroll-wrap {
        position: relative;
        margin-right: 0;
        overflow-x: inherit !important;
    }
    
    .scroll-content {
        max-height: none;
        overflow-y: inherit !important;
        overflow-x: inherit !important;
        margin-right: 0;
    }
    
    .copyright {
        font-family: 'Bastardus Sans', Arial, sans-serif;
        text-align: center;
        font-size: 11px;
        margin-top: 40px;
    }

}


/** Master Slider Viewports **/
    

.ms-normal-view {
    display: block;
}
    
.ms-small-view {
    display: none;
}


@media only screen and (max-width : 700px) {
    
    .ms-normal-view {
        display: none;
    }
    
    .ms-small-view {
        display: block;
        margin-bottom: 20px;
    }
    
    .ms-thumb-list {
        display: none;
    }
    
    /*.ms-thumb-list {
        height: 135px !important;
    }
    
    .ms-thumbs-cont {
        left: 50px !important;
        width: 85px;
        height: 135px !important;
        vertical-align: top;
        top: 5px !important;
    }
    
    .ms-thumblist-bwd {
        display: block;
        background: #fff url(img/master-left.png) no-repeat center center;
        top: 10px;
        position: absolute;
        height: 70px;
        width: 42px;
        z-index: 99;
        padding: 0;
    }
    
    .ms-thumblist-fwd {
        display: block;
        background: #fff url(img/master-right.png) no-repeat center center;
        top: 10px;
        position: absolute;
        height: 70px;
        width: 42px;
        z-index: 99;
        left: 75%;
        padding: 0;
    }*/
    
    .client-frame {
        width: 25% !important;
    }
    
}


@media only screen and (max-width : 700px) {
    
   body{
	font-size: 14px;
   }

   body p,
   body li{
	font-size: 14px;
   }

	h1 {
		font-size: 38px; /*40px;*/
	}
	
	.menu a{
		font-size: 15px;
	}
	
    .testimonial-wrap {
        border: 1px solid #e0e0e0;
        padding: 30px 40px;
        margin: 0 0px 20px 20px;
        width: 90% !important;
    }
	
	.diff-title {
		font-size: 14px;
	}

	.diff-text p {
		font-size: 14px;
		line-height: 18px;
	}
    
}


@media only screen and (max-width : 420px) {
    
    .client-frame {
        width: 90% !important;
    }
    
}