@import 'https://fonts.googleapis.com/css?family=Open+Sans|Special+Elite';



body {
	background-color: #fff;
	margin: 0;
	font-family: Open Sans, Arial, Helvetica, sans, sans serif;
	position: relative;
	color: #444;
}
a{
	text-decoration: none;
}
img {
	border: 0;
	max-width: 100%; 
	height: auto;
	max-height: 100%; 
}
input, textarea, select {
	font-family: Open Sans, Arial, Helvetica, sans, sans serif;
	font-size: 15px;
	border-radius: 5px;
	padding: 7px;
	border: 2px solid #666;
	background-color: #fff;
	max-width: 80vw;
	color: #444;
} 
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{
	border-collapse: collapse;
	color: inherit;	
}
td {
	vertical-align: top;
	padding: 0 8px 8px 0;
}

h1 {
	font-size: 100px; 
	font-weight:400; 
	letter-spacing:8px; 
	line-height: 60px; 
	font-family:"Special Elite"; 
}
h2 {
	font-size: 30px;
	font-weight: normal;

}
h3 {
	font-size: 24px;
	font-weight: normal;

}
h4 {
	font-size: 20px;
	font-weight: normal;

}
 blockquote {
    border-radius: 3px;
    position: relative; 
    padding: 1rem 1.2rem;
    width: 80%;  
    color: #4a4a4a;
    margin: 1rem auto 0.5rem;
    color: #4a4a4a;
    background: #f0f0f0;
}



.container{
	display: flex;
	justify-content: center;	
	position: relative; 
}
.container > div {
	flex: 1 1 auto;
}
.main{
	width:75%; 
	background-color: #fff;
}
.sidebar{
	background-color: #20201F;
	color: #fff;
	min-width: 250px;
	min-height: calc( 100vh - 40px ); 
	position: relative; 
}
.sidebar > div > a{
	display: block;
	color: #fff; 
	padding: 10px 30px; 
	transition: 0.5s; 
}
.sidebar > div > a:hover{
	background-color: #aaa; 
	color: #000; 
}
.sidebar > div > h4{
	padding: 10px 30px; 
	margin:0 0 10px 0;
	font-family: Special Elite;
	font-size: 50px;
}

.page > div > div, .gap > div > div {
	text-align: center; 
	padding: 3vw;
	color: #333;
	font-family:"Special Elite"; 
	width: 50%; 
	max-width: 1200px; 
}
.page > div h1, .gap > div h1{
	font-size: 5vw; 
	font-weight:400; 
	letter-spacing:10px; 
	line-height: 5vw; 
	text-shadow: 0px 0px 2px #fff;
}
.page > div h2{
	text-shadow: 0px 0px 1px #fff;
}
.page2{
	background-position:center center;
	background-size: cover;
	background-attachment:fixed;
	background-repeat: no-repeat;
	position:relative; 
	min-height: 400px; 
	height: 100vh;
}

.page a, .page2 a{
	color: #333; 
	display: inline-block; 
}
#trees {
	background-image:url('images/trees-in-winter.jpg');
}
.parallax-image-wrapper {
	position:fixed;
	left:0;
	width:100%;
	overflow:hidden;
}

.parallax-image-wrapper-50 {
	min-height:50%;
	top:-50%;
}
.parallax-image-wrapper-100 {
	min-height:100%;
	top:-100%;
}
.parallax-image {
	display:none;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	}
.parallax-image-50 {
	height:200%;
	top:-50%;
}
.parallax-image-100 {
	height:100%;
	top:0;
}
.parallax-image.skrollable-between {
	display:block;
}
.no-skrollr .parallax-image-wrapper {
	display:none !important;
}
#skrollr-body {
	height:100%;
	overflow:visible;
	position:relative;
}
.gap {
	background:transparent center no-repeat;
	background-size:cover;
}
.skrollr .gap {
	background:transparent !important;
}
.gap-50 {
	min-height:50%;
}
.gap-100 {
	height:100vh;
}
.skrollr-desktop body {
	height:100% !important;
}
.normanpicture {
	height: 100%;
	width: 100%; 
	background-image:url('images/norman-weaver.png');
	background-repeat:no-repeat;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	background-size: contain;
	background-position:5vw 0;

}
.normanpicture img {
	height: 100%; 
	width: 82%; 
}
.maintext{
	padding: 2vh 3vw;
	color: #444;
	line-height: 180%; 
	font-size:16px;
	background-color:#fff;
}
.maintext a{
	color: #222;
}
.maintext > div{
	max-width: 800px;
	margin: auto;
}

