/*
Theme Name: Dynamo 2017 Theme
Theme URI: http://dynamo.ie.ie/
Author: OPEN DESIGN & DIGITAL
Author URI: http://www.weareopen.ie
Template: wp-forge
Version: 4.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html


Start adding your theme specific styles below.
*/




/* ------------ FONTS -------------- */


/* @import must be at top of file, otherwise CSS will not work */
@import url("//hello.myfonts.net/count/33349c");
@import url("//hello.myfonts.net/count/3379e1");
  
@font-face {font-family: 'Gilroy-SemiBold';src: url('fonts/33349C_0_0.eot');src: url('fonts/33349C_0_0.eot?#iefix') format('embedded-opentype'),url('fonts/33349C_0_0.woff2') format('woff2'),url('fonts/33349C_0_0.woff') format('woff'),url('fonts/33349C_0_0.ttf') format('truetype');}
 
  
@font-face {font-family: 'Gilroy-Regular';src: url('fonts/33349C_1_0.eot');src: url('fonts/33349C_1_0.eot?#iefix') format('embedded-opentype'),url('fonts/33349C_1_0.woff2') format('woff2'),url('fonts/33349C_1_0.woff') format('woff'),url('fonts/33349C_1_0.ttf') format('truetype');}

@font-face {font-family: 'Gilroy-UltraLight';src: url('fonts/3379E1_0_0.eot');src: url('fonts/3379E1_0_0.eot?#iefix') format('embedded-opentype'),url('fonts/3379E1_0_0.woff2') format('woff2'),url('fonts/3379E1_0_0.woff') format('woff'),url('fonts/3379E1_0_0.ttf') format('truetype');}
 
  
@font-face {font-family: 'Gilroy-Light';src: url('fonts/3379E1_1_0.eot');src: url('fonts/3379E1_1_0.eot?#iefix') format('embedded-opentype'),url('fonts/3379E1_1_0.woff2') format('woff2'),url('fonts/3379E1_1_0.woff') format('woff'),url('fonts/3379E1_1_0.ttf') format('truetype');}
 
  
@font-face {font-family: 'Gilroy-Bold';src: url('fonts/3379E1_2_0.eot');src: url('fonts/3379E1_2_0.eot?#iefix') format('embedded-opentype'),url('fonts/3379E1_2_0.woff2') format('woff2'),url('fonts/3379E1_2_0.woff') format('woff'),url('fonts/3379E1_2_0.ttf') format('truetype');}

/* ------------ SET FIRST -------------- */



