@charset "utf-8";
/* CSS Document */ :root {
  --beige: #E0DEC3;
  --sub-black: #262523;
}
html {
  box-sizing: border-box;
}
img {
  max-width: 100%;
}
*, *:before, *:after {
  box-sizing: inherit;
}
.container {
  margin: 0;
	max-width:100vw;
	overflow-x: hidden;
}
.footer {
    background-color: #262523;
    width: 100vw;
    height: 88px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
	
}

.footer a {text-decoration: none; color:#fff;}
.footer p {
    font-size: 10px;
    color: white;
    text-align: center;
    line-height: 15px;
    display: block;
    margin-bottom: 5px;
    font-weight: 300;
    
}

.footer-style {
    text-align: center;
    font-size: 10px;
    font-family: Lora;
    color: white;
    display: block;
    font-weight: 400;

}

.banner {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100vw;
    background-color: #262523;
    top: 116px;
    height: 25px;
	    z-index: 939;
}

.banner p {
    font-family: Lora;
    font-weight: 50;
    color: white;
    text-align: center;
    line-height: 25px;
    font-size: 13px;
}
body {
  margin: 0;
  font-family: "Roboto", "Helvetica", sans-serif;
  font-size: 15px;
  color: var(--sub-black);
  font-weight: 300;
	max-width:100vw;
	overflow-x: hidden;
}
h1, h2, h3 {
  font-family: "Lora", "Georgia", serif;
  font-weight: 400;
  text-transform: uppercase;
  color: #262523;
}
h2 {
  font-size: 30px;
  margin-bottom: 0;
}
h4 {
  text-transform: uppercase;
  font-weight: 400;
  font-size: 21px;
  margin-bottom: 0;
}
p {
  line-height: 38px;
  font-size: 18px;
}
.regular {
  font-weight: 400 !important;
}
.light {
  font-weight: 300 !important;
}
#hamburger {
  margin-bottom: 30px;
}

.mobile-navigation {
	display:none;
}
.container {
  display: grid;
  grid-template-columns: auto;
  grid-template-areas: "header""content";
  grid-gap: 0;
  width: 100%;
  margin: 0;
}
.header {
  padding: 0;
  display: grid;
  width: 100%;
  justify-self: center;
  grid-template-columns: auto;
  margin: 0;
}
.logo {
  justify-self: center;
}
.top-level-menu {
  padding: 0;
  grid-gap: 1px;

  width: 100vw;
  display: none;
}
.top-level-menu li {
  font-family: "Roboto", "Helvetica", sans-serif;
  text-transform: uppercase;
  list-style: none;
  margin: 0;
  text-align: left;

  padding: 20px 20px;
  color: #E0DEC3;
  font-size: 14px;
}
#portfolio-hidden-menu {
  background-color: var(--sub-black);
  padding: 0;
  margin: 0;
  display: none;
}

.navigation {
  justify-self: center;
  text-align: center;
  padding-top: 1px;
}
.logo {
  justify-self: center;
}
.content {
  display: grid;
  height: auto;
  padding: 0;
  grid-area: content;
  grid-template-columns: auto;
  margin-top: -15px;
}
.module {
  display: grid;
  grid-template-columns: auto;
  width: 100%;
  min-height: min-content;
  height: 430px;
}
.hero {
  justify-self: center;
  text-align: center;
  padding-bottom: 50px;
  height: min-content;
}
.intro h1 {
  padding: 0 9vw;
  margin: 0 0 40px 0;
  font-size: 29PX;
  line-height: 37px;
}
.intro p {
  font-weight: 300;
}
.hero p {
  padding: 0 26px;
}
.citation {
  display: none;
}
.features {
  grid-template-columns: auto;
  align-content: center;
  padding: 50px 0;
  background-image: url(/images/features-back1.jpg);
  background-size: cover;
	background-position:center;
	background-attachment: fixed;
}
.features > *, .product-information > *, .gallery > * {
  text-align: center;
  padding: 0 20px;
}
.logos {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: auto;
  align-items: center;
  grid-column: 1/2;
}
.logos div:first-child {
  justify-self: end;
  margin-right: 48px;
}
.logos div:nth-child(2) {
  justify-self: start;
}
.colors {
  grid-template-columns: repeat(3, 1fr);
  justify-content: center;
  align-content: center;
  background: url("/images/colors-2-big.jpg") no-repeat bottom right;
    background-size: 39%;
 
	background-color:#faf8f3;
}
.colors > * {
  text-align: center;
  padding: 0 20px;
}
.mobile-hero-image {
  font-size: 12px;
  margin-bottom: 40px;
}
.internal-page h1 {
  position: relative;
  top: 200px;
  width: 1024px;
  margin: 0 auto;
  font-size: 40px;
  text-align: center;
}

