/*
Theme Name: Contempo HCM
Author: Kelsey Barmettler
Author URI: http://kelseybarmettler.com
Description: A theme for contempohcm.com. Requires ACF.
Version: 1.2.118
*/

@import url('./css/block-library.css');


/*
################################
RESET
################################
*/
html {
	scroll-behavior: smooth;
}

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.edit-link {
	display: none;
}

body {
	overflow-x: hidden;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
address,
fieldset,
legend {
	margin: 0;
	padding: 0;
}

img {
	max-width: 100%;
	height: auto;
}

/*
################################
TYPOGRAPHY
################################
*/
:root {
	--rad-font-size-small: clamp(13px, calc(0.8125rem + ((1vw - 7.68px) * 0.1736)), 15px);
	--rad-font-size-regular: clamp(16px, calc(1rem + ((1vw - 7.68px) * 0.1736)), 18px);
	--rad-font-size-extra-regular: clamp(20px, calc(1.25rem + ((1vw - 7.68px) * 0.1736)), 22px);
	--rad-font-size-medium: clamp(24px, calc(1.5rem + ((1vw - 7.68px) * 0.2604)), 27px);
	--rad-font-size-extra-medium: clamp(30px, calc(1.875rem + ((1vw - 7.68px) * 0.1736)), 32px);
	--rad-font-size-large: clamp(38px, calc(2.375rem + ((1vw - 7.68px) * 0.3472)), 42px);
	--rad-font-size-larger: clamp(48px, calc(3rem + ((1vw - 7.68px) * 0.5208)), 54px);
	--rad-font-size-huge: clamp(58px, calc(3.625rem + ((1vw - 7.68px) * 0.3472)), 62px);
	--rad-font-size-large-huge: clamp(68px, calc(4.25rem + ((1vw - 7.68px) * 0.3472)), 72px);
}

body .has-small-font-size {
	font-size: var(--rad-font-size-small, 12px) !important;
	min-height: 0vw;
}

body .has-regular-font-size {
	font-size: var(--rad-font-size-regular, 16px) !important;
	min-height: 0vw;
}

body .has-extra-regular-font-size {
	font-size: var(--rad-font-size-extra-regular, 18px) !important;
	min-height: 0vw;
}

body .has-medium-font-size {
	font-size: var(--rad-font-size-medium, 24px) !important;
	min-height: 0vw;
}

body .has-extra-medium-font-size {
	font-size: var(--rad-font-size-extra-medium, 28px) !important;
	min-height: 0vw;
}

body .has-large-font-size {
	font-size: var(--rad-font-size-large, 36px) !important;
	min-height: 0vw;
}

body .has-x-large-font-size {
	font-size: var(--rad-font-size-larger, 44px) !important;
	min-height: 0vw;
}

body .has-huge-font-size {
	font-size: var(--rad-font-size-huge, 55px);
	min-width: 0vw;
}

.has-big-mclargehuge-font-size {
	font-size: var(--rad-font-size-large-huge, 72px);
	min-width: 0vw;
}

body {
	font-size: var(--rad-font-size-regular);
	min-height: 0vw;
	line-height: 1.65;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
	line-height: 1.07;
	margin-bottom: 1.3657rem;
}

h1 {
	font-size: var(--rad-font-size-huge);
	min-height: 0vw;
}

h2 {
	font-size: var(--rad-font-size-larger);
	min-height: 0vw;
}

h3 {
	font-size: var(--rad-font-size-large);
	min-height: 0vw;
}

h4 {
	font-size: var(--rad-font-size-extra-medium);
	min-height: 0vw;
}

h5,
h6 {
	font-size: var(--rad-font-size-medium);
	min-height: 0vw;
}

p {
	margin-bottom: 1rem;
	line-height: 1.67;
}

/* default links */
a {
	transition: color 150ms ease-in-out;
	cursor: pointer;
}

/* default buttons */
button {
	cursor: pointer;
}

.wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.wp-block-buttons.is-style-stacked {
	flex-direction: column
}

.wp-block-button {
	margin-bottom: 1em;
	flex: 0 1 fit-content;
}

.wp-block-button.has-custom-width a {
	display: inherit;
}

.wp-block-button.is-style-alternate>.wp-block-button__link,
.wp-block-button .wp-block-button__link.is-style-alternate {
	padding: calc(.5rem - 2px) 1.25rem;
	border: 2px solid currentColor;
	background-color: transparent;
	color: currentColor;
}

.is-content-justification-center.wp-block-buttons {
	text-align: center;
}

a.wp-block-button__link {
	color: #fff;
	padding: .5rem 1.25rem;
	border: 0;
	border-radius: 3px;
	display: inline-block;
}

.wp-block-button:focus-within {
	outline: -webkit-focus-ring-color auto 1px;
}

.wp-block-button.alignright {
	float: none;
	text-align: right;
	max-width: var(--normal-width, 960px);
	margin-left: auto;
}

.wp-block-button.aligncenter {
	text-align: center;
}

.wp-block-gallery {
	display: flex;
	flex-wrap: wrap;
}

.wp-block-gallery.columns-4 .wp-block-image {
	flex: 1 1 calc(25% - 16px);
}

.wp-block-gallery.columns-3 .wp-block-image {
	flex: 1 1 calc(33.33% - 16px);
}

.wp-block-gallery.columns-2 .wp-block-image {
	flex: 1 1 calc(50% - 16px);
}
#field_4_1 > label > span > span,
#field_4_3 > legend > span > span,
#gform_wrapper_4 > div > p > span,
#field_4_2 > legend > span > span {
	color: var(--wp--preset--color--white) !important;
}
/* lists */
.site-main ul,
.site-main ol {
	margin: 0 0 1rem 3rem;
}

@media screen and (min-width: 550px) {

	ul.is-style-columns,
	ol.is-style-columns {
		-webkit-column-count: 3;
		-moz-column-count: 3;
		column-count: 3;
		margin: 1.5rem 0 1.5rem 3rem;
	}

	ul.is-style-columns li {
		padding: .25rem 1.25rem .25rem 0;
	}
}

ul.is-style-checkmark {
	list-style: none;
	margin: 0 0 1rem 2rem;
}

ul.is-style-checkmark li:before {
	content: '\2713 ';
	position: relative;
	left: -0.5rem;
	color: rgb(46, 144, 65);
	font-weight: bold;
}

ul.is-style-checkmark-right {
	list-style-type: none;
	margin: 0;
}

ul.is-style-checkmark-right li {
	padding: 1rem 0;
	margin: 0;
	display: flex;
	justify-content: space-between;
	line-height: 1;
}

ul.is-style-checkmark-right li:not(:last-of-type) {
	border-bottom: 1px solid #f0f0f0;
}