body {background-color: #222222; -webkit-font-smoothing: antialiased; zoom: 1;}
h1, h2, h3, h4, h5, h6 {margin: 0px; padding: 0px;}
ul, ol, dl {margin: 0px; padding: 0px; list-style: none;}

.max-width {max-width: 1200px; margin: 0 auto; position: relative;} 




/* ------------ colors -------------- */





/* ------------ LINKS -------------- */


a {
	font-family: Gilroy-Regular;
	color: #ffffff; 
	text-decoration: none;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
a:link {color: #ffffff; text-decoration: none !important; -webkit-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;}
a:visited {color: #ffffff; text-decoration: none;}
a:hover {color: #cccccc; text-decoration: none;}
a:focus  {color: #ffffff; text-decoration: none;}
a:active  {color: #ffffff; text-decoration: none;}
a[href^=tel] {color: #ffffff; text-decoration: none;}
.menu .active > a:hover {color: #ffffff !important;}



/* ------------ TEXT -------------- */


h1 {
	font-family: Gilroy-SemiBold, sans;
	font-style: normal;
	font-size: 48px;
	line-height: 51px;
	color: #ffffff;
}
	
h2 {
	font-family: Gilroy-Regular, sans;
	font-style: normal;
	font-size: 48px;
	line-height: 56px;
	color: #ffffff;
}

h3 {
	font-family: Gilroy-Regular, sans;
	font-style: normal;
	font-size: 36px;
	line-height: 42px;
	color: #ffffff;
}

h4 {
	font-family: Gilroy-Regular, sans;
	font-style: normal;
	font-size: 18px;
	line-height: 42px;
	color: #ffffff;
}

p {
	font-family: Gilroy-Regular, sans;
	font-size: 17px;
	color: #ffffff;
	line-height: 23px;
	margin: 0;
	padding: 0 0 20px 0;
}

p a {color: #666666;}
p a:link {color: #666666;}
p a:visited {color: #666666;}
p a:hover {color: #cccccc;}
p a:focus {color: #cccccc;}
p a:active {color: #666666;}

.cs-title {
	font-family: Gilroy-SemiBold, sans;
	font-style: normal;
	font-size: 45px;
	line-height: 48px;
	color: #ffffff;
	padding: 0 0 30px 0;
}
.intro-para {
	font-family: Gilroy-SemiBold, sans;
	font-size: 30px;
	color: #ffffff;
	line-height: 36px;
	margin: 0;
	padding: 0 0 30px 0;
}
.body-para {
	font-family: Gilroy-Regular, sans;
	font-size: 25px;
	color: #ffffff;
	line-height: 30px;
	margin: 0;
	padding: 0 0 30px 0;
}
.work-intro {
	font-family: Gilroy-SemiBold, sans;
	font-size: 25px;
	color: #ffffff;
	line-height: 30px;
	margin: 0;
	padding: 0;
}
.work-title {
	font-family: Gilroy-SemiBold, sans;
	font-size: 38px;
	color: #ffffff;
	line-height: 42px;
	margin: 0;
	padding: 0;
}
.work-link {
	font-family: Gilroy-Regular, sans;
	font-size: 28px;
	color: #ffffff;
	line-height: 35px;
	margin: 0;
	padding:0;
}
.mobile-para {
	font-family: Gilroy-SemiBold, sans;
	font-size: 30px;
	color: #ffffff;
	line-height: 36px;
	margin: 0;
	padding: 0 0 30px 0;
    display: none;
}


/* ------------ NAV -------------- */



.menu-main-container {
}

ul#menu-main {
	list-style: none;
	width: 100%;
	position: relative;
	top: 150px;
	left: 60px; 
	z-index: 999999;
}

ul#menu-main li {
	display: block; 
	-webkit-font-smoothing: antialiased;
	font-size: 28px;
	line-height: 41px;
	width: 180px;
	font-family: 'EksellDisplayWeb-Large', Georgia, serif;
	color: #ffffff;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
ul#menu-main a {
	display: block; 
}

ul#menu-main a:link {color: #d1d3d4;}
ul#menu-main a:visited {color: #d1d3d4;}
ul#menu-main a:hover {color: #ffffff;}
ul#menu-main a:focus {color: #ffffff;}
ul#menu-main a:active {color: #d1d3d4;}

.menu > li > a {padding: 0;}
.menu .active > a {background: none;}

.social-menu {
	position: absolute;
	bottom: 40px;
	left: 60px; 
	z-index: 999999;
	overflow: hidden;
	width: 280px;
}
ul.social-icons {
	list-style: none;
}
ul.social-icons li {
	display: inline-block;
	width: auto;
    margin-right: 10px;
}
ul.social-icons li img {
	width: auto;
	height: 25px;
        transition-property: opacity, filter;
    transition-duration: 0.15s;
    transition-timing-function: linear;
}

ul.social-icons li img:hover {
    opacity:0.7;
}

/*
.modal-menu ul.social-icons li img {
    height:24px;
}
*/
/* ------------ HEADER -------------- */

.home-header {
	overflow: hidden;
}

#header {
	position: absolute;
	z-index: 9999; 
	left: 0; 
	top: 0;
	width: 100%;
	margin: 0;
	padding: 0;
}
.dynamo-logo {
	position: fixed; 
	z-index: 99999;
	left: 60px; 
	top: 50px;
	width: 130px;
	height: auto;
	transition: all 0.8s ease;
	fill: #8cc63f;
}
.page-template-blog-template .dynamo-logo {fill: #ffffff;}


.hamburger {
    padding: 0px 0px !important;
    position: fixed;
	z-index: 999999;
    right:0;
    top: 55px;
    left: 230px;
}
.hamburger-box {
	width: 30px !important;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    height: 3px !important;
    background-color: #999999 !important;
	width: 30px !important;
}

/* Mobile Hamburger */
.hamburger-mob {
    padding: 0px 0px !important;
    position: fixed;
	z-index: 999999;
    right:0;
    top: 55px;
    left: 230px;
}
.hamburger-mob-box {
	width: 30px !important;
}
.hamburger-mob-inner, .hamburger-mob-inner::before, .hamburger-mob-inner::after {
    height: 3px !important;
    background-color: #999999 !important;
	width: 30px !important;
}

a.button:hover, a.button:focus, .button:hover, .button:focus, button:hover, button:focus {
	background-color: transparent !important;
}
button:focus {
    outline:none;
}
.modal-menu {
	position: fixed;
	z-index: 9999;
	top:0px; 
	bottom: 0px; 
	left: 0px; 
	background: #1a1a1a; 
	width: 0%;
	opacity: 0; 
    overflow-x: hidden;
    overflow-y: auto;
}

.mobile-menu {
	position: fixed;
	z-index: 9999;
	top:0px; 
	bottom: 0px; 
	left: 0px; 
	background: #1a1a1a; 
	width: 100%;
	opacity: 0; 
    overflow-x: hidden;
    overflow-y: auto;
    height:0;
}
.mob-container {
    position:fixed;
    z-index: 9999;
	top:0px; 
	bottom: 0px; 
	left: 0px; 
	background: #1a1a1a; 
	width: 100%;
	opacity: 0; 
    overflow-x: hidden;
    overflow-y: auto;
    height:0;
}
.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99;
    left: 0;
}
.video-holder {
    position:relative;
    display: block;
}
/* ------------ SLIDER -------------- */


* {box-sizing: border-box;}

.quotes,
.slider {
	margin: 0; 
	padding: 0;
	background: transparent !important;
} 
.quotes{padding-top:40px;}
.home-slider {
	width: 100%;
	height: 100vh;
	overflow: hidden;
    position: relative;
}
.home-slider video-background{
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);   
    object-fit: cover;
}
.slick-dotted.slick-slider {
    margin-bottom: 0px !important;
}
.slick-vertical .slick-slide {
	display: block;
	width: 100%;
	height: 100vh !important;
    border: 0px !important;
    overflow: hidden;
}
.slick-vertical .slick-inner {
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    position: relative;
}
.slick-prev:before, .slick-next:before {
    color: #ffffff;
}
.home-slider .slick-dots {
    z-index: 999998;
    width: 20px !important;
    right: 15px !important;
    list-style: none;
    padding: 0;
    outline: none;
    position: absolute;
    top: 50%;
    margin-top: -100px !important;
    bottom: auto !important;
}
.home-slider .slick-dots li {
    position: relative;
    display: block !important;
    width: 12px;
    height: 12px;
    margin: 20px 0 !important;
    padding: 0;
    cursor: pointer;
}
.home-slider .slick-dots li button {
    text-indent: -999999px;
    height: 12px !important;
    width: 12px !important;
    border-radius: 0 !important;
    padding: 0;
    border: 1px solid #ffffff;
    background: #ffffff;
    outline: none;
}
.home-slider .slick-active button {
    outline: none;
	background: #8cc63f !important;
    border: 1px solid #8cc63f !important;
}
.home-slider .slick-dots li button:hover {
    outline: none;
	background: #8cc63f !important;
    border: 1px solid #8cc63f !important;
}

.home-slider .slider-text {
	position: absolute;
	bottom: 60px;
	left: 60px;
	opacity: 0;
	z-index: 999;	
}
.home-slider .slider-title {
	font-size: 55px;
}
.home-slider .slider-link {
	font-size: 40px;
}
.home-slider .slider-link:after {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(images/link-arrow-home.png) no-repeat center center; 
	background-size: 20px;
	margin: 0 0 0 8px;
	position: relative;
	top: 0px;
}


.more-wrapper {
	background: #222222;
	padding: 100px 50px 100px 50px;
	position: relative;
}
.more-slider {
	width: 100%;
}
.more-slider .slick-slide {
}
.more-inner {
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    position: relative;
}
.more-inner:after {
	content: ' ';
	display: block;
	width: 100%;
	position: absolute;
	z-index: 999;
	top:0;
	bottom: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0);
}
.more-inner:hover:after {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.8);
}
.more-img {
	position: relative;
	width: 100%;
	height: auto;
	z-index: 99;
	background-color: aqua;
}
.more-text {
	position: absolute;
	z-index: 9999;
	bottom: 10px;
	left: 35px;
	opacity: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
    max-width: 350px;
}
.more-inner:hover .more-text {
	opacity: 1;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
.more-slider .slider-title {
	font-size: 40px;
}
.more-slider .slider-link {
	font-size: 30px;
    line-height: 35px;
}
.more-slider .slider-link:after {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(images/link-arrow.png) no-repeat center center; 
	background-size: 20px;
	margin: 0 0 0 8px;
	position: relative;
	top: 0px;
}
.more-title {
	position: absolute;
	top: 60px;
	left: 65px;
	font-family: Gilroy-Regular, sans;
	font-size: 30px;
	color: #ffffff;
	margin: 0;
	padding: 0;
}
.more-block {
	padding: 40px;
	text-align: right;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
.more-block:hover {
	background-color: #b16fe8;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}

.show-more {
	display: block;
	font-family: Gilroy-SemiBold, sans;
	font-size: 20px;
	color: #ffffff;
	line-height: 26px;
	margin: 0;
	padding: 0;
}
.show-more:before {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(images/plus.png) no-repeat center center; 
	background-size: 20px;
	position: relative;
	top: 4px;
	right: 8px;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
.more-block:hover .show-more:before {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(images/plus-white.png) no-repeat center center; 
	background-size: 20px;
	position: relative;
	top: 4px;
	right: 8px;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
}

.scroll-block{
	padding: 40px;
	text-align: center;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
.scroll-block:hover {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: #b16fe8;
}
.page-template-work-template .scroll-block:hover {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: #8cc63f;
}
.page-template-work-template svg {
    fill:#8cc63f;
    -webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}

.page-template-work-template .scroll-block:hover > svg {
    fill:#ffffff !important;
}


.to-top {
	width: 28px;
	height: 28px;
	content: " ";
	display: block;
	margin: 0 auto;
	position: relative;
	top: 6px;
	background: url(images/scroll-up.png) no-repeat center center; 
	background-size: 20px;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
.to-top a {
	display: block;
}
.scroll-block:hover .to-top {
	width: 28px;
	height: 28px;
	content: " ";
	display: block;
	background: url(images/scroll-up-white.png) no-repeat center center; 
	background-size: 20px;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}

.ft-pad {
	margin-right: 15px;
}
.slider-button {
	display: block;
	position: absolute;
	top: 50vh;
	left: 50%;
	margin-left: -35px;
	margin-top: -35px;
	width: 70px;
	height: 70px;
	background: url(images/play.png) no-repeat center center; 
	background-size: cover;
	z-index: 999;	
}
.video-block {
	position: relative;
}
.video-block.emb:after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    height: 100%;
   	background: rgba(0,0,0,0.70);
    width: 100%;
}
.video-fade {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	background: rgba(0,0,0,0.70);
	z-index: 99;	
}
.video-scale {
	position: relative;
	width: 100%;
	height: auto;
    display: block;
}

.video-background {
  position: absolute;
  overflow: hidden;
  top: 50%;
  left: 50%;
  z-index: 1;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
   max-width: none !important;
}




/* ------------ PAGE -------------- */ 



.header-area {
	position: relative;
	height: 100vh;
	background-position: center center;
    background-size: cover;
}
.header-area-blog {
	position: relative;
}
.header-img {
	width: 100%;
	height: auto;
	position: relative;
}
.header-text-area-wrapper {
	position: relative;
	margin-top: -150px;
	padding-top: 60px;
	z-index: 0;
}
.header-text-area-colour {
	position: absolute;
	top: -120px;
	z-index: 99;
	top: 0;
	bottom: 0;
	width: 100%;
	opacity: 0.7;
}
.header-text-area {
	position: relative;
	z-index: 9999;
    max-width: 730px;
}
.pad-left {
	padding: 0 0 0 60px;
}
.pad-right {
	padding: 0 60px 0 40px;
}
.side-img {
	position: relative;
	z-index: 9999;
	width: auto;
	height: auto;
	padding: 0 0 0 5%;
}
.big-image-block img {
	width: 100%;
	height: auto;
}
.parallax-img {
    margin-left: -2%;
    margin-top: -2%;
    width: 104%;
    max-width: none;
    height: auto;
}
.parallax-image-block {
	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
}
#scene {
	margin-bottom: -40px !important;
}

#scene li {
	width: 100% !important;
}
.parallax-background {
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center center;
	position: relative;
	overflow: hidden;
	height: auto;
	padding-bottom: 56.25%; /* 16:9 */
}
.stellar-object {
	position: absolute !important;
	z-index: 999;
	width: 100%;
	height: auto;
}
.quotes {
    position: relative;
}
.quotes button.slick-prev, .quotes button.slick-next {
    display: none !important;
}
.work-intro-block {
  	height: 0;
  	padding-bottom: 35%;
  	position: relative;
		/*overflow: hidden;*/
}
.work-intro-wrapper {
	position: absolute;
	position: relative;
	top: 115px;
	left: 45px;
	z-index: 99;
	padding-right: 30px;
    max-width:600px;
}
.quote-wrapper {
	position: relative;
	/*top: 115px;*/
	padding-top: 100px;
	left: 45px;
	z-index: 99;
	padding-right: 30px;
   max-width:600px;
}
.quote-container {
    position: relative;
}
.quote-container h1 {
    font-family: Gilroy-Regular, sans;
    padding-bottom:5px;
    font-size: 40px;
    line-height: 45px;
}
.quote-container h3 {
    font-size: 28px;
    line-height: 33px;
    font-family: Gilroy-Light, sans;
}
.quote-credit {
    position: relative;
    margin-top:35px;
}
.quote-credit h2, h2.quote-by {
    font-size: 35px;
    line-height: 40px;
}
.quotes .quote-credit h2 {
    font-family: Gilroy-Bold, sans;
    font-size:30px;
    line-height:35px;
}

.quote-credit h4, h4.author {
    font-size: 26px;
    line-height: 30px;
}
h4.author {
    padding-bottom:40px;
}
.quotes .quote-credit h4 {
    font-family: Gilroy-Bold, sans;
    font-size:30px;
    line-height:35px;
}

.work-image-block {
  	height: 0;
  	padding-left: 0 !important;
  	padding-right: 0 !important;
  	padding-bottom: 35%;
  	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.work-image-block:after {
	content: ' ';
	display: block;
	position: absolute;
	z-index: 999;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0);
}
.work-image-block.coming:after {
	content: ' ';
	display: block;
	position: absolute;
	z-index: 999;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.8);
}
.work-image-block.coming:hover:after {
	content: ' ';
	display: block;
	position: absolute;
	z-index: 999;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.8);
}
.work-image-block:hover:after {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.8);
}
.work-text {
	position: absolute;
	bottom: 40px;
	left: 60px;
	z-index: 9998;
	opacity: 0;
    max-width:650px;
}
.work-image-block:hover .work-text {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	opacity: 1;
}
.work-link:after {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(images/link-arrow.png) no-repeat center center; 
	background-size: 20px;
	margin: 0 0 0 8px;
	position: relative;
	top: 0px;
}
.blog-intro-block {
	height: 560px;
	padding-left: 60px;
}
.blog-intro {
	font-family: Gilroy-SemiBold, sans;
	font-style: normal;
	font-size: 80px;
	line-height: 80px;
	color: #ffffff;
	padding: 200px 0 0 0;
}
.blog-image-block {
  	height: 0;
  	padding-left: 0 !important;
  	padding-right: 0 !important;
  	padding-bottom: 35%;
  	position: relative;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.blog-image-block:after {
	content: ' ';
	display: block;
	position: absolute;
	z-index: 8;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.5);
}
.blog-image-block:hover:after {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.8);
}
.blog-colour-block {
	position: absolute;
	z-index: 9;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.blog-colour-block:after {
	content: ' ';
	display: block;
	position: absolute;
	z-index: 8;
	top:0;
	left: 0;
	bottom: 0;
	right: 0;
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.0);
}
.blog-colour-block:hover:after {
	-webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
	background-color: rgba(33,33,33,0.3);
}

.blog-article-text {
	position: absolute;
	bottom: 20px;
	left: 60px;
	z-index: 99;
}
.blog-link:after {
	content: " ";
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(images/link-arrow.png) no-repeat center center; 
	background-size: 20px;
	margin: 0 0 0 8px;
	position: relative;
	top: 0px;
}
.blog-article-title {
	font-family: Gilroy-SemiBold, sans;
	font-style: normal;
	font-size: 50px;
	line-height: 50px;
	color: #ffffff;
	position: absolute;
	top: 40px;
	left: 60px;
	z-index: 99;
    max-width: 630px;
}
.blog-article-sub-head {
	font-family: Gilroy-SemiBold, sans;
	font-style: normal;
	font-size: 35px;
	line-height: 40px;
	padding: 0;
	color: #ffffff;
}
.post-text-area-wrapper {
	padding-top: 60px;
}
.post-text-area {
	padding-left: 60px;
	padding-top: 60px;
}
.post-title {
	position: absolute;
	font-family: Gilroy-SemiBold, sans;
    font-style: normal;
    font-size: 60px;
    line-height: 60px;
    color: #ffffff;
	top: 50%;
	left: 60px;
	margin-top: -50px;
	max-width: 40%;
}


/* ------------ FOOTER -------------- */



#footer {
	padding:0 60px;
	height: 300px;
}
.footer-inner {
	position: relative;
}
hr {
	max-width: none;
	width: 100%;
}
#footer p {
	position: absolute;
	left: 0px;
	top: 35px;
	color: #ffffff;
	font-family: Gilroy-Regular, sans;
	font-size: 17px;
}
ul.foot-nav {
	position: absolute;
    right: 320px;
    top: 33px
}
ul.foot-nav li {
	display: inline-block;
	color: #ffffff;
	font-family: Gilroy-Regular, sans;
	font-size: 17px;
    
}
ul.foot-nav li.social-f {
    margin-right:10px;
}

ul.foot-nav li img {
    width: auto;
    height: 25px;
    opacity:1;
    -webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
ul.foot-nav li img:hover {
    opacity:0.7;
}
.mobile-foot-menu {
    display: inline-block;
    width: 170px;
    position: absolute;
    right: 125px;
    top: 31px;
}
.dynamo-logo-foot {
	position: absolute;
	right: 0px;
	top: 30px;
	width: 100px;
	height: auto;
}
.mobile-foot-menu ul.social-icons li img {
    width: auto;
    height: 20px;
    margin-top: -6px;
}

/* ----------- Load Screen ----------- */
div#load_screen{
    background:  #222222; 
    opacity: 1;
    position: fixed;
    z-index:9999999999999999999;
    top: 0px;
    width: 100%;
    height: 100vh;
    -webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}

div#load_screen > div#loading{
  top:50%;
  left: 50%;
  transform: translate3d(-50%,-50%, 0);
  position: absolute;
  z-index:9999999999999
}


.loader {
  width: 70px;
  height: 70px;

  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-top: 3px solid #8cc63f;
  border-left: 3px solid rgba(0, 0, 0, 0.1);
  border-bottom: 3px solid rgba(0, 0, 0, 0.1);
  border-right: 3px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  margin: auto;
  -webkit-animation: loader 1.5s linear infinite;
  animation: loader 1.5s linear infinite;
}
@-webkit-keyframes loader {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes loader {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}




/* ------------ VARIOUS ITEMS -------------- */	



.no-pad {padding: 0px !important;}
.left {float: left;}
.clear {clear: both;}
.align-centre {text-align: center;}
.hide {display: none;}



/* Brian Added Styles */
.about-first {
/*    margin-top:100px;*/
}
.about-social-menu {
    padding:0 0 0 80px;
}
.c-grid {
    padding:.9375rem;
}
.c-grid img {
    object-fit: cover; 
    width:100%;
    max-height:560px !important;
}
.page-template-about-template .header-text-area, .page-template-contact-template .header-text-area {
    z-index:1;
    padding-top:30px;
}
.page-template-about-template .header-text-area .cs-title, .page-template-contact-template .header-text-area .cs-title {
    color:#fff !important;
}
.quotes,
.slider {
    height:auto;
    position: relative;
    display: inline-block;
}
.row.about {
    display: block;
    margin:0 45px 60px;
}
.about .slick-prev, .about .slick-next {
    display: none !important;
}
.clients {
    background:#b6b6b6;
}

.row.about.clients {
    display: block;
    padding:80px 60px;
}
.row.full-width {
    max-width: 100% !important;
    padding:80px 60px 60px;
}
.row.full-width.case-up {
      padding:0px 0px 0px;  
} 
.client-copy {
    padding:0px;
}
.c-logos {
    width:20%;
    margin-bottom:1.875rem;
}
.energy {
    padding:80px 0.9375em 100px;
}
img.about-full {
    object-fit: cover; 
    width:100%;
    max-height:600px !important;
}
.about-scroll .scroll-block:hover {
    background-color:#e1801e;
}
.about-scroll .to-top {
    background: url(images/about-scroll-up.png) no-repeat center center;
    background-size: 20px;
    width: 28px;
    height: 28px;
    content: " ";
}
.contact-details, .about-social-menu  {
    float: right;
    padding-right:60px;
    margin-top:25px;
}

.contact-details h4, .mobile-find h4 {
    color: #f92098;
}
.about-social-menu h4 {
    color:#e99326;
}
.contact-details p a {
    color:#fff;
    opacity:1;
}
.contact-details p a:hover {
    opacity:0.7;
}
.map-container {
    height:825px;
    position: relative;
    display: block;
    margin:60px 20px;
}
#map {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
/*
.c-logos img {
    -webkit-filter: grayscale(100%) contrast(1);
    filter: grayscale(100%) contrast(1);
    opacity: 0.7;
    -webkit-transition: all 0.3s ease-in-out; 
	-moz-transition: all 0.3s ease-in-out; 
	-o-transition: all 0.3s ease-in-out; 
	transition: all 0.3s ease-in-out;
}
.c-logos img:hover {
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    opacity: 1;
}
*/
/*
.im-gallery {
    margin-bottom:30px;
}
*/
p.standard {
    display: block;
}
p.devices {
    display: none;
}
.more-wrapper .slick-prev {
    left: 15px;
}
.more-wrapper .slick-next {
    right: 15px;
}
.page-template-contact-template .scroll-block:hover {
        background-color: #f92098;
}
.page-template-contact-template .to-top {
    background: url(images/contact-scroll-up.png) no-repeat center center;
    background-size: 20px;
    width: 28px;
    height: 28px;
    content: " ";
}
.custom-arrow {
    width:28px;
}
/*
.case-up .scroll-block:hover {
    background-color: #363438;
}
*/
.space {
    height:85px;
}
.client-copy h1.cs-title{
    color:#1a1a1a;
}
.client-copy p.intro-para {
     color:#1a1a1a;
}
.slick-prev:before {
    content: " ";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(images/arrow-prev.svg) no-repeat center center;
    background-size: 20px;
    margin: 0 0 0 8px;
    position: relative;
    top: 0px;
}
.slick-next:before {
    content: " ";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(images/arrow-next.svg) no-repeat center center;
    background-size: 20px;
    margin: 0 0 0 8px;
    position: relative;
    top: 0px;    
}
.page-template-contact-template .intro-para, .page-template-contact-template .mobile-para  {
        padding: 0px 0 30px 0;
}
img.blog-body-image {
    padding-bottom:40px;
}
.single svg, .page-template-blog-template svg{
    fill:#ffffff;
}


.client-area {
    padding:0;
}
.hamburger-mob {
    display:none; 
}
.lazy {
    display: block;
}
:focus {
    outline:none;
}
.video-modal {
    position: fixed;
    width: 100%;
    height: 0%;
    top: 0;
    left: 0;
    right: 0;
    background-color: rgba(0,0,0,0.90);
    z-index: 99999999;
    opacity: 0;
    overflow: hidden;
}
.modal-container {
    display: block;
    overflow: hidden;
    background: transparent;
    margin: 10% auto;
}
span.close-modal a {
    background: url(images/close.svg) no-repeat center center;
    background-size: 100%;
    text-indent: -999999px;
    width: 30px;
    height: 30px;
    display: block;
    float: right;
    opacity: 0.7;
}
a.trigger-modal {
    display: none;
}
#bArrow {
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(deg);
    transform: rotate(-90deg);
}
.mobile-find {
    display: none;
}
.mobile-find h4 a {
    color:#8f174a;
    position: relative;
}
.mobile-find h4 a:after {
    content:'';
    position: absolute;
    background-image:url('images/arrow-next.svg');
    background-repeat:no-repeat;
    background-size: 18px;
    width:18px;
    height:18px;
    display: inline-block;
    margin-left: 10px;
    top:0px;
}
.page-template-about-template button.slick-prev, .page-template-about-template button.slick-next {
    display: none !important;
}
.smartslider-block {
    position: relative;
    display: block;
    height:auto;
}
.project-back {
    position: fixed;
    display: block;
    height: 0px;
    width: 40px;
    top: 100px;
    left: 60px;
    z-index: 999;
}
a.single-arrow {
    display: block;
}
    .lazy {
/*
        background-image: url('images/preload-lazy.svg');
        background-repeat: no-repeat;
        background-position: 50% 10%;
        background-size:60px;
*/
    }
.quotes .slick-list {
    overflow: visible;
}
.quotes .slick-slide {
    /*height:auto;*/
}
.header-text-area-wrapper .header-text-area {
    float: left !important;
}
.quote-block {
    z-index: 9999;
    position: relative;
}
.quote-block.pad-right {
    padding: 0 20px 0 40px;
}
.testimonial-container {
    position: relative;
    display: inline-block;
    height:100%;
    width:100%;
}
.testimonial-container .quote-container {
    height: 100%;
    display: block;
    padding: 82px 0px 0px;
}
.fr-box {
        background-color: rgba(0,0,0,0.90);
}
.fr-window-skin-fresco .fr-content-background {
        background: #1a1a1a !important;
}
.fr-window-skin-fresco .fr-close-icon {
    
}
.testimonial-container .quote-container {
    max-width:420px;
}
.quote-container .intro-para h1 {
    font-size:26px;
    font-family: Gilroy-Light, sans;
    line-height: 30px;
    padding-bottom:30px;
}
.quotes .quote-container .intro-para h1 {
    font-size:45px;
    line-height:50px;
}


h2.quote-by, .distinctions h2 {
    font-size:26px;
    font-family: Gilroy-SemiBold, sans;
}
.quote-container .intro-para {
    padding:0px;
}
.distinctions h2 {
    line-height:30px;
    padding-bottom:5px;
}

.distinctions ul li {
    font-size:25px;
    font-family: Gilroy-Regular, sans;
    list-style-position: inside;
    text-indent: -1em;
    padding-left: 1em;
    line-height:1.2;
    padding-bottom: 5px;
}
.distinctions ul li:before {
    content:'>';
    display: block;
    float:left;
    width:15px;
    margin-right:10px;
    
}
/*
.distinctions {
    padding-top:40px;
}
*/

.figures {
    padding-top:75px;
}

.quote-container .intro-para .figures h1 {
    font-size:100px;
    font-family: Gilroy-Bold, sans;
}
.quote-container .intro-para .figures h1.h2 {
    font-size:80px;
}
.quote-container .intro-para .figures h1.h3 {
    font-size:60px;
}
.quote-container .intro-para .figures h1.h4 {
    font-size:40px;
}
.quote-container .intro-para .figures h1.h5 {
    font-size:30px;
}
.quote-container .intro-para .figures h1.h6 {
    font-size:20px;
}
.figures p {
    font-size:26px;
    font-family: Gilroy-UltraLight, sans;
    line-height: 30px;
}
.figures span {
    font-size:18px;
    font-family: Gilroy-Regular, sans;
}

.mobile-video-container.lazy {
    display: none !important;
}
svg.arrow-work {
    width:30px;
}
svg.arrow-work:hover {
    opacity:0.7;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.distinctions a{
    color:inherit;
    opacity:1;
    font-weight:bold;
}
.distinctions a:hover {
    opacity:0.7;
}

.video-block.emb {
    background-size:cover;
}
.video-block a.slider-button {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
}
.fr-caption {
    float:right;
    font-family: Gilroy-Regular, sans;
    font-size:16px;
}
h1.post-title.mobile {
    display: none;
}
.awards-container {
    padding-top:20px;
}
img.award-logo {
    margin-right: 22px;
}
ul.award li {
    display: inline-block;
    list-style-type: none;
}
.awards-container {
    padding-top: 40px;
}
.c-logos.column:last-child:not(:first-child),  .c-logos.columns:last-child:not(:first-child) {
    float: left;
}
.c-logos .slick-track {
    display: inline-block;
}
/*
.work-image-block.coming {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}
*/
/*
.work-image-block.coming:hover {
       -webkit-filter: grayscale(0%);
    filter: grayscale(0%); 
}
*/
.coming .work-link:after {
    display: none;
}
a.slide-thumb {
    display: inline-block;
    width:auto;
    height:auto;
}
.single-case_study .quote-block.pad-right {
       padding: 0 20px 80px 40px; 
}
/*
.home-slider .slider-text {
    display: none;
}
.home-slider .slider-text.show-me {
    display:block;
}
*/

/* ================================================
 *
 * Netbooks 
 *
 * ==============================================*/

@media only screen and (max-width: 1154px) {
    
   
    .more-text {
        max-width:300px;
    }
    .more-slider .slider-title {
        font-size: 34px;
        line-height: 38px;
    }
    .more-slider .slider-link {
        font-size: 26px;
        line-height: 30px;
    }
    .quotes .quote-container .intro-para h1 {
        font-size: 40px;
        line-height: 45px;
    }
    .quote-wrapper {
        max-width:500px;
    }

}






/* ================================================
 *
 * iPad Landscape Stylings
 *
 * ==============================================*/


@media only screen and (max-width: 64.062em) { 
    .single-case_study .header-text-area-wrapper .large-6.pad-left {
        width:50%;
        padding: 0 0 0 20px;
    }
    .work-intro-wrapper{
        left: 5px; 
    }
    #header .dynamo-logo {
        left: 20px;
    }
    .work-text {
        max-width: 400px;
        left:20px;
    }
    .work-title {
        padding-bottom: 20px;
    }
    .hamburger {
        width: 500px;
        left:0px;
    }
    .page-template-about-template .medium-8 {
        width:60%;
    }
    .page-template-about-template .pad-left {
        padding: 30px 0 0 20px;
    }
    .page-template-about-template .large-6.pad-left.dev {
        width: 40%;
    }
    .row.about {
        margin: 0 20px 60px;
    }
    .page-template-about-template .dev-grid .medium-8 {
        width: 66.66667%;
    }
    .about .large-6.right.lower {
        width:70%;
    }
    .row.full-width {
        padding: 80px 20px 60px;
    }
    .large-6.client-copy {
        width:70%;
    }
    .client-area {
        padding-bottom:20px;
    }
    .energy {
        padding: 80px 0em 100px;
    }
    .large-6.energy {
        width:70%;
    }
    .page-template-contact-template .header-text-area.pad-left {
        padding:30px 0 0 20px;
    }
    .page-template-contact-template .large-5.header-text-area {
        width:55%;
    }
    .page-template-contact-template .large-6.dev {
        width:45%;
    }
    .map-container {
        margin: 20px 0px;
        height: 500px;
    }
    .more-wrapper .slick-next {
        right: 20px;
    }
    .scroll-block {
        padding: 20px;
    }
    .more-wrapper {
        padding: 100px 50px 50px 50px;
    }
    .pad-right.dev-i {
        float:none !important;
        padding:0 60px 60px 0px;
    }
    .blog-article-title {
        font-size: 40px;
    }
    .blog-article-sub-head {
        font-size:32px;
    }
    .blog-article-title {
        left:20px;
        max-width:450px
    }
    .blog-article-text {
        left:20px;
        max-width:450px
    }
    .more-block {
        width:100%;
    }
    .page-template-blog-template .scroll-block{
        width:100%;
    }
    span.show-more {
        text-align: center;
    }
    #footer {
        padding:0 20px;
    }
    .header-img {
        height: 450px;
        object-fit: cover;
    }
    .post-title {
        left:20px;
    }
    .post-text-area {
        padding-left: 20px;
    }
    .large-6.post-text-area {
        width:70%;
    }
    .post-text-area  {
        padding-top:20px;
    }
    .video-block.emb {
        background-size:cover;
        background-repeat: no-repeat;
        
    }
    img.mobile-option {
        display: none;
    }
    .project-back {
        left:20px;
        top:100px;
    }
    .quote-container h1 {
        font-size: 30px;
        line-height: 36px;
    }
    .quote-credit {
        margin-top:0px;
    }
    .quote-credit h2 {
        font-size:25px;
        line-height:30px;
    }
    .quote-container h3 {
        font-size:20px;
        line-height:24px;
    }
    .quote-credit h4 {
        font-size: 18px;
        line-height: 22px;
    }
    .quote-block.pad-right {
        width: 40%;
        padding: 0px 20px 0px;
    }
    .quote-wrapper {
        padding-top: 70px;
        left: 0px;
    }
    .quotes .quote-container .intro-para h1 {
        font-size: 35px;
        line-height: 40px;
        
    }
    .quotes .quote-credit h2 {
        font-size: 25px;
        line-height: 30px;
        margin-top:20px
    }
    ul#menu-main {
        left:20px;
    }
    .modal-menu .social-menu {
        left:20px;
    }
    .contact-details, .about-social-menu {
        padding: 0 20px 0 0px;
        margin-top: 0px;
    }
    
}

/* ================================================
 *
 * Tablet Portrait Stylings 
 *
 * ==============================================*/

@media only screen and (max-width: 56.250em) {
    .work-intro-block {
        padding-bottom: 30px;
        height:auto;
    }
    .work-text {
        bottom: 30px;
        left: 20px;
    }
    .contact-details, .about-social-menu {
        float: right;
        margin-top: 25px;
        padding: 0px 20px 0px 0px;
    }
    ul.foot-nav {
        right:auto;
        top:75px;
    }
    .quote-wrapper {
        position: relative;
        padding-top: 80px;
        left: 15px;
        z-index: 99;
        padding-right: 30px;
        max-width: 600px;
    }
    .single-case_study .header-text-area-wrapper .large-6.pad-left {
        width:100%;
    }
    .quote-block.pad-right {
        width:100%;
    }
    .testimonial-container .quote-container {
        max-width:none;
    }
    .testimonial-container .quote-container {
        padding: 0px 20px 40px 0px;
    }
    .single-case_study .header-text-area-wrapper .body-para {
        padding:0;
    }
    .quote-block.pad-right {
        padding-bottom:20px;
    }
    h1.cs-title {
        font-size:auto !important;
    }
    .page-template-about-template .large-6.pad-left.dev {
        width: 40%;
        padding-top: 0px;
    }
    .page-template-contact-template .large-6.dev {
        width: 40%;
    }
    .work-title {
        font-size:32px;
        line-height:26px;
    }
    .work-text {
        max-width: 340px;
    }
    h5.work-link {
        font-size:22px !important;
        line-height:25px;
    }
    .more-slider .slider-title {
        font-size: 30px;
        line-height: 32px;
        padding-bottom: 10px;
    }
    .more-slider .slider-link {
        font-size: 23px;
        line-height: 25px;
    }
    .more-text {
        left:25px;
        max-width: 275px;
    }
    .blog-intro-block {
        padding-left: 20px;
    }
    .blog-intro {
        font-size: 50px;
        line-height: 50px;
    }
    .blog-article-title {
        font-size: 33px;
        line-height: 35px; 
    }
    .blog-article-sub-head {
        font-size:27px;
        line-height:29px;
    }
    .work-link {
        font-size: 23px;
        line-height:25px;
    }
    .home-slider .slider-title {
        font-size: 40px;
        line-height:45px;
    }
    .home-slider .slider-link {
        font-size:30px;
        line-height:35px;
    }
    .home-slider .slider-text {
        bottom: 100px;
    }
    .blog-article-text {
        max-width: 320px
    }
    .post-title {
        max-width: 90%;
        font-size: 45px;
        line-height: 45px;
    }
    .single .cs-title {
        font-size: 38px;
        line-height: 40px;
    }
}


/* ================================================
 *
 * Phablets Stylings
 *
 * ==============================================*/

@media only screen and (max-width: 43.0em) { 
    
    .home-slider .slider-text {
        bottom: 50px;
        left:20px;
    }
    ul#menu-main {
        top:80px;
    }
    .dynamo-logo {
        top: 25px;
    }
    .hamburger {
        top: 25px;
    }
    ul#menu-main li {
        font-size: 24px;
        line-height: 30px;
    }
   ul#menu-main  .menu > li:not(.menu-text) > a {
        line-height: 1.5;
    }
    .social-menu {
        bottom: 20px;
    }
    .single-case_study .header-text-area-wrapper .large-6.pad-left {
        width:90%;
    }
    .intro-para {
        font-size: 26px;
        line-height:30px;
    }
    .body-para, .figures p {
        font-size: 22px;
        line-height:25px;
    }
    .quote-container .intro-para h1 {
        font-size:22px;
        line-height:25px;
    }
    h2.quote-by, .distinctions h2 {
        font-size:22px !important;
        line-height:25px;
    }
    .distinctions ul li {
        font-size:22px !important;
        line-height:25px;
    }
    h4.author {
        padding-bottom:30px;
    }
    .project-back {
        top: 75px;
    }
    .more-text {
            max-width: 240px
    }
    .more-slider .slider-title {
        font-size: 28px;
        line-height: 30px;
    }
    .more-slider .slider-link {
        font-size: 20px;
        line-height: 22px;
    }
    .hamburger{
        width: 400px;
    }
        .testimonial-container .quote-container .intro-para .figures h1 {
        font-size: 70px;
        line-height: 70px;
            padding-bottom: 10px;
    }
    .testimonial-container .quote-container .intro-para .figures h2 {
        font-size: 60px;
        line-height: 60px;
            padding-bottom: 10px;
    }
    .testimonial-container .quote-container .intro-para .figures h3 {
        font-size: 50px;
        line-height: 50px;
            padding-bottom: 10px;
    }    
    .testimonial-container .quote-container .intro-para .figures h4 {
        font-size: 40px;
        line-height: 40px;
            padding-bottom: 10px;
    }   
    .testimonial-container .quote-container .intro-para .figures h5 {
        font-size: 35px;
        line-height: 35px;
            padding-bottom: 10px;
    } 
    .testimonial-container .quote-container .intro-para .figures h6 {
        font-size: 30px;
        line-height: 30px;
            padding-bottom: 10px;
    }
    .blog-intro {
        padding: 150px 0 0 0;
        font-size: 38px;
        line-height: 38px;
    }
    .blog-intro-block {
        height: 300px;
    }
    .blog-intro {
        padding: 120px 0 0 0;
    }
    .blog-article-title {
        font-size: 28px;
        line-height: 30px;
    }
    .blog-article-sub-head {
        font-size: 25px;
        line-height: 27px;
    }
    .work-link {
        font-size: 20px;
        line-height: 22px;
    }
    .work-link:after {
            top: 4px;
    }
    .blog-article-text {
        max-width: 300px;
    }
    .large-6.post-text-area {
        width:97%;
    }
}



