/*
Theme Name: [Hendersons2026]
Author: Arvind Sardar
Description: Base Theme
Theme URI: https://arvinds-lab.com
Author URI: https://arvinds-lab.com
Requires PHP: 7.2
License: GPLv2 License
License URI: https://wordpress.org/about/gpl/
Text Domain: summr
Version: 4
*/

@import url(css/system.css);


/* SECTION Primary Areas
**************************************************/
	/* ## Body */
	body{
		padding-inline: 20px;
		background-color: #ecf0f0;
	}

	/* ## Header Area */
	#siteHeader{
		position: sticky;
		top: 0;
		z-index: var(--z-top);
		.wp-block-site-logo img {
			max-width: 320px;
			width: 100%;
		}
	}

/* ## Content Area */
	#areaContent{
		padding-top: var(--unit-sm);
		@media(max-width: 810px){
			padding-bottom: var(--unit-lg);
		}
		body.transp-header &{
			padding-block: 0;
		}
	}
	.container{
		width: 100%;
		max-width: var(--contentMaxWidth);
		margin-inline: auto;
	}
	body:is(.page-template-default.summr-not-front,.post-template-default){
		main#areaContent > .inner{
			display: grid;
			grid-template-columns: 1fr 400px;
			column-gap: 60px;
			
			@media (min-width:811px) and (max-width: 1199px){
				grid-template-columns: 1fr 300px;
			}
			@media(max-width: 810px){
				grid-template-columns: 1fr !important;
			}
			.story{
				padding-right: var(--unit-lg);
				padding-bottom: var(--unit-lg);
			}
		}
	}

/* ## Titling Area
**************************************************/
	body.blog section.entry-header,
	body.page section.entry-header{
		position: relative;
		margin-bottom: var(--unit-lg);
		background-color: var(--swatch-01);
		border-radius: 12px;
		padding-block: 8vw;
		padding-inline: 30px;
		display: grid;
		align-items: center;
		background: #180949;
		background-size: cover, cover;
		background-repeat: no-repeat;
		background-position: center, center;
		h1.entry-title{
			color: white;
			margin-bottom: 0;
			position: relative;
			text-align: center;
		}
		@media(max-width: 810px){
			background-size: auto, cover;
		}
	}
	section.header-design-01.entry-header{
		grid-column: span 2;
		@media(max-width: 810px){
			grid-column: auto;
		}
	}
	section.header-design-02.entry-header{
		text-align: center;
		padding-block: 100px;
		h3{
			padding-bottom: 1rem;
			margin-bottom: 1rem;
			border-bottom: 1px solid var(--swatch-03);
			text-transform: uppercase;
			font-size: 1.4rem;
		}
		h1{
			margin-bottom: 0.5rem;
			color: var(--swatch-01);
			font-size: clamp(30px, 23.455px + 2.045vw, 48px);
		}
		.post-meta{
			font-family: var(--displayfont);
			color: var(--gray70);
		}
		.has-separator-above:before{
			display: block;
			content: '';
			width: 100px;
			height: 1px;
			background-color: var(--swatch-03);
			margin-inline: auto;
			margin-block: 1rem;
		}
		.terms-cloud{
			justify-content: center;
		}
	}

/* ## Sidebar Area
**************************************************/
	#areaSidebar{
		display: flex;
		flex-direction: column;
		row-gap: 1rem;
		@media (min-width:811px) and (max-width: 1199px){
			max-width: 300px;
		}
		.widget{
			border-radius: 12px;
			background-color: var(--swatch-01);
			overflow: clip;
			
			h4{
				border-bottom: 1px solid #c6d0d0;
				margin-bottom: 0;
				color: white;
				border-bottom: 1px solid hsla(0, 0%, 100%, 0.8);
				padding: 1rem;
			}
			.body{
				background: var(--stdGradient);
				padding: 1rem;
				.menu-item{
					border-bottom: 1px solid var(--swatch-02);
					padding-block: 4px;
				}
				a{
					text-decoration: none;
					font-family: var(--bodyfont);
					color: white;
				}
				a.wp-block-button__link.btn-reverse{
					background-color: white;
					color: var(--swatch-01) !important;
					&:hover{
						background-color: var(--swatch-01);
						color: white !important;
					}
				}

			}
			&.reviews .item{
				background-color: white;
				border-radius: 12px;
				overflow: clip;
				padding: 12px;
				img{
					margin-inline: auto;
				}
			}
			&.affiliations .body{
				display: grid;
				grid-template-columns: repeat(3, 1fr);
				gap: 8px;
				.item{
					background-color: white;
					border-radius: 12px;
					overflow: clip;
					padding: 8px;
					display: grid;
					place-content: center;
				}
			}
		}
	}

