/*
 Theme Name:     Divi Child Theme
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/
 
@import url("style.css");

/* General */
.mobile-menu, a.case-link::after, .menu-mobile-menu-container li a, .small-menu li a, #prev-next a span, #prev-next a, .index-bottom a {
	transition: .3s ease-in-out !important;
}
a.case-link p {
	transition: .15s ease-in-out !important;
}
body {
	overflow-x: hidden;
}
.container, .et_pb_row {
	width: 90%;
	max-width: 90%;
}
#main-header .container, .container.prev-next, #index .container {
	max-width: 95%;
	width: 95%;
}
.et-waypoint.et_pb_animation_bottom.et-animated, .et_pb_animation_bottom.et-animated {
	animation: fadeBottom .5s cubic-bezier(.86,0,.07,1) 1 !important;
}
#main-header.light-header #top-menu li a, .et_pb_bg_layout_dark, .et_pb_bg_layout_dark h1, .et_pb_bg_layout_dark h2, .et_pb_bg_layout_dark h3, .et_pb_bg_layout_dark h4, .et_pb_bg_layout_dark h5, .et_pb_bg_layout_dark h6, #highlight .et_pb_bg_layout_dark * {
	color: #f6f0de !important;
}
*, .fact h5 {
	font-family: "Euclid" !important;
	letter-spacing: .5px;
}
h1,h2,h3,h4,h5,h6, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, .sticky p, .menu-mobile-menu-container li a, .blog-text *, .blog-text, .fact * {
	font-family: "adobe-caslon-pro", serif !important;
text-transform: uppercase;
}
.fact h5 {
	font-family: "Euclid" !important;
	letter-spacing: .5px;
	text-transform: uppercase !important;
}
.fact * {
	text-transform: none;
	letter-spacing: 0;
	font-size: 14px;
}
.et_pb_section, .et_builder_inner_content, #et-main-area, #main-content {
	background: #f5f1e5;
}
#sidebar, #main-content .container::before, #top-menu .menu-item-has-children > a:first-child::after {
	display: none !important;
}
#left-area {
	width: 100% !important;
	padding-right: 0 !important;
}

/* Header */
#main-header.et-fixed-header, #main-header {
	box-shadow: none !important;
}
#logo {
	max-height: 12px !important;
}
#top-menu li a {
	font-size: 11px !important;
}
#et-top-navigation, nav#top-menu-nav, #top-menu, nav.et-menu-nav, .et-menu {
	float: none !important;
	padding-left: 0 !important;
	text-align: center !important;
}
#top-menu .menu-item-has-children > a:first-child, #et-secondary-nav .menu-item-has-children > a:first-child {
	padding-right: 0 !important;
}
.nav li ul {
	top: 30px;
	border-top: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}
#top-menu li li, #top-menu li li a {
	padding: 0 !important;
	background: none !important;
}
.mobile-menu {
	width: 20px;
	position: absolute;
	right: 0;
	top: 61px;
	cursor: pointer;
	z-index: 9999999999;
}
.mobile-menu span {
	margin-bottom: 5px;
	background: #383839;
	height: 1px;
	width: 100%;
	display: block;
	position: relative;
	transition: .3s ease-in-out !important;
}
#main-header.et-fixed-header .mobile-menu {
	top: 30px;
}
.hidden-mobile-menu {
	position: fixed;
	padding: 10%;
	top: -100vh;
	height: 100vh;
	width: 100%;
	background: #f5f1e5;
	z-index: 9999999;
	left: 0;
	transition: 1s cubic-bezier(0.76, 0, 0.24, 1) 0s;
}
.hidden-mobile-menu.opened {
	top: 0;
}
.mobile-menu.opened span:nth-child(1) {
	transform: rotate(45deg);
	top: 3px;
}
.mobile-menu.opened span:nth-child(3) {
	transform: rotate(-45deg);
	top: -3px;
}
.mobile-menu.opened span:nth-child(2) {
	display: none;
}
.menu-mobile-menu-container li {
	margin-bottom: 20px;
	line-height: 50px;
}
.menu-mobile-menu-container ul.sub-menu {
	position: absolute;
	top: 0px;
	right: -450px;
	display: none;
	width: 450px;
}
.menu-mobile-menu-container li.menu-item-has-children:hover > .sub-menu {
	opacity: 1;
	top: 0;
}
.menu-mobile-menu-container li a {
	font-size: 30px !important;
	text-transform: uppercase;
	letter-spacing: 5px;
	color: #000 !important;
	opacity: .3;
}
.menu-mobile-menu-container li a:hover, .small-menu li a:hover, .menu-mobile-menu-container li.current-menu-item > a {
	opacity: 1 !important;
}
#menu-mobile-menu {
	width: 450px;
	position: relative;
}
.small-menu {
	position: absolute;
	bottom: 10%;
}
.small-menu li a {
	text-transform: uppercase;
	opacity: .3;
}
.small-menu li {
	display: inline-block;
}
.small-menu li::after {
	content: "|";
	display: inline-block;
	opacity: .3;
	margin: 0 15px;
}
.small-menu li:last-child::after {
	display: none;
}
#main-header.light-header .mobile-menu span {
	background: #f6f0de !important;
}
#main-header.light-header #logo {
	filter: invert(100%);
}
#main-header.et-fixed-header #logo {
	filter: invert(0%) !important;
}
#main-header.et-fixed-header .mobile-menu span {
	background: #383839 !important;
}
#main-header.et-fixed-header #top-menu li a {
	color: #383839 !important;
}
#main-header #top-menu-nav li.current-menu-ancestor > a, #main-header #top-menu-nav li.current-menu-item > a {
	font-weight: 900 !important;
}

