@media all and (min-width: 1921px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (min-width: 1921px),
only screen and (min--moz-device-pixel-ratio: 2) and (min-width: 1921px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (min-width: 1921px),
only screen and (min-device-pixel-ratio: 2) and (min-width: 1921px),
only screen and (min-resolution: 192dpi) and (min-width: 1921px),
only screen and (min-resolution: 2dppx) and (min-width: 1921px) {

body {
    font-size: calc(0.75vw + 0.75vh);
}

}

@media all and (max-width: 1600px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1600px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1600px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1600px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1600px),
only screen and (min-resolution: 192dpi) and (max-width: 1600px),
only screen and (min-resolution: 2dppx) and (max-width: 1600px) {
body{
	-webkit-text-size-adjust: 100%;
    font-size: 20px;
}

.service-select p{
    font-size: 1.175em;
}

.footerblock p {
    font-size: 1.05em;
}

#hf .abouttext {
    font-size: 1em;
}

}
/* *******************END 1600px******************* */


@media all and (max-width: 1400px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1400px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1400px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1400px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1400px),
only screen and (min-resolution: 192dpi) and (max-width: 1400px),
only screen and (min-resolution: 2dppx) and (max-width: 1400px) {
body{
	font-size: calc(1vw + 6px);
}

#preheader {
    width: 15vh;
    height: 18.5vh;
    top: 3vh;
    right: 3vh;
}
#preheadimg {
    max-width: 85%;
    top: 0.25vh;
}
#headerpopper {
    top: 13.5vh;
    width: 95%;
}

.service-info {
    padding: 1em 1.5em;
    width: 70%;
}
.service-info a {
    padding: 0.6em 0.75em;
}
.service-info a + div {
    margin-left: 0.75em;
}

.slick-slide {
    padding: 1em 1.5em;
}

.abouttext {
    width: 70%;
}
#abouttext2 {
    padding: 0.5em 1em;
}

#footerinner {
    padding: 1.5em 0 1em 0;
}
.footerblock {
    width: 23%;
}
.footerblockwider {
    width: 26%;
}
.footerblockwider:nth-child(1) {
	text-align: center;
}
.footerblock p {
    font-size: 1.1em;
}

#hf .pagetitle {
    padding-left: calc(4.3em / 2);
}
#hf .inner{
    width: calc(100vw - 35vh - (11em / 2) - 1.5em);
    margin-left: calc(11em / 2);
}
#hf .inner > p {
    padding-right: 5vh;
}

form {
    font-size: 1.2em;
}


}
/* *******************END 1400px******************* */


@media all and (max-width: 1024px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (min-resolution: 192dpi) and (max-width: 1024px),
only screen and (min-resolution: 2dppx) and (max-width: 1024px) {

body{
	font-size: calc(1.2vw + 5px);
}

h1 {
    font-size: 3em;
}

#headerlogo {
    width: 65%;
}
#headerlogo img {
    height: 15vh;
}
#mobilemenucloser{
	display: block;
	position: absolute;
	top: 7.5vh;
    right: 2.5vh;
    padding: 2vh;
	box-sizing: border-box;
	text-decoration: none !important;
	color: white;
    font-size: 2.5vh;
}
#mobilemenucloser div{
}
#mobilemenucloser span, #mobilemenucloser img{
	display: inline-block;
	vertical-align: middle;
}
#mobilemenucloser span{
    margin: 0 2vh 0 auto;
    display: none;
}
#mobilemenucloser img{
    width: auto;
    height: 3.25vh;
    margin: -0.25vh 0 0 0;
}
#headermenu a {
    font-size: 2.75vh;
}
#headermenu #headercontactlink > a {
    margin-top: 15vh;
    padding: 2.35vh 2vh 2.05vh 6vh;
}
.headersocial {
    margin: 0 0.75vh;
}
.headersocial img {
    width: 5.5vh;
}

.service-info {
    width: 90%;
    top: 15%;
    /*font-size: 1.25em;*/
    font-size: calc(1.2vh + 1vw);
    box-sizing: border-box;
}
.service-select p {
    left: 33%;
    width: 56%;
    font-size: 1.35em;
}
.service-info a + div {
    font-size: 0.8em;
}
#servicesofferedtitle.active {
	display: none;
}

#reviewsleft{
    font-size: 0.9em;
}
#reviewsright {
    width: 65%;
}
#reviewsmoretitle {
    width: 20%;
}
#reviewsimages {
    width: 80%;
}