/* ## Footer Area
**************************************************/
	footer#siteFooter{
		.inner{
			@media(max-width: 810px){
				padding-top: 50px !important;
			}
			.content{
				grid-template-columns: repeat(12, 1fr);
				gap: 2rem;
				.company-info{
					grid-column: span 4;
				}
				.contact-info{
					grid-column: span 2;
				}
				.menu{
					grid-column: span 2;
				}
				.map{
					grid-column: span 4;
				}
				@media(max-width: 950px){
					.company-info{
						grid-column: span 6;
					}
					.contact-info{
						grid-column: span 3;
					}
					.menu{
						grid-column: span 3;
					}
					.map{
						grid-column: span 11;
					}					
				}
				@media(max-width: 660px){
					.company-info{
						grid-column: span 12;
					}
					.contact-info{
						grid-column: span 6;
					}
					.menu{
						grid-column: span 6;
					}
				}
			}
		}
	}
	.footer-cta{
		position: relative;
		top: 100px;
		z-index: 99;
		max-width: 90vw !important;
		overflow:clip;
		@media(max-width: 810px){
			top: 0;
			margin-bottom: 20px !important;
		}
	}
	#footerMenu{
		.icon--ui{
			display: none;
		}
		.level-1{
			> .menu-item{
				margin-bottom: 6px;
				> a{
					font-weight: 500;
					font-size: 16px;
					color: white;
					text-decoration: none;
					display: block;
					&:hover{
						color: var(--swatch-03);
					}
				}
			}
			.level-2{
				display: flex;
				flex-wrap: wrap;
				column-gap: 36px;
				.menu-item{
					a{
						font-size: 14px;
						text-decoration: none;
						&:hover{
							color: var(--swatch-03);
						}
					}
				}
			}
		}
	}

/* !SECTION */

/* ## Layout Global Classes
================================= */

	.is-style-full-width,
	.alignfull {
		margin-left: calc(var(--leftPageMargin) + 20px) !important;
		margin-right: calc(var(--rightPageMargin) + 20px) !important;
		/* width: 100vw; */
	}
	.alignright {margin-left: auto;}
	.alignleft {margin-right: auto;}
	.aligncenter {margin-inline: auto;}
	.alignwide {margin-inline: calc((50% - 50vw) * 0.3);}
	.align-narrow{
		max-width: var(--widthNarrow);
		margin-inline: auto;
	}
	.is-layout-constrained > *{
		max-width: var(--contentMaxWidth);
	}
	.grid-12x12{
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		grid-template-rows: repeat(12,1fr);
		gap: 12px;
	}

	body.deprecated_page #areaContent{
		position: relative;
		pointer-events: none;
		&:after{
			content: 'This content is archived';
			display: grid;
			place-content: center;
			padding: 20px;
			border: solid 1px black;
			position: absolute;
			inset: 0;
			font-size: var(--txt-xl);
			text-align: center;
			background-color: rgba(205, 205, 205, 0.8);
			z-index: 999;
			backdrop-filter: blur(5px);
		}
	}
	#page-overlay{
		position: fixed;
		z-index: var(--z-mid);
		background-color: hsla(0, 0%, 0%, 1);
		inset: 0;
		display: none;
	}
	#back-to-top{
		width: 35px;
		aspect-ratio: 1;
		bottom: 20px;
		right: 20px;
		background-color: var(--gray10);
		border-radius: 50%;
		display: grid;
		place-content: center;
		padding: 5px;
		svg{
			fill: var(--swatch-01);
			width: 100%;
			height: 100%;
		}
	}
	/* set an offset for scrolling when the header is fixed */
	:target{
		scroll-margin-top: 150px;
	}