/*------------------------------------------------------------MEDIA 768px wide and larger	*/
.module {
  height: 460px;
}
p {
  font-size: 15px;
  line-height: 19px;
}
.header {
  grid-template-columns: 150px 1fr;
  align-content: center;
  position: fixed;
  background-color: #fff;
  padding: 0 6vw;
  width: 100%;
  z-index: 1000;
      background-color: #fff;

	    background-image: url(/images/nav-back.jpg);
    background-repeat: repeat-x;
    background-position-y: 54px;
	
}
.internal-page .header {
  /* border-bottom: 1px solid #cecece; */
  background-image: url("/images/nav-back.jpg");
  background-position: 0px 69px;
  background-repeat: repeat-x;
  background-size: contain;
  -webkit-box-shadow: 0px 10px 10px #CAC6C6;
  box-shadow: 0px 1px 18px #CAC6C6;
}
.navigation {
  justify-self: end;
  -ms-align-self: center;
  align-self: center;
}
.navigation i {
  display: none;
}
.logo {
  justify-self: start;
  align-self: center;
}
.top-level-menu {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  width: 622px;
  align-self: center;
    
}
.top-level-menu li {
  justify-self: center;
  align-content: center;
  grid-gap: 1px;
   
  color: #262523;
  font-size: 11px;
  padding: 6px;
  cursor: pointer;
  font-weight: 600;
}
.top-level-menu li a {
	color:var(--sub-black);
	text-decoration: none;
}
#portfolio-hidden-menu li {
  grid-template-columns: auto !important;
  justify-self: start;
  color: #262523;
  background-color: var(--beige) !important;
  font-weight: 300;
  font-size: 15px !important;
  padding: 20px 10px;
}
#portfolio-hidden-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 102px;
  right: 24.5vw + 150px;
  background-color: #262523;
  width: 270px;
  grid-template-columns: auto;
  grid-gap: 1px;
}
.content {
  margin-top: 115px;
}
.hero {
  background: url("/images/clift-hotel-lobby-1536x833.jpg")no-repeat center fixed;
  background-size: cover;
  grid-template-columns: auto;
  height: 790px;
  padding-bottom: 0;
}
.mobile-hero-image {
  display: none;
}
.intro {
  background-color:#fff;
  text-align: left;
  justify-self: end;
  position: relative;
  color:var(--sub-black);
  right: 20vw;
  top: 50px;
  width: 590px;
  height: 658px;
}
.intro h1 {
  color: var(--sub-black);
  margin-left: 26px;
  margin-top: 26px;
  padding: 0;
  margin-bottom: 0;
  font-size: 60px;
  line-height: 60px;
}
.citation {
  background-color:var(--sub-black);
  padding: 15px;
  color: #fff;
  position: relative;
  top: 3px;
  left: 26px;
  display: block;
  font-size: 13px;
}
.features, .product-information {
  grid-template-columns: 1fr 1fr 1fr;
  padding: 50px 0;
  align-self: center;
  grid-column-gap: 50px;
  HEIGHT: 460px;
}
.product-information {
  grid-template-rows: auto 70px auto;
  background-image: url("/images/product-information-back.jpg");
  background-position-x: center;
  background-size: 100%;
  background-repeat: no-repeat;
}

.gallery {
grid-template-rows: auto 70px auto;
    background-image: url(/images/gallery-back.jpg);
    background-position-x: left;
	background-position-y:bottom;
    background-repeat: no-repeat;
    
    background-size: 29%;
    background-color: #faf8f3;
    
}


.features h2, .product-information h2, .gallery h2 {
  grid-column: 1/span 3;
  align-self: end;

		grid-row: 1/2;
 
	}

.gallery h2 {
    align-self: end;
	    grid-row: 1/2;
  
	    grid-column: 1/span 3;
}
	
.section-icon {
	width: 100px;
	grid-column: 2/3;
	justify-self: center;
	grid-row: 1/2;
	margin-bottom: 65px;
}


.features-intro, .product-information-intro {
  grid-column: 1/4;
  grid-row: 2/3;
     padding: 0 35vw; 
  margin-bottom: 0;
}
.features .button, .product-information .button {
  grid-column: 1/4;
  grid-row: 3/4;
}
.logos {
  height: 100px;
  align-content: center;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column: 2/3;
  grid-row: 4/5;
}
.logos > * {
  align-self: center;
}
.colors {
  align-content: center;
}

.button {
  color:var(--sub-black);
	border:1px solid;
  border-color:var(--sub-black);
 padding:0;
  text-align: center;
  margin: 10px auto 0 auto;
 width: 140px;
  text-transform: uppercase;
  font-size: 12px;
  height: 33px;
  font-family: lora;
	grid-row: 2/3;
	-ms-grid-column: 2/3;
	grid-column: 2/3;
	display:grid;
	align-content: center;
	grid-template-columns:auto;
	
}

