/*!
Theme Name:  Mantra Health 2024
Author:      Mantra Health
Author URI:  https://mantrahealth.com
Description: Custom Theme for Mantra Health
Version:     1.0.0
License:     GNU General Public License v3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Template:    page-builder-framework
Text Domain: page-builder-framework-child
*/


/* Global Vars */
/*	@import url('https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,300;9..40,500;9..40,700&family=DM+Serif+Display&display=swap');*/


:root {
	--site-width: 80rem;
	--site-width-sm: 62.5rem;
	--site-width-xs: 50rem;
	--thumbprint: url('/wp-content/uploads/thumbprint.png');

	--mantra-blue: #2B59E3;
	--light-grey: 	#F7F9FF;
	--lavender: 	#E0E7FF;
	--navy: 		#1D2744;
	--navy-dark: 	#171F36;
	--trans-blue: 	rgba(129, 157, 248, 0.2);
	--gradient:		linear-gradient(122deg, #D9E1FF 6.95%, #EEE0ED 90.31%);
	--danger: 		#CB4848;
	--orange: 		#F67E6A;

	--p-sm: 1.5rem;
	--p-md: 3rem;
	--p-lg: 6rem;
	--p-xl: 10rem;
	--p-none: 0;

	--corner-sm: 0.25rem;
	--corner-lg: 0.5rem;

	--serif: "DM Serif Display", serif;
	--sans: "DM Sans", sans-serif;

	--acc-1: #2B59E3;
	--acc-2: #C7D2FE;
	--bg-1: #F7F9FF;
	--bg-2: #E0E7FF;
	--heading: #1D2744;
	--text: #35405F;
	--subtle: #55607E;
	--stroke: #E8ECF7;

	--shadow-sm: 0 .25rem .5rem rgba(29, 39, 68, 0.05);
	--shadow-md: 0 .5rem 1rem rgba(29, 39, 68, 0.05);
	--shadow-lg: 0 1rem 2rem rgba(29, 39, 68, 0.05);

}

html {
	font-size: 16px;
}

/*@media screen and (min-width:1920px) {
	html {
		font-size: 20px;
	}
}*/


html * {
	font-family: var(--sans);
	font-weight: 410;
}

.dark {
	--acc-1: #C7D2FE;
	--acc-2: #F67E6A;
	--bg-1: #1D2744;
	--bg-2: #171F36;
	--heading: #FFFFFF;
	--text: #EEF2FF;
	--subtle: #A6ACC6;
	--stroke: #35405F;
}

.light {
	--acc-1: #2B59E3;
	--acc-2: #C7D2FE;
	--bg-1: #F7F9FF;
	--bg-2: #E0E7FF;
	--heading: #1D2744;
	--text: #35405F;
	--subtle: #55607E;
	--stroke: #E8ECF7;
}

::selection {
	color: white;
  background: var(--orange); /* WebKit/Blink Browsers */
}
::-moz-selection {
	color: white;
  background: var(--orange); /* Gecko Browsers */
}

/* Typography */ 



	h1,	h2, h3, h4, h5, h6 	{	font-family: var(--sans);
								color:var(--heading); 
								margin: 0 0 1rem 0;
								font-weight: 700; 	
								letter-spacing: -0.025em;
								width:100%
							}

	p, span					{	color:var(--text); 	}
	a 						{	color:var(--acc-1); }

	.subhead {
		font-family: var(--sans);
		font-weight:700;
		color:var(--acc-1);
		margin-bottom:0.5rem;
	}

	h1.subhead {
		font-size: 1.25rem;
	}

	h2.subhead {
		font-size:1rem;
	}

	blockquote {
		color:var(--heading);
	    padding: 2rem 0;
	    margin:0;
	    font-style: normal;
	    font-size: 1.5rem;
	    font-weight: 500;
	    border:0;
	}

	p.caption {
		font-size: 0.875rem;
		margin-bottom:0;
	}

	p.lg {
		font-size:1.125rem;
	}

/*	p:last-child,
	h1:last-child,
	h2:last-child,
	h3:last-child,
	h4:last-child,
	h5:last-child,
	h6:last-child {
		margin-bottom:0;
	}*/

	/* Type Sizing */

	h1 { 	font-size: 4rem;
		  	line-height: 0.95;
		  	font-family: var(--serif);
			font-weight:400; 		}

	h2 { 	font-size: 2.5rem;
		  	line-height: 0.95;
		  	font-family: var(--serif);
			font-weight:400;		}
		  	
	h3 { 	font-size: 1.5rem;
		  	line-height: 1.125;		}
		  	
	h4 { 	font-size: 1.25rem;
		  	line-height: 1.125;		}
		  	
	h5 { 	font-size: 1rem;
		  	line-height: 1.125;		}
		  	
	h6 { 	font-size: 0.875rem;
		  	line-height: 1.125;		}

  	h1 em,
  	h2 em {
  		font-family: var(--serif);
  	}

/*
	@media screen and (max-width: 1200px) {

		h1 { 	font-size: 3rem;
			  	line-height: 1;
			  	font-family: var(--serif);
			  	font-weight:400 		}

		h2 { 	font-size: 2rem;
			  	line-height: 1;
			  	font-family: var(--serif);
			  	font-weight:400 		}	
	}*/
	
	@media screen and (max-width: 768px) {

		h1 { 	font-size: 2.25rem;
			  	line-height: 1;
			  	font-weight:400 		}

		h2 { 	font-size: 2rem;
			  	line-height: 1;			}
			  	
		h3 { 	font-size: 1.25rem;
			  	line-height: 1.25;		}
			  	
		h4 { 	font-size: 1.125rem;
			  	line-height: 1.25;		}
			  	
		h5 { 	font-size: .875rem;
			  	line-height: 1.25;		}
			  	
		h6 { 	font-size: 0.75rem;
			  	line-height: 1.25;		}		
	}



/* Layout */


	body {
		font-size:1rem;
	}

	div#content {
		max-width:100vw;
		overflow:hidden;
	}

	section {
		padding-left: var(--p-md);
		padding-right: var(--p-md);
		display: flex;
    	flex-direction: column;
    	position: relative;
	}

	div.container-fixed {
		position:relative;
		width:100%;
		max-width: var(--site-width);
		margin:auto;
		display: flex;
		align-items: center;
	}

	body.wpbf-transparent-header section:first-child {
	    padding-top: 9rem;
	}

	div.basic-content {
		width:100%;
	}

	@media screen and (max-width: 768px) {
		.container-fixed {
			flex-direction:column;
		}

	}

	section.width-small .container-fixed {
		max-width: var(--site-width-sm);
	}

	section.width-tiny .container-fixed {
		max-width: var(--site-width-xs);
	}

	section.align-center {
		text-align: center;
	}

	.p-top-sm 	{	padding-top: var(--p-sm); }
	.p-top-md 	{	padding-top: var(--p-md); }
	.p-top-lg 	{	padding-top: var(--p-lg); }
	.p-top-none {	padding-top: var(--p-none); }

	.p-bot-sm 	{	padding-bottom: var(--p-sm); }
	.p-bot-md 	{	padding-bottom: var(--p-md); }
	.p-bot-lg 	{	padding-bottom: var(--p-lg); }
	.p-bot-none {	padding-bottom: var(--p-none); }

	.p-x-sm 	{  	padding-left: var(--p-sm);
					padding-right: var(--p-sm);	}
	.p-x-md 	{  	padding-left: var(--p-md);
					padding-right: var(--p-md);	}
	.p-x-lg 	{  	padding-left: var(--p-lg);
					padding-right: var(--p-lg);	}
	.p-x-xl 	{  	padding-left: var(--p-xl);
					padding-right: var(--p-xl);	}

	.p-y-sm 	{  	padding-top: var(--p-sm);
					padding-bottom: var(--p-sm);	}
	.p-y-md 	{  	padding-top: var(--p-md);
					padding-bottom: var(--p-md);	}
	.p-y-lg 	{  	padding-top: var(--p-lg);
					padding-bottom: var(--p-lg);	}
	.p-y-xl 	{  	padding-top: var(--p-xl);
					padding-bottom: var(--p-xl);	}


	@media screen and (max-width: 768px) {
		section {
			padding-left: var(--p-sm);
			padding-right: var(--p-sm);
		}

		.p-x-lg, 
		.p-x-xl, 
		.p-x-md {
			padding-left: 1.5rem;
			padding-right:1.5rem;
		}
	}


		/* Fixes for Gutenberg core blocks */
		/* see wporg_block_wrapper() in functions.php */

		section section {
		    padding: 0;
		}

		.container-fixed .container-fixed {
		    max-width: 100%;
		    margin: 0;
		}


