/**
 * Main stylesheet
 * 
 */

/** Header */

	/** General */

		.simple-text-block.two-col h2 {
    		flex: 0 26%;
		}

		header {
			width: 100%;
			background-color: #FFF;
			height: 150px;
		}
		body.fixed {
			padding-top: 150px;
		}
		body.no-scroll header,
		body.fixed header {
			position: fixed;
			top: 0;
			z-index: 50;
		}

			header > .container {
				display: flex;
				justify-content: space-between;
				align-items: center;
				height: 150px;
			}

				header #logo a {
					color: #222222;
					font-size: 32px;
					font-weight: 600;
					text-transform: uppercase;
					text-decoration: none;
				}

				header #logo a span{
					text-transform: none;
					display: block;
					letter-spacing: 0.07em;
					font-weight: 500;
					font-size: 15px;
				}
	
	/** Navigation */

		/** General */
			header #mobile-menu {
				display: none;
			}
	
			header nav > ul {
				margin: 0;
				display: flex;
				height: 55px;
				align-items: center;
				list-style: none;
			}

				header nav > ul > li {
					height: 100%;
					margin: 0 1em;
				}

					header nav > ul > li > a {
						color: #222222;
						text-decoration: none;
						letter-spacing: 0.07em;
						font-weight: 500;
						font-size: 15px;
						display: flex;
						align-items: center;
						height: 100%;
						box-sizing: border-box;
					    border-bottom: 2px solid #f7f6f5;
						transition: all 0.3s;
					}
					header nav > ul > li:hover > a {
						color: #222222;
						border-color: #222222;
					}
		
		/* Child Menu - Desktop */
			@media (min-width: 1200px) {

				header nav .children-container {
					visibility: hidden;
					opacity: 0;
					transition: all 0.5s;
					position: absolute;
					left: 0;
					top: 150px;
					width: 100%;
					background-color: #F2EAE6;
					border-bottom: 1px solid #f7f6f5;
					z-index: 50;
				}
				
					header nav .children-container .container {
						padding-top: 3em;
						padding-bottom: 3em;
					}

						header nav > ul > li:hover .children-container {
							visibility: visible;
							opacity: 1;
						}

							header nav .children-container ul {
								padding: 0;
								list-style-type: none;
								margin: 0;
							}

							header nav .children-container .children-content ul.children-root {
								display: flex;
								flex-flow: row wrap;
								justify-content: flex-start;
								align-items: stretch;
							}

								header nav .children-container .children-content ul.children-root > li {
									margin-bottom: 1em;
									page-break-inside: avoid;
									width: 24.25%;
									margin-right: 1%;
								}
								header nav .children-container .children-content ul.children-root > li:nth-child(4) {
									margin-right: 0;
								}

									header nav .children-container .children-content ul.children-root a {
										display: inline-block;
										margin: 0.5em 0;
										text-decoration: none;
									}
									header nav .children-container .children-content ul.children-root a.child-title {
										font-weight: 800;
										text-transform: uppercase;
									}

									header nav .children-container .children-content ul.children-root .child-links-container a {
										text-transform: none;
										color: #523e39;
										letter-spacing: 0;
										position: relative;
										border-bottom: 1px solid #f4efeb;
										padding-bottom: 1px;
									}
									header nav .children-container .children-content ul.children-root .child-links-container a:hover {
										text-decoration: underline;
									}

			}

		/* Child Menu - Responsive */
			@media (max-width: 1200px) {
				header{
					height: 100px;
				}
				header > .container{
					height: 100px;
				}
				#menu-overlay {
					width: 100vw;
					height: calc(100vh - 80px);
					background: rgba(8, 19, 25, 0.85);
					z-index: 10;
					position: fixed;
					top: 80px;
					left: 0;
					display: none;
				}

				header #mobile-menu {
					display: block;
					text-indent: -9999px;
					background: url('/images/icons/menu.svg') #fff 50% 50% no-repeat;
					background-size: auto 20px;
					text-indent: -9999px;
					padding: 1em 1.5em;
					max-height: 100%;
					transition: all .25s;
					z-index: 250;
				}

				header #mobile-menu.active {
					background: url('/images/icons/menu-close.svg') #fff 50% 50% no-repeat;
					background-size: auto 20px;
					z-index: 250;
				}

				header nav {
					display: none;
					position: fixed;
					background-color: #f1f1f1;
					box-sizing: border-box;
					padding: 0;
					width: calc(100% - 80px - 2em);
					max-width: 900px;
					overflow: auto;
					z-index: 1002;
					left: 0;
					top: 100px;
					height: calc(100vh - 100px);
					overflow-y: scroll;
				}
				body.fixed header nav {
				}

					header nav > ul > li {
						margin: 0;
					}

						header nav > ul > li > a {
							display: flex;
							padding: 1.5em;
							border-bottom: 1px solid #e3dbd2;
							justify-content: space-between;
						}
						header nav > ul > li:hover > a {
							color: #222;
							border-color: #e3dbd2;
						}
						header nav > ul > li.hover > a {
							color: #081319;
						}

							header nav > ul > li > a span.arrow{
								background: url(/images/icons/arrow-down.svg) 50% 50% no-repeat;
								background-size: 20px;
								width: 0;
								padding: .7em;
								display: flex;
								transition: all .3s;
							}
							header nav > ul > li.hover > a span.arrow {
								transform: rotate(180deg);
							}

								header nav > ul > li .children-container .container {
									padding: 0;
									margin: 0;
								}

							header nav > ul {
								padding: 0;
								display: block;
								height: auto;
							}

								header nav > ul ul {
									list-style-type: none;
									padding: 0;
									margin: 0;
								}
								header nav > ul ul.children-root {
									background-color: #eee8e2;
									padding: 1.5em;
								}

									header nav > ul ul.child-links-container a {
										text-transform: none;
										color: #523e39;
										letter-spacing: 0;
										text-decoration: none
									}

									header nav > ul ul.children-root .child-title {
										letter-spacing: 0;
										text-transform: none;
									}

										header nav > ul ul.child-links-container {
											margin-top: 0.7em;
										}

										header nav > ul ul.children-root li {
											padding: 0.9em 0;
										}
										header nav > ul ul.children-root > li:first-of-type {
											padding-top: 0;
										}
										header nav > ul ul.child-links-container li:last-of-type {
											padding-bottom: 0;
										}

											header nav  .site-header-menu-items li .children-container {
												display: none;
											}
											header nav  .site-header-menu-items li.hover .children-container {
												display: block;
											}


			}

	/** Search */
		header .icons {
			display: flex;
			max-height: 100%;
		}
			
			header .icons a {
				margin: 0 3px;
			}
			
			header #search-toggle {
				display: block;
				text-indent: -9999px;
				background: url('/images/icons/search.svg') #f16529 50% 50% no-repeat;
				background-size: auto 20px;
				text-indent: -9999px;
				padding: 2em 2.5em;
				max-height: 100%;
				transition: all .25s;
				z-index: 250;
			}
			header #search-toggle.active {
				background: url('/images/icons/menu-close.svg') #222222 50% 50% no-repeat;
				background-size: auto 20px;
				z-index: 250;
			}

		#site-search {
			display: none;
			padding: 2em 0;
			background: rgba(19, 42, 55, .9);
			position: absolute;
			top: 80px;
			left: 0;
			z-index: 999;
			width: 100%;
		}

			#site-search form {
				position: relative;
			}

				#site-search input[type="search"] {
					width: 100%;
					box-shadow: none;
					border: 1px solid #f5f1ed;
					background-color: #fff;
					font-size: 16px;
					padding: 0.8em 1.2em;
					font-family: futura-pt, sans-serif;
					font-weight: 400;
					box-sizing: border-box;
				}

				#site-search button {
					position: absolute;
					top: 0;
					right: 0;
					width: 50px;
					height: 100%;
					padding: 0;
					text-indent: -999em;
					border: none;
					background: url(/images/icons/search.svg) #f16529 50% 50% no-repeat;
					background-size: auto 20px;
					border-radius: 0;
				}

	/** Notification */
		.notification {
			background: #e74c3c;
			color: #FFF;
			padding: .5em 0;
			text-align: center;
		}

			.notification p {
				margin: 0;
			}