/* ## Animations
**************************************************/
	@keyframes menuAnim {
		0% {
			opacity: 0;
			margin-left: 50px;
		}
		50% {
			opacity: 1;
			margin-left: -5px;
		}
		100%{
			margin-left: 0;
		}
	}
	@keyframes openWide{
		0% {
			opacity: 0;
			transform: scaleX(0);
			transform-origin: center;
		}
		100%{
			opacity: 1;
			transform: scaleX(1);
		}
	}
	@keyframes fadeIn {
		from {
			opacity:0;
		}
		to {
			opacity:1;
		}
	}
	@keyframes fadeInUp {
		0% {
			opacity: 0;
			transform: translateY(20px);
		}
		100% {
			opacity: 1;
			transform: translateY(0);
		}
	}
	@keyframes fadeInLeft {
		from {
			opacity: 0;
			transform: translateX(20px);
		}
		to {
			opacity: 1;
			transform: translateX(0);
		}
	}
	@keyframes pulse {
		0% {
			transform: scale(1);
			opacity: 1;
		}
		50% {
			transform: scale(0.65);
			opacity: 0.5;
		}
		100% {
			transform: scale(1);
			opacity: 1;
		}
	}
	@keyframes disappear {
		0% {
			transform: scale(1);
			opacity: 1;
		}
		100% {
			transform: scale(0);
			opacity: 0;
		}
	}