/* Colors */


	.bg-white {
		background-color: white;
	}

	.bg-grey {
		background-color: var(--light-grey);
	}

	.bg-navy {
		background-color: var(--navy);
	}

	.bg-navy-dark {
		background-color: var(--navy-dark);
	}

	.bg-lavender {
		background-color: var(--lavender);
	}

	.bg-gradient {
		background: var(--gradient);
	}

	.thumb {
		background-image: var(--thumbprint);
		background-repeat: repeat;
	}

	img.background-image {
	    position: absolute;
	    width:100%;
	    height:100%;
	    filter: saturate(0);
	    mix-blend-mode: luminosity;
	    opacity: 0.5;
	    z-index: -1;
	    border-radius: inherit;
	}


/* Logo */

	div.mantra-logo-icon {
		display: inline-block;
		flex:0 0 auto;
		width:3rem;
		height:2rem;
		background-image:url('/wp-content/uploads/Mantra-Icon-default.png');
		background-size: contain;
		background-repeat:no-repeat;
		background-postion:center center;
	}

	.dark div.mantra-logo-icon {
		background-image:url('/wp-content/uploads/Mantra-Icon-Reverse.png');
		background-postion:center center;
	}

/* Buttons */

	.site-button,
	li.menu-item.nav-button a {
		display: flex;
		justify-content: center;
		align-items:center;
		align-self: flex-start;
		font-size:	1rem;
		font-weight: 700;
		text-decoration: none !important;
		letter-spacing: 0.025em;
		padding: 	1rem 1.5rem;
		border-radius:100rem;
		transition:all 0.4s;
	}

	.site-button.primary, 
	li.menu-item.nav-button.primary a {
		background: linear-gradient(180deg, #2B59E3 0%, #1745CF 100%, #2B59E3 0%);
		color: white !important;
	}

	.site-button.danger {
		background-color: var(--danger);
		color: white !important;
	}

	.site-button.secondary, 
	li.menu-item.nav-button.secondary a {
		background: rgba(129, 157, 248, 0.2);
		color: var(--acc-1);
	}

	.dark .site-button.secondary, 
	.darl li.menu-item.nav-button.secondary a {
		color: var(--text);
	}

	.site-button.primary:hover,
	.site-button.secondary:hover,
	li.menu-item.nav-button a:hover {
		transform:translateY(-4px);
	}

	a.site-button.tertiary {
	    padding-right: 0.5rem;
	}
	.site-button.tertiary svg {
		transition: all 0.4s;
	}

	.site-button.tertiary:hover svg {
		transform: translateX(0.25rem);
	}

	.basic-cta-wrapper {
		display: flex;
		width:100%;
		padding-top:1rem;
		gap:0.5rem;
		flex-wrap:wrap;
	}

	section.align-center .basic-cta-wrapper {
		justify-content: center;

	}

	.callout-cta {
		width:100%;
	    display: flex;
	    justify-content: space-between;
	    align-items: center;
	    gap: 2rem;
	}

	.callout-cta .site-button {
	    flex: 0 0 auto;
	}

	.callout-cta h4 {
	    margin-bottom:0;
	}

	@media screen and (max-width:768px) {

		.callout-cta {
		    flex-direction: column;
		    text-align: center;
		    gap: 1rem;
		}

		.callout-cta .site-button {
		    align-self: center;
		}
	}


/* Navigation Styles */

	.wpbf-logo img, .wpbf-mobile-logo img {
		width:15rem;
	}
	li.menu-item a {
		font-weight:700;
		font-size:1rem;
		text-decoration: none;
		text-align: center;
	}

	ul.sub-menu li.menu-item a {
		text-align: left;
	}

	.wpbf-menu-right .wpbf-menu li.menu-item:not(.nav-button) a {
		padding:0.5rem 1rem;
	}

	li.menu-item.nav-button {
		padding-left: 0.75rem;
	}

	.wpbf-menu-right .wpbf-menu {
	    display: flex;
	    align-items: center;
	}

	@media screen and (min-width: 1025px) {
		li.menu-item-has-children {
		    border-top-left-radius: var(--corner-lg);
		    border-top-right-radius: var(--corner-lg);
		    
		}

		li.menu-item-has-children:hover {
		    background-color: white;
		    filter: drop-shadow(var(--shadow-md));
		}

		ul.sub-menu {
		    box-shadow: none !important;
		    border-radius: var(--corner-lg);
		    border-top-left-radius: 0;

		}

		ul.sub-menu li.menu-item a {
		    padding: 1rem !important;
		}
	}

	/* Mobile Menu Styles */

	.wpbf-container.wpbf-mobile-nav-wrapper,
	.wpbf-container.wpbf-menu-right {
			padding-left: var(--p-sm);
			padding-right: var(--p-sm);
		}

	.wpbf-mobile-menu-container {
		background-color:var(--navy);
	}

	.wpbf-mobile-menu li.menu-item a {
	    padding: 0.75rem;
	    text-align: center;
	}


	.wpbf-mobile-menu {
	    display: flex;
	    flex-wrap: wrap;
	    padding: 1rem 0;
	}

	.wpbf-mobile-menu li.menu-item {
	    flex: 0 0 100%;
	}

	.wpbf-mobile-menu li.menu-item.nav-button {
	    padding: 1rem 1rem;
	    flex: 0 0 50%;
	}

	.wpbf-mobile-menu li.menu-item.nav-button.secondary a {
	    color: white;
	}


/* Footer Styles */

	footer {
		padding-left: var(--p-sm);
		padding-right:var(--p-sm);

	}
	img.footer-logo {
	    height: 2rem;
	}

	.footer-menu-logo {
	    display: flex;
	    align-items: center;
	}

	.socials {
	    display: flex;
	    align-items: center;
	    padding: 0 1rem;
	}

	.socials a {
	    padding: 0.5rem;
	    display: flex;
	    margin: 0 0.25rem;
	    transition: all 0.4s;
	    border-radius:var(--corner-lg);
	}

	.socials a:hover {
	    background: var(--trans-blue);
	    color:var(--heading);
	}

	.footer-top {
	    display: flex;
	    justify-content: space-between;
	    width: 100%;
	    align-items: center;
	}

	.footer-badges img {
	    max-width: 6rem;
	    margin: 5px;
	}

	ul#menu-footer {
	    list-style: none;
	    margin: 0;
	    padding: 0;
	    display: flex;
	    flex-wrap: wrap;
	}

	ul#menu-footer a {
	    padding: 0.5rem;
	    color:var(--heading);
	    display: block;
	}

	.menu-footer-container {
	    margin-left: -0.5rem;
	    padding-top: 1rem;
	}

	#footer .container-fixed {
	    flex-direction: column;
	}

	.footer-crisis {
	    display: flex;
	    align-items: center;
	    padding: 1.5rem 0;
	    border-top: 1px solid var(--stroke);
	    border-bottom: 1px solid var(--stroke);
	    margin-top: 3rem;
	    width:100%;
	}

	.footer-crisis-intro {
	    display: flex;
	    flex: 0 0 28%;
	    align-items: center;
	    padding-right: 2rem;
	}

	.footer-crisis-intro svg {
	    color:  var(--danger);
	    margin-right: 1rem;
	    width: 1.5rem;
	    height: 1.5rem;
	    flex: 0 0 auto;
	}

	.crisis-resource {
	    flex: 0 0 auto;
	    padding: 0 2rem;
	    border-left: 1px solid var(--stroke);
	}

	.footer-crisis p {
	    margin-bottom: 0;
	}

	.footer-crisis-link {
	    flex: 1 1 100%;
	    display: flex;
	    justify-content: flex-end;
	}

	.footer-crisis h5 {
	    margin-bottom: 0.25rem;
	}

	.footer-details {
	    display: flex;
	    width: 100%;
	    margin-top: 3rem;
	}

	.footer-details img {
	    height: 2rem;
	}

	.menu-footer-bottom-container {
	    flex: 1 1 100%;
	    align-self: center;
	    padding: 0 1.5rem;
	}

	ul#menu-footer-bottom {
	    display: flex;
	    align-items: center;
	    list-style: none;
	    margin: 0;
	    padding: 0;
	}

	ul#menu-footer-bottom a {
	    padding: 0.25rem;
	    font-size: 0.875rem;
	    color: var(--subtle);
	}
	span.copyright {
    flex: 0 0 auto;
    color: var(--subtle);
}