.grey{
	background-color: #ddd;
}
.grey h1{
	font-size: 100px; 
	line-height: 110px; 
}
.listpages{
	padding: 2vh 3vw;
	color: #444;
	line-height: 180%; 
	font-size:16px;
}
.listpages a{
	color: #222;
}
.listpages p, .listpages ul, .listpages ol, .listpages h4, .listpages h3, .listpages h2, .listpages h1, .listpages blockquote{
	max-width: 800px;
	margin: 10px auto;
}
.listpages:nth-child(2n+1) {
    background-color: #f6f6f6 !important;
}
.listpages:nth-child(2n) {
    background-color: #f0f0f0 !important;
}
.mobilefront {
	display: none; 
}
.iw {
	font-size: 12px;
	padding: 15px 15px 15px 100px;
	max-width: 1400px;
	margin:auto; 
} 
.iw a{
	color: #777;
	text-decoration: none;
}
#norman {
	height: 100vh;
	background-image: url('images/norman.jpg') ;
}






@media only screen and (min-width: 1025px) {

.menu, .pagetitle{
	display: none; 
}
 blockquote:before,
 blockquote:after{
	font-family: Georgia, Times New Roman; 
    position: absolute;
    top: 13px;
    color: #666;
    font-size: 60px;
}
 blockquote:before{
    content: "“";
    margin-right: 13px;
    right: 100%;
}
 blockquote:after{
    content: "”";
    margin-left: 13px;
    left: 100%;  
    top: auto;
    bottom: 13px;
}
	
}

@media only screen and (max-width: 1300px) {
.normanpicture{
	background-size: auto 80%; 
	background-position: 50px bottom;
	max-height: 800px !important;
}
#trees{
	max-height: 800px !important;
}
}


@media only screen and (max-width: 1024px) {
.sidebar{
	position:absolute;
	left: 20px;
	top: 20px; 
	right: 20px; 
	height: auto;
	min-height: 0; 
	background-color: transparent;	
	width: auto;
}
.menu img{
	width: 80px;
  	transition: 0.5s;
}
.links {
	display: none; 
	opacity: 0;
  	transition: 0.5s;
	background-color: rgba(32, 32, 31,0.9);
	padding: 10px; 
	height: 0; 
}
.sidebar > div > h4{
	display: none; 
}
.pagetitle {
	margin-top: 80px;
	padding: 20px; 
}
.pagetitle h1{
	display: block;
	font-family: Special Elite;
	font-size: 50px;
	text-align: right; 
}
.sidebar:hover .links, .sidebar:active .links, .sidebar:focus .links, .sidebar:focus .links:before{
	display: block; 
	opacity: 1;
	height: auto; 
}
.sidebar:hover .menu img, .sidebar:active .menu img, .sidebar:focus .menu img{
	width: 0;
}
.sidebar:hover .menu, .sidebar:active .menu, .sidebar:focus .menu {
	padding	: 0;
}
html,body{
	height: 100%; 
}
}



@media only screen and (max-width: 800px) {
.normanpicture{
	background-image:url('images/trees-in-winter.jpg');
	background-size: cover;
	background-position: center center;
	display:block; 
	height: auto;
}
.page > div > div, .gap > div > div {
	width: auto; 
	padding: 100px 1vw 1vw 1vw;
}
.normanpicture h1, .page > div h1{
	font-size: 40px;
	line-height: 45px; 
}
.normanpicture h2{
	font-size: 26px;
}
#norman {
	height: 100vh;
	background-image: url('images/norman.jpg') !important ;
	background-size: cover !important; 
	background-position: center center !important; 
}
.gap-100 {
	height: auto; 
}
.page > div > .mobilefront {
	display:block;
	text-align: center;
	padding: 0; 
}
.parallax-image-wrapper-100  , #trees, .parallax-image-wrapper-100 *  {
    transform: none !important; 
-webkit-transform: translate(0, 0) translate3d(0, 0, 0) !important;
-moz-transform: none !important;
-ms-transform: none !important;
-o-transform: none !important;
transform: translate(0, 0) translate3d(0, 0, 0) !important;
	top: auto !important;
	height: auto;
	overflow-y: hidden;
}
}

@media only screen and (max-width: 640px) {
.pictures > div {
	text-align: center; 
	margin: 10px;
}
}

@media only screen and (min-width: 640px) {
.pictures{
	display: flex;
 	flex-flow: row wrap;
    justify-content: center;
	margin: 0 auto 20px auto; 
}
.pictures > div {
	flex: 1 1 auto;
	width: 230px;
	height	: 230px;
	max-width: 230px;
	position: relative;
	margin	: 6px;
	background-color: #fff; 
	padding: 10px; 
}
.pictures > div.smallpic img{
	object-fit: none ;
    justify-content: center;
}
.pictures > div img{
	object-fit: contain ;
	width: 100%;
	height:  100%;
}
.pictures .text{
	display: none; 
}
}


@media only screen and (orientation: landscape) and (min-height: 800px) {

.sidebar > div {
	position: sticky; 
	top: 30px; 

}

}


/*
* {
	
	border: 2px solid pink; 
}
*/