/** Footer */
	
	/** General */
		footer {
			padding: 1.5em 0;
		}

			footer .container {
				display: flex;
				justify-content: space-between;
				align-items: center;
				border-top: 1px #dddddd solid;
			}

				footer div {
					font-size: 15px;
					flex: 0 50%;
					margin: 0;
				}
					footer div.right {
						display: flex;
						justify-content: flex-end;
					}
					footer div.right a{
						margin-left: 2em;
						letter-spacing: 0.08em;
						font-weight: 500;
					}


/** Blog Category page */

	/** General */
		section.news-feeds {
			padding: 0;
		}
		section.blog-empty {
			text-align: center;
		}

			.blog-post-single {
				margin-bottom: 0.5em;
			}
			.blog-post-single.col-33 {
				width: 31.3%;
				float: left;
				height: 300px;
			}
			.blog-post-single.col-33:nth-child(3n+2) {
				margin: 0 0.5% 0em;
			}

				.blog-post-single a.img {
					position: relative;
					width: 100%;
					height: 100%; 
					background-position: center;
					background-size: cover;
					display: block;
					border: none;
				}

				.blog-post-single .overlay-content{
					height: 100%;
					width: 100%;
					background-color: rgb(242 242 242 / 70%);
					background-image: url(/images/icons/launch.svg);
					background-position: 5% 5%;
					background-size: 24px;
					background-repeat: no-repeat;
					display: flex;
					align-items: center;
					justify-content: center;
					visibility: hidden;
					opacity: 0;
					transition: visibility 0s, opacity 0.5s linear;
				}
					.blog-post-single:hover .overlay-content{
						visibility: visible;
						opacity: 1;
					}
					.blog-post-single .overlay-content .border{
						border: 2px #ddd solid;
						width: 75%;
						height: 75%;
					}
					.blog-post-single .overlay-content .content{
						display: flex;
						align-items: center;
						justify-content: center;
						flex-direction: column;
						height: 100%;
					}
					.blog-post-single .overlay-content .content h3{
						margin-bottom: 0;
						text-transform: capitalize;
						font-weight: 600;
						text-align: center;
					}
						.blog-post-single .overlay-content .content span{
							font-style: italic;
							font-weight: 100;
						}
					.blog-post-single .overlay-content .content p{
						font-size: 20px;
						text-align: center;
					}

	/** Pagination */
		.pagination-link {
			width: 100%;
			margin: 1em 0 3em;
			text-align: center;
		}

			.pagination-link span,
			.pagination-link a {
				display: inline-block;
				background: #F16529;
				color: #FFF;
				line-height: 40px;
				padding: 0 1em;
				text-align: center;
				text-decoration: none;
				font-weight: 600;
				transition: all .5s;
			}

			.pagination-link span {
				background: #333;
				color: #FFF;
			}

				.pagination-link a:hover {
					background: #333;
				}

	/** Categories */
		.categories {
			background: #f7f6f5;
			text-align: center;
		}

			.categories h2 {
				color: #222222;
				margin-top: 0;
			}

			.categories ul {
				display: flex;
				align-items: center;
				justify-content: center;
				flex-flow: row wrap;
				margin: 1em 0 0;
				padding: 0;
				list-style: none;
			}

				.categories li {
					margin: 0 .5em;
				}