@media screen and (max-width: 1024px) {
	.footer-crisis {
	    flex-direction: column;
	}

	.footer-crisis-intro {
	    padding: 1rem 0;
	    flex-direction: column;
	    text-align: center;
	}

	.footer-crisis-intro svg {
	    margin-right: 0;
	    margin-bottom: 1rem;
	}

	.crisis-resource {
	    width: 100%;
	    padding: 1rem 0;
	    border: 0;
	    text-align: center;
	}

	.footer-badges {
	    text-align: center;
	}
}

@media screen and (max-width: 768px) {
	.footer-top {
	    flex-direction: column;
	    justify-content: center;
	    align-items: center;
	}

	.footer-menu {
	    flex-direction: column;
	}

	.footer-menu-logo {
	    flex-direction: column;
	}

	.socials {
	    padding: 1rem 0;
	}

	.menu-footer-container {
	    margin: 0 1rem 1rem 1rem;
	    padding: 0;
	}

	ul#menu-footer {
	    justify-content: center;
	}

	.footer-details {
	    flex-directioN: column;
	    align-items: center;
	}

	.menu-footer-bottom-container {
	    padding: 1rem 0;
	}
}


/*Fixes for gutenberg editor */

	.wp-block[data-type*='acf'] {
	  /*show full width sections in editor */
	  max-width: 100% !important;
	  margin-bottom: 0;
	}

	.acf-block-fields.acf-fields .acf-field {
	  /*limit the width of fields, for improved usability*/
	  max-width: 850px;
	  margin: auto;
	}

	.editor-styles-wrapper .is-layout-flow > .alignleft,
	.editor-styles-wrapper .is-layout-flow > .alignright {
		float: none !important;
	    margin-inline-start: 0 !important;
	    margin-inline-end: 0 !important;
	}

	.editor-styles-wrapper .agl {
		visibility: visible;
	}