.button:hover {
	background-color:var(--sub-black);
	color:#fff;
}

.button a {
display: grid;
width: 100%;
height: 27px;
text-decoration: none;
color: var(--sub-black);
align-content: center;
}

.button a:hover {
	color:#fff;
	background-color:var(--sub-black);
}


.colors h2 {
	grid-column:1/4;
	grid-row:1/2;
	margin-top:75px;
	
	margin-left: auto;
margin-right: auto;
	align-self: end;
	
}

.product-information .section-icon, .gallery .section-icon {
	align-self: end;
	width:100px;
	
}

.mobile-logo {
	display:none;
}

.section {
	display:none;
}

/*------------------------------------------------------------MEDIA QUERIES	*/
@media(max-width:1096px) {
  .intro {
    width: 440px;
    height: 707px;
  }
  .intro h1 {
    font-size: 40px;
    line-height: 40px;
  }
 
	
	.product-information {
		background-size:cover ;
	}
}
@media(max-width:864px) {
	
	
	.logo {
		display:none;	
			}
	.mobile-logo {
		display:block;
		
		align-self:center;
		margin-top: 7px;
	}
	.close-menu {
	grid-column: 1/3;
color: #fff;
font-size: 30px;
	}
	
	.close-button {
		position: absolute;
top: 10px;
right: 20px;
	}
	
	.menu-logo {
		    position: absolute;
    top: 11px;
	}
	
	.banner p{
		font-size: .5rem;
	}
	
	.banner {
		top:72px;
		z-index:342345;
	}
	
	.sections {
		display:block;
		text-align:center;
		text-transform: uppercase;
		color:var(--sub-black);
		font-family:"Lora", "Times", Serif;
		border-bottom:1px solid #cecece;
		width:100vw;
		margin:0 auto;
		font-size:26px;
		
	}

.mobile-navigation {
   
    background-color: var(--sub-black);
    height: 100vh;
    top: 0;
    position: absolute;
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    align-content: center;
    justify-content: center;
    grid-gap: 50px;
    opacity: .95;
	display:none;
	align-items: end;
}
	.mobile-logo img {
		max-width:100%;
	}
	
	.mobile-menu-item img {
		width:100px;
		margin-bottom:20px;
	}
	
	.mobile-menu-item {
		text-align:center;
		color:#fff;
	}
	
	.content {
	margin-top: 62px;
	}
	
	.navigation {
    display: grid;
    justify-self: center;
    width: 100%;
    grid-column: 2/3;
	}
	
	#hamburger {
		color:var(--sub-black);
		font-size:18px;
		margin:20px 0;
		font-size:28px;
	margin-top: 20px;
    margin-right: 20px;
		justify-content:end;
	}
	
	.navigation i {
		display:grid;
	}
	
	.top-level-menu {
		display:none;
	}
	
	.header {
    padding: 0;
    grid-template-columns: repeat(2, 1fr);
    -webkit-box-shadow: 0px -1px 24px var( --sub-black );
    box-shadow: 0px -1px 24px var( --sub-black );
    height: 72px;
	}
  .intro {
    width: 100%;
    right: auto;
    top: auto;
    padding: 0px;
    height: 100%;
    height: auto;
    padding-bottom: 30px;
	  color: var(--sub-black);
	  background-color:#fff;
	  background-image:none;
  }
  .mobile-hero-image {
    display: block;
    text-align: center;
  }
  .mobile-hero-image img {
    width: 100%;
  }
.intro h1 {
	font-size: 58px;
	line-height: 55px;
	padding-right: 40px;
	color:var(--sub-black);
}
  p {
    font-size: 19px;
    line-height: 30px;
  }
  .hero {
    height: auto;
  }
  .hero p {
    padding: 0 30px;
  }
  .citation {
    display: none;
  }
  .features-intro, .product-information-intro {
    padding: 0 30px;
  }
  .product-information {
    background-size: cover;
  }
  .product-information .button {
    align-self: center;
  }
  .colors > * {
    padding: 0;
  }
	

	.logo {
		justify-self:center;
	}
	
	.colors .section-icon {
		width:80px;
	}
}

@media (max-width:605px) {
	.product-information .section-icon {

	margin-bottom: 134px;
}
	
	.product-information .button {
		align-self: center;
margin-top: 60px;
	}
}
@supports (-webkit-touch-callout: none) {
  /* CSS specific to iOS devices */ 
	
	.colors {
		background-size:35%;
		
	}
}
@media (min-width:868px){
	
	.colors, .gallery {
		background-size:29%;
		background-attachment:fixed;
	}
}

@MEDIA (MAX-WIDTH:450PX) {
	.intro h1 {
	font-size: 45px;
	line-height: 46px;
	padding-right: 0px;
	color: var(--sub-black);
}
	
	.mobile-hero-image {
		margin-bottom:0;
	}
}