ul.is-style-checkmark-right li::after {
	content: " \2713";
	color: rgb(46, 144, 65);
	font-weight: bold;
}

ul.is-style-checkmark-right li:has(s)::after {
	content: " \2717";
	color: #c3614c;
}

ul.is-style-inline-list {
	margin-left: 0;
	list-style-type: none;
}

.is-style-inline-list li {
	display: inline-block;
	margin-right: 1ch;
}

.is-style-inline-list li:before {
	content: '\2713';
	margin-right: 1ch;
}

/* quotes */
.wp-block-quote {
	background-color: #f1f1f1;
	border: 1px solid #d8dbdc;
	border-radius: 3px;
	padding: 1rem;
	margin-bottom: 1rem;
}

.wp-block-pullquote {
	margin: 1rem;
	padding: 0;
}

.wp-block-pullquote.alignleft {
	margin-left: 0;
}

.wp-block-pullquote.alignright {
	margin-right: 0;
}

.wp-block-pullquote blockquote {
	background-color: #f1f1f1;
	border: 1px solid #d8dbdc;
	padding: 1rem;
}

.wp-block-pullquote p {
	font-size: unset;
}

/*
################################
GLOBAL STUFF
################################
*/
/* manrope-regular - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Manrope';
	font-style: normal;
	font-weight: 400;
	src: url('./fonts/manrope-v14-latin-regular.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* manrope-800 - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Manrope';
	font-style: normal;
	font-weight: 800;
	src: url('./fonts/manrope-v14-latin-800.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root {
	--padding: 2rem;
	--rad-font-size-small: clamp(13px, calc(0.8125rem + ((1vw - 7.68px) * 0.1736)), 15px);
	--rad-font-size-regular: clamp(16px, calc(1rem + ((1vw - 7.68px) * 0.1736)), 18px);
	--rad-font-size-extra-regular: clamp(20px, calc(1.25rem + ((1vw - 7.68px) * 0.1736)), 22px);
	--rad-font-size-medium: clamp(24px, calc(1.5rem + ((1vw - 7.68px) * 0.2604)), 27px);
	--rad-font-size-extra-medium: clamp(30px, calc(1.875rem + ((1vw - 7.68px) * 0.1736)), 32px);
	--rad-font-size-large: clamp(38px, calc(2.375rem + ((1vw - 7.68px) * 0.3472)), 42px);
	--rad-font-size-larger: clamp(37px, calc(2.3125rem + ((1vw - 3px) * 1.0494)), 54px);
	--rad-font-size-huge: clamp(38px, calc(2.375rem + ((1vw - 3px) * 1.358)), 60px);
	--rad-font-size-large-huge: clamp(38px, calc(2.375rem + ((1vw - 3px) * 2.0988)), 72px);
}

.site {
	overflow-x: clip;
}

@media screen and (max-width: 768px) {
	:root {
		--padding: 1rem;
	}
}

.aligncenter {
	margin: 0 auto;
}

/* constrain all parent elements to a reasonable width */
body .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.site-header,
:not(.has-sidebar)>.site>.widget-area,
:not(.has-sidebar)>.site>.site-main,
:not(.is-style-full-width)>.wp-block-group__inner-container,
.wp-block-cover__inner-container,
.site-footer,
.site-credits {
	max-width: var(--normal-width, 960px) !important;
	margin-left: auto;
	margin-right: auto;
}

/* set width for woocommerce single and archive page content */
:not(.has-sidebar)>.content-area>.site-main {
	max-width: var(--normal-width, 960px) !important;
	margin-left: auto;
	margin-right: auto;
}

:not(.has-sidebar)>.content-area>.site-main>* {
	margin-left: calc(25% - 25vw) !important;
	margin-right: calc(25% - 25vw) !important;
}

/* allow full-width child elements to break out and run edge-to-edge */
.alignfull {
	width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	padding: 0 !important;
}

/* wide children will break out, but not quite full-width */
.site-header>*,
.site-footer>*,
.sidebar-wrapper>* {
	margin-left: calc(25% - 25vw) !important;
	margin-right: calc(25% - 25vw) !important;
}

/* .has-scrollbar .site-header > *,
.has-scrollbar .site-footer > *
.has-scrollbar .sidebar-wrapper > * {
	margin-left: calc(25% - 25vw + (var(--scroll-bar) / 4)) !important;
	margin-right: calc(25% - 25vw + (var(--scroll-bar) / 4)) !important;
} */
.alignwide {
	margin-left: calc(25% - 25vw + (var(--padding) / 2)) !important;
	margin-right: calc(25% - 25vw + (var(--padding) / 2)) !important;
}

/* this one cancels out padding, for images that need to be FULLY alignwide for example */
.extrawide {
	margin-left: calc(25% - 25vw - (var(--padding) / 2)) !important;
	margin-right: calc(25% - 25vw - (var(--padding) / 2)) !important;
}

/* alignwide elements that are nested in full-width elements break out of their __inner-container  */
.alignfull .alignwide {
	margin-left: calc(25% - 25vw + (var(--padding) / 2)) !important;
	margin-right: calc(25% - 25vw + (var(--padding) / 2)) !important;
}

.site-header>*,
.site-main>*,
.site-footer>*,
.site-credits>* {
	padding-left: var(--padding);
	padding-right: var(--padding);
}

.wp-block-group__inner-container,
.wp-block-cover__inner-container {
	padding-left: var(--padding);
	padding-right: var(--padding);
}

.wp-block-group__inner-container :last-child,
.acf-innerblocks-container :last-child {
	margin-bottom: 0;
}

/* floats */
:not(.wp-block-button).alignleft {
	float: left;
}

:not(.wp-block-button).alignright {
	float: right;
}