/* Blog and Resources */

	/*Post Page Styling */

	.post-meta {
		margin-bottom:1rem;
	}

	.post-meta div {
	    display: inline;
	    margin-right: 0.5rem;
	}

	.post-date {
		color: var(--subtle);
	}

	.post-featured-image {
		margin-right: 3rem;
	    flex: 0 0 20rem;
	    height: 20rem;
	}
	.post-featured-image img{
		border-radius: var(--corner-lg);
		box-shadow: var(--shadow-lg);
		height:100%;
		object-fit: cover;
	}

	section.post-content .container-fixed {
		align-items: flex-start;
	}

	div.article-aside {
		flex: 0 0 25rem;
		margin-left: 3rem;
	}

	div.article-content {
		padding: 1rem 0;
	}

	@media screen and (max-width: 1024px) {

		.post-meta {
			font-size: 0.875rem;
		}
    
	}

	@media screen and (max-width:768px) {
		.post-featured-image {
			height: 15rem;
			margin-right:0;
			margin-bottom: 2rem;
		}
		.post-featured-image img {
			object-fit: cover;
		}

		.post-meta {
			font-size: 0.875rem;
		}
	}

	/* Sidebar subscribe styling */

	
	.subscribe-cta-wrapper-vert {
	    display: flex;
	    flex-direction: column;
	}

	.sidebar-subscribe {
	    padding: 2rem;
	    border-radius: var(--corner-lg);
	}

	.hs_recaptcha.hs-recaptcha.field.hs-form-field {}

	.subscribe-cta-wrapper-vert .hs_recaptcha {
	    display: none;
	}

	.subscribe-cta-wrapper-vert label {
	    visibility: hidden;
	}

	.subscribe-cta-wrapper-vert input[type="email"] {
	    border-radius: 2rem;
	}

	.subscribe-cta-wrapper-vert input[type="submit"] {
	    width: 100%;
	    padding:1rem 2rem;
	    margin-top: 1rem;
	    border-radius: 2rem;
	    font-size: 1.125rem;
	    color: white;
	    background: var(--mantra-blue);
	}

	.subscribe-cta-wrapper legend.hs-field-desc,
	.subscribe-cta-wrapper-vert legend.hs-field-desc {
	    display: none !important;
	}

	/*Post List Styling*/

	a.post-item {
	    text-decoration: none;
	    padding: 1rem 0;
	}

	a.post-item.chip:not(:last-child) {
		border-bottom: 1px solid var(--stroke);
	}

	a.post-item.chip {
	    display: flex;
	    align-items: flex-start;
	}

	.post-item-thumb {
		padding-top:0.25rem;
	    margin-right: 1rem;
	    flex: 0 0 5rem;
	    height:5rem;
	}

	.post-item-thumb img {
	    border-radius: var(--corner-sm);
		box-shadow: var(--shadow-md);
		object-fit:cover;
		height: 100%;
		width:100%;
	}

	a.post-item .post-meta {
		margin-bottom:0.25rem;
	}

	a.post-item.chip .subhead {
		font-size:0.875rem;
	}

	.post-item h4 {
		display: -webkit-box;	
		-webkit-line-clamp: 2;
    	-webkit-box-orient: vertical;	
    	overflow: hidden;
		margin-bottom:0;

	}


	/*Post Feature Styling */

	.post-feature {
	    display: flex;
	    margin-bottom: 2rem;
	    align-items: center;
	}

	.post-feature > div {
	    flex: 1 1 50%;
	}

	.post-feature-thumb {
	    align-self: stretch;
	    max-height: 30rem;
	    border-radius: var(--corner-lg);
	    overflow: hidden;
	    box-shadow: var(--shadow-lg);
	}

	.post-feature-thumb {
	    display: flex;
	    align-items: stretch;
	    flex-direction: column;
	}

	.post-feature-thumb img {
	    width: 100%;
	    height: 100%;
	    object-fit: cover;
	}

	.post-feature-details {
	    padding: 3rem;
	}

	.post-feature-details .site-button {
	    display: inline-block;
	}

	@media screen and (min-width: 769px) {
		.post-feature-details {
			    padding: 3rem;
			    margin: 2rem 0;
			    margin-left: -4rem;
			    box-shadow: var(--shadow-lg);
			    border-radius: var(--corner-lg);
			    background-color:white;
		}
	}
	@media screen and (max-width: 768px) {

		.post-feature {
		    flex-direction: column;
		}

		.post-feature-details {
		    padding: 1rem 0;
		}

		.post-feature-details .post-meta,
		.post-feature-details h2 {
		    margin-bottom: 0.5rem;
		}
	}

	/* Post Card Styling */

	a.post-item.card .post-item-thumb {
	    height: 10rem;
	    width: 100%;
	    margin-bottom: 0.5rem;
	}

	a.post-item.card .post-item-thumb img {
	    width: 100%;
	    height: 100%;
	}

	a.post-item.card {
	    padding: 0;
	    border-bottom: 0;
	    margin-bottom:0.5rem;
	}

	@media screen and (max-width: 768px) {
		a.post-item.card {
		    background-color: white;
		    box-shadow: var(--shadow-md);
		    border-radius: var(--corner-lg);
		    overflow: hidden;
		    padding: 0;
		}

		a.post-item.card .post-item-thumb {
		    height: 6rem;
		    padding: 0;
		    margin: 0;
		}

		a.post-item.card .post-item-details {
		    padding: 1rem;
		}

		a.post-item.card .post-item-thumb img {
		    border-radius: 0;
		}
	}


	/* Resource Page Styling */

	.resource-form {
	    flex: 0 0 30rem;
	    margin-right: 6rem;
	    box-shadow: var(--shadow-md);
	    padding: 1.5rem;
	    border-radius: var(--corner-lg);
	    position:relative;
	}

	.resource-form::before {
		content: "";
		position:absolute;
		width:100%;
		height:0.5rem;
		top:0;
		left:0;
		background: var(--gradient);
		border-top-left-radius: var(--corner-lg);
		border-top-right-radius: var(--corner-lg)
	}

	.load-more-wrapper {
		display: flex;
		justify-content: center;
		margin-top:2rem;
	}