/* Page */
#front {
	padding-top: 0 !important;
}
.et_pb_slide {
	height: 100vh;
}
.et_pb_slides .et_pb_slider_container_inner {
	vertical-align: bottom;
}
.et_pb_slide_description, .et_pb_slider_fullwidth_off .et_pb_slide_description {
	padding: 0 8% 80px !important;
}
.et-pb-arrow-next, .et-pb-arrow-prev {
	font-size: 30px !important;
}
.et_pb_slide_description .et_pb_slide_title, #main-content h2, #main-content h4.et_pb_module_header {
	font-size: 13px !important;
	font-weight: 800 !important;
	margin-bottom: 10px !important;
}
div.sticky {
	position: sticky;
	float: left;
	width: 5px;
	top: 45%;
	bottom: 200px;
	margin-bottom: 183px !important;
}
div.sticky-right {
	float: right;
}
.sticky p {
	position: absolute;
	left: -40px;
	text-align: center;
}
div.sticky-right p {
	left: inherit;
	right: -40px;
	text-align: center;
}
.image-wrapper {
	position: relative;
}
a.case-link::after {
	display: block;
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	left: 0;
	bottom: 6px;
	background: rgba(245,241,229,.2);
	color: white;
	text-align: center;
	opacity: 0;
}
a.case-link p {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	text-align: center;
	display: grid;
	align-content: center;
	z-index: 999999;
	color: white;
	text-transform: uppercase;
	font-size: 18px !important;
	letter-spacing: 5px !important;
	top: -10px;
	opacity: 0;
}
a.case-link:hover p {
	top: 0;
	opacity: 1;
}
a.case-link:hover::after {
	opacity: 1;
}
#cases {
	display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(2, 1fr);
grid-column-gap: 1.3vw;
grid-row-gap:  1.3vw;
}
#philosophy, #cases-two, #cases-six, #cases-three, #cases-four {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 1.3vw;
	grid-row-gap:  1.3vw;
}
#cases-two {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
#cases-six {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
#cases-three {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
#cases-four {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.cases-item {
	margin-bottom: 50px !important;
}
.div1 { grid-area: 1 / 1 / 2 / 3; }
.div2 { grid-area: 1 / 3 / 2 / 4; }
.div3 { grid-area: 1 / 4 / 2 / 5; }
.div4 { grid-area: 2 / 1 / 3 / 2; }
.div5 { grid-area: 2 / 2 / 3 / 3; }
.div6 { grid-area: 2 / 3 / 3 / 5; }