/* ## Fonts/Typography
**************************************************/
	@font-face {
		font-family: 'merriweather';
		src: local(''),
			url('fonts/Merriweather.woff2') format('woff2');
		font-weight: 1 999;
	}
	@font-face {
		font-family: 'merriweathersans';
		src: local(''),
			url('fonts/MerriweatherSans.woff2') format('woff2');
		font-weight: 1 999;
	}

	html,
	body {
		-webkit-font-smoothing: antialiased;
		-moz-font-smoothing: antialiased;
		-o-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	body {
		font-family: var(--bodyfont);
		font-size: var(--txt-reg);
		font-weight: 350;
		line-height: 1.7;
		color: var(--gray90);
	}
	h1,	h2,	h3,	h4,	h5,	h6{
		font-family: var(--displayfont);
		line-height: 1.1;
		font-weight: 350;
		color: var(--gray80);
	}
	h2,	h3,	h4,	h5,	h6{
		margin-bottom: 0.4em;
		margin-top: 1.1em;
		&:first-child{
			margin-top: 0;
		}
	}
	h4{
		letter-spacing: 1px;
	}

	h1, .like-h1{
		font-size:clamp(34px, 24.545px + 2.955vw, 60px);
		font-weight: 250;
	}
	h2{
		font-size: 32px; 
		color: var(--swatch-01);
		font-weight: 500;
	}
	body.home h2{
		font-size: clamp(32px, 26.182px + 1.818vw, 48px); 
	}
	h3{
		font-size: 24px;
		font-weight: 700;
		font-family: var(--bodyfont);
		color: var(--swatch-02);
	}
	body.home h3{
		font-size: 32px; 
	}
	h4{font-size: var(--txt-md); }
	h4.has-logomark:before{
		content: '';
		width: 20px;
		height: 20px;
		background-image: url('/wp-content/uploads/2026/04/logomark2.png');
		background-size: contain;
		background-repeat: no-repeat;
		display: inline-block;
		margin-right: 8px;
	}
	h5{font-size: var(--txt-reg); }
	h6{font-size: var(--txt-sm); }

	p {margin-bottom: var(--unit-sm);}
	p:last-child {margin-bottom: 0;}
	ul,ol{
		padding-left: 35px;
		margin-bottom: 1em;
		li{
			/* margin-top: 1em; */
		}
		ul{
			margin-bottom: 0;
			li{
				/* margin-top: 0.3em; */
			}
		}
	}
	p + h2,
	p + h3 {
		margin-top: 1.5em;
	}
	p.is-style-intro{
		font-size: 22px;
		font-weight: 300;
		font-family: var(--displayfont);
		margin-bottom: var(--unit-md);
		color: var(--swatch-02);
		&:after{
			display: block;
			content: '';
			height: 2px;
			background-color: var(--swatch-02);
			margin-left: calc(50% - 50vw);
			margin-block: 2rem;
			opacity: 0.1;
		}
	}
	big {font-size: var(--txt-md) ;}
	small {font-size: var(--txt-sm);}
	.banner-headline{
		font-size: clamp(30px, 11.818px + 5.682vw, 80px);
	}


/* ## Images
**************************************************/
	figure img{
		border-radius: var(--unit-sm);
	}
	.img-fill{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.icon-xs{
		height: 20px;
		aspect-ratio: 1;
		svg,img{
			width: 100%;
			height: 100%;
			object-fit: contain;
		}
	}
	.icon-sm{
		height: 30px;
		aspect-ratio: 1;
		svg,img{
			width: 100%;
			height: 100%;
			object-fit: contain;
		}
	}
	.icon-md{
		height: 60px;
		aspect-ratio: 1;
		svg,img{
			width: 100%;
			height: 100%;
			object-fit: contain;
		}
	}
	.icon-lg{
		height: 90px;
		aspect-ratio: 1;
		svg,img{
			width: 100%;
			height: 100%;
			object-fit: contain;
		}
	}
	figure.with-fallback:has(img[src=""]){
		border: solid 1px var(--gray10);
		background-image: url(../images/image-placeholder-default.webp);
		background-size: cover;
		background-position: center;
			a{
				display: block;
				height: 100%;
			}

		img{
			display: none;
		}
	}
	.post-item{
		figure{
			img{
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}
	}

	.summr-icon{
		width: 100%;
		height: 100%;
		display: inline-block;
		font-size: 0;
	}

/* ## Links
**************************************************/
	a{
		color: var(--swatch-02);
		text-underline-offset: 3px;
		&:hover{
			color: var(--swatch-03);
		}
	}
	a.link-overlay{
		position: absolute;
		inset: 0;
		z-index: var(--z-top);
	}

/* ## Buttons
**************************************************/
	button, .button, .btn,
	.wp-block-button__link{
		font-weight: 800;
		text-transform: uppercase;
		color: var(--swatch-01);
		background-color: var(--swatch-bright);
		text-decoration: none;
		line-height: 1;
		display: inline-block;
		transition: all 0.3s ease;
		padding: 15px 28px;
		border-radius: var(--unit-md);
		&:hover{
			background-color: var(--swatch-01);
			color: white;
			box-shadow: 0 0 0 2px white;
		}
	}
	.wp-block-button.is-style-outline{
		.wp-block-button__link{
			color: var(--swatch-02);
			position: relative;
			background-color: #fff;
			&:hover{
				background-color: var(--swatch-02);
				color: white;
				border: solid 2px var(--swatch-02);
				box-shadow: none;
			}
		}
	}
	.wp-block-button.is-style-text a{
		padding: 0;
		margin: 0;
		background-color: transparent;
		border: none;
		border-radius: 0;
		&:hover{
			border: none;
			box-shadow: none;
		}
	}
	a.menubutton{
		text-transform: uppercase;
		font-weight: 500;
		border: solid 1px white;
		border-radius: 5px;
		padding: 4px 12px !important;
		color: white;
		display: inline-block;
		transition: all 0.4s ease;
		text-decoration: none;
		&:hover{
			background-color: white;
			color: var(--swatch-01);
		}
	}

/* ## Tables
**************************************************/
	.wp-block-table{
		table{
			margin-block: var(--unit-sm);
			thead{
				border-top-left-radius: 12px;
				border-top-right-radius: 12px;
				border-bottom: solid 3px var(--swatch-03);
			}
			th{
				text-align: left;
				background-color: var(--swatch-light);
				padding: 6px 18px;
				border: none;
			}
			tr{

			}
			td{
				border-color: var(--swatch-light);
				background-color: white;
				padding: 6px 18px;
				font-size: 90%;
			}
		}
	}

/* ## Curvy Boxes
**************************************************/
	.has-reverse-curve{
		position: relative;
		&::before, &::after{
			content: '';
			width: 20px;
			height: 20px;
			position: absolute;
			background-image: url('images/curve-corner.svg');
			background-size: cover;
			z-index: 12;
		}
		&::before {
			left: 0;
			bottom: 100%;
			transform: scale(-1);
		}
		&::after {
			left: 100%;
			bottom: 0;
			transform: scale(-1);
		}
	}

/* ## Misc Elements
**************************************************/
	hr.wp-block-separator{
		border-top-width: 1px;
		margin-block: var(--unit-md);
	}

/* ## PAGE: Contact
**************************************************/
	@media(max-width: 810px){
		iframe#matter-intake-iframe{
			#main.rounded-small{
				margin-left: 0;
			}
		}
	}

/* ## PAGE: Front page
**************************************************/
	body.home{
		#pageBanner{
			#banner-div01{
				grid-column: 1/7;
				grid-row: 1/13;
				overflow: clip;
			}
			#banner-div02{
				grid-column: 7/13;
				grid-row: 1/13;
				position: relative;
				z-index: 1;
				overflow: clip;
			}
			#banner-div03{
				grid-column: 7/9;
				grid-row: 9/13;
				position: relative;
				z-index: 2;
			}
		}
		#splide01-list{
			min-height: 50vh;
		}
		@media(max-width: 1024px){
			#pageBanner{
				grid-template-columns: repeat(4,1fr);
				grid-template-rows: auto;
				#banner-div01{
					grid-column: 1/-1;
					grid-row: 1/2;
				}
				#banner-div02{
					grid-column: 1/-1;
					grid-row: 2/3;
					height: 20vh; */
				}
				#banner-div03{
					grid-column: 1/3;
					grid-row: 2/3;
					padding: 0 !important;
					border-radius: 12px !important;
					&::before, &::after{
						display: none;
					}
				}
			}
			#splide01-list{
				min-height: unset;
			}
		}
	}