/* sidebar layout */
.has-sidebar .alignfull,
.has-sidebar .alignwide,
.has-sidebar.has-scrollbar .alignfull,
.has-sidebar.has-scrollbar .alignwide {
	max-width: 100%;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.sidebar-wrapper {
	max-width: var(--normal-width, 960px);
	margin-left: auto;
	margin-right: auto;
}

.sidebar-wrapper__inner-container {
	display: flex;
	flex-wrap: wrap;
}

.sidebar-wrapper .site-main {
	flex-basis: 0;
	flex-grow: 999;
}

.sidebar-wrapper .widget-area {
	flex-basis: 20rem;
	flex-grow: 1;
}

/*
################################
SITE HEADER
################################
*/
/* preheader */
.preheader :last-child {
	margin-bottom: 0;
}

/* header */
.site-header__inner-container {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	column-gap: 1rem;
	row-gap: 1rem;
}

/* -----------------------------
site branding
------------------------------*/
.site-title {
	margin-bottom: unset;
	font-size: unset;
}

.site-description {
	margin-bottom: 0;
}

.custom-logo-link {
	font-size: 0;
}

/* -----------------------------
site navigation
------------------------------*/
@media screen and (min-width: 1025px) { /* Applies ONLY to large screens */
	.main-navigation .menu:first-of-type {
		display: flex;
		height: 100%;
	}
	.main-navigation .menu:first-of-type > .menu-item {
		display: flex;
		align-items: flex-start;
		border-top: 5px solid transparent;
		transition: all 250ms ease;
	}
	.main-navigation .menu:first-of-type > .menu-item:hover {
		border-top: 5px solid hotpink;
	}
	/* todo do i need this? */
	.main-navigation .non-clickable > a {
		pointer-events: none;
	}
	.main-navigation .non-clickable:hover > a {
		color: #817e73;
		transition: color 100ms ease;
	}
	.main-navigation .menu-item-has-children > a:after {
		content: "\203A";
		transform: rotate(90deg);
		transition: transform 250ms ease;
		display: inline-block;
		position: relative;
		top: 2px;
		left: .75ch;
	}
	.main-navigation .sub-menu li a:after {
		display: none; 
	}
	.main-navigation .sub-menu .menu-item:first-of-type {
		position: relative;
	}
	.main-navigation .sub-menu {
		display: none;
		background-color: #fff;
		width: max-content;
		min-width: 270px;
		position: absolute;
		top: calc(50% + 1.5rem);
		left: 50%;
		-webkit-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		transform: translateX(-50%);
		z-index: 9999;
		-webkit-box-shadow: 0 13px 27px -5px rgb(50 50 93 / 25%), 0 8px 16px -8px rgb(0 0 0 / 30%), 0 -6px 16px -6px rgb(0 0 0 / 3%);
		box-shadow: 0 13px 27px -5px rgb(50 50 93 / 25%), 0 8px 16px -8px rgb(0 0 0 / 30%), 0 -6px 16px -6px rgb(0 0 0 / 3%);
		margin: 0 auto;
	}
	.main-navigation .sub-menu .menu-item:first-of-type::before {
		content: "";
		position: absolute;
		top: -5px;
		left: 50%;
		right: 50%;
		transform: translateX(-50%);
		width: 0;
		height: 0;
		border-left: 7px solid transparent;
		border-right: 7px solid transparent;
		border-bottom: 5px solid #fff;
	}
	.main-navigation .sub-menu .menu-item {
		border-left: 4px solid transparent;
		transition: border 250ms ease-in-out, background-color 250ms ease-in-out;
	}
	.main-navigation .sub-menu .menu-item:hover {
		border-left: 4px solid #000;
		background-color: aliceblue;
	}
	.main-navigation .menu-item-has-children:hover .sub-menu {
		display: block;
	}
}
/* smaller screen styles & behavior */
@media screen and (max-width: 1024px) {
	.js .main-navigation {
		justify-content: center;
	}
	.js #close {
		display: flex; /* makes visible */
		text-transform: uppercase;
		width: 100%;
		font-size: 100%;
		text-align: right;
		border: none;
		border-radius: 0;
		cursor: pointer;
	}
	.close-button {
		padding: 1rem;
		background-color: #343435;
		color: #fff;
		justify-content: flex-end;
	}
	.close-button:after {
		content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-0.94 -21.28 574.94 525.29'%3E%3Cpath d='M574 87.922 542.078 56l-192.08 192.08L157.918 56l-31.922 31.922 192.08 192.08-192.08 192.08 31.922 31.922 192.08-192.08 192.08 192.08L574 472.082l-192.08-192.08z'/%3E%3C/svg%3E%0A");
		flex: 0 0 1rem;
		margin-left: .5rem;
		filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
	}
	/* show hamburger on mobile if there's js */
	.js button.menu-toggle {
		display: block; /* makes visible */
	}
	.js .main-navigation {
		display: flex;
		justify-content: flex-end;
		align-items: center;
	}
	.js .main-navigation > div:first-of-type /*this should always be the primary nav */ {
		display: flex;
		flex-direction: column-reverse;
		background-color: #454545;
		position: fixed;
		left: -300px;
		top: 0;
		width: 300px;
		height: 100%;
		transition: all 300ms ease-in-out;
		z-index: 999;
		justify-content: space-between;
	}
	/* scooch down to make room for wp admin bar */
	.js .logged-in .main-navigation > div:first-of-type {
		top: 32px;
		height: calc(100% - 32px);
	}
	.js .main-navigation .menu {
		padding: 0 1rem;
	}
	.js .main-navigation .menu > .menu-item {
		padding: 0;
		display: block;
		border-bottom: 1px solid #e3e3e3;
	}
	.js .main-navigation .menu .menu-item a {
		padding: 1rem;
	}
	.js .main-navigation .sub-menu {
		padding: 0;
		margin: 0;
		border-top: 1px solid #e3e3e3;
	}
	.js .main-navigation .non-clickable {
		padding: 0;
	}
	.js .main-navigation .menu .menu-item a {
		display: block;
	}
	/* when the button's clicked */
	.js .main-navigation.toggled > div:first-of-type /*this should always be the primary nav */ {
		position: fixed;
		left: 0;
		width: 80%;
	}
}
@media screen and (max-width: 781px) {
	/* scooch down to make room for wp admin bar */
	.js .logged-in .main-navigation > div:first-of-type {
		top: 46px;
		height: calc(100% - 46px);
	}
}
.menu {
	margin: 0;
}

.main-navigation {
	display: flex;
	justify-content: flex-end;
}

.main-navigation>ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
}

.main-navigation ul li {
	padding: 0;
	display: inline-block;
	position: relative;
}

.main-navigation ul li a {
	text-decoration: none;
	line-height: 1.1;
	padding: 1rem;
	display: inline-block;
}

.main-navigation .sub-menu .menu-item a {
	display: block;
	position: relative;
}

.main-navigation .menu-item-has-children ul li {
	display: block;
}

/* hide hamburger & menu-close button by default */
button.menu-toggle,
#close {
	display: none;
}

button.menu-toggle {
	color: #fff;
	text-shadow: none;
	cursor: pointer;
	text-decoration: none;
	padding: .5rem;
	border-radius: 0;
	position: relative;
	line-height: 1;
	background: #101010;
	border: none;
	font-size: 100%;
	appearance: none;
}

/*
################################
SITE MAIN
################################
*/
/*
################################
SITE FOOTER
################################
*/
/* site footer */
.site-footer :last-child,
.site-credits :last-child {
	margin-bottom: 0;
}

.site-footer .footer-section .wp-block-columns {
	column-gap: var(--padding);
	row-gap: var(--padding);
}

.site-footer .footer-section :where(.wp-block-columns.has-background) {
	padding: unset;
}

.site-footer .footer-section .menu,
.site-footer .footer-section ul {
	list-style-type: none;
}

/*
===============================
BLOCKS
===============================
*/

