@import 'https://fonts.googleapis.com/css?family=Lato|Cormorant+Infant';
@import 'flickity.css';

body {
	background-color: #fff;
	margin: 0px;
	padding: 0px;
	font-family: 'Lato', Arial,sans-serif , sans;
}
a{
	text-decoration:none; 
}
img {
	border: 0;
	max-width: 100%;
	height: auto;
}
input, textarea, select {
	font-family:"Open Sans", Calibri, "Trebuchet MS", Arial, Helvetica, sans-serif, Sans;
	font-size: 15px;
	border-radius: 5px;
	padding: 7px;
	border: 2px solid #757761;
	background-color: #fff;
	max-width: 80vw;
	width: 250px; 
} 
a[href^="mailto:"]
{
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
table{
	width: 100%;
	border-collapse: collapse;

}
th{
	padding: 5px 3vw 5px 5px;
	vertical-align: top;
	text-align: left;
	background-color: #666666;
	color: #fff;
	font-size: 20px; 
}
td{
	padding: 5px 3vw 5px 5px;
	vertical-align: top;
}
h1{
	font-family: Cormorant Infant; 
	font-size: 40px; 
	font-weight: normal; 
	line-height: 50px; 
}
h2{
	font-family: Cormorant Infant; 
	font-size: 30px; 
	font-weight: normal; 
	line-height: 40px; 
}
h3{
	font-family: Cormorant Infant; 
	font-size: 24px; 
	font-weight: normal; 
	line-height: 30px; 
}








.container{
	display: flex;
	justify-content: center;	
	position: relative; 
}
.container > div {
	flex: 1 1 auto;
}
.main{
	width:70%; 
	background-color: #fff;
}
.sidebar{
	background-color: #8e9090;
	color: #fff;
	position: relative; 
	width: 250px;
	padding: 20px;  
	min-height: calc( 100vh - 40px ); 
}
.sidebar .image {
	text-align: center; 

}
.sidebar .address {
	width: 210px;
	margin: auto; 
	padding: 20px; 
}

.sidebar .links {
	width: 230px;
	margin: auto; 
	padding: 20px; 
}
.sidebar .links a{
	padding: 10px; 
	display: block;
	color: #fff;
	border: 0;  
}
.sidebar .links a:hover{
	background-color: #333;
	border: 0;
	color: #fff;
}

.sidebar img{
	width: 250px; 
	margin: auto; 
	text-align: center; 
}
.sidebar .address a{
	color: #fff; 
	border-bottom: 1px solid transparent; 
	transition: 0.3s; 
}
.sidebar .address a:hover{
	color: #111; 
	border-bottom: 1px solid #000; 
}
.bigpicture{
	background-size: cover; 
	background-position: center center; 
	height: 100%; 
}
.biggishpicture{
	background-size: cover; 
	background-position: center center; 
  height: 70vh;
  min-height: 500px; 
}
.fivestar{
	background-color: rgba(0,0,0,0.4);
	padding: 30px; 
	text-align: right; 
	font-size: 30px;
	color: #fff;
	font-family: Cormorant Infant; 
}
.maintext{
	max-width: 800px;
	padding: 30px;
	margin: auto;
	line-height: 190%;
	color: #666; 
	font-family: Cormorant Infant; 
	font-size: 18px; 
}
.maintext a{
	color: #444;
	border-bottom: 1px dashed #333;
}
.footer {
	background-color: #333;
	color: #fff; 
	text-align: center; 
}
.footer img {
	max-height: 130px;
	max-width: 130px;
	margin: 10px; 
}
.footer a{
	color: #fff;
}
.footer .address{
	padding: 40px ; 
}
.footer .icons{
	padding: 20px 20px 0 20px ; 
}
.gallery-cell {
  width: 100%;
  height: 70vh;
  min-height: 500px; 
	margin-right: 10px; 
}
.iw {
	font-size: 12px;
	padding: 15px 100px;
	text-align: right;
	max-width: 1400px;
	margin:auto; 
	background-color: #333;
} 
.iw a{
	color: #777;
	text-decoration: none;
}
.squares {
	display: flex;
	margin:auto;
	border: 0; 
 	flex-flow: row wrap;
}
.squares div img{
	width: 100%;
	height: 100%;
	border: 4px solid white;
}
.squares div {
	height: 40vh;
	background-size: cover;
	background-position: center;
	border: 4px solid white;
	flex: 1 1 250px;
}
.squares.seymour div {
	height: 30vh;
	max-height: 300px; 
}
.oops {
	font-size: 250px;
	float: right;
	line-hight: 250px;
	color:#000;
}
#map{
	height: 70vh;
	width: 100%; 
}
.specials{
	background-color: #ddd; 
}
.specials div{
	max-width: 800px;
	padding: 30px;
	margin: auto;
	line-height: 190%;
	color: #000; 
	font-family: Cormorant Infant; 
	font-size: 18px; 
}
.specials div a{
	color: #000;
	border-bottom: 1px dashed #fff;
}









@media only screen and ( min-width: 1024px ) {
.squares, .squares2 {
	display: flex;
	margin:auto;
	}
.squares div {
	display: inline-block;
	height: 40vh;
	width: calc( 33% - 4px );
}


@supports (display: grid) {
.squares {
	display: grid;
	grid-template-rows: repeat(2,18vw);
	grid-template-columns: repeat(3,1fr);
	border: 4px solid white;
}
.squares > div {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  box-sizing: border-box;
  grid-column-start: auto;
  grid-row-start: auto;
 counter-increment: item-counter;
  border: 4px solid white;
	width: auto;
	height: auto;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
  }
  }


} 



@media only screen and ( min-width: 640px ) {
.footer	.address {
	display: none; 
}
.menu{
	display: none; 
}

}








@media only screen and ( max-width: 1024px ) {
.gallery-cell {
  height: 50vh;
  min-height: 400px; 
}

}

@media only screen and ( max-width: 640px ) {
.container {
	display: block;
	position: relative; 
}
.container > div, .container > div > div {
	width: auto; 
	height: auto;
	position: relative;
	min-height: 0;  
}
.sidebar .address {
	display: none; 
}
.menu{
	text-align: center;
	padding: 20px;
}
.menu img{
	width: 80px;
  	transition: 0.5s;
}
.links {
	display: none; 
	opacity: 0;
  	transition: 0.5s;
}

.mobilelinks:hover .links, .mobilelinks:active .links, .mobilelinks:focus .links{
	display: block; 
	opacity: 1;
}
.mobilelinks:hover .menu img, .mobilelinks:active .menu img, .mobilelinks:focus .menu img{
	width: 0;
}
.mobilelinks:hover .menu, .mobilelinks:active .menu, .mobilelinks:focus .menu {
	padding	: 0;
}
.biggishpicture{
  height: 70vh !important;
  min-height: 500px !important; 
}
}


@media only screen and ( max-width: 480px ) {
.sidebar img {
	max-width: 100%;
	width: 150px; 
}
.menu img{
	width: 80px; 
}
}



@media only screen and ( min-height: 880px ) {
.sidebar > div {
	position: sticky;
	top: 20px
}
}