/* Archive page styling */

	.archive-content div.container-fixed {
	    margin-bottom: 3rem;
	    gap: 3rem;
	}

	.archive-content .load-more-wrapper {
	    justify-content: flex-start;
	}

	.archive-list.resources {
	    display: flex;
	    flex-wrap: wrap;
	    gap: 1.5rem;
	}

	.archive-list.resources .post-item {
	    flex: 0 0  calc(33.33% - 1rem);
	}

	@media screen and (max-width:768px) {
		.archive-list.resources .post-item {
		    flex: 0 0  100%;
		}

		.archive-list.resources {
		    gap: 0.5rem;
		}
	}


/* Leadgen Form Styles */

	.leadgen-wrapper label {
	    font-weight:700;
	}

	.leadgen-wrapper input:not([type=checkbox]),
	.leadgen-wrapper select,
    .leadgen-wrapper textarea {
	    margin-top:0.25rem;
	    border:1px solid var(--stroke);
	    border-radius: var(--corner-sm);
	    min-width:100%;
	}

	.leadgen-wrapper .hs-form-field {
	    margin-bottom: 1rem;
	}

	.leadgen-wrapper ul.inputs-list {
	    list-style: none;
	    padding-left:2rem;
	}

	.leadgen-wrapper input[type=checkbox] {
	    margin-left: -2rem;
	    margin-right: 1.24rem;
	}

	.leadgen-wrapper input[type=submit] {
	    width: 100%;
	    padding: 1rem 1.5rem;
	    border-radius: 3rem;
	    background: var(--acc-1);
	    color: white;
	    font-size: 1.125rem;
	}

	.leadgen-wrapper ul[role=alert] {
	    color: var(--danger);
	    font-size: 0.75rem;
	    font-weight: 300;
	    padding-left: 0;
	    margin-top: 0.5rem;
	}

	.leadgen-wrapper input.error,
	.leadgen-wrapper select.error{
	    border:1px solid var(--danger);
	}

	.hs-form-booleancheckbox span {
	    font-weight: 400;
	    font-size: 0.875rem;
	    line-height: 1.3 !important;
	    display: inline;
	}

	.hs-form-booleancheckbox {
	    line-height: 1.1;
	}

	div.legal-consent-container p {
	    font-size: 0.875rem;
	    margin-bottom: 1rem;
	    color: var(--subtle);
	}