/** Blog Post */
	
	/** Header */
		.page-title-banner.blog-post .item {
			background-color: #222222;
			height: auto;
			padding: 5em 0 6em;
		}
			.page-title-banner.blog-post .caption {
				position: relative;
			}

			.page-title-banner.blog-post h4 {
				display: flex;
				flex-wrap: wrap;
				justify-content: center;
				text-transform: none;
				padding-bottom: 4em;
				font-size: 18px;
			}
				
				.page-title-banner.blog-post h4 .post-meta {
					display: flex;
					line-height: 1.6;
				}

					.page-title-banner.blog-post h4 img {
						display: block;
						width: 1em;
						height: 1em;
						margin: .2em .5em 0 0;
					}
					
					.page-title-banner.blog-post h4 span.by,
					.page-title-banner.blog-post h4 span.time {
						margin: 0 1.5em 0 0;
					}

			.page-title-banner h4 ul {
				display: inline-block;
				list-style: none;
				text-align: left;
				margin: 0;
				padding: 0;
			}

				.page-title-banner h4 ul a,
				.page-title-banner h4 ul a:hover {
					color: #FFF;
				}
				.page-title-banner h4 ul a:hover {
					text-decoration: none;
				}

				.page-title-banner h4 ul li {
					display: inline-block;
					margin-right: .5em;
				}
				.page-title-banner h4 ul li:last-child {
					margin-right: 0;
				}

	/** Content */
	.container.content{
		max-width: 1600px;
		margin: 0px auto;
		padding: 0 2%;
		display: flex;
		justify-content: space-between;
		position: relative;
	}
	.container.content .media-wrapper{
		flex: 0 55%;
	}
		.container.content .media-wrapper img{
			max-width: 740px;
			margin: 1.5em 0;
		}
	.container.content .post-wrapper{
		flex: 0 45%;
	}
	.container.content .post-wrapper.fixed{
		position: -webkit-sticky;
		position: sticky;
		align-self: flex-start;
		top: 0;
	}
		.container.content .post-wrapper h2{
			font-weight: 600;
			margin-top: 0;
			margin-bottom: 1em;
			text-transform: capitalize;
		}
			.container.content .post-wrapper h2 span{
				font-style: italic;
				font-weight: 100;
			}
			.container.content .post-wrapper h4{
				font-size: 1em;
				font-weight: 700;
			}
			.container.content .post-wrapper ul{
				margin: 0 0 1em;
				padding: 0;
				list-style: none;
			}

