/*
 ************************************************************
 *
 * WRAPPER
 *
 ************************************************************
 * ----------------------------------------------------------
 *
 * MAIN
 *
 * ----------------------------------------------------------
 *
 * - PRIMARY
 */

#content #primary
{
	margin: 0;
	padding: 0;
}

/*
 * - CONTENT
 */

body:not(.ast-page-builder-template) #content .ast-container
{
	padding: 40px;
}

@media (min-width: 991px)
{
	body:not(.ast-page-builder-template) #content .ast-container
	{
		padding: 60px;
		padding-bottom: 40px;
	}
}

/*
 * ----------------------------------------------------------
 *
 * HEADER
 *
 * ----------------------------------------------------------
 *
 * - BAR
 */

.main-header-bar
{
	padding: 20px 0;
}

.ast-header-break-point .main-navigation ul .menu-item .menu-link
{
	border-color: var(--ast-global-color-2);
}

/*
 * ----------------------------------------------------------
 *
 * FOOTER
 *
 * ----------------------------------------------------------
 *
 * - BACKGROUND
 */

#page .site-footer
{
	background-blend-mode: multiply;
}

/*
 * - MISC
 */

.site-footer-section > *,
.site-footer-section:last-child
{
	margin-bottom: 0 !important;
}

.ast-footer-button-1 .ast-builder-button-wrap
{
	width: 100%;
}

@media (max-width: 990px)
{
	.site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-tablet-stack .site-footer-section,
	.site-above-footer-wrap[data-section="section-above-footer-builder"].ast-footer-row-mobile-stack .site-footer-section
	{
		padding-bottom: 0;
	}
}

@media (min-width: 768px)
{
	.site-footer-section:first-child
	{
		margin-bottom: 0 !important;
	}
}

/*
 * ----------------------------------------------------------
 *
 * ENTRY-BANNER
 *
 * ----------------------------------------------------------
 *
 * - BACKGROUND
 */

#page .ast-single-entry-banner,
#page .ast-archive-entry-banner
{
	background-blend-mode: multiply;
}

/*
 * - SINGLE
 */

.ast-single-entry-banner .current-cat
{
	line-height: 60px;
	font-size: 40px;
	font-family: 'Mulish', sans-serif;
}

/*
 * - ARCHIVE
 */

.ast-archive-entry-banner[data-post-type="post"] .ast-container .cats option,
.ast-archive-entry-banner[data-post-type="portfolio"] .ast-container .cats option
{
	background-color: var(--ast-global-color-5);
	color: var(--ast-global-color-2);
}

.ast-archive-entry-banner[data-post-type="post"] .ast-container .cats option:hover,
.ast-archive-entry-banner[data-post-type="portfolio"] .ast-container .cats option:hover
{
	background-color: var(--ast-global-color-3);
	color: var(--ast-global-color-5);
}

/*
 * - WRAP
 */

.ast-single-entry-banner .current-cat,
.ast-archive-entry-banner[data-post-type="post"] .ast-container > :not(:last-child),
.ast-archive-entry-banner[data-post-type="portfolio"] .ast-container > :not(:last-child)
{
	margin-bottom: 20px;
}

@media (min-width: 991px)
{
	.ast-single-entry-banner .current-cat,
	.ast-archive-entry-banner[data-post-type="post"] .ast-container > :not(:last-child),
	.ast-archive-entry-banner[data-post-type="portfolio"] .ast-container > :not(:last-child)
	{
		margin-bottom: 40px;
	}
}

/*
 * ----------------------------------------------------------
 *
 * CONTENT
 *
 * ----------------------------------------------------------
 *
 * - ANIMATION
 */


@-webkit-keyframes fadeIn
{
	0%
	{
		opacity: 0.1;
	}
	to
	{
		opacity: 1;
	}
}

@keyframes fadeIn
{
	0%
	{
		opacity: 0.1;
	}
	to
	{
		opacity: 1;
	}
}

#page
{
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	        animation-duration: 1s;
	-webkit-animation-name: fadeIn;
	        animation-name: fadeIn;
}

/*
 * - BACKGROUND
 */

#page .background-blend::before
{
	mix-blend-mode: multiply;
}

#page .background-blend::after
{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	width: 100vw;
	height: 80px;
	background-color: rgba(94,80,99,0.69);
}

/*
 * - ARTICLE
 */

.ast-separate-container .ast-article-single
{
	padding: 60px;
}

@media (max-width: 990px)
{
	.ast-separate-container .ast-article-single
	{
		padding: 40px;
	}
}

/*
 * ----------------------------------------------------------
 *
 * MODAL
 *
 * ----------------------------------------------------------
 *
 * - WRAP
 */

.modal
{
	display: flex;
	position: fixed;
	inset: 0; /* shorthand for top/right/bottom/left: 0 */
	z-index: 9999;
	background-color: rgba(0, 0, 0, 0.7);
	align-items: center;
    justify-content: center;
	padding: 20px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
}

.modal.active
{
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/*
 * - IFRAME
 */

.modal .iframe
{
	position: relative;
	overflow: hidden;
	width: 100%;
	padding-bottom: 600px;
}

.modal .iframe iframe
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (max-width: 767px)
{
	.modal .iframe
	{
		padding-bottom: 60vh;
	}
}

@media (max-width: 375px) and (max-height: 860px) and (orientation: portrait)
{
	.modal .iframe
	{
		padding-bottom: 75vh;
	}
}

@media (max-width: 375px) and (max-height: 700px) and (orientation: portrait)
{
	.modal .iframe
	{
		padding-bottom: 80vh;
	}
}

/*
 * - CONTAINER
 */

.modal-container
{
	display: flex;
	flex-direction: column;
	overflow: hidden;
	width: 100%;
	max-width: 640px; /* adjust modal width */
	max-height: 90vh; /* prevent modal from being taller than viewport */
	background-color: var(--ast-global-color-5);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

/*
 * - HEADER
 */

.modal-header
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px;
	background-color: var(--ast-global-color-2);
}

.modal-header .title
{
	margin: 0;
	font-size: 24px;
	font-weight: 600;
	font-family: 'Nunito Sans', sans-serif;
	color: var(--ast-global-color-4);
}

.modal-header .close
{
	cursor: pointer;
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px
}

.modal-header .close::before,
.modal-header .close::after
{
	content: '';
	position: absolute;
	top: 9px;
	left: 0;
	width: 20px;
	height: 2px;
	background-color: var(--ast-global-color-5);
}

.modal-header .close::before
{
	transform: rotate(45deg);
}

.modal-header .close::after
{
	transform: rotate(-45deg);
}

/*
 * - CONTENT
 */

.modal-content
{
	overflow-y: auto; /* scroll if content taller than viewport */
	flex: 1;
}

/*
 * - TEMPLATE
 */

.page-template-modal #page
{
	display: flex;
	align-items: center;
	height: 100vh;
}

.page-template-modal #content
{
	width: 100%;
}

.page-template-modal #content .ast-container
{
	padding: 40px;
}

.page-template-modal #content .ast-article-single
{
	max-width: 400px;
	margin: 0 auto;
	padding: 0 !important;
	background-color: transparent !important;
}

.page-template-modal div.wpforms-container-full:not(:empty)
{
	margin: 0;
}