/* -----------------------------------------------------------------------
    Responsive
-------------------------------------------------------------------------- */

@media only screen and (min-width: 1800px) {

    #slides li { height: 600px }

}

@media only screen and (min-width: 1600px) and (max-width: 1799px) {
	
	#slides li { height: 550px; }
	
}

@media only screen and (min-width: 1300px) and (max-width: 1599px) {
	
	#slides li { height: 500px; }
	
}

@media only screen and (min-width: 980px) and (max-width: 1299px) {
	
	#slides li { height: 450px; }
	
}

/* Tablet Portrait size to Tablet Landscape (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 979px) {
	
	body { font-size: 16px; line-height: 24px; }
	h1 { font-size: 28px; line-height: 32px; }
	h2 { font-size: 26px; line-height: 30px; }
	h3 { font-size: 24px; line-height: 28px; }
	h4 { font-size: 20px; line-height: 24px; }
	h5 { font-size: 14px; line-height: 18px; }
	h6 { font-size: 14px; line-height: 18px; }
	.kicker { font-size: 20px; line-height: 26px; }
    input[type="text"], input[type="email"], input[type="password"], select, textarea { width: 93%; }
	
    .container { width: 720px; }
	
	#slides li { height: 350px; }
	#hero-header .bx-controls-direction { top: 35%; }
	#hero-header .bx-prev { left: 25px; }
	#hero-header .bx-next { right: 25px; }
	
	#capabilities h2 { font-size: 22px; line-height: 28px; }
	#capabilities h3 { font-size: 16px; line-height: 22px; }
	
	#global-footer { padding-top: 25px; }
	#footer-contact, #footer-logos { width: 48%; margin-bottom: 15px; }
	#footer-contact li { margin-bottom: 5px; }
	#footer-copyright { width: 100%; }
	
	#back-to-top { right: 15px; bottom: 15px; }
	
}

@media only screen and (max-width: 979px) {
	
	.container { padding: 0; }
	
	#masthead-wrapper { position: relative; height: auto; }
	#masthead-wrapper.transparent, #masthead-wrapper.opaque { background: #002157 !important; overflow: hidden; }
	
	#logo { position: absolute; top: 0; left: 0; z-index: 1000; }
	
	#main-nav { position: relative; z-index: 100; width: 100%; padding: 14px 0 20px 0; }
    #menu-main-navigation { display: none; }
    #responsive-nav { display: block; width: 100%; }
    .slicknav_menu { position: relative; z-index: 100; text-transform: uppercase; float: right; }
	.slicknav_btn { position: relative; display: block; overflow: hidden; cursor: pointer; text-decoration:none; color: #fff; font-weight: 600; margin: 0; padding: 35px 0 0 0; line-height: 20px; letter-spacing: 1px; float: right; }
	.slicknav_btn.slicknav_collapsed { margin-bottom: 0; }
	.slicknav_menu { background: transparent; *zoom: 1; width: 100%; }
	.slicknav_menutxt, .slicknav_icon { display: block; float: left; }
	.slicknav_menutxt { color: #fff; font-size: 20px; line-height: 24px; }
	.slicknav_icon { float: left; margin: 4px 0 0 7px; }
	.slicknav_icon-bar { background-color: #fff; display: block; width: 1.4em; height: 0.12em; }
	.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar { margin-top: 0.31em }
	.slicknav_nav { clear: both; margin: 0; padding: 25px 0 0 0; width: 100%; border-bottom: 1px solid #344652; }
	.slicknav_nav, .slicknav_nav ul { list-style: none; overflow: hidden; }
	.slicknav_nav ul { padding: 0; margin: 0; list-style: none; }
	.slicknav_nav ul,
	.slicknav_nav li { display: block; margin: 0; border-top: 1px solid #002157; background: #7ca3dc; }
	.slicknav_nav .slicknav_arrow { font-size: 0.8em; margin: 0 0 0 0.4em; }
	.slicknav_nav .slicknav_item { display: block; cursor: pointer; padding: 10px 15px; }
	.slicknav_nav a { display: block; padding: 10px 15px; text-decoration: none; color: #fff; font-weight: 400; font-size: 17px; }
	.slicknav_nav .slicknav_item a { display: inline; padding:0; margin:0; }
	.slicknav_nav li:hover a,
	.slicknav_nav a:hover,
	.slicknav_nav .slicknav_arrow:hover,
	.slicknav_nav .slicknav_item:hover,
	.slicknav_nav li.current-menu-item a,
	.slicknav_nav li.current-menu-parent a { background: #1968b3; color:#fff; }
	.slicknav_nav .slicknav_txtnode { margin-left: 15px; }
	.slicknav_menu:before,
	.slicknav_menu:after { content: " "; display: table; }
	.slicknav_menu:after { clear: both }
	.slicknav_nav li.slicknav_open { border-bottom: none; }

}

@media only screen and (max-width: 767px) {

    .col-full,
    .col-half,
    .col-one-third,
    .col-two-third,
    .col-one-fourth,
    .col-three-fourth,
    .col-one-fifth,
    .col-two-fifth,
    .col-three-fifth,
    .col-four-fifth,
    .col-one-sixth,
    .col-five-sixth { width: 100%; }

    .col-full,
    .col-half,
    .col-one-third,
    .col-two-third,
    .col-three-fourth,
    .col-one-fourth,
    .col-one-fifth,
    .col-two-fifth,
    .col-three-fifth,
    .col-four-fifth,
    .col-one-sixth,
    .col-five-sixth { margin-right: 0; float: none; }
    
    .col-full,
    .col-half,
    .col-one-third,
    .col-two-third,
    .col-three-fourth,
    .col-one-fourth,
    .col-one-fifth,
    .col-two-fifth,
    .col-three-fifth,
    .col-four-fifth,
    .col-one-sixth,
    .col-five-sixth { margin-bottom: 40px !important; }
    
    .centered { text-align: left; }
    
    #main-content-wrapper { padding: 25px 0; }
    
    #sidebar-left { margin-bottom: 0 !important; }
    
    .home h1 { margin-bottom: 20px; }
    
    #capabilities { margin-top: 0; }
    #capabilities .col-one-third { width: 100%; margin: 0 0 20px 0 !important; }
    #capabilities #ground-engineering, #capabilities #slope-stabilisation { border-left: none; padding-left: 0; min-height: 1px; }
    
	.client { width: 48%; }
	.client.last { margin-right: 4%; }
	.client.responsive-last { margin-right: 0; }
	.clear { display: none }
	
	#global-footer { padding-top: 25px; }
	#footer-contact, #footer-logos { overflow: hidden; margin-bottom: 10px !important; }
	#footer-contact li { margin-bottom: 5px; }
	#footer-logos a { float: left; }
	#footer-copyright { width: 100%; }
    
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
	 
	body { font-size: 16px; line-height: 24px; }
	h1 { font-size: 30px; line-height: 34px; }
	h2 { font-size: 28px; line-height: 32px; }
	h3 { font-size: 24px; line-height: 28px; }
	h4 { font-size: 20px; line-height: 24px; }
	h5 { font-size: 18px; line-height: 22px; }
	h6 { font-size: 16px; line-height: 20px; }
	.kicker { font-size: 18px; line-height: 24px; margin-bottom: 15px; }
    .button { padding: 8px 25px; font-size: 16px; line-height: 24px;}
    input[type="text"], input[type="email"], input[type="password"], select, textarea { width: 95%; }
    
    .container { width: 440px; }
	
	#slides li { height: 300px; }
	#hero-header .bx-controls-direction { top: 45%; }
	#hero-header .bx-prev { left: 25px; }
	#hero-header .bx-next { right: 25px; }
	
    #capabilities h2 { font-size: 22px; line-height: 26px; }
	  
    #back-to-top { right: 12px; bottom: 12px; }
	
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {
	
	body { font-size: 15px; line-height: 23px; }
    h1 { font-size: 28px; line-height: 34px; }
	h2 { font-size: 26px; line-height: 30px; }
	h3 { font-size: 22px; line-height: 26px; }
	h4 { font-size: 18px; line-height: 22px; }
	h5 { font-size: 16px; line-height: 20px; }
	h6 { font-size: 14px; line-height: 18px; }
	.home h1 { font-size: 20px; line-height: 28px; }
    .kicker { font-size: 17px; line-height: 23px; }
    .button { padding: 6px 20px; font-size: 14px; line-height: 18px;}
    fieldset { padding: 15px; }
    input[type="text"], input[type="email"], input[type="password"], select, textarea { width: 91%; }
    
    .container { width: 280px; }
	
	#slides li { height: 180px; }
	#hero-header .bx-controls-direction { top: 45%; }
	#hero-header .bx-prev { left: 15px; }
	#hero-header .bx-next { right: 15px; }
	
	#logo { width: 55%; }
	
	.slicknav_btn { padding-top: 13px; }
	.slicknav_menutxt { display: none; }
	
    #capabilities h2 { font-size: 18px; line-height: 22px; }
	
	.client { height: 120px; }
	
	#contact-recaptcha { overflow: hidden; width: 160px; border-right: 1px solid #d3d3d3; border-top-right-radius: 4px; border-bottom-right-radius: 4px; height: 76px; padding-top: 0; }
    
	#footer-logos a { width: 48%; }
	#footer-logos a:first-child { margin-right: 4%; }
	
    #back-to-top { right: 5px; bottom: 7px; }

}

.visible-phone { display: none !important; }
.visible-tablet { display: none !important; }
.hidden-desktop { display: none !important; }
.visible-desktop { display: inherit !important; }

@media (min-width: 768px) and (max-width: 979px) {
  .hidden-desktop { display: inherit !important; }
  .visible-desktop { display: none !important ; }
  .visible-tablet { display: inherit !important; }
  .hidden-tablet { display: none !important; }
}

@media (max-width: 767px) {
  .hidden-desktop { display: inherit !important; }
  .visible-desktop { display: none !important; }
  .visible-phone { display: inherit !important; }
  .hidden-phone { display: none !important; }
}