.abouttext {
    width: 75%;
}
#abouttext1 p {
    font-size: 1.2em;
}
#abouttext2right a {
    font-size: 1.4em;
}
#abouttext2right > div {
    font-size: 0.85em;
}

.footerblock, .footerblockwider {
    width: 25%;
    padding: 0 0.5em 0 1em;
}
.footerblock p {
    line-height: 1.1em;
}
#footerrequest {
    margin-top: 0.5em;
}
.footerblock a:before {
    left: -0.5em;
}

#copyright {
    font-size: 1em;
}

#hf{
	position: sticky;
	margin-top: 0;
}
#hf #header {
    position: fixed;
    margin: 0 0 0 auto;
}
#hf .pageopening{
    width: 100%;
}
#hf .pagetitle {
    padding-left: 0.75em;
}
#hf .inner {
    width: 90%;
    margin: 0 auto;
    font-size: 1.25em;
}
.images:after {
	display: none;
}

form {
    padding: 0 0 3em 0;
}

}
/* *******************END 1024px******************* */


@media all and (max-width: 700px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 700px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (min-resolution: 192dpi) and (max-width: 700px),
only screen and (min-resolution: 2dppx) and (max-width: 700px) {

#header {
    width: 100%;
    z-index: 9999999;
}
#headerlogo {
    width: 40%;
}
#mobilemenucloser span{
	display: inline-block;
}
#headermenu a{
    font-size: 3.5vh;
    box-sizing: border-box;
    padding: 0.75vh 2.5vh 0.5vh 2.5vh !important;
    margin: 1vh 0 1vh auto;
    width: 90%;
    line-height: 1em;
}
#headermenu a:hover {
    padding: 0.75vh 2.5vh 0.5vh 2.5vh !important;
}
#headermenu #headercontactlink > a {
    margin-top: 2.5vh;
    padding: 2.372vh 2.5vh !important;
}
#headersocials {
    bottom: 7vh;
}
.headersocial {
    margin: 0 2.25vh;
}
.headersocial img {
    width: 7.5vh;
    max-width: 13vw;
}

.section {
    margin-bottom: 7.5vh;
    background-attachment: scroll !important;
}
#s-opening {
    background-image: url("/images/bg-opening-mobile.jpg");
    margin-bottom: 5vh;
}
#s-dreary-cozy {
    background-image: url("/images/bg-dreary-cozy-mobile.jpg");
}

#openinglogo{
    display: block;
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    height: auto;
    max-width: 50%;
    max-height: 75%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: top 0.35s ease-out, left 0.35s ease-out, opacity 0.25s ease-out;
    -moz-transition: top 0.35s ease-out, left 0.35s ease-out, opacity 0.25s ease-out;
    -ms-transition: top 0.35s ease-out, left 0.35s ease-out, opacity 0.25s ease-out;
    -o-transition: top 0.35s ease-out, left 0.35s ease-out, opacity 0.25s ease-out;
    transition: top 0.35s ease-out, left 0.35s ease-out, opacity 0.25s ease-out;
    -webkit-transition-delay: 0s, 0s, 0.1s;
    -moz-transition-delay: 0s, 0s, 0.1s;
    -ms-transition-delay: 0s, 0s, 0.1s;
    -o-transition-delay: 0s, 0s, 0.1s;
    transition-delay: 0s, 0s, 0.1s;
    opacity: 1;
}
#openinglogo.logo-scrolled{
    top: 0%;
    left: 100%;
    opacity: 0;
    -webkit-transition-delay: 0s, 0s, 0s;
    -moz-transition-delay: 0s, 0s, 0s;
    -ms-transition-delay: 0s, 0s, 0s;
    -o-transition-delay: 0s, 0s, 0s;
    transition-delay: 0s, 0s, 0s;
}
#preheader #preheadimg{
	opacity: 0;
	-webkit-transition: opacity 0.25s ease;
	-moz-transition: opacity 0.25s ease;
	-ms-transition: opacity 0.25s ease;
	-o-transition: opacity 0.25s ease;
	transition: opacity 0.25s ease;
}
#preheader.preheader-scrolled #preheadimg, .main #preheader #preheadimg{
	opacity: 1;
    -webkit-transition-delay: 0.1s;
    -moz-transition-delay: 0.1s;
    -ms-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
    transition-delay: 0.1s;
}
#headerpopper{
    top: 5vh;
	-webkit-transition: top 0.25s ease;
	-moz-transition: top 0.25s ease;
	-ms-transition: top 0.25s ease;
	-o-transition: top 0.25s ease;
	transition: top 0.25s ease;
}
#preheader.preheader-scrolled #headerpopper, .main #preheader #headerpopper{
    top: 13.5vh;
}
.h1-pop {
    width: 11em !important;
    bottom: auto !important;
    top: calc(50% - 3.5em) !important;
    padding: 0.25em 0.5em;
}
.h1-pop-bottom {
    width: 11em !important;
    top: auto !important;
    bottom: calc(50% - 3.5em) !important;
}
h1.hero{
	font-size: 3em;
}
#s-office-closet .h1-pop {
    width: 10em !important;
}