.rad-social-icons .rad-social-icon {}

/* separators */
.wp-block-separator {
	border-top: 0;
	border-right: 0;
	border-bottom: 0;
	border-left: 0;
	margin-top: 3rem;
	margin-bottom: 3rem;
	margin-left: 0;
	background: #343434;
	height: 3px;
	max-width: 15%;
	clear: both;
}

.wp-block-separator.is-style-centered {
	margin-left: auto;
	margin-right: auto;
}

.wp-block-separator.is-style-spacer {
	background: none transparent;
	border: none;
	max-width: unset;
	margin-left: auto;
	margin-right: auto;
}

.wp-block-separator.is-style-small-spacer {
	background: none transparent;
	border: none;
	max-width: unset;
	margin: 1.5rem auto;
}

/* query loop */
ul.wp-block-post-template {
	margin: 0;
}
[class^="columns-"] {
    display: grid;
    gap: 1rem;
}

.columns-2 { grid-template-columns: repeat(2, 1fr); }
.columns-3 { grid-template-columns: repeat(3, 1fr); }
.columns-4 { grid-template-columns: repeat(4, 1fr); }
.columns-5 { grid-template-columns: repeat(5, 1fr); }
.columns-6 { grid-template-columns: repeat(6, 1fr); }
[class^="columns-"] .post + .post {
	margin-top: 0;
}
/* group block */
/* large padding is the default for the group block */
.wp-block-group>.wp-block-group__inner-container {
	padding-top: 6rem;
	padding-bottom: 6rem;
}

.wp-block-group.is-style-medium-padding>.wp-block-group__inner-container {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.wp-block-group.is-style-small-padding>.wp-block-group__inner-container {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.wp-block-group.is-style-no-padding>.wp-block-group__inner-container {
	padding-top: 0;
	padding-bottom: 0;
}

.wp-block-cover__inner-container :last-child:not(.wp-block-separator) {
	margin-bottom: 0;
}

/* columns */
.wp-block-columns {
	margin-bottom: 0;
}

.wp-block-column.has-background>figure {
	margin: 0;
}

.wp-block-column.has-background>*:not(figure) {
	padding-left: var(--padding);
	padding-right: var(--padding);
}

.wp-block-column.has-background> :first-child:not(figure) {
	padding-top: var(--padding);
}

.wp-block-column.has-background>*:not(figure) {
	padding-bottom: calc(var(--padding) / 2);
}

.wp-block-column.has-background> :last-child {
	padding-bottom: var(--padding);
}

.wp-block-column.has-background>h1,
.wp-block-column.has-background>h2,
.wp-block-column.has-background>h3,
.wp-block-column.has-background>h4,
.wp-block-column.has-background>h5,
.wp-block-column.has-background>h6 {
	padding-bottom: 0;
}

.wp-block-column.has-background p:last-of-type {
	margin-bottom: 0;
}

/* media & text block */
.wp-block-media-text {
	gap: 2rem;
	column-gap: 2rem;
	row-gap: 2rem;
}

.wp-block-media-text .wp-block-media-text__content {
	padding: 0 !important;
}

.wp-block-media-text.has-background {
	gap: 0;
	column-gap: 0;
	row-gap: 0;
}

.wp-block-media-text.has-background .wp-block-media-text__content {
	padding: 2rem !important;
}

/* media & text stack style */
.wp-block-media-text.is-style-stack {
	display: flex;
	flex-direction: column;
}

/* media & text overlap style */
.wp-block-media-text.is-style-overlap {
	/* hide the background/parent of the block, because we're using the background on another layer */
	visibility: hidden;
}

.wp-block-media-text__media,
.wp-block-media-text__content {
	visibility: visible;
}

.is-style-overlap .wp-block-media-text__content {
	background-color: inherit;
	margin: var(--padding) 0 var(--padding) -4rem !important;
}

.is-style-overlap.has-media-on-the-right .wp-block-media-text__content {
	margin: var(--padding) -4rem var(--padding) 0 !important;
}

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

	.is-style-overlap .wp-block-media-text__content,
	.is-style-overlap.has-media-on-the-right .wp-block-media-text__content {
		margin: 0 !important;
	}
}

/* cover block */
.wp-block-cover {
	width: unset;
}

.wp-block-cover.alignleft,
.wp-block-cover.alignright {
	margin: 1rem;
}

.wp-block-cover.alignleft {
	margin-left: 0;
}

.wp-block-cover.alignright {
	margin-right: 0;
}

/* tables */
table {
	margin-top: 1rem;
	width: 100%;
}

thead {
	text-align: left;
	background: #d0d0d0;
	color: #343434;
}

tr:nth-of-type(even) {
	background: #f0f0f0;
	color: #343434;
}

th,
td {
	padding: .75rem 1rem
}

/* timeline of events block */
.rad-timeline {
	list-style-type: none;
}

.rad-timeline__event {
	display: flex;
}

.rad-timeline__event:nth-of-type(even) {
	flex-direction: row-reverse;
}

.rad-timeline__event-spacer,
.rad-timeline__event .rad-timeline__event-inner {
	flex: 0 0 50%;
	max-width: 50%;
	padding: 0 2rem;
}

.rad-timeline__event-inner {
	border: 2px dashed transparent;
	border-right: 2px dashed #ccc;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.rad-timeline__event:nth-of-type(odd) .rad-timeline__event-inner {
	padding-right: 2rem;
	padding-left: 0;
}

.rad-timeline__event:nth-of-type(even) .rad-timeline__event-inner {
	border-left: 2px dashed #ccc;
	border-right: 2px solid transparent;
	position: relative;
	left: -2px;
	padding-right: 0;
	padding-left: 2rem;
}

.rad-timeline__event .rad-timeline__event-inner .acf-innerblocks-container {
	padding: 2rem;
	position: relative;
	background-color: #ccc;
}

.rad-timeline__event .rad-timeline__event-inner .acf-innerblocks-container:after {
	content: "";
	height: 2px;
	width: 2rem;
	border: 2px dashed #ccc;
	border-width: 2px 0 0 0;
	position: absolute;
	right: -2rem;
}

.rad-timeline__event:nth-of-type(even) .rad-timeline__event-inner .acf-innerblocks-container:after {
	left: -2rem;
}

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

	.rad-timeline__event-spacer,
	.rad-timeline__event .rad-timeline__event-inner {
		padding-bottom: 2rem;
	}

	.rad-timeline__event:nth-of-type(even) .rad-timeline__event-inner,
	.rad-timeline__event .rad-timeline__event-inner {
		border: none;
	}

	.rad-timeline__event {
		flex-wrap: wrap;
	}

	.rad-timeline__event:nth-of-type(odd) .rad-timeline__event-inner,
	.rad-timeline__event:nth-of-type(even) .rad-timeline__event-inner {
		padding-right: 0;
		padding-left: 0;
	}

	.rad-timeline__event-spacer,
	.rad-timeline__event .rad-timeline__event-inner {
		flex: 1 1 100%;
		max-width: 100%;
	}

	.rad-timeline__event-spacer {
		display: none;
	}

	.rad-timeline__event .rad-timeline__event-inner .acf-innerblocks-container:after {
		height: 2rem;
		width: 2px;
		border-width: 0 2px 0 0;
		right: 50%;
		bottom: -2rem;
	}

	.rad-timeline__event:nth-of-type(even) .rad-timeline__event-inner .acf-innerblocks-container:after {
		left: 50%;
		bottom: -2rem;
	}
}

