.desktop_wrapper {display:block;}
.mobile_wrapper, .rotate_phone, .m-gallery-inst {display:none;}


/* Main Styles */
body {margin:0;padding:0;background-color: #292929;color: #b9b5b5;font-family: 'Lora', serif;}
body.noScroll {overflow: hidden;}
header {background-color: #000;height: 600px;display: flex;flex-direction: row-reverse;}
header h1 {text-indent: -99999px;width: 100%;height: 100%;display: none;}
.map {FONT-WEIGHT: 600;width: 622px;height: 600px;position: relative;background: url('/images/map3.jpg');background-size: cover;background-repeat: no-repeat;background-position: 0;background-position-y: 0;}
#brand {height: 100%;position: relative;background: black;flex: 1;display: flex;align-items: center;flex-direction: column;}
#brand .logo {max-width: 300px;margin-bottom: 20px;margin-top: 37px;}
#brand .logotext {width: 450px;margin-top: 14px;}
#brand .brand-contact a {color: #bbbbbb;display:inline-block;margin-right: 15px;font-size: 17px;margin-top: 10px;}
#description {background-color: #2B2B2B;font-size: 20px;padding:10px;text-align:center;color:#ACACAC;}
.m-content .m-section-content {display:none}
.m-content .m-section-content-map {display:block}
.m-section-content h2 {margin: 0;}
h2.t-millwork {background: url(/images/t-millwork.png); text-indent: -9999px; background-size: contain; background-repeat: no-repeat;}
h2.t-furniture {background: url(/images/t-furniture.png); text-indent: -9999px; background-size: contain; background-repeat: no-repeat;}
h2.t-mantels {background: url(/images/t-mantels.png); text-indent: -9999px; background-size: contain; background-repeat: no-repeat;}
h2.t-lobbies {background: url(/images/t-lobbies.png); text-indent: -9999px; background-size: contain; background-repeat: no-repeat;}
h2.t-stairs {background: url(/images/t-stairs.png); text-indent: -9999px; background-size: contain; background-repeat: no-repeat;}
h2.t-exteriors {background: url(/images/t-exteriors.png); text-indent: -9999px; background-size: contain; background-repeat: no-repeat;}
h3 {margin-top:0;padding-top:0}
a{color:#CDDC39;text-decoration:none}
a:hover {text-decoration:underline;color:yellow}

/* Sections */
.section {display: flex;border-bottom: 8px solid black;min-height: 400px;}
.section.reverse {flex-direction: row-reverse;}
.section h2 {margin:0}
.section p {line-height:24px}
.section .section_txt {flex:1;padding: 50px;}
.section .section_txt a{color:#CDDC39;text-decoration:none}
.section .section_txt a:hover {text-decoration:underline;color:yellow}
.section .section_img {flex: 2;background-repeat: no-repeat;background-size: cover;background-position: center center;cursor: pointer;position: relative;}
/*
.gallery-link {display: block;position: absolute;right: 10px;padding: 10px;background: rgba(0, 0, 0, 0.62);border: 10px;}
*/

.image-label {position: absolute;bottom: 10px;padding: 10px;background: rgba(0, 0, 0, 0.58);}

.section.millwork  .section_img {background-image: url('/images/homepage/millwork-2.jpg');}
.section.furniture .section_img {background-image: url('/images/homepage/furniture-2.jpg');}
.section.mantels   .section_img {background-image: url('/images/homepage/mantels-1.jpg');}
.section.lobbies   .section_img {background-image: url('/images/homepage/lobby-4.jpg');}
.section.stairs   .section_img {background-image: url('/images/homepage/stairs-1.jpg');}
.section.exteriors   .section_img {background-image: url('/images/homepage/exteriors-1.jpg');}

/* Contact Bar */
.contactbar {display: block;width: 100%;height: 29px;background: #2b2b2b;z-index: 999;opacity: 0.6;position: relative;text-align: right;}
.contactbar .social {display: inline-block;margin-top: 0px;z-index: 888;position: absolute;right: 236px;}
.contactbar .social a {width: 20px;display:inline-block;height: 20px;margin-right: 8px;background:url('/images/icons.png') no-repeat;margin-top: 5px;}
.contactbar .social a.instagram {background-size: 30px 290px;background-position: -1px -5px;}
.contactbar .social a.linkedin {background-size: 30px 290px;background-position: -1px -36px;}
.contactbar .social a.houzz {background-size: 30px 290px;background-position: -1px -72px;margin-left: -5px;}
.contactbar .cell {display: inline-block;border-right: 1px solid rgba(255, 255, 255, 0.5);border-left: 1px solid rgba(255, 255, 255, 0.5);z-index: 888;}
.contactbar .cell a {color:white;text-decoration: none;background: url('/images/icons.png') no-repeat;padding: 0px 6px 1px 25px;background-size: 30px 290px;background-position: -1px -205px;margin-left: 7px;margin-right: 5px;}
.contactbar .contact {display: inline-block;z-index: 888;}
.contactbar .contact a {color: #fff;text-decoration: none;margin-left: 5px;}
.contactbar  a:hover {color:#aed336}
.contactbar .contact i.caret {display:inline-block;width: 0px;height:20px;background:url('/images/icons.png') no-repeat;background-size: 30px 290px;background-position: 0px -242px;padding: 0 0 0 20px;opacity: 0.7;}
.contactbar .contact i.caret.flip {transform: rotate(180deg);background-position: 4px -252px;}


.contactbar-flyout {position: absolute;top: 13px;right:0;z-index: 3;background-color: #252424;padding: 1px;box-sizing: border-box;border-bottom: 1px solid rgba(255, 255, 255, 0.13);border-left: 1px solid rgba(255, 255, 255, 0.13);transform: translate3d(0, -250px, 0);transition: transform .5s cubic-bezier(0.42, 0, 0.07, 0.97);}
.contactbar-flyout.show {transform: translate3d(0, 0, 0)}
.contactbar-flyout.show a {opacity:1}
.contactbar-flyout ul {margin:0;padding:0}
.contactbar-flyout li {list-style-type: none;text-align:right;display: block;margin: 16px 10px;opacity: 0.6;z-index: -1;}
.contactbar-flyout a {color:white;text-decoration: none;opacity:0.8}
.contactbar-flyout a.instagram,.contactbar-flyout a.linkedin,.contactbar-flyout a.houzz, .contactbar-flyout a.tel,.contactbar-flyout a.cell,.contactbar-flyout a.fax,.contactbar-flyout a.envelope {display:inline-block;width:20px;height:20px;background:url('/images/icons.png') no-repeat;background-size: 30px 290px;margin-left: 10px;}
.contactbar-flyout a.instagram {background-position: -1px -5px}
.contactbar-flyout a.linkedin {background-position: -1px -35px;}
.contactbar-flyout a.houzz {background-position: -1px -72px;margin-left: 2px;}
.contactbar-flyout a.tel {background-position: -1px -113px;padding: 0 0 0 30px;display: inline;}
.contactbar-flyout a.cell {background-position: -1px -205px;padding: 1px 0 0 30px;display: inline;}
.contactbar-flyout a.fax {background-position: -1px -142px;padding: 0 0 0 30px;display: inline;}
.contactbar-flyout a.envelope {background-position: -1px -171px;padding: 0 0 0 30px;display: inline;}
.contactbar-flyout a:hover {color:#aed336}

/* Footer */
footer {background: #2B2B2B;color: #ACACAC;padding: 24px;text-align:center;font-size: 20px;}
footer span {display:inline-block;padding-left:20px;padding-right:20px;border-right:1px solid #444444}
footer a {color:#ACACAC;text-decoration: none;}

/* Colors */
.color-1 {background-color: #4B3A28;color: #dec3a6;}
.color-2 {background-color: #5B6555;color: #bbceb0;}
.color-3 {background-color: #735C4A;color: #ffe1ca;}

/* Modal */
.bodyNoScroll {overflow: hidden;}

.modal {display: none;align-items: center;justify-content: center;position: fixed;top:0;left:0;z-index: 999;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0, 0, 0, 0.8);}
.modal-body {background-color: #000;padding: 10px 10px 35px 10px;width: 1024px;position: relative;border: 1px solid rgba(255, 255, 255, 0.64);color: #d6d0d0;}
.modal-close {color: #bd3737;position: absolute;top: -5px;right: 10px;font-size: 40px;font-weight: bold;}
.modal-close:hover, .modal-close:focus {color: #ff7070;text-decoration: none;cursor: pointer;}
.modal h3 {margin-top:0;padding-top:0;margin-bottom:4px;color:#f5deb3}
.modal p{margin-top:0;padding-top:0;margin-bottom:4px}

/* Flickity Overrides */
.flickity-page-dots .dot {background-color: white;}
.carousel-cell {background-color: black;width:100%;height:550px;}
.carousel-cell img {width: auto;display: block;height: 100%;text-align: center;margin: 0 auto;}


/* Map & Dots */
.map .pulse {width: 8px;height: 8px;border: 2px solid #ff0;-webkit-border-radius: 30px;-moz-border-radius: 30px;border-radius: 30px;background-color: #AED336;z-index: 10;position: absolute;}
.map .dot {border: 10px solid #AED336;background: transparent;-webkit-border-radius: 60px;-moz-border-radius: 60px;border-radius: 60px;height: 50px;width: 50px;-webkit-animation: pulse 3s ease-out;-moz-animation: pulse 3s ease-out;animation: pulse 3s ease-out;-webkit-animation-iteration-count: infinite;-moz-animation-iteration-count: infinite;animation-iteration-count: infinite;position: absolute;top: -25px;left: -25px;z-index: 1;opacity: 0;}
.map .label {display: inline-block;padding: 3px;background-color:#AED336;color: #333;position: relative;top: 1px;left: -102px;font-size: 14px;}
.map .title {position:absolute;color: #cddeef;top: 10px;left: 18px;}
.map .legend {display: inline-block;padding:5px;background-color: rgba(51, 51, 51, 0.76);color: #ffef01;position: absolute;bottom: 16px;left: 16px; 0}

#proj_421h {position: absolute;top: 281px;left: 172px;}
#proj_421h .dot{animation-delay: 0.2s}
#proj_421h .label {left: 14px;top:0;}

#proj_42Park {position: absolute;top: 138px;left: 396px;}
#proj_42Park .dot{animation-delay: 0.4s}
#proj_42Park .label {left: -113px;top: 12px;}

#proj_107Park {position: absolute;top: 1px;left: 463px;}
#proj_107Park .dot{animation-delay: 0.6s}
#proj_107Park .label {left: -132px;top: 13px;}

#proj_433 {position: absolute;top: 130px;left: 447px;}
#proj_433 .dot{animation-delay: 0.8s}
#proj_433 .label {top: 2px;left: 13px;}

#proj_565 {position: absolute;top: 84px;left: 387px;}
#proj_565 .dot{animation-delay: 1.0s}
#proj_565 .label {left: -80px; top: -27px;}

#proj_mulberry {position: absolute;top: 319px;left: 267px;}
#proj_mulberry .dot{animation-delay: 1.0s}
#proj_mulberry .label {top: -1px;left: 13px;}

#proj_riverterrace {position: absolute;top: 406px;left: 113px;}
#proj_riverterrace .dot{animation-delay: 0.5s}
#proj_riverterrace .label {top: -27px;left: -74px;}

#proj_20011ave {position: absolute;top: 93px;left: 143px;}
#proj_20011ave .dot{animation-delay: 1.0s}
#proj_20011ave .label {top: -13px; left: -80px;}

#proj_361broadway {position: absolute;top: 357px;left: 236px;}
#proj_361broadway .dot{animation-delay: 0.7s}
#proj_361broadway .label {top: 1px; left: 14px;}


@-moz-keyframes pulse {
 0%  { -moz-transform: scale(0);   opacity: 0.0; }
 25% { -moz-transform: scale(0);   opacity: 0.1; }
 50% { -moz-transform: scale(0.1); opacity: 0.3; }
 75% { -moz-transform: scale(1.5); opacity: 0.5; }
 100% {-moz-transform: scale(2);   opacity: 0.0; }
}

@-webkit-keyframes "pulse" {
 0% {-webkit-transform: scale(0); opacity: 0.0; }
 25% {-webkit-transform: scale(0);opacity: 0.1; }
 50% {-webkit-transform: scale(0.1);opacity: 0.3;}
 75% {-webkit-transform: scale(1.5);opacity: 0.5;}
 100% {-webkit-transform: scale(2); opacity: 0.0;}
}


/* Mobile Specific */
.m-hdr {position:fixed;color:white;height: 60px;background:#000;width: 100%;top:0;z-index: 999;}
.m-stage {position: relative;color:white;background: #202021;width:100%;margin-top: 60px;display: block;}
.m-content{color: rgba(255, 255, 255, 0.73);padding: 10px 16px;font-size: 15px;position: relative;}
.m-nav {position:fixed;bottom: 0px;height: 50px;background: #5C712A;width:100%;text-align: center;z-index: 8888;}
.m-footer {position:fixed;bottom:0px;height: 35px;background:black;width:100%;}
.m-nav a,.m-footer a {text-decoration: none;color:white;}
.m-footer a {display:inline-block;width: 50%;text-align: center;padding: 8px 0;color: rgba(255, 255, 255, 0.68);}
.m-nav a {display:inline-block;width: 33%;text-align: center;padding: 15px 0;color: rgba(255, 255, 255, 1);}
.m-nav a.active {color: white;}

.m-nav-menu {background: rgb(84, 84, 41);display:block;position:fixed;bottom: 34px;left: 0px;transform: translate3d(0, 350px, 0);transition: transform .5s cubic-bezier(0.42, 0, 0.07, 0.97);padding-left: 32px;z-index: 8887;}
.m-nav-menu.show {transform: translate3d(0, 0px, 0)}
.m-nav-menu li {text-align: left;list-style-type:none;}
.m-nav-menu a{color: rgb(244, 251, 227);text-decoration:none;font-size:17px;line-height:32px;padding: 9px 30px 5px 0px;display:block;}

.m-contactus {background-color: rgb(84, 84, 41);display: block;position:fixed;bottom: 34px;right: 0px;transform: translate3d(0, 350px, 0);transition: transform .5s cubic-bezier(0.42, 0, 0.07, 0.97);padding-left: 0px;}
.m-contactus a {text-decoration:none;color:white;text-align:right;padding:10px}
.m-contactus a.instagram,.m-contactus a.linkedin,.m-contactus a.houzz, .m-contactus a.tel,.m-contactus a.cell,.m-contactus a.fax,.m-contactus a.envelope {display:inline-block;width:20px;height:20px;background:url('/images/icons.png') no-repeat;background-size: 30px 290px;margin-left: 10px;}
.m-contactus a.instagram {background-position: -1px 7px;}
.m-contactus a.linkedin {background-position: -1px -24px;}
.m-contactus a.houzz {background-position: -1px -61px;margin-left: 2px;}
.m-contactus a.tel {background-position: -1px -113px;padding: 0 0 0 30px;display: inline;}
.m-contactus a.cell {background-position: -1px -205px;padding: 1px 0 0 30px;display: inline;}
.m-contactus a.fax {background-position: -1px -142px;padding: 0 0 0 30px;display: inline;}
.m-contactus a.envelope {background-position: -1px -171px;padding: 0 0 0 30px;display: inline;}

.m-contactus.show {transform: translate3d(0px, 0px, 0);}
.m-contactus ul {padding:10px}
.m-contactus li {text-align: right;list-style-type:none;padding:10px}


/* ========== Media Queries ========== */

/* Screen Larger Than 1400 wide HD DESKTOP */
@media screen and (min-width: 1400px) {
}

@media screen and (max-width:1180px){
	#brand .logotext {width:340px}
	#brand .brand-contact a {font-size:16px;margin-right:6px}
}

@media screen and (max-width:1040px){
	#brand .logotext {width:300px}
	#brand .brand-contact a {font-size:16px;margin-right:6px;    display: block; text-align: center;  margin-top: 6px;}
}

@media screen and (max-width:940px){
	#brand .logotext {width:220px}
	#brand .brand-contact a {font-size:16px;margin-right:6px;    display: block; text-align: center;  margin-top: 6px;}
	#brand .logo {max-width: 210px;  margin-bottom: 20px; margin-top: 87px;}
}

@media screen and (max-width:900px){
	header {height:550px}
	.map {width: 400px;height: 550px;}
	.map .label {font-size:10px}
	#proj_riverterrace {top: 322px;left: 87px;}
	#proj_361broadway {top: 316px;left: 175px;}
	#proj_mulberry {top: 266px; left: 204px;}
	#proj_42Park{ top: 110px; left: 304px;}
	#proj_42Park .label {left: -82px;top: 6px;}
	#proj_107Park { left: 361px;}
	#proj_107Park .label {left: -49px;}
	#proj_565 {    left: 311px;  top: 77px;}
	#proj_565 .label {left: -67px; top: -12px;}
	#proj_433 { top: 110px;  left: 348px;}
	#proj_433 .label {top: 15px; left: -3px;}
	#proj_421h {top: 224px;left: 138px;}
}

/* Screens under 700 wide LANDSCAPE PHONES */
@media screen and (max-width:700px) and (orientation : landscape) {
	body {background:#bbb;color:#000}
	.desktop_wrapper {display:none;}
	.mobile_wrapper {display:none;}
	.rotate_phone {display: flex;flex-direction:column;align-items:center;justify-content:center;margin-top:70px}
	.rotate_phone img {width:200px;}
}


/* Screens under 700 wide PHONES */
@media screen and (max-width:640px) {
	.desktop_wrapper {display:none;}
	.mobile_wrapper {display:block;width: 100%;}

	.m-hdr img {height: 100%;width: auto;margin: 0 auto;display: block;}
	.m-section.map {width:100%;height: auto;}
	.m-map-img {width: 100%;margin: 0 auto;display: block;}



	.carousel-cell {background-color: black;width:100%;}
	.carousel-cell img {height: 50%;}
	.map {background:none !important;width: 380px;height: 300px;}
	p {margin:12px 0}
	#proj_421h {position: absolute;top: 137px;left: 83px;0}

  	.flickity-viewport {height:280px !important}
  	.flickity-page-dots, .flickity-prev-next-button {display:none}
	.modal {display: none;align-items: center;justify-content: center;position: fixed;top:0px;left:0;z-index: 999;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0, 0, 0, 0.8);}
	.modal-body {background-color: #000; padding: 10px 10px 5px 10px;width: 90%;height: 340px;position: relative;border: 1px solid rgba(255, 255, 255, 0.64);color: #d6d0d0;}
	.modal-close {color: #bd3737;position: absolute;top: -5px;right: 10px;font-size: 40px;font-weight: bold;}
	.modal-close:hover, .modal-close:focus {color: #ff7070;text-decoration: none;cursor: pointer;}
	.modal h3 {margin-top:0;padding-top:0;margin-bottom:4px;color:#f5deb3;font-size:16px;}
	.modal p{margin-top:0;padding-top:0;margin-bottom:4px}

	.m-gallery-inst {display:block;text-align: center;color: rgba(255, 255, 255, 0.41);position: relative;top:10px;}

	.m-section {display:none;}
	.m-section.map {display:block;}

	.image-label {display: block;position: absolute;bottom: 15px;right: 10px;background: rgba(0, 0, 0, 0.58);padding: 10px;color: #9dde01;}

	.map {width: 400px;height: 550px;}
	.map .label {font-size:10px}
	#proj_riverterrace {top: 287px;left: 42px;}
	#proj_361broadway {top: 254px;left: 128px;}
	#proj_mulberry {top: 225px;left: 145px;}
	#proj_42Park{top: 97px;left: 247px;}
	#proj_42Park .label {left: -82px !important;top: 6px;}
	#proj_107Park {left: 265px;}
	#proj_107Park .label {left: -49px;}
	#proj_565 {left: 222px;top: 67px;}
	#proj_565 .label {left: -67px; top: -12px;}
	#proj_433 {top: 90px;left: 274px;}
	#proj_433 .label {top: 15px; left: -3px;}
	#proj_421h {top: 198px;left: 89px;}
}


@media screen and (max-width:420px) and (min-height: 620px) {
	/* .m-content {} */
}


/* Screens between 701-900 wide TABLET */
@media screen and (min-width:421px) and (max-width: 900px) {
    #brand .logotext {width:80%;}
    #description, footer, .section p {font-size:14px}
    .section .section_txt {padding:20px}
}