/*
Theme Name: OliveMill
Theme URI: http://olivemill.co.uk/
Author: Norbert Rakossy
Author URI: http://www.renderel.com/
Description: Theme for OliveMill website
Version: 2.0
Text Domain: olivemill
*/

@import url('https://fonts.googleapis.com/css?family=Josefin+Sans:400,400i,600,700');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:600,700');
@import url('https://fonts.googleapis.com/css?family=Cardo:400,700');

html, body{
	margin: 0;
	padding: 0;
	font-family: 'Josefin Sans', Arial, Helvetica, sans-serif;
	font-size: 17px;
	line-height: 1.3em;
	color: #272425;
}

body{
	overflow-x: hidden;
}

a, a:hover{
	color:#2E4D52;
}

a img{
	border:none;
}

h2{
	font-size: 27px;
	line-height: 1.3em;
	font-family: 'Cardo', serif;
	font-weight: 700;
}

.clear{
	clear: both;
}

.top-header{
	height: 108px;
	border-bottom: #D7D8D9 1px solid;
}

.top-header .logo{
	float: left;
	margin: 27px 0;
}

.top-header	.logo a{
	display: block;
	text-decoration: none;
	text-indent: -9999px;
	background: url(images/logo.png) no-repeat;
	width: 140px;
	height: 54px;
	background-size: contain;
}

.top-header .contact{
	float: right;
	margin-top: 15px;
	text-align: right;
}

.top-header .contact a{
	text-decoration: none;
	font-size: 17px;
}

.top-header .main-menu{
	float: right;
	clear: right;
}

.top-header .main-menu input{
	display: none;
}

.top-header .main-menu ul.menu{
	overflow: hidden;
	margin: 10px 0 0 0;
	padding: 0;
}

.top-header .main-menu ul.menu li{
	list-style: none;
	float: left;
	margin: 0;
	padding: 0;
}

.top-header .main-menu ul.menu li a{
	text-decoration: none;
	color: #272425;
	font-size: 15px;
	text-transform: uppercase;
	padding: 10px;
	font-weight: 600;
	font-family: 'Open Sans', Arial, Helvetica, sans-serif;
}

.top-header .main-menu ul.menu li:last-child a{
	padding-right: 0;
}

.header{
	height:456px;
	/* position:relative; */
	background:url(images/header1.jpg) no-repeat center;
	background-size:cover;
}

.header .carousel-item{
	height: 456px;
	background-size:cover;
	background-position:center;
}

.not-front .header{
	height: 150px;
	background:url(images/header-inside.jpg) no-repeat center;
}

.header .c-caption{
	overflow: hidden;
	text-align:center;
	padding-top:166px;
	font-family: 'Cardo', serif;
	color: #ffffff;
	z-index: 1;
	position: absolute;
	width: 100%;
}

.carousel-control-next, .carousel-control-prev{
	z-index: 2;
}

.not-front .header .wrapper{
	padding-top: 0;
}

.header h1{
	font-family: 'Cardo', serif;
	font-size: 55px;
	line-height: 50px;
	margin: 10px 0;
	text-shadow: 2px 2px 8px #000;
	font-weight: 700;
}

.not-front .header h1{
	font-size: 45px;
	line-height: 40px;
}

.not-front .header .c-caption{
	padding-top: 25px;
}

.header .strapline{
	font-family: 'Cardo', serif;
	font-weight: 700;
	font-size: 34px;
	line-height: 45px;
	text-shadow: 1px 1px 4px #000;
}

.not-front .header .strapline{
	font-size: 28px;
	line-height: 36px;
}

.main-content, .why-puglia{
	margin: 50px 0;
}

.main-content h2, .why-puglia h2{
	text-align: center;
	margin-bottom: 40px;
}

.main-content .cont-img img{
	-webkit-box-shadow: 0px 0px 50px 0px rgba(0,0,0,0.1);
	-moz-box-shadow: 0px 0px 50px 0px rgba(0,0,0,0.1);
	box-shadow: 0px 0px 50px 0px rgba(0,0,0,0.1);
	cursor:pointer;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	max-width: 100%;
	height: auto;
}

.main-gallery a{
	color: #272425;
	text-decoration: none;
}

.main-gallery img{
	max-width: 90%;
	height: auto;
}

.gallery{
	overflow: hidden;
}

.gallery a{
	display: block;
	width: 25%;
	text-align: center;
	float: left;
	padding: 10px 0;
}

.gallery a img{
	width: 200px;
	height: 150px;
}

.weekly-prices th{
	text-align: left;
	min-width: 140px;
}

.more-text{
	display: none;
}

/*** Overall MovingBoxes Slider ***/
.mb-wrapper {
	position: relative;
	left: 0;
	top: 0;
}

.mb-slider, .mb-scroll {
	width: 100%;
	height: 100%;
	overflow: hidden;
	margin: 0 auto;
	padding: 0;
	position: relative;
	left: 0;
	top: 0;
}

.mb-slider .mb-panel {
	margin: 0;
	display: block;
	cursor: pointer;
	float: left;
	list-style: none;
}

.mb-panel{
	width: 100%;
}

.mb-slider .mb-panel.current {
	cursor: auto;
}

.mb-inside * {
	max-width: 100%;
}

