
/* CSS RESET */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2rem;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:0;padding:0}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:inherit}

body {
padding: 0;
font-size: 16px;
font-family: 'Lato', sans-serif;
position: relative;
overflow-x: hidden;
color: #444;
}

/* Amazing cloud animation from Antonio Escudero on Codepen: */
/* https://codepen.io/antonioescudero/pen/zrxGve */

#clouds{padding:0;position:absolute;top:0;right:0;bottom:0;left:0;background:#c9dbe9;background:-webkit-linear-gradient(top,#c9dbe9 0,#fff 100%);background:-linear-gradient(top,#c9dbe9 0,#fff 100%);background:-moz-linear-gradient(top,#c9dbe9 0,#fff 100%);overflow:hidden}.cloud{width:200px;height:60px;background:#fff;border-radius:200px;-moz-border-radius:200px;-webkit-border-radius:200px;position:relative}.cloud:after,.cloud:before{content:'';position:absolute;background:#fff;width:100px;eight:80px;position:absolute;top:-15px;eft:10px;border-radius:100px;-moz-border-radius:100px;-webkit-border-radius:100px;-webkit-transform:rotate(30deg);transform:rotate(30deg);-moz-transform:rotate(30deg)}.cloud:after{width:120px;height:120px;top:-55px;left:auto;right:15px}.x1{-webkit-animation:moveclouds 15s linear infinite;-moz-animation:moveclouds 15s linear infinite;-o-animation:moveclouds 15s linear infinite}.x2{left:200px;-webkit-transform:scale(.6);-moz-transform:scale(.6);transform:scale(.6);opacity:.6;-webkit-animation:moveclouds 25s linear infinite;-moz-animation:moveclouds 25s linear infinite;-o-animation:moveclouds 25s linear infinite}.x3{left:-250px;top:-200px;-webkit-transform:scale(.8);-moz-transform:scale(.8);transform:scale(.8);opacity:.8;-webkit-animation:moveclouds 20s linear infinite;-moz-animation:moveclouds 20s linear infinite;-o-animation:moveclouds 20s linear infinite}.x4{left:470px;top:-250px;-webkit-transform:scale(.75);-moz-transform:scale(.75);transform:scale(.75);opacity:.75;-webkit-animation:moveclouds 18s linear infinite;-moz-animation:moveclouds 18s linear infinite;-o-animation:moveclouds 18s linear infinite}.x5{left:-150px;top:-150px;-webkit-transform:scale(.8);-moz-transform:scale(.8);transform:scale(.8);opacity:.8;-webkit-animation:moveclouds 20s linear infinite;-moz-animation:moveclouds 20s linear infinite;-o-animation:moveclouds 20s linear infinite}@-webkit-keyframes moveclouds{0%{margin-left:1000px}100%{margin-left:-1000px}}@-moz-keyframes moveclouds{0%{margin-left:1000px}100%{margin-left:-1000px}}@-o-keyframes moveclouds{0%{margin-left:1000px}100%{margin-left:-1000px}}

section{
	position: relative;
	width: 90%;
	padding: 5%;
}
.full-height{
	min-height: 100vh;
	/* height: 200px; */
	/* overflow: hidden; */
}
#probono{
	background: rgb(192,237,192);
background: radial-gradient(circle, rgba(192,237,192,1) 0%, rgba(144,238,144,1) 100%);
}
#services{
	background: rgb(0,34,85);
background: radial-gradient(circle, rgba(0,34,85,1) 0%, rgba(0,14,36,1) 100%);
	color: #fff;
}
#ethos{
	background: rgb(255,255,255);
background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(241,241,241,1) 50%, rgba(205,205,205,1) 100%);
}
#clients{
	background: rgb(242,210,82);
background: radial-gradient(circle, rgba(242,210,82,1) 0%, rgba(247,145,69,1) 100%);
}
#message{
	background: #654ea3;  /* fallback for old browsers */
background: -webkit-linear-gradient(to bottom, #eaafc8, #654ea3);  /* Chrome 10-25, Safari 5.1-6 */
background: linear-gradient(to bottom, #eaafc8, #654ea3); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
.content{
	position: relative;
	margin: 0 auto;
	width: 100%;
	max-width: 62rem;
}
form{
	width: 80%;
	max-width: 600px;
	min-width: 200px;
	display: block;
	margin: 0 auto;
}
h1,h2,h3,h4,h5,h6{
	color:#008FC5;
	}
h1{
	font-size: 1.5rem;
}
h2{
	/* margin-top: 3.5rem; */
	font-weight: 400;
	font-size: 2.25rem;
	text-transform: uppercase;
	color:#fff;
	letter-spacing: -1px;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.4);
border-bottom: 1px dotted rgba(255,255,255,0.8);
width: 100%;
display: block;
}

p{
	/* font-size: 1.1rem; */
}
	
#logo{
	width: 50%;
	height: auto;
	max-width: 240px;
}
#menu-section{
	position: fixed;
	width: 90%;
	padding: 5%;
	z-index: 2;
}
#menu{
	position: absolute;
	top: 0.3rem;
	right: 1.5rem;
	cursor:pointer;
}
#menu div{
	width: 35px;
    height: 4px;
    background-color: #008FC588;
    margin: 6px 0;
}