/* ## SINGLE: Blog Archives
**************************************************/
		body.blog{
			.posts-group.card-display .item-0{
				@media(min-width: 700px){
					grid-template-columns: 1fr 1fr;
					grid-template-rows: auto;
					gap: 30px;
					grid-column: 1/-1;
					.top{
						grid-row: span 2;
						grid-column: 1/2;
						figure.asp-landscape {
							aspect-ratio: unset;
							margin-bottom: 0;
							height: 100%;
							margin-bottom: 0;
						}
					}
					.middle{
						grid-column: 2/3;
						grid-row: 1/2;
					}
					.bottom{
						grid-column: 2/3;
						grid-row: 2/3;
					}
				}
			}
			.terms-cloud{
				justify-content: center;
				margin-bottom: 45px;
			}
		}

/* ## SINGLE: Post
**************************************************/
	body.single-post {
		.post-image-wrap img {
			width: 100%;
			aspect-ratio: 16 / 9;
			object-fit: cover;
			margin-bottom: 30px;
		}
	}

/* ## MODULE: Bios
**************************************************/
	.bio-intro{
		font-size: 22px;
		font-weight: 300;
		font-family: var(--displayfont);
		color: var(--swatch-02);
		column-gap: var(--unit-lg);
		justify-content: space-between;
		grid-template-columns: 1fr 25% !important;
		&:after{
			display: block;
			content: '';
			height: 2px;
			background-color: var(--swatch-02);
			margin-left: calc(50% - 50vw);
			margin-block: 2rem;
			opacity: 0.1;
			grid-column: span 2;
		}
		@media(max-width: 1150px){
			grid-template-columns: 1fr !important;
			column-gap: 0;
			figure{
				max-width: 300px;
				order: 1;
				margin-bottom: var(--unit-sm);
			}
			.text{
				order: 2;
			}
			&:after{
				order: 3;
				grid-column: span 1;
			}
		}
	}

/* ## MODULE: Site Search
**************************************************/
	#siteSearchToggle{
		cursor: pointer;
		border: solid 1px white;
		padding: 6px 12px;
		border-radius: 5px;
		display: inline-block;
		color: white;
		svg{
			width: 16px;
		}
		&:hover{
			background-color: white;
			color: var(--swatch-01);
		}
	}
	#siteSearch{
		display: none;
		&.active{
			display: block;
			position: absolute;
			top: calc(100% + 30px);
			right: 0;
			transition: all 0.4s ease;
			z-index: 99;
			width: 800px;
			max-width: 80vw;
			opacity: 1;
			@starting-style{
				right: 300px;
				opacity: 0;
			}
		}
	}


/* ## MODULE: Main Menu
** choose menu type in functions.php
************************************************* */

/* ## MODULE: Hamburger Menu
**************************************************/
	#menuToggle {
		cursor: pointer;
		fill: white;
	}