/* Get in Touch Modal Styles */

	div.modal {
		display: flex;
	    position: fixed;
	    width: 100vw;
	    height: 100vh;
	    top: 0;
	    left: 0;
	    background-color: rgba(0,0,0,0.6);
	    z-index: 10000;
	    backdrop-filter: blur(20px);
	}

	div.get-in-touch-modal {
	    padding: 3rem;
	    border-radius: var(--corner-lg);
	    gap: 3rem;
	    max-width: 67rem;
		max-height: 100vh;
    	overflow: auto;
	}

	div.get-in-touch-modal .leadgen-wrapper {
	    flex: 0 0  450px;
	}

	.git-context {
	    display: flex;
	    flex-direction: column;
	    align-self: stretch;
	    padding-right: 3rem;
	    border-right: 1px solid var(--trans-blue);
	}

	button.modal-close {
	    position: absolute;
	    top: 0;
	    right: 0;
	    padding: 1rem;
	}

	.git-students {
	    margin-top: auto;
	    padding: 1rem;
	    background-color: var(--trans-blue);
	    border-radius: var(--corner-sm);
	}

	.git-students p {
	    margin-bottom:0;
	}

	@media screen and (max-width:768px) {

		.git-context {
		    padding-right: 0;
		    border-right: 0;
		}

		div.get-in-touch-modal {
			padding:2rem;
		}
	}

/* Preloader Styles 


#wptime-plugin-preloader::before {
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background-color:var(--light-grey);
	animation: pulse 2s infinite;
}

@keyframes pulse {
	0% {
		opacity:0;
	}

	50% {
		opacity:1;
	}

	100% {
		opacity:0;
	}
} */