@charset "UTF-8";

/*--- FONTS ---*/
@import url(https://fonts.googleapis.com/css?family=Cinzel:400,500|Open+Sans:300,400,700);

/*--- COLORS ---*/

a, a:hover, a:visited {
	transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    text-decoration:none;
    color:black;
    cursor:pointer;
    pointer-events:auto !important;  
}

.lightbg{ background-color:#d6ccc0; }

.brightcolorbg{ background-color:#9d8868; }
.brightcolor{ color:#9d8868; }
a.brightcolor{ color:#9d8868; }
a:hover.brightcolor{ color:#c1b1a0; }
.button.brightcolor{ background-color: #9d8868; border: solid 1px #9d8868; color:#000000; }
.button.brightcolor:hover{ background-color: #FFFFFF; border: solid 1px #FFFFFF; color:#000000; }

.darkcolorbg{ background-color:#91615e; }
.darkcolor{ color:#91615e; }
a.darkcolor{ text-decoration:underline; color:#91615e; }
a:hover.darkcolor{ color:#91615e; }
.button.darkcolor{ background-color: #91615e; border: solid 1px #91615e; color:#FFFFFF; }
.button.darkcolor:hover{ background-color: #b77977; border: solid 1px #b77977; color:#FFFFFF; }

.darkgraybg{ background-color:#353535; }
.darkgray{ color:#454545; }

.graybg{ background-color:#454545; }
.gray{ color:#999999; }
a.gray{ color:#999999; text-decoration:none; }
a:hover.gray{ color:white; }

.lightgraybg{background-color: #f1f1f1; }
.lightgray{color: #f1f1f1; }

.whitebg{ background-color:#ffffff; }
.white{ color:white; }
a.white{ text-decoration:none; color:white; }
a:hover.white{ text-decoration:underline;}
.button.white{ background-color: none; border: solid 1px #FFFFFF; color:#FFFFFF; }
.button.white:hover{ background-color: #FFFFFF; border: solid 1px #FFFFFF; color:#333333; }

.black{ color:black; }
.blackbg{ background-color:black; }

.divider.fancy{ width:100%; height:50px; background:url('../_images/divider-fancy.jpg'); background-position:center; }
div.divider, div.divider.dark{ width:100%; height:1px; background-color:rgba(0, 0, 0, 0.15); }
tr.divider td, tr.divider.dark td{ border-bottom: 1px solid rgba(0, 0, 0, 0.15); }
div.divider.light{ width:100%; height:1px; background-color:rgba(255, 255, 255, 0.25); }

.border{ border: 1px solid rgba(0, 0, 0, 0.2); }

.border.light{ border: 1px solid rgba(255, 255, 255, 0.25); }

.debug, .debug div div, .debug div div div div, .debug div div div div div div{
    border-top: solid 2px #FF00FF;
    border-left: solid 2px #FF00FF;
    border-bottom: solid 2px #DD00DD;
    border-right: solid 2px #DD00DD;
}

.debug div, .debug div div div, .debug div div div div div{
    border-top: solid 2px #00DDBB;
    border-left: solid 2px #00DDBB;
    border-bottom: solid 2px #00BB99;
    border-right: solid 2px #00BB99;
}

.hide{ display:none !important; }

div, *, *:before, *:after
{
    -webkit-box-sizing: border-box;  /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing:border-box;         /* Opera/IE 8+ */
}

#menu, #videobackdrop{
	transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
}

table { border-collapse: collapse; }

h1,h2,h3{ padding:0; margin:0; }

section {display:block; margin:0; padding:0; pointer-events:none;}

iframe{ pointer-events:auto; }

img{ width:100%; vertical-align:middle;}

.clear{ clear:both; }

.cursor, .pointer { cursor: pointer; }

.right{ text-align: right; }

.overflow{ overflow: auto; }

.noverflow{ overflow: hidden !important; }

.nowrap{ white-space: nowrap; }

.line0{ line-height:0px !important; }

.dropshadow{
    -webkit-box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
    -moz-box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
    box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
}

.dropshadowsmall{
    -webkit-box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.2);
    -moz-box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.2);
    box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.2);
}

.textshadow{
    text-shadow: 4px 4px 8px #000000;
}

.shaded {
    -webkit-box-shadow: inset 1px 1px 1px 1px rgba(0,0,0,.2);
    -moz-box-shadow: inset 1px 1px 1px 1px rgba(0,0,0,.2);
    box-shadow: inset 1px 1px 1px 1px rgba(0,0,0,.2);
}

.radius{ -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; overflow: auto; }
.radiustl{ -webkit-border-top-left-radius: 4px; -moz-border-radius-topleft: 4px; border-top-left-radius: 4px; }
.radiustr{ -webkit-border-top-right-radius: 4px; -moz-border-radius-topright: 4px; border-top-right-radius: 4px; }
.radiusbl{ -webkit-border-bottom-left-radius: 4px; -moz-border-radius-botomleft: 4px; border-bottom-left-radius: 4px; }
.radiusbr{ -webkit-border-bottom-right-radius: 4px; -moz-border-radius-bottomright: 4px; border-bottom-right-radius: 4px; }



.blur{ -webkit-filter: blur(2px); -moz-filter: blur(2px); -ms-filter: blur(2px); -o-filter: blur(2px); filter: blur(2px); }

.brighten, .brighten img {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    text-decoration: none;
	transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
}

.brighten:hover img {
    filter: brightness(130%);
    -ms-filter: brightness(130%);
    -webkit-filter: brightness(130%);
    -moz-filter: brightness(130%);
	transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
}


.swell div{
	transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
	overflow:hidden;
	transform: scale(1.00, 1.00);
}

.swell:hover div, .swell:hover img{
    transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
	filter: saturate(115%);
    -webkit-filter: saturate(115%);
}

.swell div table, .swell div img, .swell img{
	transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -ms-transform: scale(1.00, 1.00); /* IE 9 */
    -webkit-transform: scale(1.00, 1.00); /* Safari */
    transform: scale(1.00, 1.00);
}

.swell:hover div table, .swell:hover div img, .swell:hover img{
	transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -ms-transform: scale(1.03, 1.03); /* IE 9 */
    -webkit-transform: scale(1.03, 1.03); /* Safari */
    transform: scale(1.03, 1.03);
}

.element_show {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition-timing-function: cubic-bezier(0.0, 0.5, 0.5, 1);
	-ms-transform: scale(1.0,1.0) translate(0%,0%) rotate(0.00deg);
	-webkit-transform: scale(1.0,1.0) translate(0%,0%) rotate(0.00deg);
	transform: scale(1.0,1.0) translate(0%,0%) rotate(0.00deg);
}

.element_hide {
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition-timing-function: cubic-bezier(0.5, 0.0, 0.5, 0.5);
	-ms-transform: scale(0.92,0.92) translate(0%,0%) rotate(0.01deg);
	-webkit-transform: scale(0.92,0.92) translate(0%,0%) rotate(0.01deg);
	transform: scale(0.92,0.92) translate(0%,0%) rotate(0.01deg);
}

/*.center > div{ text-align:left; }*/
.center{ align:center; text-align:center !important; }
.center a div, a.center div, .center > div{ margin:auto; }
.valign{ vertical-align:middle; }
.valign img{ vertical-align:middle; }

.caps{ text-transform:uppercase; }
.bold, b{ font-weight: 700 !important; }
.thin{ font-weight: 300 !important; }
.italic{ font-style: italic; }
.underline{ text-decoration:underline !important; }


/*---a feature slots---*/
[class^="slot"]{
    -webkit-transition:left 1s, right 1s;
    transition:left 1s, right 1s;
}

.slot1{ left:0%; }
.slot2{ left:-100%; }
.slot3{ left:-200%; }
.slot4{ left:-300%; }
.slot5{ left:-400%; }
.slot6{ left:-500%; }
.slot7{ left:-600%; }
.slot8{ left:-700%; }
.slot9{ left:-800%; }
.slot10{ left:-900%; }
.slot11{ left:-1000%; }
.slot12{ left:-1100%; }
.slot13{ left:-1200%; }
.slot14{ left:-1300%; }
.slot15{ left:-1400%; }
.slot16{ left:-1500%; }
.slot17{ left:-1600%; }
.slot18{ left:-1700%; }
.slot19{ left:-1800%; }
.slot20{ left:-1900%; }
.slot21{ left:-2000%; }
.slot22{ left:-2100%; }
.slot23{ left:-2200%; }
.slot24{ left:-2300%; }
.slot25{ left:-2400%; }
.slot26{ left:-2500%; }



/*now for the custom things that might get overridden in mobile or changed for other themes*/

html, body{
	width:100%;
	height:100%;
	min-height:100%;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	background-color: #ffffff;
	color:#333333;
	padding:0;
	margin:0;
	scroll-behavior: smooth;
}

.button{
	pointer-events:auto;
    min-width: 40px;
    line-height: 40px;
    background-color: none;
    -webkit-border-radius: 4px !important;
    -moz-border-radius: 4px !important;
    border-radius: 4px !important;
    border: solid 1px #666666;
    text-align:center;
    cursor: pointer;
    color:#333333;
    white-space: nowrap;
    padding-left: 20px;
    padding-right: 20px;
    background-repeat:no-repeat;
    background-position:right;
    background-size:contain;
}

.button:hover{
	background-color: #666666; border: solid 1px #666666; color:#FFFFFF;
}

.button.big{ height:55px; line-height: 55px; }
.button.small{ height:30px; line-height: 30px; }
.button.tiny{ height:20px; line-height: 20px; }

.darkenbg{ background-color: rgba(0, 0, 0, 0.7); }

.lightenbg{ background-color: rgba(255, 255, 255, 0.7); }

.vspacer{ height:40px; }

input[type=text], input[type=password], input[type=email], input[type=number], input[type=tel], select, option {
    font-size: 13px;
}

input[type=text], input[type=password], input[type=email], select, option {
    -webkit-appearance:none;
    color:#777777;
    border-radius: 0px;
    -moz-border-radius: 0px;
    -khtml-border-radius: 0px;
    -webkit-border-radius: 0px;
    width:100%;
}

input[type=text], input[type=email], input[type=password] {
    height:28px;
    outline:none;
    border:none;
    background:none;
    padding-left: 10px;
}

textarea{
    height: calc(100% - 20px);
    width: calc(100% - 6px);
    background:none;
    margin-top:6px;
    margin-left:6px;
    border: none;
    resize: none;
    outline: none;
}

select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height:30px;
    outline:none;
    border:none;
    background:none;
    padding-left: 10px;
}

select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #888;
}

select option[selected]{
    box-shadow: inset 100px 100px #DDDDDD;
}

select option:checked, select option:hover{
    box-shadow: inset 100px 100px #A3E000;
}


::-webkit-input-placeholder {
    color: #BBBBBB;
}

:-moz-placeholder { /* Firefox 18- */
    -moz-appearance:none;
    color: #BBBBBB;
}

::-moz-placeholder {  /* Firefox 19+ */
    -moz-appearance:none;
    color: #BBBBBB;
}

:-ms-input-placeholder {
    color: #BBBBBB;
}


/*Masonry defaults*/
.masonry div{
	background-position:center;
	background-size:cover;
}

.masonry > div > div > a > div, .masonry > div > div > div > a > div{
	transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	opacity:0;
}

.masonry > div > div > a:hover > div, .masonry > div > div > div > a:hover > div{
	transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	opacity:1;
}

.masonry > div > div{
	position:relative; 	
}

.masonry > div > div > a > div, .masonry > div > div > div > a > div{
	position:absolute;
	top:0; left:0; right:0; bottom:0;
	background-color: rgba(20, 20, 20, 0.5);
}

.sixteen-nine{
	pointer-events:none;
	position:relative;
	padding-bottom:56.25%;
}	

.square{
	position:relative;
	padding-bottom:100.5%;
}

.five-four{
	position:relative;
	padding-bottom:79.3%;
}	


@media
only screen and (min-width:1250px)
{
	/****** largest screens: full size desktops and such *******/
	/****** max width of content area is set in some places *******/
    .hide_large, .row.hide_large{
        display:none;
    }

	html,body{
		line-height: 27px;
		font-size: 17px;
	}

	h1, .huge{
		font-weight:300;
		font-size: 45px;
		line-height:45px;
		/*font-family: 'Maitree', serif;*/
	}

	h2, .large{
		font-weight:400;
		font-size: 28px;
		line-height:28px;
		font-family: 'Cinzel', serif;
	}
	
	.medium{
		font-weight:300;
		font-size:22px;
		line-height:28px;
		/*font-family: 'Maitree', serif;*/
	}
	
	.small{
		font-size:14px;
		line-height:25px;
	}

	.tiny{
		font-size:11px;
		line-height:11px;
	}

    .container{
    	min-height:calc(100vh);
    	position:relative;
    }

	.padded{
		padding:50px;
	}
	
	.herobg{
		/*background-size: 2000px !important;*/
		background-size: calc(1600px + 33vh + 5vw) !important;
		background-position:center 65% !important;
		background-repeat:no-repeat !important;
		/*height:690px;*/
		min-height:calc(250px + 25vh + 5vw);
	}
	
	.photobg{
		background-position:center;
		background-size: cover !important;
		background-repeat:no-repeat !important;
		min-height:calc(350px + 5vh + 10vw);
	}

	.row{
		display: -webkit-box; 
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex; 
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		overflow:hidden;
		clear:both;
		padding-left: calc(50% - (1200px/2) - 25px);
		padding-right: calc(50% - (1200px/2) - 25px);
	}

	.full{
		margin-left: calc(50% - (1200px/2) - 25px);
		margin-right: calc(50% - (1200px/2) - 25px);
	}

	.row > div, .row > .full{
		margin-left:25px;
		margin-right:25px;
		padding-left:0px;
		padding-right:0px;
	}

	/*TODO this line is effed up*/
	.row div .row, .row > div > .row > div{
		margin-left:0px;
		margin-right:0px;
		padding-left:0px;
		padding-right:0px;
	}

	.row > div > .full, .row .full {
		width:100%;
	}
	
	.row .row{
		padding-left: 0px;
		padding-right: 0px;
	}

	.row.bleed{
		padding-left:0;
		padding-right:0;
	}

	.row.bleed > .full{
		margin-left:0;
		margin-right:0;
		padding-left: calc(50% - (1200px/2) - 25px);
		padding-right: calc(50% - (1200px/2) - 25px);
		margin-bottom:0px;
	}

	.row.bleed > .half:first-child{
		margin-left:0;
		padding-left: calc(50% - (1200px/2) - 0px);
		width: calc(50% - 25px);
		background-position:right !important;
		margin-bottom:0px;
	}

	.row.bleed > .half:last-child{
		margin-right:0;
		padding-right: calc(50% - (1200px/2) - 0px);
		width: calc(50% - 25px);
		background-position:left !important;
		margin-bottom:0px;
	}

	.row.bleed > .threequarters:first-child{
		margin-left:0;
		padding-left: calc(50% - (1200px/2) - 0px);
		width: calc(50% - 25px + (1200px/3.33));
		background-position:right !important;
		margin-bottom:0px;
	}

	.row.bleed > .quarter:last-child{
		margin-right:0;
		padding-right: calc(50% - (1200px/2) - 0px);
		width: calc(50% - 25px - (1200px/3.33));
		background-position:left !important;
		margin-bottom:0px;
	}
	
	/*half at the outermost level*/
	.row > .half{
		width: calc(50% - 50px);
	}	

	/*half when nested*/
	.row .row .half{
		width:50%;
		margin:0;
	}

	/*third at the outermost level*/
	.row > .third{
		width:calc(33.333% - 50px);
	}

	/*thirds when nested*/
	.row .row .third{ 
		width:33.33%;
		margin:0;
	}	

	/*outermost level*/
	.row > .twothirds{
		width:calc(66.666% - 50px);
	}

	/*when nested*/
	.row .row .twothirds{
		width:66.66%;
	}

	/*quarter at the outermost level*/
	.row > .quarter, .row > .fourth{
		width:calc(25% - 50px);
	}

	/*quarters when nested*/
	.row .row .quarter, .row .row .fourth, td .row .quarter{
		width:25%;
		margin-left:0;
		margin-right:0;
	}

	/*threequarters at the outermost level*/
	.row > .threequarters, .row > .threefourths{
		width:calc(75% - 50px);
	}

	/*threequarters when nested*/
	.threequarters, .threefourths{
		width:75%;
	}	

	.row > .fifth{ width:calc(20% - 50px); }
	.row .row .fifth{ width:20%; }
	.row > .sixth{ width:calc(16.66% - 50px); }
	.row .row .sixth{ width:16.66%; }

	/*.row > div{
		padding-top:50px;
		padding-bottom:50px;	
	}*/
	
	.row > .row > div{
		padding-top:0px;
		padding-bottom:0px;	
	}
	
	.mbottom, .mb{
		margin-bottom:50px;
	}

	.row > .herobg, .row > .photobg, .row > .lightenbg, .row > .darkenbg, .row > .lightbg, .row > .lightgraybg, .row > .whitebg, .row > .darkcolorbg, .row > .brightcolorbg, .row > .graybg, .row > .darkgraybg, .row > .blackbg, .row > .border{
		padding-left:50px;
		padding-right:50px;
	}

	.masonry{
		border-bottom:5px solid white;
		border-top:5px solid white;
	}
	
	.masonry > .big_left{
		padding:0 !important;
		margin-top:0 !important;
		margin-left:calc(50% - (1200px/2) - 0px) !important;
		margin-right:0 !important;
		margin-bottom:0 !important;
		width:calc(57.7% - 25px);
		border-right:5px solid white;
	}

	.masonry.bleed > .big_left{
		padding:0 !important;
		margin-top:0 !important;
		margin-left:0 !important;
		margin-right:0 !important;
		margin-bottom:0 !important;
		width:calc(57.7% - 0px);
		border-right:5px solid white;
	}


	.masonry > .big_right{
		padding:0 !important;
		margin-top:0 !important;
		margin-right:calc(50% - (1200px/2) - 0px) !important;
		margin-left:0 !important;
		margin-bottom:0 !important;
		width:calc(57.7% - 25px);
		border-left:5px solid white;
	}
	
	.masonry.bleed > .big_right{
		padding:0 !important;
		margin-top:0 !important;
		margin-left:0 !important;
		margin-right:0 !important;
		margin-bottom:0 !important;
		width:calc(57.7% - 0px);
		border-left:5px solid white;
	}

	.masonry > .small_left{
		padding:0 !important;
		margin-top:0 !important;
		margin-right:0 !important;
		margin-left:calc(50% - (1200px/2) - 0px) !important;
		margin-bottom:0 !important;
		width:calc(42.3% - 25px);
		border-right:5px solid white;
	}
	
	.masonry.bleed > .small_left{
		padding:0 !important;
		margin-top:0 !important;
		margin-left:0 !important;
		margin-right:0 !important;
		margin-bottom:0 !important;
		width:calc(42.3% + 0px);
		border-right:5px solid white;
	}
	
	.masonry > .small_right{
		padding:0 !important;
		margin-top:0 !important;
		margin-right:calc(50% - (1200px/2) - 0px) !important;
		margin-left:0 !important;
		margin-bottom:0 !important;
		width:calc(42.3% - 25px);
		border-left:5px solid white;
	}

	.masonry.bleed > .small_right{
		padding:0 !important;
		margin-top:0 !important;
		margin-right:0 !important;
		margin-left:0 !important;
		margin-bottom:0 !important;
		width:calc(42.3% + 0px);
		border-left:5px solid white;
	}

	.masonry > div > .big_top {
		padding:0 !important;
		margin:0 !important;
		height:calc(58.3% - 0px);
		border-bottom:5px solid white;
	}

	.masonry > div > .big_bottom {
		padding:0 !important;
		margin:0 !important;
		height:calc(58.3% - 0px);	
		border-top:5px solid white;
	}

	.masonry > div > .small_top {
		padding:0 !important;
		margin:0 !important;
		height:calc(41.7% - 0px);
		border-bottom:5px solid white;
	}

	.masonry > div > .small_bottom {
		padding:0 !important;
		margin:0 !important;
		height:calc(41.7% - 0px);
		border-top:5px solid white;
	}

	.masonry > .full{
		padding-top:0 !important;
		padding-bottom:0 !important;
		margin-top:0 !important;
		margin-bottom:0 !important;
		width:100%;
	}

	.masonry > .half:first-child{
		padding-top:0 !important;
		padding-bottom:0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
		margin-top:0 !important;
		margin-bottom:0 !important;
		margin-right:5px !important;
		width:calc(50% - 30px);	
	}

	.masonry > .half:last-child{
		padding-top:0 !important;
		padding-bottom:0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
		margin-top:0 !important;
		margin-bottom:0 !important;
		margin-left:5px !important;
		width:calc(50% - 30px);
	}
	
}



@media
only screen and (min-width:1024px) and (max-width:1249px)
{
	/****** still pretty big *******/

    .hide_large, .row.hide_large{
        display:none;
    }

	html,body{
		-webkit-text-size-adjust: 100%;
		line-height: 26px;
		font-size: 17px;
	}

	h1, .huge{
		font-weight:300;
		font-size: 42px;
		line-height:42px;
		/*font-family: 'Maitree', serif;*/
	}

	h2, .large{
		font-weight:400;
		font-size: 28px;
		line-height:28px;
		font-family: 'Cinzel', serif;
	}
	
	.medium{
		font-weight:300;
		font-size:22px;
		line-height:28px;
	}
	
	.small{
		font-size:13px;
		line-height:25px;
	}

	.tiny{
		font-size:11px;
		line-height:11px;
	}
	
    .container{
    	min-height:calc(100vh);
    	position:relative;
    }
 
 	.padded{
		padding:25px;
	}
	
	input[type=text], input[type=password], input[type=email], input[type=number], input[type=tel], select, option {
		font-size: 13px;
	}

	.herobg{
		background-size: calc(133vw + 5vh) !important;
		background-position:center !important;
		background-repeat:no-repeat !important;
		min-height:calc(42vw + 5vh);
	}
	
	.photobg{
		background-position:center;
		background-size: cover !important;
		background-repeat:no-repeat !important;
		min-height:calc(40vw);
	}

	.row{
		display: -webkit-box; 
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex; 
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		overflow:hidden;
		clear:both;
		padding-left: 12.5px;
		padding-right: 12.5px;
	}

	.row > div{
		margin-left:12.5px;
		margin-right:12.5px;
	}

	.row .row{
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.full{
		width: 100%;
	}

	.row.bleed{
		padding-left:0;
		padding-right:0;
	}

	.row.bleed > .full{
		margin-left:0;
		margin-right:0;
		padding-left: 25px;
		padding-right: 25px;
		margin-bottom:0px;
	}
	
	.row.bleed > .half:first-child{
		margin-left:0;
		padding-left: 25px;
		width: calc(50% - 12.5px);
		background-position:right !important;
	}
	
	.row.bleed > .half:last-child{
		margin-right:0;
		padding-right: 25px;
		width: calc(50% - 12.5px);
		background-position:left !important;
	}

	.row.bleed > .threequarters:first-child{
		margin-left:0;
		padding-left: 25px;
		width: calc(75% - 12.5px);
		background-position:right !important;
	}

	.row.bleed > .quarter:last-child{
		margin-right:0;
		padding-right: 25px;
		width: calc(25% - 12.5px);
		background-position:left !important;
	}

	/*half at the outermost level*/
	.row > .half{
		width: calc(50% - 25px);
	}	

	/*half when nested*/
	.row .row .half{
		width:50%;
		margin:0;
	}

	/*third at the outermost level*/
	.row > .third{
		width:calc(33.333% - 25px);
	}

	/*thirds when nested*/
	.row .row .third{ 
		width:33.33%;
		margin:0;
	}	

	/*outermost level*/
	.row > .twothirds{
		width:calc(66.666% - 25px);
	}

	/*when nested*/
	.row .row .twothirds{
		width:66.66%;
	}

	/*quarter at the outermost level*/
	.row > .quarter, .row > .fourth{
		width:calc(25% - 25px);
	}

	/*quarters when nested*/
	.row .row .quarter, .row .row .fourth, td .row .quarter{
		width:25%;
		margin-left:0;
		margin-right:0;
	}

	/*threequarters at the outermost level*/
	.row > .threequarters, .row > .threefourths{
		width:calc(75% - 25px);
	}

	/*threequarters when nested*/
	.threequarters, .threefourths{
		width:75%;
	}	

	.row > .fifth{ width:calc(20% - 25px); }
	.row .row .fifth{ width:20%; }
	.row > .sixth{ width:calc(16.66% - 25px); }
	.row .row .sixth{ width:16.66%; }

	/*.row > div{
		padding-top:25px;
		padding-bottom:25px;	
	}*/

	.mbottom, .mb{
		margin-bottom:25px;
	}

	.row > .herobg, .row > .photobg, .row > .lightenbg, .row > .darkenbg, .row > .lightbg, .row > .lightgraybg, .row > .whitebg, .row > .darkcolorbg, .row > .brightcolorbg, .row > .graybg, .row > .darkgraybg, .row > .blackbg, .row > .border{
		padding-left:25px;
		padding-right:25px;
	}

	.masonry{
		padding:0 !important;
		margin:0 !important;
		border-bottom:5px solid white;
		border-top:5px solid white;
	}
	
	.masonry > .big_left{
		padding:0 !important;
		margin:0 !important;
		width:calc(57.7% - 0px);
		border-right:5px solid white;
	}
	
	.masonry > .big_right{
		padding:0 !important;
		margin:0 !important;
		width:calc(57.7% - 0px);
		border-left:5px solid white;
	}
	
	.masonry > .small_left{
		padding:0 !important;
		margin:0 !important;
		width:calc(42.3% + 0px);
		border-right:5px solid white;
	}
	
	.masonry > .small_right{
		padding:0 !important;
		margin:0 !important;
		width:calc(42.3% + 0px);
		border-left:5px solid white;
	}

	.masonry > div > .big_top {
		padding:0 !important;
		margin:0 !important;
		height:calc(58.3% - 0px);
		border-bottom:5px solid white;
	}

	.masonry > div > .big_bottom {
		padding:0 !important;
		margin:0 !important;
		height:calc(58.3% - 0px);	
		border-top:5px solid white;
	}

	.masonry > div > .small_top {
		padding:0 !important;
		margin:0 !important;
		height:calc(41.7% - 0px);
		border-bottom:5px solid white;
	}

	.masonry > div > .small_bottom {
		padding:0 !important;
		margin:0 !important;
		height:calc(41.7% - 0px);
		border-top:5px solid white;
	}

	.masonry > .full{
		padding:0 !important;
		margin:0 !important;
		width:100%;
	}

	.masonry > .half:first-child{
		padding-top:0 !important;
		padding-bottom:0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
		margin-top:0 !important;
		margin-left:0 !important;
		margin-bottom:0 !important;
		margin-right:5px !important;
		width:calc(50% - 5px);	
	}

	.masonry > .half:last-child{
		padding-top:0 !important;
		padding-bottom:0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
		margin-top:0 !important;
		margin-right:0 !important;
		margin-bottom:0 !important;
		margin-left:5px !important;
		width:calc(50% - 5px);
	}

}




@media
only screen and (min-width:734px) and (max-width:1023px)
{
	/****** medium screens: ipad portrait, big phones landscape *******/

    .hide_medium{
        display:none !important;
    }

	html,body{
		-webkit-text-size-adjust: 100%;
		line-height: 24px;
		font-size: 17px;
	}

	h1, .huge{
		font-weight:300;
		font-size: 40px;
		line-height:40px;
		/*font-family: 'Maitree', serif;*/
	}

	h2, .large{
		font-weight:400;
		font-size: 28px;
		line-height:28px;
		font-family: 'Cinzel', serif;
	}
	
	.medium{
		font-weight:300;
		font-size:22px;
		line-height:28px;
	}
	
	.small{
		font-size:13px;
		line-height:25px;
	}

	.tiny{
		font-size:11px;
		line-height:11px;
	}
	
    .container{
    	min-height:calc(100vh);
    	position:relative;
    }
 
 	.padded{
		padding:25px;
	}
	
	input[type=text], input[type=password], input[type=email], input[type=number], input[type=tel], select, option {
		font-size: 13px;
	}

	.herobg{
		background-size: calc(133vw) !important;
		background-position:center bottom !important;
		background-repeat:no-repeat !important;
		min-height:calc(30vw + 80px);
	}
	
	.photobg{
		background-position:center;
		background-size: cover !important;
		background-repeat:no-repeat !important;
		min-height:calc(20vw + 20vh);
	}

	.row{
		display: -webkit-box; 
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex; 
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		overflow:hidden;
		clear:both;
		padding-left: 12.5px;
		padding-right: 12.5px;
	}

	.row > div{
		margin-left:12.5px;
		margin-right:12.5px;
	}

	.row .row{
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.full{
		width: 100%;
	}

	.row.bleed{
		padding-left:0;
		padding-right:0;
	}

	.row.bleed > .full{
		margin-left:0;
		margin-right:0;
		padding-left: 25px;
		padding-right: 25px;
		margin-bottom:0px; /*maybe not necessary? or should also be on next class? */
	}
	
	.row.bleed > .half:first-child{
		margin-left:0;
		padding-left: 25px;
		width: calc(50% - 12.5px);
		background-position:right !important;
	}
	
	.row.bleed > .half:last-child{
		margin-right:0;
		padding-right: 25px;
		width: calc(50% - 12.5px);
		background-position:left !important;
	}

	.row.bleed > .threequarters:first-child{
		margin-left:0;
		padding-left: 25px;
		width: calc(75% - 12.5px);
		background-position:right !important;
	}

	.row.bleed > .quarter:last-child{
		margin-right:0;
		padding-right: 25px;
		width: calc(25% - 12.5px);
		background-position:left !important;
	}

	/*half, quarter, etc. at the outermost level*/
	.row > .half, .row > .quarter, .row > .fourth{
		width: calc(50% - 25px);
	}

	/*half when nested*/
	.row .row .half{
		width:100%;
		margin:0;
	}

	/*third at the outermost level*/
	.row > .third, .row > .fifth, .row > .sixth{
		width:calc(33.333% - 25px);
	}

	/*thirds when nested*/
	.row .row .third{ 
		width:100%;
		margin:0;
	}	


	/*outermost level*/
	.row > .twothirds{
		width:calc(66.666% - 25px);
	}

	/*when nested*/
	.row .row .twothirds{
		width:100%;
	}

	/*quarters when nested*/
	.row .row .quarter, .row .row .fourth, td .row .quarter{
		width:50%;
		margin-left:0;
		margin-right:0;
	}

	/*threequarters at the outermost level*/
	.row > .threequarters, .row > .threefourths{
		width:calc(75% - 25px);
	}

	/*threequarters when nested*/
	.threequarters, .threefourths{
		width:100%;
	}	

	/*force to full at outermost level*/
	.row > .medium_full{
		width: 100% !important;
	}

	/*force to half*/
	.row > .medium_half{
		width: calc(50% - 25px) !important;
	}

	.row > .row .medium_half{
		width: 50% !important;
		margin-left:0;
		margin-right:0;
	}


	/*force to third*/
	.row > .medium_third{
		width: calc(33.33% - 25px) !important;
	}

	.row .row .medium_third, .row > div > .row > .medium_third{
		width: 33.333% !important;
	}

	/*force to quarter*/
	.row > .medium_quarter{
		width: calc(25% - 25px) !important;
	}
	
	.row .row .medium_quarter, .row > div > .row > .medium_quarter{
		width: 25% !important;
	}

	/*.row > div{
		padding-top:25px;
		padding-bottom:25px;	
	}*/

	.mbottom, .mb{
		margin-bottom:25px;
	}

	.row > .herobg, .row > .photobg, .row > .lightenbg, .row > .darkenbg, .row > .lightbg, .row > .lightgraybg, .row > .whitebg, .row > .darkcolorbg, .row > .brightcolorbg, .row > .graybg, .row > .darkgraybg, .row > .blackbg, .row > .border{
		padding-left:25px;
		padding-right:25px;
	}

	.masonry{
		padding:0 !important;
		margin:0 !important;
		border-bottom:5px solid white;
		border-top:5px solid white;
	}
	
	.masonry > .big_left{
		padding:0 !important;
		margin:0 !important;
		width:calc(57.7% - 0px);
		border-right:5px solid white;
	}
	
	.masonry > .big_right{
		padding:0 !important;
		margin:0 !important;
		width:calc(57.7% - 0px);
		border-left:5px solid white;
	}
	
	.masonry > .small_left{
		padding:0 !important;
		margin:0 !important;
		width:calc(42.3% + 0px);
		border-right:5px solid white;
	}
	
	.masonry > .small_right{
		padding:0 !important;
		margin:0 !important;
		width:calc(42.3% + 0px);
		border-left:5px solid white;
	}

	.masonry > div > .big_top {
		padding:0 !important;
		margin:0 !important;
		height:calc(58.3% - 0px);
		border-bottom:5px solid white;
	}

	.masonry > div > .big_bottom {
		padding:0 !important;
		margin:0 !important;
		height:calc(58.3% - 0px);	
		border-top:5px solid white;
	}

	.masonry > div > .small_top {
		padding:0 !important;
		margin:0 !important;
		height:calc(41.7% - 0px);
		border-bottom:5px solid white;
	}

	.masonry > div > .small_bottom {
		padding:0 !important;
		margin:0 !important;
		height:calc(41.7% - 0px);
		border-top:5px solid white;
	}

	.masonry > .full{
		padding:0 !important;
		margin:0 !important;
		width:100%;
	}

	.masonry > .half:first-child{
		padding-top:0 !important;
		padding-bottom:0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
		margin-top:0 !important;
		margin-left:0 !important;
		margin-bottom:0 !important;
		margin-right:5px !important;
		width:calc(50% - 5px);	
	}

	.masonry > .half:last-child{
		padding-top:0 !important;
		padding-bottom:0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
		margin-top:0 !important;
		margin-right:0 !important;
		margin-bottom:0 !important;
		margin-left:5px !important;
		width:calc(50% - 5px);
	}


}


@media
only screen and (max-width:733px)
{

	/****** smallest screens *******/

    .hide_small, .row.hide_small {
        display:none !important;
    }

	html,body{
		-webkit-text-size-adjust: 100%;
		line-height: 23px;
		font-size: 16px;
	}

	h1, .huge{
		font-weight:300;
		font-size: 40px;
		line-height:40px;
		/*font-family: 'Maitree', serif;*/
	}

	h2, .large{
		font-weight:400;
		font-size: 28px;
		line-height:28px;
		font-family: 'Cinzel', serif;
	}
	
	.medium{
		font-weight:300;
		font-size:22px;
		line-height:28px;
	}
	
	.small{
		font-size:13px;
		line-height:25px;
	}

	.tiny{
		font-size:11px;
		line-height:11px;
	}
	
    .container{
    	position:relative;
    	right:0;
    }
 
 	.padded{
		padding:25px;
	}
	
	input[type=text], input[type=password], input[type=email], input[type=number], input[type=tel], select, option {
		font-size: 13px;
	}

	.herobg{
		background-size: calc(75vw + 75vh) !important;
		background-position:20% !important;
		background-repeat:no-repeat !important;
		min-height:calc(24vw + 26vh);
	}
	
	.photobg{
		background-position:center;
		background-size: cover !important;
		background-repeat:no-repeat !important;
		min-height:calc(20vw + 30vh);
	}

	.row{
		display: -webkit-box; 
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex; 
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		overflow:hidden;
		clear:both;
		padding-left: 12.5px;
		padding-right: 12.5px;
	}
	
	.row .row{
		padding-left: 0px;
		padding-right: 0px;
	}

	.row > div{
		margin-left:12.5px;
		margin-right:12.5px;
	}	

	.row.bleed{
		padding-left:0;
		padding-right:0;
	}

	.row.bleed > .full{
		margin-left:0;
		margin-right:0;
		padding-left: 25px;
		padding-right: 25px;
	}
	
	.row.bleed > .half:first-child{
		margin-left:0;
		margin-right:0;
		padding-left: 25px;
		padding-right: 25px;
		background-position:right !important;
	}
	
	.row.bleed > .half:last-child{
		margin-left:0;
		margin-right:0;
		padding-left: 25px;
		padding-right: 25px;
		background-position:left !important;
	}
	
	.full, .row > .full, .row > .half, .row > .third, .row > .twothirds{
		width: 100%;
	}
	
	.small_full{
		width: 100% !important;
	}

	/*outermost level*/
	.row > .quarter, .row > fourth, .row > .threefourths, .row > .threequarters, .row > .fifth, .row > .sixth{
		width: calc(50% - 25px);
	}

	/*when nested*/
	.row .row .half, .row .row .quarter, .row .row .fourth, .row .row .third, .row .row .twothirds, .row .row .threequarters, .row .row .threefourths {
		width:100%;
		margin:0;
	}

	/*force to half*/
	.row > .small_half{
		width: calc(50% - 25px) !important;
	}

	.row .row .small_half, .row > div > .row > .small_half{
		width:50% !important;
		margin:0;
	}

	/*.row > div{
		padding-top:25px;
		padding-bottom:25px;	
	}*/

	.mbottom, .mb{
		margin-bottom:25px;
	}

	.row > .herobg, .row > .photobg, .row > .lightenbg, .row > .darkenbg, .row > .lightbg, .row > .lightgraybg, .row > .whitebg, .row > .darkcolorbg, .row > .brightcolorbg, .row > .graybg, .row > .darkgraybg, .row > .blackbg, .row > .border{
		padding-left:25px;
		padding-right:25px;
	}

	.masonry{
		padding:0 !important;
		margin:0 !important;	
	}

	.masonry > div{
		padding:0 !important;
		margin:0 !important;
		width:100%;
	}
	
	.masonry > div > div{
		border-bottom:5px solid white;
		border-top:5px solid white;
	}

}

.margin0{margin:0 !important;}
.mb0, .mbottom0{margin-bottom:0 !important;}

.pad0{ padding:0px !important;}
.padt0{ padding-top:0px !important;}
.padb0{ padding-bottom:0px !important;}
.pad1{ padding:1px !important;}
.pad2{ padding:2px !important;}
.pad5{ padding:5px !important;}
.padt5{ padding-top:5px !important;}
.padb5{ padding-bottom:5px !important;}
.pad10{ padding:10px !important;}
.padt10{ padding-top:10px !important;}
.padb10{ padding-bottom:10px !important;}
.padb20{ padding-bottom:20px !important;}
.pad20{ padding:20px !important;}
.pad25{ padding:20px !important;}
.pad30{ padding:30px !important;}
.pad40{ padding:40px !important;}
.pad50{ padding:50px !important;}
.pad75{ padding:75px !important;}
.pad80{ padding:80px !important;}
.pad100{ padding:100px !important;}

table.cellpad tr td{	padding:5px 5px 5px 10px; }

.w1, .one{ width:1px; }
.w5, .five{ width:5px; }
.w10, .ten{ width:10px; }
.w15, .fifteen{ width:15px; }
.w20, .twenty{ width:20px; }
.w30, .thirty{ width:30px; }
.w40, .forty{ width:40px; }
.w50, .fifty{ width:50px; }
.w60, .sixty{ width:60px; }
.w70, .seventy{ width:70px; }
.w80, .eighty{ width:80px; }
.w90, .ninety{ width:90px; }
.w100, .hundred{ width:100px; }
.w110, .oneten{ width:110px; }
.w120, .onetwenty{ width:120px; }
.w130, .onethirty{ width:130px; }
.w140, .oneforty{ width:140px; }
.w150, .onefifty{ width:150px; }
.w155{ width:155px; }
.w160, .onesixty{ width:160px; }
.w170{ width:170px; }
.w180{ width:180px; }
.w190{ width:190px; }
.w200, .twohundred{ width:200px; }
.w210, .twoten{ width:210px; }
.w230, .twothirty{ width:230px; }
.w250, .twofifty{ width:250px; }
.w260, .twosixty{ width:260px; }
.w300, .threehundred{ width:300px; }
.w310, .threeten{ width:310px; }
.w320, .threetwenty{ width:320px; }
.w330, .threethirty{ width:330px; }
.w340, .threeforty{ width:340px; }
.w350, .threefifty{ width:350px; }
.w380, .threeeightyy{ width:380px; }
.w390, .threeninety{ width:390px; }
.w400, .fourhundred { width: 400px; }
.w450, .fourfifty { width: 450px; }
.w500, .fivehundred { width: 500px; }
.w600, .sixhundred { width: 600px; }
.w700, .sevenhundred { width: 700px; }

.h5{ min-height:5px; !important;}
.h10{ min-height:10px; !important;}
.h15{ min-height:15px; !important;}
.h20{ min-height:20px !important;}
.h25{ min-height:25px !important;}
.h30{ min-height:30px !important;}
.h40{ min-height:40px !important;}
.h50{ min-height:50px !important;}
.h60{ min-height:60px !important;}
.h70{ min-height:70px !important;}
.h80{ min-height:80px !important;}
.h90{ min-height:90px !important;}
.h100{ min-height:100px !important;}
.h150{ min-height:150px !important;}
.h200{ min-height:200px !important;}
.h300{ min-height:300px !important;}
.h400{ min-height:400px !important;}
.h500{ min-height:500px !important;}
.h600{ min-height:600px !important;}
.h700{ min-height:700px !important;}