/** 404 Page */

	/** General */
		#error-404 {
			text-align: center;
			background: #F2EAE6;

		}
			
			#error-404 label {
				display: block;
				margin: 1em 0 .5em;
			}

			#error-404 input[type="text"] {
				max-width: 500px;
				width: 100%;
				box-shadow: none;
				font-size: 1em;
				padding: 0.8em 1.6em;
				background-color: #fff;
				border: 2px solid #FFF;
			}
				

/** General Responsive */
	@media only screen and (max-width: 1450px) { 
		.container.content .post-wrapper {
			padding-left: 2em;
		}
		.container.content .post-wrapper.fixed {
			left: 65%;
			width: 385px;
		}
	}
	/** 1181 -> 1300 */
		@media only screen and (max-width: 1150px) { 
			.container.content{
				flex-flow: column nowrap;
			}
				.container.content .media-wrapper {
					order: 2;
				}
					.container.content .media-wrapper iframe{
						width: 100%;
					}
					.container.content .media-wrapper img{
						width: 100%;
					}

					.container.content .post-wrapper {
						padding-left: 0;
					}
					.container.content .post-wrapper.fixed {
						display: block;
						position: relative;
						top: unset;
						left: unset;
						width: unset;
					}
		}

	/** 1085 -> 1180 */
		@media only screen and (max-width: 1180px) {

			/** Blog Post */
				.alignleft {
					margin-left: -5%;
				}
				.alignright {
					margin-right: -5%;
				}

		}

	/** 960 -> 1084 */
		@media only screen and (max-width: 1084px) {

			/** Blog Post */
				.alignleft {
					max-width: 40%;
					margin-left: 0;
				}
				.alignright {
					max-width: 40%;
					margin-right: 0;
				}

		}

	/** 769 -> 959 */
		@media only screen and (max-width: 959px) {

			/** General */
				.container {
					padding-left: 2em;
					padding-right: 2em;
				}

				.blog-post-single .overlay-content .border {
					width: 90%;
					height: 90%;
				}

			/** Blog Category page */
				.blog-post-single.col-50,
				.blog-post-single.col-33,
				.blog-post-single.col-33:nth-child(3n+1) {
				    width: 31%;
					margin: 0 0 3em;
				}
				.blog-post-single.col-33:nth-child(3n+2) {
					margin-left: 2%;
				}

				/** Footer */
				footer .container {
					flex-flow: column nowrap;
				}
				footer .container .copy{
					text-align: center;
				}
		}

	/** 561 -> 768 */
		@media only screen and (max-width: 768px) {

			/** Blog Category page */
				.blog-post-single.col-50,
				.blog-post-single.col-33,
				.blog-post-single.col-33:nth-child(3n+1),
				.blog-post-single.col-33:nth-child(even) {
					width: 100%;
					margin: 0 0 2em;
				}

			/** Blog posts */
				.page-title-banner.blog-post h4 .post-meta {
					margin: 0 0 .5em;
				}

				main.post .post-wrapper {
					padding: 1em 2em 0;
				}

					.alignleft,
					.alignright {
						max-width: 100%;
						display: block;
						margin: 1em auto;
					}

		}

	/** 480 -> 560 */
		@media only screen and (max-width: 560px) {

			/** Blog posts */
				.page-title-banner.blog-post h4 {
					padding-bottom: 3em;
				}

				.featured-image img {
					margin: -9em auto 0;
				}

		}

	/** 0 -> 479 */
		@media only screen and (max-width: 479px) {

			/** General */
				.container {
					padding-left: 1em;
					padding-right: 1em;
				}

			/** Blog posts */
				.page-title-banner.blog-post h4 .post-meta {
					width: 100%;
					text-align: center;
					justify-content: center;
				}

					.page-title-banner.blog-post h4 span.by, 
					.page-title-banner.blog-post h4 span.time {
						margin: 0;
					}

				main.post .post-wrapper {
					padding: 1em 1em 0;
				}

					.page-title-banner h4 ul li,
					.page-title-banner h4 ul li:last-child {
						margin: 0 .25em;
					}

		}