#s-services-offered {
    position: relative;
	margin-bottom: 0;
}
#services-left{
	width: 100%;
	box-sizing: border-box;
}
.service-outer{
	position: relative;
}
.service-outer.service-outer-opened{
	padding-bottom: 1px;
}
.service-select {
    z-index: 3;
    height: 25vh !important;
    min-height: 30vw;
}
.service-select p {
	text-align: center;
    left: 0.7em;
    bottom: 0 !important;
    width: 56%;
    font-size: 2.5em;
    -webkit-transform: translate(0%, 2px) !important;
    -ms-transform: translate(0%, 2px) !important;
    transform: translate(0%, 2px) !important;
    box-shadow: 0px 0px 1em black;
    box-shadow: -0.5em -0.5em 1em -0.5em black, 0.5em -0.5em 1em -0.5em black !important;
}
.service-select.service-selected p {
    -webkit-transform: translate(0%, 2px) !important;
    -ms-transform: translate(0%, 2px) !important;
    transform: translate(0%, 2px) !important;
}
.services-arrow {
    margin-left: 0.25em;
}
.service-selected .services-arrow {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    display: inline-block;
    margin-left: 0.45em !important;
}
.service-select:hover .services-coloroverlay, .service-select.service-selected .services-coloroverlay{
    opacity: 0.8 !important;
}
.service-info {
	display: block;
	max-height: 0;
	overflow: hidden;
    z-index: 2;
    font-size: 1.75em;
    text-align: center;
    width: calc(100% - 2em);
    background: rgba(255,255,255,0.85);
    color: black;
    position: relative;
    left: auto !important;
    right: auto !important;
    padding: 0;
    border: 0;
}
.service-info.service-shown{
    max-height: none;
    margin: 0 1em 5em 1em !important;
    padding: 1em 1.5em;
    border: 0.15em solid black;
    border-top: 0 !important;
    -webkit-transition: max-height 0.25s ease-out;
    -moz-transition: max-height 0.25s ease-out;
    -ms-transition: max-height 0.25s ease-out;
    -o-transition: max-height 0.25s ease-out;
    transition: max-height 0.25s ease-out;
}
.service-info h2 span {
    display: block;
}
.service-info a {
    padding: 0.6em 0.75em;
    font-size: 1.25em;
    min-width: 55%;
}
.service-info a + div {
    font-size: 0.8em;
    margin: 1em auto 0 auto !important;
}
.service-bg {
    z-index: 1;
    background-attachment: scroll;
}
#services-right{
	display: none;
}

#reviewsright, #reviewsleft {
	display: block;
	width: auto;
	margin: 0;
	box-sizing: border-box;
}
#reviewsleft{
	margin-bottom: 2em;
    width: 64%;
}
/*#reviewsleft h1 span {
    display: inline;
}*/
.slick-list {
    padding: 2em 5em !important;
}
.slick-slide {
    padding: 1.5em;
}
.slick-slide p {
    font-size: 1.5em;
}
#reviewsmore {
    width: 95%;
}
#reviewsmoretitle > div {
    font-size: 1.1em;
}
#reviewsimages {
    width: 75%;
}
#reviewsimages a {
    margin: 0 !important;
    width: calc(33% - 1em);
}
#reviewsimages a + a{
	margin-left: 0.5em !important;
}
#reviewsimages img {
    height: auto;
    width: auto;
    max-height: 2.75em;
    max-width: 90%;
}

#s-deck-patio h1.hero {
    width: 80%;
    box-sizing: border-box;
}

#s-reviews{
    position: relative;
    height: auto;
    min-height: 0;
    max-height: none;
    padding: 3em 0 4em 0;
    margin-bottom: 0;
    min-height: none;
}
#s-reviews:after{
	display: none;
}
#s-reviews .inner{
	position: relative;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}