/* google maps */
.google-maps {
	position: relative;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}

.google-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/* image block */
.wp-block-image figcaption {
	font-size: var(--rad-font-size-small);
}

/* search */
.wp-block-search .wp-block-search__label {
	width: auto;
}

.wp-block-search__inside-wrapper {
	width: auto;
}

.wp-block-search__input {
	width: auto;
	border-radius: 3px 0 0 3px;
	padding-left: .5rem;
}

.wp-block-search .wp-block-search__button {
	width: auto;
	background-color: #343434;
	appearance: none;
	-webkit-appearance: none;
	color: #fff;
	font-size: 100%;
	font-weight: bold;
	border: none;
	margin-left: 0;
	padding: 1rem;
	border-radius: 0 3px 3px 0;
	cursor: pointer;
}

.search .entry-header,
.search .entry-footer {
	padding: 0;
}

.search article {
	padding: var(--padding);
}

.search .entry-title {
	font-size: 2rem;
}

.search .page-title span {
	font-style: italic;
	color: #6f6f6f;
}

.search .comment-navigation .nav-links,
.search .posts-navigation .nav-links,
.search .post-navigation .nav-links {
	padding: var(--padding);
	justify-content: space-between;
}

/*
===============================
POSTS ARCHIVE
===============================
*/
.post+.post {
	margin-top: var(--padding);
}

.archive .entry-header,
.archive .entry-footer,
.archive .entry-content {
	padding: 0;
}

.archive .full article {
	padding: var(--padding);
}

/*
===============================
SINGLE POST
===============================
*/
.entry-meta {
	margin-bottom: var(--padding);
}

.post .entry-content h1:not(:first-child),
.post .entry-content h2:not(:first-child),
.post .entry-content h3:not(:first-child),
.post .entry-content h4:not(:first-child),
.post .entry-content h5:not(:first-child),
.post .entry-content h6:not(:first-child) {
	margin-top: 2em;
}

/*
===============================
POSTS NAVIGATION
===============================
*/
.comment-navigation,
.posts-navigation,
.post-navigation {
	margin-top: var(--padding);
}

/*
============================
WIDGET AREA / SIDEBAR / ADD'L BLOCK AREAS
===============================
*/
.widget-area {
	/* padding-top: var(--padding); */
}

.widget:not(.widget_nav_menu) {
	padding: calc(var(--padding) / 2);
}

.widget .wp-block-group__inner-container {
	padding: 0;
}

.site-main .widget {
	padding: 0;
	padding-bottom: var(--padding);
}

/*
============================
SEARCH
===============================
*/
.error-404 .search-form {
	padding-bottom: var(--padding);
}

/*
============================
COMMENTS
===============================
*/
.comments-area {
	margin-top: 4rem;
}

.comment-list,
.site-main ol.comment-list {
	margin: 0;
	list-style-type: none;
}

.children {
	list-style-type: none;
}

.comment-body {
	margin-bottom: 2rem;
}

.comment-body .reply {
	text-transform: uppercase;
	font-size: var(--rad-font-size-small);
	min-height: 0vw;
	margin: .5rem 0;
	text-align: right;
}

.comment-author.vcard {
	display: flex;
	align-items: center;
}

.comment-author.vcard img {
	border-radius: 100%;
}

.comment-author.vcard img,
.comment-author.vcard b {
	margin-right: .75ch;
}

.comment-body p:last-of-type {
	margin-bottom: 0;
}

.comment-meta {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: .5rem;
}

.comment-metadata {
	font-size: var(--rad-font-size-small);
	min-height: 0vw;
}

.comment-content {
	border: 1px solid #777;
	border-radius: 3px;
	padding: 1rem;
}

.comment-form-comment {
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
}

.comment-form .logged-in-as {
	font-size: var(--rad-font-size-small);
	min-height: 0vw;
}

.comment-form label[for=comment] {
	font-size: var(--rad-font-size-small);
	min-height: 0vw;
}

.comment-form-comment textarea {
	max-width: 100%;
	width: 100%;
}