.g-recaptcha > div {
    margin: 0 auto;
}
.sidenav {
  height: 100%;
  width: 0;
  max-width: 320px;
  position: fixed;
  z-index: 10;
  top: 0;
  right: 0;
  background-color: rgba(255,255,255,0.9);
  overflow-x: hidden;
  transition: 0.5s;
  padding-top: 60px;
}

.sidenav a {
  padding: 8px 8px 8px 32px;
  text-decoration: none;
  font-size: 1.2rem;
  color: #008FC5;
  display: block;
  transition: 0.3s;
}

.sidenav a:hover {
  color: #ff0000;
}

.sidenav .closebtn {
  position: absolute;
  top: 0;
  right: 25px;
  font-size: 36px;
  margin-left: 50px;
}

.CTA {
	display: inline-block;
	color: #faa61a !important;
	color: #008FC5 !important;
	text-transform: uppercase;
	text-decoration: none;
	background: #008FC5;
	background: #FFFFFF;
	padding: 1rem 1.5rem;
	border: 4px solid #faa61a !important;
	border: 4px solid #008FC5 !important;
	margin: 0 auto;
	max-width: 300px;
	transition: all 0.4s ease 0s;
	font-weight: 600;
}
.CTA:hover {
	color: #008FC5 !important;
	background: #faa61a;
	border-color: #faa61a !important;
	transition: all 0.4s ease 0s;
}

#black-strap{
	background: #000;
	width: 100%;
	position:fixed;
	bottom: 0;
  z-index: 9;
  border-top: 1px solid #fff;
	color: white;
	text-align: center;
	font-size: 1.1rem;
	padding: 0.95rem;
}

#black-strap a{
	color: #faa61a !important;
}

.tick{
	width: 2rem;
	height: 2rem;
	background: #fff;
	color: green;
	font-size: 3rem;
	border: 3px solid green;
	border-radius: 50%;
	display: inline-block;
	line-height: 1.4rem;
}
.tick::before{
content: "\2714";
}

.gallery {
  padding: 10px;
}

.gallery-cell {
  width: 300px;
  height: 250px;
  margin-right: 10px;
}
.gallery-cell img{
  width: 300px;
  height: 216px;
}
.cell-title{
  width: 300px;
  height: 34px;
  text-align: center;
  overflow: hidden;
  font-size: 1.1rem;
  line-height:40px;
}
.cell-title a{
	text-decoration: none;
  color: #008FC5;
}
.fadein {
    opacity:0;
}
.flex-center{
	display: flex;
	align-items: center;
  justify-content: center;
}

.center{text-align: center !important}
.smaller{font-size: 84% !important}
.tiny{font-size: 70% !important}
.bigger{font-size: 120% !important}
.bigOnly{display:none !important}
.italic{font-style:italic !important}
.white{color:#fff !important}
.disabled{opacity: 0.4; pointer-events: none;}


ul {
  /* list-style: none; */
	font-size: 1.2rem;
	line-height: 1.9rem;
}

/* ul li::before { */
  /* content: "\00BB"; */
  /* display: inline-block; */
  /* width: 1rem; */
  /* margin-left: -3rem; */
/* } */

blockquote {
	text-align:center;
	font-size: 2.5rem;
	font-style: italic;
	margin: 1.5rem;
	color: #008FC5;
	letter-spacing: 2px;
	}
.cloud-background{
	background: url("https://ezweb.ie/images/cloud.png") no-repeat center center;
	background-size: contain;
	min-height: 0;
}
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

.half{
	float: left;
	width: 94%;
	text-align: left;
	margin: 3%;
	font-size: 1.25rem;
}
.half img{
	width: 100%;
	height: auto;
	max-width: 450px;
}

.third{
	float: left;
	width: 94%;
	text-align: center;
	margin: 3%;
	font-size: 1.2rem;
}

.third img{
	margin: 2%;
	height: auto;
	width: 3rem;
	float: left;
	margin-right: 2rem;
}
.third p{
	text-align: left;
}

.two-thirds{
	float: left;
	width: 94%;
	text-align: center;
	margin: 3%;
	font-size: 1.5rem;
}
input[type=text], textarea{
	display: block;
	margin: 0 auto;
	width: 100%;
	clear: both;
	margin-bottom: 0.8rem;
	font-size: 1.2rem;
	background: #fff;
	border: transparent;
	padding: 0.25rem;
	resize: vertical;
	box-shadow: 0 3px 5px #aaa;
}
input:focus, textarea:focus{
	background: #fff;
}

@media (min-width: 43em){

#logo{
	width: 25%;
}
.half{
	width: 44%;
}
.third{
	margin: 5%;
	width: 23%;
}
.third img{
	margin: 2%;
	height: 8rem;
	width: auto;
	float: none;
	margin-right: 0;
}
.third p{
	text-align: center;
}
.two-thirds{
	width: 60%;
	margin: 3%;
}
.bigOnly{
	display: block;
}
.cloud-background{
	min-height: 20rem;
}
}

@media (min-width: 62em){
	
}

@media (min-width: 82em){
	
}