#s-about {
    color: white;
    height: auto;
    min-height: 0;
    max-height: none;
}
.abouttext {
    width: 100%;
    font-size: 1.6em;
    margin: 4em auto !important;
    border: 2px solid rgba(255,255,255,0.6);
}
#abouttext1{
	border-left: 0;
	border-right: 0;
}
#abouttext2{
    width: 80%;
	text-align: center;
    padding: 1em 0.5em;
    font-size: 1.75em;
}
#abouttext2left, #abouttext2right {
    display: block;
    text-align: center;
    width: 100%;
}
#abouttext2left {
    font-size: 2.5em;
    line-height: 1em;
    margin: 0 auto 0.3em auto;
}
#abouttext2right{
	text-align: center;
    font-size: 1em;
}
#abouttext2right a {
    font-size: 1.4em;
    padding: 0.375em 0.75em 0.4em 0.75em;
}
#abouttext2right > div {
    font-size: 0.9em;
    line-height: 1em;
    margin-top: 0.5em;
    text-align: center;
}

#footer {
    margin-top: 0;
    z-index: 99999;
}
#footerinner{
	padding: 0;
}
.footerblock {
    display: block;
    height: auto !important;
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    text-align: center;
    font-size: 2em;
    overflow: hidden;
}
.footerblock:nth-of-type(1){
	padding: 1em 0 !important;
}
.footerblock:nth-of-type(4) {
	padding: 2em 0.25em !important;
}
.footerblock img {
    width: 35%;
}
.droplabel {
    display: block;
    font-size: 4em;
    padding: 0.5em 0 0.45em 0;
    background: rgba(0,0,0,0.5);
    cursor: pointer;
    box-shadow: inset 0 0 1em black;
    margin-top: 0.3em;
    user-select: none;
}
.dropcontent{
    max-height: 0;
}
.dropcheckbox:checked + .droplabel + .dropcontent{
	max-height: 500px;
    padding: 0.5em !important;
    background: rgba(0,0,0,0.75);
    margin-top: 0;
}
.footerblock a {
    padding: 0.4em 0 0.4em 3.25em;
    text-align: left;
}
.footerblock a:before {
    content: ">";
    top: 0.325em;
    left: 2.6em;
}
#footerphone {
    margin-top: 0em;
}
#footerrequest {
    margin: 0.5em auto 0.25em auto;
    padding: 0.375em 0.75em 0.4em 0.75em;
}
#footerrequest:before{
	display: none;
}

#copyright {
    margin-top: 0;
    font-size: 3.5vw;
}

.copyrighttext{
    margin: 0 auto;
}
#copytext2 + .copyrightbreak{
	display: none;
}
a.copyrighttext{
    padding: 0.5em 1em;
    margin: 0em auto 1.5em auto;
}
a.copyrighttext:after {
    bottom: 0.3em;
}
#hf {
    position: static;
}
#hf .pageopening {
    height: 35vh;
}
#hf .pagetitle {
    position: relative;
    top: -1em;
    left: 0;
    padding: 0.25em 0.75em;
    font-size: 8vw;
    text-align: center;
    font-weight: 400;
}
#hf .inner {
    font-size: 2em;
    width: 95%;
}
#hf .innertitle {
    font-size: 1.3em;
}
#hf .pagetitle + .inner > .innertitle{
	margin-top: 0;
}
#hf .inner > p {
    padding-right: 0;
}
.gallerytitle {
    font-size: 1.25em;
}
.images {
    width: 105%;
    margin-left: -2.5%;
}
.images a {
    margin: 2.5% !important;
    width: calc(100% - 5%);
}
.images a + a{
	margin-top: 0 !important;
}
.images.gallery a, .images.gallery.doubleimages a {
    width: calc(50% - 1.5%);
    margin: 0.75% !important;
}
.images .image-after {
    left: auto;
    right: 0.5em;
    top: 0.5em;
    bottom: auto;
}
#hf #abouttext2{
    padding: 0.25em 1em;
    margin: 3em auto !important;
}
#hf #abouttext2left {
    margin-top: 0.25em;
}
#hf #abouttext2right > div {
    font-size: 0.75em;
    margin: 0.5em auto 0.25em auto;
}
#main-reviews {
    padding: 3em 0px;
    font-size: 1.15em;
}
#main-reviews #reviewsleft {
    font-size: 1em;
}
#main-reviews .slick-list {
    padding: 2em 3em !important;
}

form {
    font-size: 1.35em;
}
.formblockinner{
	width: 100%;
	padding: 0 !important;
}
#form-location{
    margin-top: 0.75em;
}
.formradio + label {
    padding: 0.35em 0 0.35em 1.75em;
}
.formlabel{
	width: 100%;
	margin: 0 !important;
	padding: 0.33em 0;
}
.formsubmit {
    padding: 0.3em 1em;
}


}
/* *******************END 700px******************* */