/*
Theme Name:     Mss
Theme URI:
Description:    Astra child theme.
Author:         Me
Author URI:
Template:       astra
Version:        0.1.0
*/

/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Theme Overrides / Global
 * =====================================================================================================================
 */

@import url('https://use.typekit.net/wus0hwz.css');
@import url('https://fonts.googleapis.com/css2?family=Gantari:ital,wght@0,300;0,400;0,600;1,500&display=swap');

:root {

	--c-gold-100: #c48453;
	--c-gold-200: #bb7c51;
	--c-blue: #234550;
	--c-dark-grey: #707070;
	--c-off-white: #FAF2EC;
	--c-icon-orange: #ffac74;
	--c-white: #ffffff;

	--ff-heading: ivypresto-headline, serif;
	--ff-sub-head: work-sans, sans-serif;
	--ff-body: 'Gantari', sans-serif;

	--fw-light: 300;
	--fw-regular: 400;
	--fw-medium: 500;
	--fw-semi-bold: 600;
	--fw-bold: 700;

	--fs-italic: italic;
	--fs-regular: normal;

}

[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg,
[CLASS*="-sticky-header-active"] .ast-header-sticked [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
	fill: var(--c-gold-100) !important;
}

.ast-primary-header-bar {
	background-color: var(--c-blue);
	/*border-bottom-width: 0;*/
}

.main-navigation li.menu-item a {
	color: var(--c-gold-200);
}
.main-navigation li.menu-item a:hover {
	color: var(--c-gold-100);
}


header.entry-header {
	display: none;
}

.fl-row-fixed-width {
	max-width: 1570px !important;
}

nav.post-navigation {
	display: none;
}

.single.ast-page-builder-template .entry-header + .entry-content {
	margin-bottom: 0;
}


.ast-sticky-active .current-menu-parent a {
	color: var(--c-blue) !important;
}



/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Home
 * =====================================================================================================================
 */

.mss-home__hero .fl-row-content-wrap {
	min-height: 100vh;
}


.mss-infobox__dark-bg .uabb-infobox-title-prefix {
	font-family: var(--ff-sub-head);
	font-weight: var(--fw-regular);
	color: var(--c-gold-100);
	font-size: 1.125rem;
	line-height: 1.5rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
.mss-infobox__dark-bg .uabb-infobox-title {
	font-family: var(--ff-heading);
	font-weight: var(--fw-regular);
	color: var(--c-gold-100);
	font-size: 4.875rem;
	line-height: 1.5;
	letter-spacing: 0.015em;
}
.mss-infobox__dark-bg .uabb-infobox-text p,
.mss-infobox__dark-bg .uabb-infobox-text li {
	font-family: var(--ff-body);
	font-weight: var(--fw-light) !important;
	color: var(--c-gold-100) !important;
	font-size: 1.375rem !important;
	line-height: 2.375rem !important;
}
.mss-infobox__dark-bg a.uabb-button {
	font-size: 1.0625rem !important;
	line-height: 1.5rem !important;
	font-weight: var(--fw-bold) !important;
	letter-spacing: 0.017em;
	text-transform: uppercase;
	border: double 8px var(--c-gold-200) !important;
	border-radius: 2em !important;
	background-color: transparent !important;
}
.mss-infobox__dark-bg .uabb-button-text {
	color: var(--c-gold-200) !important;
}


.mss-infobox__light-bg .uabb-infobox-title-prefix {
	font-family: var(--ff-sub-head);
	font-weight: var(--fw-regular);
	color: var(--c-blue);
	font-size: 1.125rem;
	line-height: 1.5rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 0.75em;
}
.mss-infobox__light-bg .uabb-infobox-title {
	font-family: var(--ff-heading) !important;
	font-size: 4rem;
	/*line-height: 7.6875rem;*/
	line-height: 1.25;
	letter-spacing: 0.015em;
	color: var(--c-blue);
}
.mss-infobox__light-bg .uabb-infobox-text p,
.mss-infobox__light-bg .uabb-infobox-text li {
	font-family: var(--ff-body);
	font-weight: var(--fw-light) !important;
	color: var(--c-blue);
	font-size: 1.375rem !important;
	line-height: 2.375rem !important;
}
.mss-infobox__light-bg a.uabb-button {
	font-size: 1.0625rem !important;
	line-height: 1.5rem !important;
	font-weight: var(--fw-bold) !important;
	letter-spacing: 0.017em;
	text-transform: uppercase;
	border: double 8px var(--c-gold-200) !important;
	border-radius: 2em !important;
	background-color: transparent !important;
}
.mss-infobox__light-bg .uabb-button-text {
	color: var(--c-gold-200) !important;
}



.mss-infobox__light-bg-center .uabb-infobox-title-prefix {
	font-family: var(--ff-sub-head);
	font-weight: var(--fw-regular);
	color: var(--c-blue);
	font-size: 1.125rem;
	line-height: 1.5rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
.mss-infobox__light-bg-center .uabb-infobox-title {
	font-family: var(--ff-heading) !important;
	font-size: 4rem;
	/*line-height: 7.6875rem;*/
	line-height: 1.25;
	letter-spacing: 0.015em;
	color: var(--c-blue);
}
.mss-infobox__light-bg-center .uabb-infobox-text p,
.mss-infobox__light-bg-center .uabb-infobox-text li {
	font-family: var(--ff-body);
	font-weight: var(--fw-light) !important;
	color: var(--c-blue);
	font-size: 1.375rem !important;
	line-height: 2.375rem !important;
}
.mss-infobox__light-bg-center a.uabb-button {
	font-size: 1.0625rem !important;
	line-height: 1.5rem !important;
	font-weight: var(--fw-bold) !important;
	letter-spacing: 0.017em;
	text-transform: uppercase;
	border: double 8px var(--c-blue) !important;
	border-radius: 2em !important;
	background-color: transparent !important;
}
.mss-infobox__light-bg-center .uabb-button-text {
	color: var(--c-blue) !important;
}


.mss-infobox__light-bg-2col .uabb-infobox-text p,
.mss-infobox__light-bg-2col .uabb-infobox-text li {
	font-family: var(--ff-body);
	font-weight: var(--fw-light) !important;
	color: var(--c-blue);
	font-size: 1.375rem !important;
	line-height: 2.375rem !important;
}
.mss-infobox__light-bg-2col {
	columns: 2 250px;
}



/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Content
 * =====================================================================================================================
 */

.mss-background__light {
	background-color: var(--c-off-white);
	padding: 3em 0;
}
.mss-background__white {
	background-color: var(--c-white);
	padding: 3em 0;
}
.mss-background__green {
	background-color: var(--c-blue);
	padding: 3em 0;
}
.mss-background__orange {
	background-color: var(--c-gold-200);
	padding: 3em 0;
}



.mss-img__bs img {
	box-shadow: 0 0 15px var(--c-dark-grey);
}

.mss-img__float-top-bottom img {
	position: relative;
	margin-top: -125px;
	margin-bottom: -125px;
}


.mss-infobox__socials-contact .uabb-infobox-title-prefix {
	font-family: var(--ff-heading);
	font-size: 4rem;
	line-height: 5.625rem;
	font-weight: var(--fw-light);
	letter-spacing: 0.015em;
	color: var(--c-off-white);
}
.mss-infobox__socials-contact .uabb-infobox-text p,
.mss-infobox__socials-contact .uabb-infobox-text li {
	font-family: var(--ff-body);
	font-size: 1.375rem !important;
	line-height: 2.625rem !important;
	color: var(--c-off-white);
}
.mss-infobox__socials-contact .uabb-infobox-text a {
	color: var(--c-off-white) !important;
}


ul.mss-contact__socials {
	list-style-type: none;
}
.mss-contact__socials li {
	font-family: var(--ff-body);
	font-size: 1.375rem;
	line-height: 2.625rem;
	color: var(--c-off-white) !important;
}
.mss-contact__socials li i {
	font-size: 1.375rem;
	line-height: 2.625rem;
	color: var(--c-icon-orange) !important;
}


.mss-infobox__orange-bg .uabb-infobox-title-prefix {
	font-family: var(--ff-sub-head);
	font-weight: var(--fw-regular);
	color: var(--c-white);
	font-size: 1.125rem;
	line-height: 1.5rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	margin-bottom: 2em;
}
.mss-infobox__orange-bg .uabb-infobox-title {
	font-family: var(--ff-heading) !important;
	font-size: 4rem;
	/*line-height: 7.6875rem;*/
	line-height: 1.25;
	letter-spacing: 0.015em;
	color: var(--c-white);
	margin-bottom: 1em !important;
}
.mss-infobox__orange-bg .uabb-infobox-text p,
.mss-infobox__orange-bg .uabb-infobox-text li {
	font-family: var(--ff-body);
	font-weight: var(--fw-light) !important;
	color: var(--c-white) !important;
	font-size: 1.375rem !important;
	line-height: 2.375rem !important;
}
.mss-infobox__orange-bg a.uabb-button {
	font-size: 1.0625rem !important;
	line-height: 1.5rem !important;
	font-weight: var(--fw-bold) !important;
	letter-spacing: 0.017em;
	text-transform: uppercase;
	border: double 8px var(--c-gold-200) !important;
	border-radius: 2em !important;
	background-color: transparent !important;
}
.mss-infobox__orange-bg .uabb-button-text {
	color: var(--c-gold-200) !important;
}



/*
 * ---------------------------------------------------------------------------------------------------------------------
 * CTA
 * =====================================================================================================================
 */

.mss-cta__horizontal .fl-cta-title {
	font-family: var(--ff-heading);
	font-size: 4rem;
	line-height: 1.25;
	font-weight: var(--fw-light);
	letter-spacing: 0.015em;
	color: var(--c-gold-200);
}
.mss-cta__horizontal a.fl-button {
	background-color: transparent !important;
	border: double 8px var(--c-gold-200) !important;
	border-radius: 2em !important;
}
.mss-cta__horizontal .fl-button-text {
	font-size: 1.0625rem;
	line-height: 1.5rem;
	font-weight: var(--fw-bold) !important;
	color: var(--c-gold-200) !important;
	text-transform: uppercase;
}

.mss-background__orange .mss-cta__horizontal a.fl-button,
.mss-background__green .mss-cta__horizontal a.fl-button {
	border: double 8px var(--c-white) !important;
}
.mss-background__orange .mss-cta__horizontal .fl-button-text,
.mss-background__green .mss-cta__horizontal .fl-button-text {
	color: var(--c-white) !important;
}




/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Treatment Grid
 * =====================================================================================================================
 */

.treatment-grid {
	display: grid;
	grid-gap: 1em;
	justify-items: center;
	align-items: center;
}

.treatment-item {
	border: 2px solid var(--c-dark-grey);
	border-radius: 2em;
	padding: 1em;
	width: 100%;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	box-sizing: border-box;
}
.treatment-item h3 {
	text-align: center;
}

.treatment-item h3.no-content {
	opacity: 0.5;
}

.treatment-item h3 a {
	color: var(--c-blue) !important;
	text-decoration: none !important;
}




/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Gravity Forms
 * =====================================================================================================================
 */

.gfield_label {
	font-family: var(--ff-heading) !important;
}

.gform_button {
	border: 6px double var(--c-dark-grey) !important;
	background-color: transparent !important;
	font-size: 1.25rem !important;
	line-height: 1.75rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
}
.gform_button:hover{
	background-color: var(--c-dark-grey) !important;
}

.gform_wrapper .top_label .gfield_label {
	line-height: 1;
}


.gfield--input-type-html ul {
    list-style: disc !important;
    margin: 0 0 1.5em 3em !important;
}




/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Blog post layout
 * =====================================================================================================================
 */

.single-post header.entry-header {
	display: block;
}

.single-post article {
	padding: 0 !important;
}

.mss-blog__header {
	width: 100%;
	/*background-image: url('/wp-content/uploads/2024/12/dlm-bg__header-content-001.avif');*/
	background-color: var(--c-blue) !important;
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: cover;
	height: 12em;
	margin-top: 0 !important;
}

h1.mss-blog__title {
	font-family: var(--ff-heading) !important;
	/*font-size: 4.875rem;
	line-height: 1.5;*/
	font-size: 3rem !important;
	line-height: 1 !important;
	margin-bottom: 1em !important;
	color: var(--c-blue) !important;
}

.mss-blog__content h2,
.mss-blog__content h3,
.mss-blog__content h4,
.mss-blog__content h5,
.mss-blog__content h6 {
	font-family: var(--ff-heading) !important;
	/*font-size: 4rem;
	line-height: 1.25;*/
	font-size: 2.25rem !important;
	line-height: calc(2.5 / 2.25) !important;
	letter-spacing: 0.015em;
	color: var(--c-blue);
}

.mss-blog__content p,
.mss-blog__content li {
	font-family: var(--ff-body) !important;
	font-weight: var(--fw-light) !important;
	color: var(--c-blue);
	font-size: 1.375rem !important;
	line-height: 2.375rem !important;
}






/*
 * ---------------------------------------------------------------------------------------------------------------------
 * Footer
 * =====================================================================================================================
 */

.mss-footer {
	background-color: var(--c-blue);
	padding: 3em 0;
}

.mss-footer .uabb-infobox-text p,
.mss-footer .uabb-infobox-text li {
	font-size: 0.75rem !important;
	line-height: 1rem !important;
	color: var(--c-gold-100) !important;
}

.mss-footer .uabb-infobox-text p a {
	color: var(--c-gold-100) !important;
	font-weight: var(--fw-medium) !important;
}

/*
 * ---------------------------------------------------------------------------------------------------------------------
 * ---------------------------------------------------------------------------------------------------------------------
 * Media Queries
 * =====================================================================================================================
 * =====================================================================================================================
 */

/* Small phone (~320px) */
@media only screen and (min-width: 20em)
{
	.mss-infobox__dark-bg .uabb-infobox-title {
		font-size: 3.75rem;
		line-height: 1.3;
	}

	.mss-img__float-top-bottom img {
		margin-top: unset;
		margin-bottom: unset;
	}

	.mss-cta__horizontal .fl-cta-title {
		font-size: 3rem;
		line-height: 1.25;
	}

	.mss-infobox__light-bg .uabb-infobox-title,
	.mss-infobox__orange-bg .uabb-infobox-title {
		font-size: 3rem;
	}

	.mss-blog__content {
    	background-color: var(--c-white) !important;
    	margin: -5em auto 0 auto !important;
    	position: relative !important;
    }
}


/* Larger than 640px */
@media only screen and (min-width: 40em)
{
	.mss-home__hero .mss-infobox__dark-bg {
		max-width: 60%;
	}

	.treatment-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Low DPI Laptop (~1280px) */
@media only screen and (min-width: 80em)
{/*.mss-infobox__light-bg .uabb-infobox-title {
		width: 20ch;
	}

	.mss-infobox__light-bg .uabb-infobox-text p,
	.mss-infobox__light-bg .uabb-infobox-text li {
		width: 48ch;
	}*/
	/*.mss-infobox__light-bg .uabb-infobox-title {
		width: 20ch;
	}

	.mss-infobox__light-bg .uabb-infobox-text p,
	.mss-infobox__light-bg .uabb-infobox-text li {
		width: 48ch;
	}*/

	/*.mss-infobox__light-bg-center .uabb-infobox-text p,
	.mss-infobox__light-bg-center .uabb-infobox-text li {
		width: 80%;
		margin: 0 auto;
	}*/

	.mss-infobox__dark-bg .uabb-infobox-title {
		font-size: 4.875rem;
		line-height: 1.5;
	}

	.mss-img__float-top-bottom img {
		margin-top: -125px;
		margin-bottom: -125px;
	}

	.mss-cta__horizontal .fl-cta-title {
		font-size: 4rem;
		line-height: 1.25;
	}

	.mss-infobox__light-bg .uabb-infobox-title,
	.mss-infobox__orange-bg .uabb-infobox-title {
		font-size: 4rem;
	}

	.mss-infobox__light-bg-center .fl-module-content {
		width: 80%;
		margin: 3em auto;
	}
	.mss-infobox__light-bg-center .uabb-infobox-title-wrap,
	.mss-infobox__light-bg-center .uabb-infobox-title,
	.mss-infobox__light-bg-center .uabb-infobox-text {
		text-align: center;
	}

	.treatment-grid {
		grid-template-columns: repeat(3, 1fr);
	}
	.treatment-item {
		min-height: 10em;
	}

	.mss-blog__content {
    	background-color: var(--c-white) !important;
    	max-width: 1236px !important;
    	margin: -5em auto 0 auto !important;
    	padding: 2em 3em !important;
    	position: relative !important;
    }
}