a.mb-scrollButtons {
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	top: 50%;
	margin-top: -29px; /* if you change the arrow images, you may have to adjust this (1/2 height of arrow image) */
	cursor: pointer;
	text-decoration: none;
	outline: 0;
	border: 0;
}
a.mb-scrollButtons.mb-left {
	background-position: left top;
	left: -45px;
}
a.mb-scrollButtons.mb-right {
	background-position: right top;
	right: -45px;
}
a.mb-scrollButtons.mb-left:hover {
	background-position: left bottom;
}
a.mb-scrollButtons.mb-right:hover {
	background-position: right bottom;
}
a.mb-scrollButtons.disabled {
	display: none;
}

/*** Controls added below the panels ***/
.mb-controls {
	margin: 17px auto 0 auto;
	text-align: center;
	position: relative;
	z-index: 100;
}
.mb-controls a {
	display: block;
	width: 12px;
	height: 12px;
	text-indent: -9999px;
	display: inline-block;
	text-decoration: none;
	margin: 0 5px 0 0;
	text-align: center;
	outline: 0;
	border: #ffffff 1px solid;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}
.mb-controls a.current {
	background: #ffffff;
}

.testimonials{
	padding:50px 0;
	background: url(images/testimonials-bg.jpg) no-repeat center;
	background-size: cover;
	text-align: center;
}

.testimonials .content{
	color: #ffffff;
	font-size: 22px;
	line-height: 27px;
}

.testimonials h2{
	color: #ffffff;
	font-size:29px;
}

.testimonials .content p{
	margin: 0;
}

.map{
	height:400px;
}

.footer .container{
	padding: 50px 0 40px 0;
	overflow: hidden;
	border-top:#68552e 1px solid;
}

.footer .copyright{
	float: left;
	font-size: 13px;
}

.footer ul.menu{
	float: right;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.footer ul.menu li{
	list-style: none;
	float: left;
}

.footer ul.menu li a{
	text-decoration: none;
	font-size: 13px;
	padding: 0 5px;
	color: #272425;
}

.footer ul.menu li:last-child a{
	padding-right: 0;
}

@media (max-width: 1187px) {
	.wrapper{
		width:95%;
	}
	
	.top-header{
		overflow: visible;
		height: 108px;
	}
	
	.top-header .wrapper{
		overflow: visible;
	}
	
	.main-menu{
		display: block;
		position: relative;
		top: 10px;
		z-index: 2;
		-webkit-user-select: none;
		user-select: none;
	}
	
	.top-header .main-menu input{
		display: block;
		width: 40px;
		height: 32px;
		position: absolute;
		top: -7px;
		left: -5px;
		cursor: pointer;
		opacity: 0;
		z-index: 2;
		-webkit-touch-callout: none;
	}
	
	.main-menu span.hamburger{
		display: block;
		width: 33px;
		height: 4px;
		margin-bottom: 5px;
		position: relative;
		background: #272425;
		border-radius: 3px;
		z-index: 1101;
		transform-origin: 4px 0px;
		transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
								background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
								opacity 0.55s ease;
	}
	
	.main-menu span.hamburger:first-child{
		transform-origin: 0% 0%;
	}
	
	.main-menu span.hamburger:nth-last-child(2){
  	transform-origin: 0% 100%;
	}
	
	.main-menu input:checked ~ span{
		opacity: 1;
		transform: rotate(45deg) translate(-2px, -1px);
		background: #232323;
	}

	.main-menu input:checked ~ span:nth-last-child(3){
		opacity: 0;
		transform: rotate(0deg) scale(0.2, 0.2);
	}

	.main-menu input:checked ~ span:nth-last-child(2){
		transform: rotate(-45deg) translate(0, -1px);
	}
	
	.top-header .main-menu ul.menu{
		position: absolute;
		z-index: 3;
		width: 300px;
		margin: 10px 0 0 -50px;
		padding: 50px;
		padding-top: 25px;
		background: #ffffff;
		list-style-type: none;
		-webkit-font-smoothing: antialiased;
		transition: transform 300ms ease-in-out;
    transform-origin: top;
    transform: scale(1,0);
		right: -30px;
	}
	
	.top-header .main-menu ul.menu li{
		float: none;
	}

	.top-header .main-menu ul.menu li{
		padding: 10px 0;
	}

	.top-header .main-menu input:checked ~ ul	{
		transform: scale(1,1);
	}
}

@media (max-width: 990px) {
	.gallery a{
		width: 33.33%;
	}
}

@media (max-width: 780px) {
	.header h1{
		font-size: 45px;
	}
	
	.header .strapline{
		font-size: 29px;
	}
}

@media (max-width: 767px) {
	.gallery a{
		width: 50%;
	}
}

@media (max-width: 550px) {	
	.not-front .header h1{
		font-size: 35px;
	}

	.not-front .header .strapline{
		font-size: 22px;
		line-height: 27px;
	}
}

@media (max-width: 480px) {
	.header .c-caption{
		padding-top: 112px;
	}
}

@media (max-width: 460px) {
	.header .wrapper{
		padding-top: 145px;
	}
	
	.gallery a img{
		width: 150px;
		height: 112.2px;
	}
}

@media (max-width: 380px) {
	.not-front .header h1{
		font-size: 30px;
	}

	.not-front .header .strapline{
		font-size: 20px;
	}
}