.comment-reply-title {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.comment-reply-title small {
	font-size: var(--rad-font-size-small);
	min-height: 0vw;
	font-weight: normal;
}

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


.wp-block-group.alignwide:not(.has-background) .wp-block-group__inner-container {
	padding-left: 0;
	padding-right: 0;
}

::selection {
	background: rgba(246, 102, 186, .25);
	/* WebKit/Blink Browsers */
}

.nudge-up {
	margin-top: -3rem;
}

.wp-block-group.is-style-full-width {
	padding-left: 1rem;
	padding-right: 1rem;
}

.wp-block-media-text.is-style-stacked {
	display: flex;
	flex-direction: column;
}


/* services icons alt */
@media (max-width: 781px) {
	.wp-block-columns.services-icons-alt .wp-block-column {
		flex-basis: calc(33% - 2rem) !important;
		flex-grow: 0;
	}

	.services-icons-alt .wp-block-image .aligncenter {
		margin-left: unset;
		margin-right: unset;
	}

	.services-icons-alt .has-text-align-center {
		text-align: left;
	}
}

@media (max-width: 520px) {
	.wp-block-columns.services-icons-alt .wp-block-column {
		flex-basis: calc(50% - 2rem) !important;
	}
}

.services-icons-alt .wp-block-column figure {
	background-color: var(--wp--preset--color--gossamer);
	border-radius: 10px;
	padding: .85rem;
	max-width: 62px;
}

.services-icons-alt .wp-block-column p {
	margin-top: .75rem;
}

.gentle-curves {
	overflow: hidden;
	position: relative;
}

.gentle-curves::before {
	content: '';
	position: absolute;
	z-index: 3;
	pointer-events: none;
	background-repeat: no-repeat;
	bottom: -0.1vw;
	left: -0.1vw;
	right: -0.1vw;
	top: -0.1vw;
	background-size: 100% 90px;
	background-position: 50% 100%;
	background-image: url('data:image/svg+xml;charset=utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35.28 2.17" preserveAspectRatio="none"><path d="M35.28 1.67c-3.07-.55-9.27.41-16.15 0-6.87-.4-13.74-.58-19.13.1v.4h35.28z" fill="%23ffffff"/><path d="M35.28 1.16c-3.17-.8-7.3.4-10.04.56-2.76.17-9.25-1.47-12.68-1.3-3.42.16-4.64.84-7.04.86C3.12 1.31 0 .4 0 .4v1.77h35.28z" opacity=".5" fill="%23ffffff"/><path d="M35.28.31c-2.57.84-7.68.3-11.8.43-4.1.12-6.85.61-9.57.28C11.18.69 8.3-.16 5.3.02 2.3.22.57.85 0 .87v1.2h35.28z" opacity=".5" fill="%23ffffff"/></svg>');
}

@media (min-width:2100px) {
	.gentle-curves::before {
		background-size: 100% calc(2vw + 90px);
	}
}

.has-black-felt-background {
	background: url('assets/charcoal-felt.png');
}

*>p:last-child {
	margin-bottom: 0;
}

p.is-style-leader + .wp-block-heading {
	margin-top: 1rem;
}
p.is-style-leader {
	display: inline-block;
	border-radius: 20px;
}

p.is-style-leader.has-background {
	padding: .15rem 1rem;
}

p.has-large-font-size,
p.has-extra-large-font-size,
p.has-huge-font-size {
	line-height: 1.12;
}

/*
################################
TYPE STUFF
################################
*/
body {
	color: var(--wp--preset--color--cynical-black);
	font-family: Manrope, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 800;
	line-height: 1.07;
	margin-bottom: 1.3657rem;
}

strong {
	font-weight: 800;
}

button {
	font-family: Manrope, 'Avenir Next LT Pro', Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif;

}

.is-style-leader {
	letter-spacing: 2px;
	font-weight: 800;
	text-transform: uppercase;
}

.wp-block-group:not(.has-background)+.wp-block-group:not(.has-background) {
	margin-top: -6rem;
}

/* lists */
ul.is-style-checkmark {
	margin: 0 0 1rem .4rem;
}

ul.is-style-checkmark li {
	margin-bottom: .5rem;
}

ul.is-style-checkmark li:before {
	color: var(--wp--preset--color--underwater);
}

/* -----------------------------
links and buttons
------------------------------*/
a {
	text-decoration: underline;
	text-decoration-thickness: 3px;
	text-decoration-color: var(--wp--preset--color--fabulous-fuchsia);
	color: var(--wp--preset--color--black);
	transition: all 250ms ease-in-out;
}

a:hover {
	color: var(--wp--preset--color--fabulous-fuchsia)
}

.has-black-felt-background a,
.has-cynical-black-background-color a,
.has-black-background-color a,
.has-fabulous-fuchsia-background-color a {
	color: var(--wp--preset--color--white);
}

.has-black-felt-background a:hover,
.has-cynical-black-background-color a:hover,
.has-black-background-color a:hover {
	text-decoration-color: var(--wp--preset--color--white);
}

.has-fabulous-fuchsia-background-color a {
	text-decoration-color: var(--wp--preset--color--white);
}

.has-fabulous-fuchsia-background-color a:hover {
	text-decoration-color: var(--wp--preset--color--cynical-black);
}

.has-gossamer-background-color.has-fabulous-fuchsia-color {
	color: #cd006c !important;
}

.has-daylily-background-color.has-caramel-color {
	color: #966600 !important;
}

.wp-block-buttons {
	margin: 2rem 0 0 0;
}

.wp-block-buttons.aligncenter {
	justify-content: center;
}

a.wp-block-button__link:not(.has-background) {
	background-color: #181618;
}
a.wp-block-button__link {
	font-weight: 800;
	border-radius: 30px;
	padding: .5rem 1.5rem;
	text-transform: uppercase;
	text-decoration: none;
	transition: background-color 250ms;
}


.youtube-video {
	aspect-ratio: 16 / 9;
	width: 100%;
}

.wp-block-buttons .wp-block-button a:hover.wp-block-button__link {
	background: var(--wp--preset--color--black) !important;
	color: #fff !important;
}


.youtube-video {
	aspect-ratio: 16 / 9;
	width: 100%;
}

/*
################################
SITE HEADER
################################
*/
/* -----------------------------
layout
------------------------------*/
.preheader p.has-background {
	padding: .5rem var(--padding);
}

.preheader a {
	text-decoration-color: #404044;
	font-size: .95rem;
}

.site-branding {
	flex: 1 1 auto;
}

.site-branding img {
	padding: 1rem 1rem 1rem 0;
}

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

	/* sticky-header */
	.site-header__wrapper {
		position: sticky;
		top: 0px;
		z-index: 5;
		box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
		background-color: #fff;
	}

	.logged-in .site-header__wrapper {
		top: 32px;
	}

	.site-header__inner-container {
		display: flex;
		position: relative;
		align-items: center;
	}

	.site-branding,
	.main-navigation .menu>li>a {
		transition: all 250ms ease-in-out;
	}

	.site-branding img {
		transition: all 250ms ease-in-out;
		padding: .5rem .5rem 0 .5rem;
	}

	.scrolled .site-branding img {
		width: 200px;
		padding: .5rem .5rem .15rem .5rem;
	}

	.scrolled .main-navigation .menu>li>a {
		padding-top: 1.25rem;
		padding-bottom: 1.25rem;
	}
}

@media screen and (max-width: 1024px) {
	button.menu-toggle {
		min-width: max-content;
		border-radius: 7px;
	}

	.js .main-navigation .menu .menu-item-home {
		display: none;
	}

	.js .main-navigation .menu .menu-item a {
		padding: .6rem;
	}

	.js .main-navigation>div:first-of-type {
		background-color: var(--wp--preset--color--cynical-black);
	}

	.js .main-navigation>div:first-of-type {
		top: 0;
		height: unset;
		min-height: calc(100vh - 40px);
	}

	.js .logged-in .main-navigation>div:first-of-type {}

	.js .main-navigation.toggled>div:first-of-type {
		position: absolute;
	}

	.close-button {
		background-color: var(--wp--preset--color--black);
	}

	.main-navigation a {
		color: var(--wp--preset--color--white);
		font-size: 1rem;
	}

	.sub-menu .wp-block-columns {
		all: unset;
	}

	.sub-menu .wp-block-columns h2 {
		display: none;
	}

	.main-navigation .menu-item-has-children {
		line-height: 0;
	}

	.js .main-navigation .menu>.menu-item,
	.main-navigation .menu-item-has-children ul li {
		border-bottom: 1px solid #202020;
	}

	.js .main-navigation .sub-menu {
		border-top: 1px solid #202020;
	}

	.main-navigation .menu-item-has-children .wp-block-column:last-of-type li:last-of-type {
		border-bottom: none;
	}
}