/* ## MODULE: Service Cards
**************************************************/
	.slider-all-services{
		.splide__slide{
			background-color: var(--swatch-03);
			color: white;
			display: grid;
			place-items: center;
			border-radius: var(--unit-sm);
			min-height: 60px;
			padding: 30px;
			text-transform: capitalize;
		}
	}

	.cards-primary-services{
		.splide__slide{
			position: relative;
		}
		figure.slide-hoverimage{
			position: static;
			img{
				position: absolute;
				inset: 0;
				object-fit: cover;
				height: 100%;
				opacity: 0;
				transition: all 0.8s ease;
			}
		}
		.card-item{
			background: var(--stdGradient);
			border-radius: var(--unit-sm);
			padding: var(--unit-md);
			width: 100%;
			min-height: 100%;
			display: flex;
			flex-direction: column;
			position: relative;
			@media(max-width: 1080px){
				height: 100%;
			}
			h3,p{
				color: white;
			}
			h3{
				font-size: 22px;
				font-weight: 800;
				line-height: 1;
				margin-bottom: 16px;
			}
			p{
				font-size: 85%;
			}
			a.wp-block-button__link{
				position: absolute;
				z-index: 99;
				inset: 0;
				opacity: 0;
				/* display: none; */
			}
			.wp-block-outermost-icon-block{
				margin-bottom: 50px;
				flex-grow: 1;
				.icon-container{
					width: 80px !important;
					height: 80px !important;
					border: solid 2px white;
					border-radius: 50%;
					display: grid;
					place-items: center;
					svg{
						width: 60%;
						height: 60%;
						object-fit: contain;
						color: white;
					}
				}
			}
			&:hover{
				.icon-container{
					animation: pulse 0.4s ease-in-out both;
				}
				a.wp-block-button__link{
					display: block;
				}
				figure.slide-hoverimage{
					img{
						opacity: 0.5;
					}
				}
			}
		}
	}

	/* flex version */
	.cards-primary-services.flex-layout{
		display: flex;
		flex-wrap: wrap;
		gap: 24px;
		justify-content: center;
		> .card-item{
			width: 320px;
			margin: 0 !important;
			height: unset;
			margin: 0;
		}
	}

	/* grid version */
	.cards-primary-services.is-layout-grid{
		grid-template-columns: repeat( auto-fill, minmax(300px, 1fr) );
		.card-item{
			height: unset;
		}
	}

/* ## MODULE: Socials
**************************************************/
	.module.socials{
		.item{
			height: 48px;
			transition: all 0.2s ease;
			color: var(--swatch-01);
			background-color: var(--gray10);
			border-radius: 50%;
			padding: 10px;
			svg{
				width: 100%;
				height: 100%;
				object-fit: contain;
			}
		}
		.item:hover{
			color: var(--gray10);
			background-color: var(--gray90);
		}
	}


/* ## MODULE: Pagination
**************************************************/
	.pagination{
		padding-block: 50px;
		.nav-links{
			display: flex;
			gap: 1rem;
			.page-numbers{
				color: white;
				background-color: var(--swatch-02);
				border: solid 1px var(--swatch-02);
				text-decoration: none;
				line-height: 1;
				display: inline-block;
				transition: all 0.3s ease;
				padding: 12px 36px;
				border-radius: 4px;
				&:hover:not(.current){
					background-color: white;
					color: var(--swatch-02);
				}
			}
			.page-numbers.current{
				opacity: 0.5;
				cursor: default;
			}
		}
	}



/* ## MODULE: Forms
**************************************************/
	input[type="text"],
	input[type="email"],
	textarea{
		padding: var(--unit-sm);
		width: 100%;
		border: solid 1px var(--gray20);
		border-radius: var(--unit-xs);
		background-color: var(--gray10);
		box-shadow: inset rgba(0, 0, 0, 0.1) 0px 2px 4px 0px;
	}
	select{
		padding: var(--unit-sm);
		border: solid 1px var(--gray20);
		border-radius: var(--unit-xs);
		background-color: var(--gray10);
	}

	/* CF7 */
	form.wpcf7-form {
		/* max-width: 600px; */
		display: grid;
		row-gap: var(--unit-sm);
		p{
			margin-bottom: 0;
		}
		p:has([data-name="Upload"]){
			padding: var(--unit-md);
			border: solid 1px var(--gray20);
			border-radius: var(--unit-xs);
		}
		span.wpcf7-form-control-wrap{
			display: block;
		}
		select{
			/* appearance: none; */
		}
		::placeholder{
			color: var(--gray40);
			text-transform: uppercase;
			font-size: 12px;
		}
		.wpcf7-not-valid-tip {
			width: fit-content;
			background: red;
			color: white;
			padding: 5px 12px;
			position: relative;
			top: -10px;
			left: 12px;
			text-transform: uppercase;
			font-size: 10px;
			font-weight: bold;
			border-radius: var(--unit-xs);
		}
		&.sent{
			p:has(span.wpcf7-form-control-wrap, [type="submit"],[data-name="Upload"]){
				display: none;
			}
		}
		.wpcf7-response-output{

		}
	}