#cases h2.title, #philosophy h2.title, #cases-two h2.title, #cases-six h2.title, #cases-three h2.title, #cases-four h2.title  {
	padding-top: 30px;
	letter-spacing: 5px !important;
}
.tags {
	margin-top: 20px;
}
#highlight .tags {
	margin-top: 0;
}
.et_pb_slide_content, #highlight .highlight-content {
	max-width: 750px;
	margin: auto auto 0 !important;
	font-size: 11px !important;
}
.highlight-content {
	position: absolute;
	bottom: 50px;
	left: 0;
	right: 0;
}
#highlight .et_pb_column, #highlight .et_pb_row {
	position: static;
}
.tags, .tags *, .et_main_title .et_project_categories * {
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #666;
}
.tags p {
	display: inline-block;
}
.tags span {
	margin: 0 10px;
}
#highlight {
	height: calc(100vh - 70px) !important;
	display: grid;
	align-content: center;
	background-size: cover !important;
}
#main-content .project-title h2, .et_pb_title_container h1, .single-project .et_main_title h1 {
	font-size: 30px !important;
	letter-spacing: 15px !important;
	margin-bottom: 10px !important;
}

/* Single Project */
.single-project #highlight {
	height: 100vh !important;
}
.single-project #highlight .tags a {
	margin: 0 10px;
}
.blog-text *, .blog-text {
	font-size: 18px;
	line-height: 28px;
	text-transform: none;
}
.blog-text.quote * {
	font-size: 22px;
	line-height: 32px;
}
.blog-text p {
	padding-bottom: 30px;
}
.blog-text p::first-letter {
	padding-left: 40px;
}
.blog-text.no-padding p::first-letter {
	padding-left: 0px;
}
.blog-text p:first-child::first-letter {
	padding-left: 0;
}
.border-bottom {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid rgba(0,0,0,0.1);
}
.located *, .fact h5, #prev-next *, .index-bottom * {
	font-size: 10px !important;
	text-transform: uppercase;
	letter-spacing: 2px !important;
	font-weight: 600 !important;
}
.located {
	margin-top: 30px;
}
#gallery .et_pb_column_1_3 {
	width: calc(33.3% - 14px);
	margin-right: 20px;
}
#gallery .et_pb_column_1_2 {
	width: calc(50% - 10px);
	margin-right: 20px;
}
.fact {
	margin-bottom: 20px !important;
}
.single-project .et_pb_module {
	margin-bottom: 30px !important;
}
.single-project .et_pb_module.et_pb_code.sticky {
	margin-bottom: 0 !important;
}
.single-project .et_pb_code.sticky p {
	left: -5vw;
}
.single-project .et_pb_code.sticky-right p {
	right: -5vw;
	left: inherit;
}
#prev-next, .index-bottom {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 40px;
	padding-bottom: 58px;
}
.index-bottom {
	grid-template-columns: 1fr 1fr;
}
.index-right {
	text-align: right;
}
#prev-next .center {
	text-align: center;
}
#prev-next .right {
	text-align: right;
}
#prev-next *, .index-bottom * {
	color: #666;
}
#prev-next a:hover *, .index-bottom a:hover {
	color: black !important;
}
#prev-next span.seperate {
	margin: 0 10px;
}
#index {
	background: #e1dbd0;
	padding-bottom: 78px;
}
#main-content #index h2 {
	padding: 20px 0 35px;
	text-align: center;
}
.index-wrapper {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(8%, 1fr));
	grid-auto-rows: 1fr;
	grid-gap: .5vw;
  }
  
  .landscape {
	grid-column: span 2; /* Set the landscape image to occupy two columns */
	text-align: center;
  }
  
  .portrait {
	grid-column: span 1; /* Set the portrait image to occupy one column */
	text-align: center;
  }
