 :root {
  --green: #23642c;
  --font-stack: 'Montserrat', Helvetica, sans-serif;
  --cursive: 'Born Ready', cursive;
  --serif: 'Trajan', serif;
}

//*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace, monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type="button"],[type="reset"],[type="submit"],button{-webkit-appearance:button}[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/*====== FONTS ======*/
@font-face {
    font-family: 'Montserrat';
    src: url('/fonts/montserrat-medium-webfont.woff2') format('woff2'),
         url('/fonts/montserrat-medium-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Montserrat';
    src: url('/fonts/montserrat-light-webfont.woff2') format('woff2'),
         url('/fonts/montserrat-light-webfont.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}
@font-face {
    font-family: 'Born Ready';
    src: url('/fonts/born-ready.woff2') format('woff2'),
         url('/fonts/born-ready.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Trajan';
    src: url('/fonts/trajan-pro.woff2') format('woff2'),
         url('/fonts/trajan-pro.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/*====== SECTION & GROUP ======*/
.section {
	clear: both;
	padding: 0px;
	margin: 0px;
}
.group:before,
.group:after { content:""; display:table; }
.group:after { clear:both;}

/*====== GRID OF TWELVE ======*/
.span_12_of_12 {
	width: 100%;
}
.span_11_of_12 {
  	width: 91.53%;
}
.span_10_of_12 {
  	width: 83.06%;
}
.span_9_of_12 {
  	width: 74.6%;
}
.span_8_of_12 {
  	width: 66.13%;
}
.span_7_of_12 {
  	width: 57.66%;
}
.span_6_of_12 {
  	width: 49.2%;
}
.span_5_of_12 {
  	width: 40.73%;
}
.span_4_of_12 {
  	width: 32.26%;
}
.span_3_of_12 {
  	width: 23.8%;
}
.span_2_of_12 {
  	width: 15.33%;
}
.span_1_of_12 {
  	width: 6.866%;
}
html {
  font-size: 62.5%;
}
body {
  font-family: var(--font-stack);
  font-size: 1.4rem;
}
.wrap {
  width: 100%;
  max-width: 1290px;
  margin: 0 auto;
  box-sizing: border-box;
}
header {
  background: url('/img/bg-blur.jpg') no-repeat;
  background-size: cover;
  position: relative;
  border-bottom: 50px solid var(--green);
}
header img {
  filter: drop-shadow( 0 0 2px rgba(0, 0, 0, .9));
  width: 20.5%;
  position: absolute;
  right: 5%;
  top: 22px;
  z-index: 100;
}
.tree {
  width: 100%;
  //height: 100px;
  height: 10vh;
  background: url('img/treetop.jpg') no-repeat;
  background-size: cover;
  position: relative;
  z-index: 1;
  display: block;
}
h1 {
  color: black;
  font-size: 17rem;
  font-weight: 200;
  padding-left: 80px;
}
h1 span {
  font-family: var(--cursive);
  font-size: 10rem;
  display: block;
  transform: rotate(-5deg);
  margin-left: -80px;
}

.intro p {
  font-size:4rem;
  line-height: 5.7rem;
  margin: 66px 0;
  font-weight: 200;
}

ul.photos {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 3px solid white;
  border-bottom: 3px solid white;
  display: flex;
  flex-flow: row nowrap;
  justify-content: stretch;
}
.photos li {
  width:33.3333%;
  height: 400px;
  box-sizing: border-box;
}
.photos li:nth-child(1) {
  background: url('img/living-room.jpg') no-repeat;
  background-size: cover;
}
.photos li:nth-child(2) {
  border-left: 3px solid white;
  border-right: 3px solid white;
  background: url('img/kitchen.jpg') no-repeat;
  background-size: cover;
}
.photos li:nth-child(3) {
  background: url('img/dining.jpg') no-repeat;
  background-size: cover;
}
.cta {
  background-color: var(--green);
  height: auto;
  padding: 43px 0 53px 0;
}
.cta .wrap {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-between;
  align-content: center;
}
.cta .span_5_of_12,
.cta .span_6_of_12 {
  text-align: center;
}
.cta .span_5_of_12 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
hr {
  border: 0 none;
  height: 2px;
  background: white;
  width:18%;
}
h2 {
  width: 48%;
  color: white;
  font-family: var(--serif);
  font-size: 5.8rem;
  margin: 0;
  font-weight: normal;
}
h3, h4, h5 {
  color: white;
  width: 100%;
}
h3 {
  font-size: 7rem;
  margin: 10px auto 0 auto;
  font-weight: 400;
  letter-spacing: 0.05em;
}
h4 {
  font-size: 4.6rem;
  margin: 0 auto 30px auto;
  font-weight: 200;
}
h5 {
  font-size: 3.3rem;
  font-weight: 200;
  margin: 0 auto 36px auto;
}
input {
  display: block;
  padding: 18px 16px;
  font-size: 2.8rem;
  border: 2px solid var(--green);
  width: 90%;
  margin: 0 auto 30px auto;
}
input:hover,
input:active {
  border: 2px solid #f7ff1b;
  outline: none;
}
input:focus {
  outline: none;
}
input[type=submit] {
  border: 1px solid white;
  color: white;
  background-color: var(--green);
  font-size: 3.5rem;
}
input[type=submit]:hover {
  border: 1px solid var(--green);
  color: var(--green);
  background-color: #faff7c;
  outline: none;
  cursor:pointer;
}
.grecaptcha-badge {
	display: none;
}
footer {
  padding: 45px 0;
  color: var(--green);
  display: flex;
  flex-flow: row wrap;
  /*justify-content: space-between;*/
  justify-content: flex-start;
  align-items: center;
}
footer.wrap {
	padding: 2% 3%;
}
footer img {
  width: 18.75%;
  filter: drop-shadow( 0 0 2px rgba(0, 0, 0, .7));
  margin-right: 50px;
}
footer .phone {
  width: 45%;
}
.phone span {
  font-family: var(--serif);
}
.top {
  font-size: 2.5rem;
}
.bottom {
  font-size: 2.1rem;
}
footer .address {
  width: 60%;
  font-family: var(--serif);
  font-size: 2.1rem;
}
.legal {
  width: 100%;
  text-align: center;
  color: #777;
  font-size: 1.3rem;
  font-family: Helvetica, Arial, sans-serif;
  margin: 0 auto;
}
/* ==========================================================================
   MEDIA QUERIES
   ========================================================================== */
@media only screen and (max-width: 1280px) {
	html {
	  font-size: 55%;
	}
	.wrap {
		padding: 0 3%;
	}
	h1 {
		font-size: 16rem;
	}
	h2 {
		width: 54%;
	}
	hr {
		width: 14%;
	}
	.photos li {
		height: 350px;
	}
}
@media only screen and (max-width: 1150px) {
	html {
	  font-size: 50%;
	}
	h1 {
		font-size: 14rem;
	}
}
@media only screen and (max-width: 1000px) {
	html {
	  font-size: 45%;
	}
	.tree {
	  height: 8vh;
	  background: url('img/treetop-med.jpg') no-repeat;
  	}
	header {
	  background: url('/img/bg-blur-med.jpg') no-repeat;
	  background-position: 0 52px;
	  background-size: cover;
  	}
	h1 span {
		font-size: 8rem;
	}
	.photos li {
		height: 290px;
	}
	input {
		padding: 11px 14px;
		margin: 0 auto 19px auto;
	}
	.top span {
		display: block;
	}
}
@media only screen and (max-width: 890px) {
	html {
	  font-size: 40%;
	}
	header {
		border-bottom: 20px solid var(--green);
	}
	h1 {
		margin: 0.5em 0;
		line-height: 1em;
	}
	.intro p {
		Margin: 30px 0;
	}
	.photos li {
		height: 260px;
	}
	hr {
		display: none;
	}
	h2 {
		width: 100%;
		font-size: 8rem;
	}
	.photos li {
		height: 260px;
	}
	.legal {
	  font-size: 1.5rem;
  	}
}
@media only screen and (max-width: 760px) {
	html {
	  font-size: 35%;
	}
	.photos li {
		height: 220px;
	}
}
@media only screen and (max-width: 676px) {
	html {
	  font-size: 30%;
	}
	.photos li {
		height: 190px;
	}
	h5 {
		margin: 0 auto 25px auto;
	}
	input {
		width: 80%;
	}
}
@media only screen and (max-width: 592px) {
	html {
	  font-size: 25%;
	}
	.cta {
		padding: 23px 0 33px 0;
	}
}
/*  GO FULL WIDTH BELOW 480 PIXELS */
@media only screen and (max-width: 480px) {
	.col {  margin: 1% 0 1% 0%; }

    .span_1_of_12, .span_2_of_12, .span_3_of_12, .span_4_of_12, .span_5_of_12, .span_6_of_12, .span_7_of_12, .span_8_of_12, .span_9_of_12, .span_10_of_12, .span_11_of_12, .span_12_of_12 {
	width: 100%;
	}
	header img {
		width: 31%;
		top: 7px;
	}
}
@media only screen and (max-width: 380px) {
	html {
	  font-size: 30%;
	}
	header {
		background-position: -100px 52px;
	}
	h1 {
		padding-left: 40px;
	}
	h1 span {
		font-size: 7rem;
		margin-left: -38px;
	}
	.photos li {
		height: 130px;
	}
	h3 {
		font-size: 8rem;
		margin-bottom: 30px;
	}
	h4 {
		margin: 0 auto 15px auto;
	}
	footer {
		flex-flow: column wrap;
	}
	footer img {
		width: 35%;
	}
	footer .phone,
	footer .address {
		width: 100%;
		text-align: center;
	}
	.top {
		font-size: 3rem;
	}
	footer .address {
		font-size: 3rem;
	}
	.legal {
		font-size: 2.2rem;
	}
}
@media only screen and (max-width: 321px) {
	h1 {
		padding-left: 32px;
	}
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
