/*
 Theme Name:   Corzo Child
 Template:     corzo
*/

/* =========================================================
   FINAL CONSOLIDATED CSS
   ========================================================= */

/* Wrapper */
.gls-landing{
	position:relative !important;
	background:transparent !important;
	overflow:visible !important; /* don’t clip logo pseudo */
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
}

/* Neutralize GoodLayers backgrounds */
.gls-landing .gdlr-core-container,
.gls-landing .gdlr-core-pbf-wrapper-container,
.gls-landing .gdlr-core-pbf-background-wrap{
	background:transparent !important;
}

/* Keep page content above the graphic */
.gls-landing .gdlr-core-pbf-wrapper-content,
.gls-landing .gdlr-core-pbf-wrapper-container{
	position:relative;
	z-index:2;
}

/* =========================
   LAYOUT: lock content column @ 465px min
   - Add class "gls-content" to the TEXT/LOGO column
   - Add class "gls-spacer" to the empty spacer column
   ========================= */
.gls-content{
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.gls-content .gdlr-core-pbf-column-content{
	margin-left:0 !important;
	margin-right:0 !important;
}

.gls-content .gls-contact p{
	margin-bottom:0 !important;
}

.gls-content .gls-contact a{
	font-size:26px !important;
	font-weight:300 !important;
}

/* If GoodLayers columns are floated (not flex), this still helps */
.gls-content,
.gls-spacer{
	box-sizing:border-box;
}

/* =========================================================
   GLS — lock GoodLayers columns
   column 2 = content
   column 1 = spacer (collapsible)
   ========================================================= */

/* CONTENT COLUMN */
#gdlr-core-column-2{
	box-sizing:border-box;
}

/* SPACER COLUMN */
#gdlr-core-column-1{
	min-width:0 !important;
	width:auto !important;
	flex:1 1 auto !important;
	box-sizing:border-box;
}

/* =========================
   LOGO (class on logo module wrapper: gls-logo)
   ========================= */
.gls-logo{
	padding-bottom:0 !important;
	margin-top:60px !important;
}

.gls-logo img{
	max-width:285px;
	width:100%;
	height:auto;
}

/* =========================
   SPACER IMG
   ========================= */
.gls-spacer .gdlr-core-pbf-background{
	background-repeat:no-repeat !important;
	background-position:left top !important;
	background-size:calc(100vh + 10px) auto !important;
}

/* =========================
   TYPE RHYTHM
   ========================= */
.gls-wordmark{ line-height:1.05; margin-bottom:24px; }
.gls-tagline{ line-height:1.25; margin-bottom:24px; }
.gls-body{ line-height:1.6; margin-bottom:32px; }
.gls-contact-title{ line-height:1.15; margin-bottom:10px; }
.gls-contact{ line-height:1.5; }
.gls-content .gls-contact a:hover{ text-decoration:underline; }

/* =========================
   RESPONSIVE TUNING
   ========================= */

@media (min-width:2050px){
	.gls-logo img{
		max-width:500px;
	}
	
	.gls-spacer .gdlr-core-pbf-background{
		background-size:calc(100vh + 150px) auto !important;
	}
	
	.gls-content .gls-tagline p{
		font-size:54px !important;
		margin-bottom:50px !important;
	}
	
	.gls-content .gls-body p{
		font-size:30px !important;
		margin-bottom:70px !important;
	}
	
	.gls-content .gls-contact-title p{
		font-size:37px !important;
		margin-bottom:15px !important;
	}
	
	.gls-content .gls-contact p{
		font-size:25px !important;
	}
}

@media (min-width:1800px) and (max-width:2049px){
	.gls-logo img{
		max-width:400px;
	}
	
	.gls-spacer .gdlr-core-pbf-background{
		background-size:calc(100vh + 40px) auto !important;
	}
}

/* =========================
   TABLET / SMALL DESKTOP LANDSCAPE
   Keep your original 1024-ish behavior
   ========================= */
@media (min-width:1025px) and (max-width:1240px){
	.gls-logo img{
		min-width:235px;
	}
	
	.gls-content{
		padding:150px 105px !important;
	}
	
	#gdlr-core-column-1{
		max-width:390px !important;
		flex:1 1 390px !important;
	}
	
	#gdlr-core-column-2{
		flex:1 1 auto !important;
	}
	
	.gls-spacer .gdlr-core-pbf-background {
		background-position: 120px top !important;
	}
}