.landscape p, .portrait p {
	font-size: 10px;
	font-weight: 600;
}
.index-bottom {
	padding-top: 78px;
}
.index-bottom a::after, .right span.meta-nav::after {
	display: inline-block;
	content: '"';
	font-family: ETmodules !important;
	position: relative;
	top: 1px;
	margin-left: 5px;
}
.right span.meta-nav::after {
	content: "5";
}
.short-right .slick-slide {
	margin: 0 !important;
}
.short-left, .short-right {
	width: 50% !important;
	display: inline-block;
	vertical-align: top;
} 
.short-right .slick-slide img {
	max-height: inherit !important;
}
.short-right {
	position: sticky;
	top: 0;
	align-self: start;
}
.short-left .et_main_title, .short-left .short-left-content {
	padding: 50px 100px;
}
.short-left .et_main_title {
	padding-top: 250px;
	text-align: center;
}
.short-left #index .container {
	padding-top: 50px !important;
}
.short-left #index {
	padding-bottom: 0 !important;
	margin-bottom: 6px;
}
#main-content .short-left .container {
	max-width: 90% !important;
}
.short-left .index-wrapper {
	grid-template-columns: repeat(auto-fill, minmax(15%, 1fr));
}
#main-content .short-left #index h2 {
	padding-bottom: 50px !important;
}
.et_main_title .et_project_categories *, .et_main_title .et_project_categories {
	font-size: 11px !important;
	color: #666 !important;
}
.et_main_title .et_project_categories a {
	margin: 0 10px;
}
.slick-dots {
	bottom: 40px !important;
	padding-bottom: 0 !important;
padding-left: 0 !important;
text-align: right;
padding-right: 40px !important;
margin-left: 50%;
width: 50%;
}
.slick-prev::before, .slick-next::before { 
	font-family: ETmodules !important;
	content: "4";
	font-size: 26px !important;
}
.slick-prev, .slick-next {
	top: inherit;
	bottom: 40px;
}
.slick-prev {
	left: 30px !important;
	z-index: 99;
}
.slick-next {
	right: inherit !important;
	left: 75px !important;
}
.slick-next::before {
	content: '5' !important;
}
.slick-dots li {
	width: 15px;
	margin: 0;
}
.slick-dots li button::before {
	color: white !important;
	opacity: .5 !important;
}
.slick-dots li.slick-active button::before {
	opacity: 1 !important;
}
.slick-dotted.slick-slider {
	margin-bottom: 0 !important;
}
.single-project #left-area {
	padding-bottom: 0 !important;
}
.mfp-iframe-holder .mfp-close, .mfp-image-holder .mfp-close {
	opacity: 1 !important;
position: absolute;
font-size: 34px;
top: -3px !important;
}

/* Archives */
.archive div.sticky {
	margin-bottom: 218px !important;
}

/* Contact */
#contact-row {
	min-height: 100vh;
}
.align-center {
	display: grid;
	align-content: center;
}
.contact-text h2 {
	padding-bottom: 0 !important;
}
.contact-text {
	margin-bottom: 0px !important;
	padding-bottom: 0px !important;
}
.contact-text::after {
	display: block;
	width: 20px;
	height: 1px;
	margin: 20px auto 30px;
	background: rgba(0,0,0,0.2);
	content: "";
}
.contact-text.last::after {
	display: none !important;
}
.contact-bottom-text {
	position: absolute;
	bottom: 20px;
	left: 0;
	max-width: 500px;
	margin: auto;
	right: 0;
}

/* Studio */
#main-content h4.et_pb_module_header {
	margin-top: 40px !important;
}
#main-content .sticky.studio {
	margin-bottom: 125px !important;
	top: 30% !important;
}
#people .tags {
	margin-bottom: 40px !important;
}
/* Footer */
#footer-widgets {
	padding: 8% 0 0 !important;
} 
.et_pb_gutters3.et_pb_footer_columns5 .footer-widget {
	width: 8% !important;
	margin-right: 4% !important;
}  
.et_pb_gutters3.et_pb_footer_columns5 .footer-widget:first-child {
	width: 50% !important;
	margin-right: 0 !important;
}
#footer-widgets .footer-widget li::before {
	display: none !important;
}
#main-footer .footer-widget h4, .small-menu li a {
	margin-bottom: 15px !important;
	font-family: "Euclid" !important;
	letter-spacing: 2px !important;
}
#footer-widgets .footer-widget li {
	padding-left: 0 !important;
}
#main-footer img {
	height: 12px !important;
	width: inherit;
}
#footer-info, .footer-column {
	display: inline-block;
	width: 49.5%;
	vertical-align: middle;
	float: none !important;
}
.footer-column p, .footer-column span {
	font-size: 11px;
	color: #666;
}
.footer-column span {
	margin: 0 15px;
}