@media screen and (min-width: 1025px) {
	.main-navigation a {
		color: var(--wp--preset--color--cynical-black);
		font-weight: bold;
	}

	/* if we're scrolled down, the sub-menu should be a little higher up */
	.main-navigation .sub-menu {
		top: calc(50% + 2.5em);
		background-color: #202123;
		max-width: unset;
		width: unset;
		transition: all 250ms ease-in-out;
	}

	.main-navigation .sub-menu .wp-block-columns {
		padding: 2rem;
	}

	.main-navigation .sub-menu a {
		text-decoration: underline;
		text-decoration-thickness: 3px;
		text-decoration-color: #404044;
		color: var(--wp--preset--color--doctor);
		transition: all 250ms ease-in-out;
		font-weight: normal;
	}

	.main-navigation .sub-menu a:hover {
		text-decoration-color: var(--wp--preset--color--fabulous-fuchsia);
	}

	.scrolled .main-navigation .sub-menu {
		top: calc(50% + 1.6875em);
		/* that's half of 3.5em, btw. 1 line of 1em text, plus 1.5em above and below */
	}

	.main-navigation .sub-menu>div {
		border-radius: 0 0 30px 30px;
	}

	.main-navigation .sub-menu ul li {
		line-height: 1.5;
	}

	.main-navigation .sub-menu ul li a {
		/* display: inline; */
		padding: .5rem 0;
		line-height: 1.34;
	}

	.main-navigation .menu:first-of-type>li:after {
		content: '';
		background: rgb(255, 255, 255);
		background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(240, 240, 240, 1) 51%, rgba(255, 255, 255, 1) 100%);
		width: 1px;
		height: 90%;
	}

	.main-navigation .menu:first-of-type>li:last-of-type:after {
		display: none;
	}

	.main-navigation .menu>li>a {
		padding-top: 2em;
		padding-bottom: 2em;
	}

	.main-navigation .menu:first-of-type>.menu-item:hover {
		border-top: 5px solid var(--wp--preset--color--fabulous-fuchsia);
		transition: all 250ms ease-in-out;
	}

	.main-navigation .menu:first-of-type>.menu-item>a {
		display: block;
	}

	.main-navigation .menu .menu-item:hover>a {
		color: var(--wp--preset--color--fabulous-fuchsia);
	}
}

/* -----------------------------
logo/site title
------------------------------*/
/* -----------------------------
main navigation
------------------------------*/

/*
################################
BLOCKS
################################
*/
.hero .wp-block-cover__inner-container {
	padding-top: 6rem;
	padding-bottom: 0;
}

@media screen and (max-width: 781px) {
	.hero .wp-block-cover__background {
		background: linear-gradient(0deg, rgb(17, 19, 33) 70%, rgba(131, 131, 131, 0) 100%) !important;
	}

	.hero .wp-block-separator {
		margin: 0;
	}

	.hero .wp-block-cover__inner-container {
		padding-top: 25vh;
		padding-bottom: 6rem;
	}
}

@media screen and (max-width: 781px) {
	.hero .wp-block-cover__background {
		background: linear-gradient(0deg, rgb(17, 19, 33) 70%, rgba(131, 131, 131, 0) 100%) !important;
	}

	.hero .wp-block-separator {
		margin: 0;
	}

	.hero .wp-block-cover__inner-container {
		padding-top: 25vh;
		padding-bottom: 6rem;
	}
}

.hero .wp-block-columns {
	gap: 0;
}

.is-style-round-with-shadow .wp-block-media-text__media {
	position: relative;
	z-index: 1;
}

.has-box-shadow {
	box-shadow: rgba(0, 0, 0, 0.24) 0px 10px 20px;
}

.is-style-round-with-shadow .wp-block-media-text__media img {
	border-radius: 30px;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	z-index: 3;
}

.is-style-round-with-shadow .wp-block-media-text__media:after {
	content: '';
	width: 200px;
	height: 200px;
	border-radius: 9999px;
	background-color: var(--wp--preset--color--coconut-white);
	position: absolute;
	left: -50px;
	bottom: -40px;
	z-index: -1;
}

.is-style-round-with-shadow.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media:after {
	left: unset;
	right: -50px;
	bottom: unset;
	top: -40px;
	background-color: var(--wp--preset--color--gossamer);
}

.is-style-round-with-shadow.wp-block-media-text.yellow .wp-block-media-text__media:after {
	left: unset;
	right: -50px;
	bottom: unset;
	top: -40px;
	background-color: var(--wp--preset--color--daylily);
}

.wp-block-group.alignwide.has-background {
	border-radius: 40px;
}

/* faqs */
.rad-faq__separator {
	display: none;
}

.rad-faq__faq {
	background-color: #2d2c2d;
	color: var(--wp--preset--color--doctor);
	padding: 1.3rem;
	margin-bottom: .5rem;
	border-radius: 15px;
}

.rad-faq__question,
.rad-faq__faq .rad-faq__question::after {
	font-weight: 800;
	color: var(--wp--preset--color--doctor);
	transition: color 250ms ease-in-out;
}

.rad-faq__question:hover {
	color: var(--wp--preset--color--gossamer);
}

/* testimonials */
.rad-testimonial__body {
	background-color: var(--wp--preset--color--coconut-white);
	padding: 1.5rem;
	border-radius: 20px 20px 20px 0;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 8px;
}

.wp-block-column:nth-of-type(2) .rad-testimonial__body {
	background-color: var(--wp--preset--color--daylily);
}

.wp-block-column:nth-of-type(3) .rad-testimonial__body {
	background-color: var(--wp--preset--color--gossamer);
}

.rad-testimonial__image img {
	border-radius: 9999px;
}

.rad-testimonial__attribution {
	display: flex;
	column-gap: 1rem;
	row-gap: 1rem;
	margin-top: 1rem;
}

.rad-testimonial__name {
	font-weight: 800;
	text-transform: uppercase;
	color: var(--wp--preset--color--fabulous-fuchsia)
}

/* home page recent posts */
#recent-posts-preview .wp-block-post-featured-image img {
	border-radius: 20px;
}

#recent-posts-preview .wp-block-post-date time {
	background-color: var(--wp--preset--color--coconut-white);
	color: var(--wp--preset--color--underwater);
	padding: 2px 6px;
	border-radius: 10px;
}

#recent-posts-preview .wp-block-post-title {
	margin-top: 1rem;
}

/* about us headshots */
.wp-block-columns.headshots {
	padding-top: 2rem;
	text-align: center;
	gap: 1rem;
}

.headshots .wp-block-image {
	margin-bottom: 1rem;
}

.headshots img {
	border: 3px solid var(--wp--preset--color--fabulous-fuchsia);
	border-width: 0 4px 7px 0;
}

.headshots p {
	line-height: 1.12;
}