/* =========================
   TABLET LANDSCAPE
   Use original 1024 block behavior
   ========================= */
@media (min-width:821px) and (max-width:1024px){
	.gls-logo img{
		min-width:235px;
	}
	
	.gls-content{
		padding:150px 105px !important;
	}
	
	#gdlr-core-column-1{
		max-width:390px !important;
		flex:1 1 390px !important;
	}
	
	#gdlr-core-column-2{
		flex:1 1 auto !important;
	}
}

/* =========================
   TABLET PORTRAIT
   768x1024 and larger portrait tablets
   Preserve your original stacked portrait treatment
   ========================= */
@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){
	.gls-landing{
		flex-direction:column !important;
	}
	
	.gls-logo{
		margin-top:0 !important;
	}
	
	.gls-logo img{
		min-width:235px;
	}
	
	#gdlr-core-column-1{
		flex:1 1 100% !important;
		max-width:none !important;
	}
	
	.gls-content{
		padding:148px 105px !important;
		flex-direction: row;
		justify-content:flex-start;
	}
	
	#gdlr-core-column-2{
		position:absolute !important;
		width:100% !important;
		top:260px;
		left:0;
		right:0;
		z-index:-1;
		flex:none !important;
	}
	
	.gls-spacer .gdlr-core-pbf-background{
		transform:translate(70px, 0) !important;
	}
}

/* =========================
   Small tablets / large phones
   Keep your original 600–767 treatment
   ========================= */
@media (min-width:600px) and (max-width:767px){
	.gls-logo{
		margin-top:0 !important;
	}
	
	.gls-logo img{
		min-width:147px;
		max-width:147px;
	}
	
	#gdlr-core-column-1{
		flex:1 1 50% !important;
	}
	
	#gdlr-core-column-2{
		position:unset !important;
		flex:1 1 50% !important;
		width:auto !important;
		top:auto !important;
		left:auto !important;
		right:auto !important;
		z-index:auto !important;
	}
	
	.gls-spacer .gdlr-core-pbf-background{
		background-position:0 top !important;
		transform:translate(0, 0) !important;
	}
}

/* =========================
   Mobile / small screens
   Preserve your original mobile treatment
   ========================= */
@media (max-width:599px){
	.gls-logo {
		margin-top: 0 !important;
	}
	
	.gls-logo img{
		min-width:147px;
		max-width:147px;
	}
	
	.gls-content{
		flex-direction:row;
		justify-content:flex-start;
		padding:143px 50px !important;
	}
	
	.gls-landing .gdlr-core-pbf-wrapper-full-no-space 
	.gdlr-core-pbf-column-content-margin{
		padding-left: 50px !important;
		padding-right: 50px !important;
	}
	
	#gdlr-core-column-2{
		position:absolute !important;
		width:100% !important;
		top:0;
		left:0;
		right:0;
		z-index:-1;
		flex:none !important;
	}
	
	.gls-spacer .gdlr-core-pbf-background{
		background-size:calc(100vh - 135px) auto !important;
		transform:translate(0, 215px) !important;
	}
}

/* Remove side padding GoodLayers injects on smaller screens */
@media (max-width:767px){
	body #gdlr-core-column-2,
	body #gdlr-core-column-2 .gdlr-core-pbf-column-content,
	body #gdlr-core-column-2 .gdlr-core-pbf-column-content-wrap,
	body #gdlr-core-column-2 .gdlr-core-pbf-column-content-margin,
	body #gdlr-core-column-2 .gdlr-core-pbf-column-content-margin > div{
		padding-left:0 !important;
		padding-right:0 !important;
	}

	body #gdlr-core-column-2 [style*="padding-left"],
	body #gdlr-core-column-2 [style*="padding-right"],
	body #gdlr-core-column-2 [style*="padding:"]{
		padding-left:0 !important;
		padding-right:0 !important;
	}
}

@media only screen and (max-width:767px){
	.gdlr-core-pbf-wrapper-full-no-space{
		max-width:100% !important;
	}
}

/* Ultra-small */
@media (max-width:464px){
	.gls-landing{
		overflow-x:auto !important;
	}
}