/* Mobile */
@media only screen and (max-width: 1000px) {
	/* Header */
	.et_header_style_left .logo_container {
		padding-top: 20px;
	}
	.mobile-menu {
		top: 25px;
	}
	#et_mobile_nav_menu {
		display: none !important;
	}
	.menu-mobile-menu-container li a {
		font-size: 24px !important;
	}
	.menu-mobile-menu-container li {
		margin-bottom: 10px;
	}
	.hidden-mobile-menu {
		padding-top: 70px;
	}
	/* Slider */
	.et_pb_slide {
		height: 70vh;
	}
	.et_pb_slide_content, #highlight .highlight-content, .cases-excerpt p {
		font-size: 10px !important;
		line-height: 16px !important;
	}
	.et_pb_slide_description, .et_pb_slider_fullwidth_off .et_pb_slide_description {
		padding: 0 0% 50px !important;
	}
	.et_main_title .et_project_categories span.brand {
		margin-right: 10px;
	}
	/* Page */
	#cases {
		display: block !important;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
		grid-column-gap: 20px;
		grid-row-gap: 20px;
	}
	.div1, .div2, .div3, .div4, .div5, .div6 {
		grid-area: auto !important;
	}
	#cases .cases-item {
		width: 48% !important;
		display: inline-block;
		vertical-align: top;
		margin-right: 4% !important;
	}
	#cases .cases-item:nth-child(1) {
		width: 100% !important;
	}
	#cases .cases-item:nth-child(2n+6), #cases .cases-item:nth-child(5), #cases .cases-item.div3 {
		margin-right: 0 !important;
	}
	#cases h2.title, #philosophy h2.title, #cases-two h2.title, #cases-six h2.title, #cases-three h2.title, #cases-four h2.title, #main-content h2 {
		letter-spacing: 3px !important;
		line-height: 18px;
	}
	#main-content #highlight h2 {
		line-height: 38px;
	}
	.tags {
		margin-top: 20px;
		line-height: 7px;
		font-size: 9px !important;
	}
	.tags p a:first-child, .tags p span {
		display: none !important;
	}
	div.sticky, #cases .cases-item.div6 {
		display: none !important;
	}
	#highlight, .single-project #highlight {
		height: 70vh !important;
	}
	#highlight .highlight-content {
		padding: 0 5%;
	}
	#philosophy, #cases-two, #cases-six, #cases-three, #cases-four {
		grid-template-columns: 1fr 1fr;
		grid-column-gap: 4%;
		grid-row-gap: 4%;
	}
	#cases-two {
		grid-template-columns: 1fr;
	}
	.cases-item {
		margin-bottom: 0;
	}
	#cases .cases-item {
		margin-bottom: 50px;
	}
	#cases-six .cases-item:last-child, #cases-three .cases-item:last-child {
		display: none !important;
	}
	.cases-excerpt p {
		overflow: hidden;
		display: -webkit-box;
		-webkit-line-clamp: 5;
		-webkit-box-orient: vertical;
	}

	/* Page */
	#contact-row .et_pb_column_empty {
		min-height: 50vh !important;
		display: block !important;
		margin-top: 65px !important;
    margin-bottom: 65px !important;
	}
	.contact-bottom-text {
		position: relative;
		bottom: inherit;
		margin-top: 100px;
		max-width: 90%;
	}
	/* Project */
	#gallery.et_pb_row, .single-project #main-content .et_pb_row {
		max-width: 90%;
		width: 90%;
	}
	.single-project #highlight {
		height: 30vh !important;
	}
	.single-project #main-content #highlight {
		max-width: 90%;
		width: 90%;
	}
	.single-project #main-content #highlight.et_pb_section_0 {
		height: 70vh !important;
		max-width: 100%;
		width: 100%;
	}
	.single-project .quote *, .single-project .located *, .single-project .fact * {
		text-align: center !important;
	}
	#prev-next, .index-bottom {
		grid-template-columns: 1fr;
	}
	#prev-next * {
		text-align: center !important;
	}
	#prev-next .center {
		padding: 30px 0;
	}
	.index-wrapper {
		grid-template-columns: repeat(auto-fill, minmax(20%, 1fr));
		grid-auto-rows: 1fr;
		grid-gap: 1.5vw;
	}
	#people .tags p a:first-child, #people .tags p span {
		display: inline-block !important;
	}
	.page-id-6 #highlight, .page-id-6 #front .et_pb_slide {
		height: 30vh !important;
	}

	/* Footer */
	#footer-widgets .footer-widget:nth-child(1) {
		padding: 50px 0 30px;
	}
	#footer-widgets .footer-widget:nth-child(2), #footer-widgets .footer-widget:nth-child(3), #footer-widgets .footer-widget:nth-child(4) {
		width: 33% !important;
	}
	#footer-widgets .footer-widget:nth-child(5), #footer-info {
		display: none !important;
	}
	#footer-info, .footer-column {
		padding-bottom: 20px;
		text-align: right;
		width: 100%;
	}
}