/* ## MODULE: Callout Group
**************************************************/
	.wp-block-group.is-style-callout{
		padding-inline: var(--unit-md) var(--unit-xl);
		padding-block: var(--unit-sm);
		border-left: solid 6px var(--swatch-01);
		margin-block: var(--unit-lg) var(--unit-md);
		background-color: white;
		p {
			margin-top: 0.3em;
		}
	}

/* ## MODULE: Terms Cloud
**************************************************/
	#summr-filters{
		display: flex;
		flex-wrap: wrap;
		column-gap: 12px;
		justify-content: center;
		row-gap: 6px;
	}
	.terms-cloud{
		display: flex;
		flex-wrap: wrap;
		gap: 6px;
		a{
			display: inline-block;
			padding: 4px 12px;
			border: solid 1px var(--swatch-03);
			color: var(--swatch-01);
			border-radius: 6px;
			text-decoration: none;
			font-size: 12px;
			text-transform: uppercase;
			&:hover{
				background-color: var(--swatch-03);
				color: white;
			}
		}
	}
	body.archive.category .terms-cloud{
	    justify-content: center;
        padding-block: 50px;
    }


/* ## MODULE: Card display
**************************************************/
	.card-display{
		display:grid;
		grid-template-columns: repeat( 4, 1fr );
		gap: var(--unit-lg);

		@media(max-width: 1024px){
			grid-template-columns: repeat( 3, 1fr );
		}
		@media(max-width: 810px){
			grid-template-columns: repeat( 2, 1fr );
		}
		@media(max-width: 640px){
			grid-template-columns: repeat( 1, 1fr );
		}

		.post-item{
			display: grid;
			row-gap: var(--unit-sm);
			.bottom{
				margin-top: auto;
			}
			figure{
				margin-bottom: 16px;
			}
		}
	}

/* ## MODULE: Sliders
**************************************************/
	.wp-block-splide-carousel .splide__arrows--ltr .splide__arrow--next {
		right: 0;
	}
	.wp-block-splide-carousel .splide__arrows--ltr .splide__arrow--prev {
		left: 0;
	}


/* ## MODULE: Google Reviews Proof Statement
**************************************************/
	.reviews-proof{
		.dashicons.dashicons-star-filled{
			width: unset;
			height: unset;
			font-size: 28px;
		}
		font-size: clamp(16px, 11.636px + 1.364vw, 28px);
	}

/* ## MODULE: List display
**************************************************/
	.layout--list{
		display: flex;
		flex-direction: column;
		.item{
			display: grid;
			grid-template-columns: 120px 1fr;
			grid-template-rows: repeat(2, 1fr);
			column-gap: 40px;
			row-gap: 12px;
			.top{
				grid-column: 1 / 2;
				grid-row: 1 / -1;
				figure{
					height: 100%;
				}
				img{
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
			.post-title{
				margin-bottom: 8px;
			}
			.post-date, .post-link{
				display: none;
			}
		}
	}

	.list-display{
		display:flex;
		flex-direction: column;
		gap: var(--unit-md);

		.post-item{
			display: grid;
			grid-template-columns: 300px 1fr;
			column-gap: var(--unit-lg);
			row-gap: var(--unit-sm);
			.top{
				grid-row: 1/span 2;
			}
			.middle{
				align-self: end;
			}
			.bottom{
				align-self: start;
			}
			figure{
				width: 100%;
				margin-bottom: 0;
				border-radius: var(--unit-sm);
				overflow: clip;
				img{
					width: 100%;
					height: 100%;
					object-fit: cover;
				}
			}
		}
	}


/* ## Overrides & Fixes
================================= */
	.force-awb-rounding .jarallax-container{
		clip-path: inset(0 0 0 0 round 12px) !important;
	}
	@media(max-width: 810px){
		.wp-block-group.mobile-flow{
			grid-template-columns: 1fr !important;
		}
	}

/* ## If Admin Bar
================================= */
	body.admin-bar{
		#siteHeader{
			top: 32px !important;
			/* transform: translateY(32px); */
		}
	}