/* ================================================
 *
 * Smartphones 
 *
 * ==============================================*/

@media only screen and (max-width: 27.500em) {
    p.standard {
    display: none;
}
    p.devices {
        display: block;
        text-align: center;
    }
    .modal-menu {
        display: none;
    }
    .desktop {
        display: none !important;
    }
    .hamburger {
        display: none !important;
    }
    button.hamburger-mob {
        background:transparent;
    }
    .hamburger-mob {
        left:auto;
        right:20px;
        float:right;
        top:20px;
    }
    .dynamo-logo {
        left:20px;
        top:20px;
    }
    ul#menu-main-1 {
        padding-top:70px;
        list-style: none;
        width: 100%;
        text-align: center;
        position: relative;
    }
    ul#menu-main-1 li {
        display: block;
        -webkit-font-smoothing: antialiased;
        font-size: 28px;
        width: 100%;
        color: #ffffff;
        padding: 0px 10%;
        -webkit-transition: all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }
    .hamburger-mob {
        display:block; 
    }
    .social-menu {
        left: 20px;
        bottom:90px;
    }
    ul#menu-main-1 li {
        margin-bottom:7px;
    }
    .home-slider .slick-dots {
        z-index: 10;
    }
    .home-slider .slider-text {
        left:30px;
    }
    .home-slider .slider-link {
        font-size: 24px;
    }
    .home-slider .slider-title h1 {
        line-height:35px;
    }
    .slick-vertical .slick-slide:after {
        content: "";
        display: block;
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        height: 100%;
/*        background: rgba(0,0,0,0.50);*/
        width: 100%;
    }
    
    .quotes{
	    /*padding-top: 95px;
	    padding-bottom: 40px;*/
    }
    .quotes .slick-slider .slick-track{
	    height:auto;
    }
    .quotes .slick-list {
		    overflow: hidden;
		}
    .work-image-block {
        padding-bottom: 65%;
    }
    .work-text {
        bottom: 20px;
        left: 20px;
        max-width:300px;
    }
    .work-intro-block {
        height: auto;
        position: relative;
        padding-bottom:25%;
        padding-bottom: 0;
    }
    .work-intro-wrapper {
        position: relative;
        left:30px;
        display: block;
        display: block;
        padding-bottom:0px;
        position: relative;
        /*top:95px;*/
        top: 0px;
        left: 10px;
    }
    .quote-wrapper {
		    position: relative;
		    /*top: 45px;*/
		    padding-top: 45px;
		    left: 15px;
		    padding-right: 30px;
		    padding-bottom: 30px;
		}

    .intro-para {
        font-size: 20px;
        line-height:23px;
    }
    .single-case_study .header-area {
           height: 40vh;
        background-position: center top;
    }
    .more-wrapper {
        padding: 130px 20px 20px;
    }
    .more-title {
        left: 20px;
    }
    #footer {
        padding: 0 20px;
    }
    #footer p {
        width:70%;
    }
    ul.foot-nav li.ft-pad {
        display: block;
    }
    ul.foot-nav {
        position: relative;
        right: auto;
        top: 70px;
    }
    ul.foot-nav li.social-f {
        margin-top: 50px;
        margin-right: 30px;
        
    }
    ul.foot-nav li.social-f img {
        width: 28px;
        height: auto;
    }
    .header-text-area-wrapper {
        margin-top:0px;
        padding-right: 20px;
    }
    .body-para {
        font-size: 20px;
        line-height:24px;
    }
    .more-slider .slider-link {
        font-size: 17px;
        line-height: 20px;
    }
    .more-text {
        max-width:218px;
        left: 20px;
        line-height: 17px;
    }
    .row.full-width.case-up {
        margin-top: 40px;
    }
    .scroll-block {
        padding:10px 0px 5px;
    }
    .cs-title {
        line-height: 36px;
    }
    .single-case_study .header-text-area-wrapper .pad-right {
        padding: 0 0px 40px 0px;
    }
    .single-case_study .header-text-area-wrapper .pad-right .side-img {
        width: 60%;
    }
    .about-first .pad-left {
        padding:0px 20px;
    }
    .contact-details, .about-social-menu {
        float: none;
        padding-right: 0px;
        margin-top: 0px;
        padding: 0;
    }
    .about-first .intro-para {
        padding: 10px 15px 10px 0;
    }
    .about-first {
        padding-bottom: 40px;
    }
    .row.about {
        margin: 0 20px 20px;
    }
    .c-grid {
        padding: .9375rem 0;
    }
    .c-grid img {
        height:245px;
    }
    .lower {
        padding:0;
    }
    .row.full-width {
        padding: 40px 20px 20px;
    }
    .c-logos {
        width:100%;
        padding:0;
    }
    .energy {
        padding: 40px 0em 0px;
    }
    img.about-full {
        height:245px;
    }
    .map-container {
        height:300px;
        margin: 20px 0px;
    }
    div#load_screen > div#loading{ 
        top:35%;
        }
    .blog-intro {
        line-height: 28px;
        padding: 130px 0 0 0;
        font-size:30px;
    }
    .blog-intro-block {
        height: 275px;
        padding-left: 20px
    }
    .blog-image-block {
        padding-bottom: 65%;
    }
    .blog-article-title {
        line-height: 28px;
        left: 20px;
        max-width:340px;
    }
    .blog-article-text {
        left:20px;
    }
    .blog-article-sub-head {
        font-size: 20px;
        line-height: 23px;
    }
    .blog-image-block .work-link{
        font-size: 20px;
    }
    .blog-article-text {
        left:20px;
         max-width:340px;
        bottom:20px;
    }
    .post-text-area {
        padding-left: 20px;
        padding-right: 20px;
        padding:0px 20px;
    }
    img.header-img {
        height: 300px;
        object-fit: cover;
    }
    .post-title {
        left:20px;
        line-height:30px;
    }
    .post-title {
        max-width: 60%;
        z-index:2;
    }
    .header-area-blog:after {
        content: "";
        display: block;
        position: absolute;
        z-index: 1;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        height: 100%;
        background: rgba(0,0,0,0.30);
        width: 100%;  
    }
    .more-wrapper .slick-prev {
        left: 0px;
    }
    .more-wrapper .slick-prev {
        left: 0px;
    }
    .more-wrapper .slick-next {
        right: 20px;
    }
    .work-title {
        line-height:20px;
        padding-bottom: 3px;
        font-size: 23px !important;
    }
    .work-link {
        font-size: 17px;
        line-height: 20px;
    }
    .parallax-img {
        height: 100vh;
        object-fit: cover;
    }
    .page-template-contact-template .large-5.header-text-area {
        width: 100%;
        padding: 10px 20px 0px 20px;
    }
    .page-template-contact-template .large-6.dev {
        width: 100%;
    }
    .page-template-about-template .medium-8 {
        width:100%;
    }
    .page-template-about-template .large-6.pad-left.dev {
        width:100%;
    }
    .page-template-about-template .dev-grid .medium-8 {
        width:100%;
    }
    .about .large-6.right.lower {
        width: 100%;
    }
    .large-6.client-copy {
        width: 100%;
    }
    .large-6.energy {
        width: 100%;
    }
    .single-case_study .header-text-area-wrapper .large-6.pad-left {
        width:100%;
        padding-right:20px;
    }
    .large-6.post-text-area {
        width: 100%;
    }
    ul.social-icons li {
        width: 25px;
    }
    ul.social-icons li img {
        width: auto;
        height:26px;
    }
    .slider-button {
        top:50%;
        width:50px;
        height:50px;
        left:44%;
        margin-left:0px;
    }
    video::-webkit-media-controls {
        display: none !important;
    }
    video::-webkit-media-controls-start-playback-button {
        display: none !important;
        -webkit-appearance: none;
    }
    .mobile-video-container {
        display: block !important;
        background-position: center center;
        background-size: cover;
        height:35vh;
        object-fit:cover;
        position: relative;
        
    }
    .single-case_study .video-scale {
        display: block;
    }
    .single-case_study .video-block.emb {
        height: 230px;
    }
    .modal-container .video-scale {
        display: block;
        margin-top:100px;
    }
    .modal-container video::-webkit-media-controls {
        display: block !important;
    }
    .modal-container  video::-webkit-media-controls-start-playback-button {
        display: block !important;
        -webkit-appearance: none;
    }
    a.trigger-modal {
        display: block;
    }
    span.close-modal {
        position: absolute;
        right: 20px;
        top: 15px;
    }
    .dynamo-logo {
        width:105px;
    }
    #header {
        position: fixed;
        background: #1a1a1a;
        padding:30px 0px;
    }
    .single-case_study .slider-button {
        background: url(images/play-case-study.png) no-repeat center center;
        background-size: cover;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-top:0;
        margin-left:0;
    }
    .home-slider .slider-button {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        margin-top:0;
        margin-left:0;
    }
    .header-wrap {
        padding-top:55px;
    }
    .body-para {
        font-size: 17px;
        line-height: 20px;
    }
    .work-link:after {
        top: 5px;
    }
    .page-template-contact-template .intro-para {
        display: none;
    }
    .page-template-contact-template .mobile-para {
        display: block;
        font-size: 20px;
        line-height: 23px;
    }
    .c-logos {
        width: 46%;
        padding: 0;
        margin: 0 2% 12px;
    }
    .mobile-find {
        display: block;
    }
    .more-slider .slider-link:after {
        top: 5px;
    }
    h1.blog-article-title {
        font-size:30px !important;
        line-height:28px;
        top:20px;
    }
    .stellar-object {
        display: none !important;
    }
    img.mobile-option {
        display: block;
    }
    .parallax-background {
        padding-bottom:0;
    }
    .more-slider h1.slider-title {
        font-size:20px !important;
        line-height:23px;
        padding-bottom:10px;
    }
    .home-slider .slider-title {
        line-height: 30px;
        font-size:30px;
    }
    .project-back {
        left: 20px;
        top: 75px;
    }
    ul.social-icons li {
        width:auto;
        margin-right: 24px;
        margin-top: 5px;
    }
    .page-template-contact-template {
            padding-bottom: 30px;
    }
    .mobile-menu .social-menu {
        width:100%;
        left:auto;
    }
    .header-text-area-wrapper {
        padding-right:0;
    }
    .testimonial-container .quote-container {
        padding: 20px 20px 20px;
    }
    .single-case_study .slider-button.hvr-grow {
        transform: translate(-50%, -50%);
    }
    .mobile-video-container.lazy {
    display: block !important;
}
    .testimonial-container .quote-container .intro-para h1 {
        font-size:17px;
        line-height: 20px;
    }
    h1.cs-title {
        font-size:26px;
    }
    h2.quote-by, .distinctions h2 {
        font-size:17px;
        line-height: 20px;
    }
    h4.author {
        font-size:17px;
        line-height: 20px;
    }
    .distinctions ul li {
        font-size:17px !important;
        line-height: 20px;
    }
    .quotes .quote-container .intro-para h1 {
        font-size: 23px;
        line-height: 26px;
            padding-bottom: 10px;
    }
    .quote-container h3 {
        font-size: 18px;
        line-height: 21px;
    }
    .quotes .quote-credit h2, .quotes .quote-credit h4 {
        font-size: 18px;
        line-height: 21px
    }
    .quotes .quote-container h3 {
        padding-bottom:15px;
    }
    h1.post-title {
        font-size:26px;
        line-height:30px;
        top:60%;
    }
    .mobile-menu ul.social-icons {
        display: block;
        margin:0 auto;
        text-align: center;
    }
    .mobile-menu ul.social-icons li {
        margin: 5px 17px;
    }
    .single h1.post-title.mobile {
        display: block;
        position: relative;
        left: auto;
        margin-top:-27px;
        padding-bottom: 20px;
        font-size: 32px;
        line-height: 30px;
        max-width: 80%;
    }
    .mobile-foot-menu {
        display: block;
        text-align: center;
        padding-top: 70px;
        width: 100%;
        position: relative;
        right: auto;
    }
    .mobile-foot-menu ul.social-icons li{
        width: auto;
        margin: 5px 17px;
    }
    ul.foot-nav li.social-f img {
        display: none;
    }
    .figures {
        padding-top: 25px;
    }
    .testimonial-container .quote-container .intro-para .figures h1 {
        font-size: 50px;
        line-height: 48px;
            padding-bottom: 10px;
    }
    .testimonial-container .quote-container .intro-para .figures h2 {
        font-size: 45px;
        line-height: 43px;
            padding-bottom: 10px;
    }
    .testimonial-container .quote-container .intro-para .figures h3 {
        font-size: 40px;
        line-height: 38px;
            padding-bottom: 10px;
    }    
    .testimonial-container .quote-container .intro-para .figures h4 {
        font-size: 35px;
        line-height: 32px;
            padding-bottom: 10px;
    }   
    .testimonial-container .quote-container .intro-para .figures h5 {
        font-size: 30px;
        line-height: 28px;
            padding-bottom: 10px;
    } 
    .testimonial-container .quote-container .intro-para .figures h6 {
        font-size: 25px;
        line-height: 23px;
            padding-bottom: 10px;
    } 
    .figures p, .figures span {
        font-size: 17px;
        line-height: 20px;
            padding-bottom: 10px;
    }
    .distinctions ul li:before {
            margin-right: 2px;
    }
    h4.author {
        padding-bottom: 30px;
    }
    .mobile-foot-menu ul.social-icons li img {
        width: auto;
        height: 27px;
        margin-top: 0;
    }
    .about-social-menu ul.social-icons li, .contact-details ul.social-icons li {
        margin-right: 45px;  
    }
    .about-social-menu ul.social-icons li:last-child, .contact-details ul.social-icons li:last-child {
       margin-right: 0px; 
    }

}
/* iPhone 5 Portrait - Only */
@media only screen and (min-device-width: 320px) and (max-device-width: 568px) and (-webkit-device-pixel-ratio: 2) and (device-aspect-ratio: 40/71) and (orientation: portrait) {
    .home-slider .slider-text {
        bottom: 80px;
    }
    .pad-left {
        padding: 0 0 0 20px;
    }
    #footer p {
        width: 60%;
    }
    ul.foot-nav li.social-f {
        margin-right: 24px;
    }
    .blog-article-text {
         max-width:290px;
        bottom:5px;
    }
    .blog-article-title {
        max-width:290px;
        top: 20px;
    }
    .social-menu {
        bottom:90px;
    }
    .slider-button {
        left:52%;
    }
    .mobile-foot-menu ul.social-icons li {
        width: auto;
        margin: 5px 10px;
    }
    .about-social-menu ul.social-icons li, .contact-details ul.social-icons li {
        margin-right: 34px;  
    }
    .about-social-menu ul.social-icons li:last-child, .contact-details ul.social-icons li:last-child {
       margin-right: 0px; 
    }
}

@media screen and (min-color-index:0) and(-webkit-min-device-pixel-ratio:0) 
{ @media {
    .hamburger { 
        width: 500px;
        left:0px;
    }
}}