.home #about-us .wp-block-columns.headshots {
	gap: 1rem;
}

.home #about-us .wp-block-columns+.wp-block-columns {
	margin-top: 0;
	padding-top: 0;
}

@media screen and (max-width: 1024px) {
	.wp-block-columns.headshots {
		flex-wrap: wrap !important;
	}

	.wp-block-columns.headshots .wp-block-column {
		flex: 0 1 calc(33% - 1rem);
	}
}

@media screen and (max-width: 781px) {
	.wp-block-columns.headshots .wp-block-column {
		flex: 0 1 calc(50% - 1rem) !important;
	}

	.home #about-us .wp-block-columns.headshots .wp-block-column {
		flex: 0 1 calc(33% - 1rem) !important;
	}
}

@media screen and (max-width: 420px) {
	.wp-block-columns.headshots .wp-block-column {
		flex: 0 1 calc(100% - 1rem) !important;
	}
}

/* row of images */
.row-of-images {
	padding: 0;
	column-gap: 0;
}

.row-of-images .wp-block-cover,
.row-of-images .wp-block-cover-image {
	align-items: start;
	padding-top: 3rem;
	padding-bottom: 3rem;
}

/* timeline */
.rad-timeline__event .rad-timeline__event-inner .acf-innerblocks-container {
	background: var(--wp--preset--color--white);
	border-radius: 18px;
}

/* service menu */
.wp-block-columns+.wp-block-columns {
	margin-top: 2rem;
}

.service-menu .wp-block-column.has-background {
	border-radius: 18px;
	border: 2px solid rgba(0, 0, 0, .08)
}

/*
################################
PAGE SPECIFIC ELEMENTS
################################
*/

/* -----------------------------
page header
------------------------------*/
.entry-header {
	padding-top: 4rem;
}

p+.wp-block-heading {
	margin-top: 1em;
}

/*
################################
BLOG POSTS
################################
*/
/* pagination */
.wp-block-query-pagination {
	margin: 3rem 0;
	display: flex;
	justify-content: center;
	gap: 1rem;
	text-transform: uppercase;
}

.wp-block-query-pagination-numbers {
	gap: .5rem;
}

.wp-block-query-pagination-numbers .page-numbers {
	line-height: 1;
	padding: 8px 10px;
	background-color: var(--wp--preset--color--coconut-white);
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, .08);
}

.wp-block-query-pagination-numbers .current {

	font-weight: bold;
	background-color: rgba(0, 0, 0, 0.8);
	color: #fff;
}

/* featured blog page */
.featured-post-loop .wp-block-post-featured-image {
	position: relative;
	z-index: 1;
}

.featured-post-loop .wp-block-post-featured-image img {
	border-radius: 30px;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	z-index: 3;
}

.featured-post-loop .wp-block-post-date {
	margin-bottom: 1rem;
}

.featured-post-loop .wp-block-post-date time {
	padding: .15rem 1rem;
	background-color: var(--wp--preset--color--gossamer);
	color: var(--wp--preset--color--fabulous-fuchsia);
	font-size: 1rem;
	border-radius: 20px;
	font-weight: bold;
	text-transform: uppercase;
}

.wp-block-post-excerpt__more-link {
	font-weight: bold;
}

.other-posts-loop .wp-block-post {
	background-color: var(--wp--preset--color--doctor);
	padding: 1.35rem;
	border: 2px solid rgba(0, 0, 0, .08);
	border-radius: 20px;

}

.other-posts-loop .wp-block-post-featured-image {
	margin: 0 0 1rem 0;
}

.other-posts-loop .wp-block-post-featured-image img {
	border-radius: 8px;
}

.other-posts-loop .wp-block-post-date {
	margin-bottom: .7rem;
}

.other-posts-loop .wp-block-post-date time {
	font-size: .9rem;
	font-weight: bold;
	text-transform: uppercase;
	color: rgba(0, 0, 0, 0.75);
}

/* single posts */
.page-child .entry-header,
.single-post .entry-header,
.single-event .entry-header,
.archive .page-header,
.search .page-header {
	width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	background-color: var(--wp--preset--color--doctor);
	padding-top: 4rem;
	padding-bottom: 4rem;
	margin-bottom: 4rem;
}

.page-child .entry-title,
.page-child .entry-meta,
.single-post .entry-title,
.single-post .entry-meta,
.single-event .entry-title,
.single-event .entry-meta,
.archive .page-title,
.search .page-title {
	padding-left: var(--padding);
	padding-right: var(--padding);
	max-width: var(--normal-width, 960px);
	margin-left: auto;
	margin-right: auto;
}

.entry-footer {
	text-transform: uppercase;
	font-size: var(--rad-font-size-small);
}

.entry-footer .tags-links {
	display: block;
}

.single-post .post-navigation {
	margin-bottom: 4rem;
	text-transform: capitalize;
	font-size: var(--rad-font-size-small);
}

/*
################################
WIDGET / ADD'L BLOCK AREAS
################################
*/
/*
################################
FOOTER AREA
################################
*/
.wp-block-separator.has-fabulous-fuchsia-background-color {
	width: 3rem;
	max-width: 3rem;
}

.site-footer-wrapper {
	padding-top: 4rem;
	padding-bottom: 4rem;
	background: url('assets/charcoal-felt.png');
	border: 3px solid rgba(0, 0, 0, 0.6);
	box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px, rgba(0, 0, 0, 0.92) 0px 15px 12px;
	font-size: 1rem;
}

@media screen and (max-width: 781px) {
	.site-footer .footer-section .wp-block-columns {
		column-gap: 3rem;
		row-gap: 3rem;
	}

	.site-footer .footer-section .wp-block-separator {
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}
}

.site-footer-wrapper .has-cynical-black-background-color {
	background: url('assets/charcoal-felt.png');
}

.site-footer-wrapper a {
	text-decoration-color: #404044;
}

.site-footer-wrapper a:hover {
	text-decoration-color: var(--wp--preset--color--fabulous-fuchsia);
}

.site-footer-wrapper .rad-social-icons a.rad-social-icon {
	background-color: var(--wp--preset--color--doctor) !important;
}

.site-footer-wrapper .rad-social-icons a.rad-social-icon:hover {
	background-color: var(--wp--preset--color--fabulous-fuchsia) !important;
	cursor: pointer;
}

/* -----------------------------
copyright
------------------------------*/
.site-credits-wrapper {
	background-color: #050505;
	padding: 2rem;
}

.site-credits__block {
	padding: 0;
}

.site-credits-wrapper p.has-background {
	padding: .75rem;
	line-height: 1;
}

.site-credits__block {
	font-size: .9rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}

#rad-social-icons-block_f812ebc928edea8ab581ba52b9ebdc8f {
	margin-top: 2rem;
}