@charset "utf-8";
/* CSS Document */

@media only screen and (max-width:959px){
	div#mobile-detector{
		display:inline;
	}
	.guru-gallery-holder > div > a.close{
		width:2em;
		height:2em;
		background-position:center center;
	}
	
	
	.maxwidth{
		width:90%;
		max-width:none;
		min-width:0;
	}
	
	div.headerfiller{
		height:5rem;
	}
	
	header{
		height:5rem;
		position:fixed;
		z-index:20;
		top:0;
		left:0;
		display:block;
		width:100%;
	}
	
	header > div{
		display:block;
		height:5rem;
		position:relative;
		width:auto !important;
		overflow-y:visible;
	}
	header > div > div{
		display:block;
		position:absolute;
	}
	header > div > div.logo{
		width:65%;
		padding-left:5%;
	}
	header > div > div.logo > img{
		height:3rem;
		width:auto;
		top:1rem;
		left:0;
	}
	
	header > div > div#mobile-menu{
		display:block;
		position:absolute;
		right:0;
		top:1.5rem;
		height:2rem;
		width:25%;
		background-size:contain;
		visibility:visible;
		padding-right:5%;
		text-align:right;
	}
	header > div > div#mobile-menu > img{
		height:100%;
		width:auto;
	}
	
	header > div > div.menu{
		background-color:#363C43;
		width:100%;
		display:block;
		position:absolute;
		top:5rem;
		right:-100%;
		padding:1rem 0 0 0;	
		box-shadow:none;
		-moz-transition:right 1s ease, box-shadow 1s ease;
		-o-transition:right 1s ease, box-shadow 1s ease;
		-ms-transition:right 1s ease, box-shadow 1s ease;
		-webkit-transition:right 1s ease, box-shadow 1s ease;
		transition:right 1s ease, box-shadow 1s ease;
	}
	header.mobile-open > div > div.menu{
		right:0;
		box-shadow:rgba(0,0,0,0.8) 0 0.5rem 1rem 0;	
	}
	header > div > div.menu > *,
	header > div > div.menu > div{
		position:static;
		top:0;
		padding-right:0 !important;
	}
	header > div > div.menu > div.net{
		text-align:center;
		padding-bottom:1rem;
	}
	header > div > div.menu > div.net > a{
		margin-left:0;
		display:inline-block;
		width:auto;
		line-height:1.8rem;
		text-align:center;
	}
	header > div > div.menu > div.net > a:last-of-type{
		margin-left:0.5rem;
	}
	header > div > div.menu > div.net > span{
		display:none;
		visibility:hidden;
	}
	header > div > div.menu > div.net > var{
		display:block;
		clear:both;
		height:0.5rem;
	}
	
	header > div > div.menu > nav{
		background-color:#2F343A;
		padding-bottom:1rem;
	}
	
	header > div > div.menu > nav > a,
	header > div > div.menu > nav > a:visited,
	header > div > div.menu > nav > a:active{
		display:block;
		padding:0 !important;
		height:3rem;
		line-height:3rem;
	}
	header > div > div.menu > nav > a:hover,
	header > div > div.menu > nav > a:focus,
	header > div > div.menu > nav > a.current{
		background-color:#3E444D;
	}
	
	
	figure[role=banner]{
		height:18rem;
	}
	
	figure[role=banner] > figcaption,
	figure[role=banner] > div.button,
	figure[role=banner] > div.button > div{
		height:6rem;		
	}
	
	figure[role=banner] > figcaption > div{
		display:table;
		width:46%;
		margin:0 0 0 5%;
	}
	
	figure[role=banner] > figcaption > div > h2{
		font-size:1rem;
		display:table-cell;
		text-align:left;
		vertical-align:middle;
		position:static;
	}
	figure[role=banner] > div.imagen{
		height:12rem
	}
	figure[role=banner] > div.text{
		font-size:1.1em;
	}
	figure[role=banner] > div.text > div > p{
		bottom:0.5em;
		width:100%;
		text-align:center;
		/*background-color:rgba(47,52,58,0.3);*/
		padding:0.25rem 0 0.25rem 0;
	}
	figure[role=banner] > div.text.black > div > p{
		/*background-color:rgba(255,255,255,0.5);*/
	}
	
	figure[role=banner] > div.button > div > a{
		font-size:0.8rem;
		top:2rem;
	}
	
	main.home-box > div > div.home-squares{
		text-align:left;
	}
	main.home-box > div > div.home-squares > div,
	section.services-boxes > div{
		width:auto;
		text-align:left;
		padding-bottom:2rem;
		display:block;
	}
	main.home-box > div > div.home-squares > div:last-of-type,
	section.services-boxes > div:last-of-type{
		padding-bottom:0;
	}
	main.home-box > div > div.home-squares > div:nth-child(2) > h3{
		display:none;
		visibility:hidden;
	}
	
	main.home-box > div > a.button{
		display:none;
		visibility:hidden;
	}
	
	div.floatbox{
		width:auto;
		display:block;
		margin:1rem !important;
		padding:0 !important;
		border:#ccc 1px solid;
		
	}
	div.floatbox > img{
		margin-bottom:0;
	}
	
	div.floatbox > p.blue{
		padding:1rem;
		font-size:1.1em;
	}
	
	main p{
		text-align:justify;
	}
	
	div.graybox,
	div.graybox > div,
	div.graybox > div.text,
	div.graybox > div.image,
	div.graybox.right > div.text,
	div.graybox.right > div.image{
		display:block;
		width:auto;
		padding:0 !important;
		border:none !important;
	}
	
	#contenedorFormaRapida{
		width:auto;
	}
	
	
	p.mobile-call,
	div.mobile-contact{
		visibility:visible;
		display:block;
		padding-top:1em;
		padding-bottom:1em;
		margin:0;	
		text-align:center;
	}
	p.mobile-call > span{
		display:block;
		margin-bottom:0.5rem;
		font-size:1.3em;
		font-weight:bold;
		font-family:'Josefin Slab',Helvetica,Arial,sans-serif;
	}
	div.mobile-contact{
		padding:5.5rem 0 3rem 0;
	}
	
	input[type=text],
	textarea{
		padding:0.2rem;
	}
	
	div.contact-button-landing > a{
		display:none;
		visibility:hidden;
	}
}

@media only screen and (max-width: 420px){
	figure[role=banner] > figcaption > div > h2{
		font-size:0.8rem;
	}
}