/* .block-visibility-hide-large-screen {
    display: block !important;
    @media(min-width: 1024px) {
        display: none !important;
    }
} */
/**
 * Block: core/button 
 */
.wp-block-buttons {
	margin-top: var(--wp--preset--spacing--40);
}
.wp-block-button .wp-block-button__link {
	transition: all 200ms ease-in-out;
	letter-spacing: -0.4px;
}
.wp-block-button .wp-block-button__link.has-small-font-size {
	letter-spacing: -0.3px;
}
.wp-block-buttons:not(.slider-buttons) .wp-block-button:not(.is-style-arrow, .is-style-underline-arrow):is(:hover, :focus) .wp-block-button__link {
	color: var(--wp--preset--color--shark-600) !important;
	border-color: transparent;
	padding-left: var(--wp--preset--spacing--40);
	padding-right: calc(var(--wp--preset--spacing--60) + 14px);
}
.wp-block-button:active .wp-block-button__link {
	color: var(--wp--preset--color--shark-950) !important;
	border-color: transparent;
	text-decoration: none;
}

.wp-block-button:active .wp-block-button__link {
	color: var(--wp--preset--color--shark-950) !important;
}

.wp-block-button {
	position: relative;
	--button-arrow-hitbox: 2.875rem;
	--mobile-button-arrow-hitbox: 2.25rem;
	--button-arrow-offset: var(--wp--preset--spacing--20);
	--button-arrow-position: var(--button-arrow-offset);
}
.wp-block-button:not(.is-style-arrow, .slider-previous, .slider-next, .is-style-underline-arrow)::before {
	content: '\f178';
	font-family: 'Font Awesome 6 Pro';
	color: var(--wp--preset--color--white);
	background-color: var(--wp--preset--color--shark-950);
	border-radius: 0.75rem;
	position: absolute;
	left: var(--button-arrow-position);
	top: 0.975rem;
	font-size: calc(var(--wp--preset--spacing--20) - 2px);
	padding: 0.75rem var(--wp--preset--spacing--20);
	width: var(--button-arrow-hitbox);
	box-sizing: border-box;
	right: auto;
	transition: left 300ms ease-in-out;
	cursor: pointer;
	@media(max-width: 767px) {
		width: var(--mobile-button-arrow-hitbox);
		padding: 0.5rem 0.75rem;
	}
}
.wp-block-button:not(.is-style-arrow, .slider-previous, .slider-next .is-style-underline-arrow):is(:hover, :focus) {
	--button-arrow-position: calc(100% - var(--button-arrow-hitbox) - var(--button-arrow-offset));
	&::before {
		background-color: var(--wp--preset--color--shark-600);
	}
}
.wp-block-button:active::before {
	background-color: var(--wp--preset--color--shark-950);
}

/* Arrow Style Buttons */

.wp-block-button.is-style-arrow .wp-block-button__link,
.wp-block-button.is-style-underline-arrow .wp-block-button__link {
	font-weight: 400 !important;
	background-color: transparent;
	padding: 0;
}
.wp-block-button.is-style-arrow .wp-block-button__link::after,
.wp-block-button.is-style-underline-arrow .wp-block-button__link::after {
	font-family: "Font Awesome 6 Pro";
	content: '\f178';
	margin-left: var(--wp--preset--spacing--20);
	font-weight: 300;
	color: inherit;
	font-size: var(--wp--preset--font-size--medium);
}
.wp-block-button.is-style-arrow:is(:hover, :focus),
.wp-block-button.is-style-underline-arrow:is(:hover, :focus) {
	.wp-block-button__link, 
	.wp-block-button__link::after {
		color: var(--wp--preset--color--orange-800) !important;
		padding: 0 !important;
	}
}
.wp-block-button.is-style-arrow:active,
.wp-block-button.is-style-underline-arrow:active {
	.wp-block-button__link, 
	.wp-block-button__link::after {
		color: var(--wp--preset--color--shark-950) !important;
	}
}
.wp-block-button.is-style-underline-arrow:is(:hover, :focus) .wp-block-button__link {
	padding-bottom: 0.15rem !important;
}

/* Underline Arrow Style */
.wp-block-button.is-style-underline-arrow .wp-block-button__link {
    position: relative;
    text-decoration: none;
    padding-bottom: 0.15rem !important;
    display: inline-flex;
    align-items: center;
	&::after {
		content: '\f061' !important;
	}
}
.wp-block-button.is-style-underline-arrow .wp-block-button__link::before {
    content: '';
    position: absolute;
    left: 0;
    right: calc(var(--wp--preset--spacing--40));
    bottom: 0.25em;
    height: 1px;
    background-color: currentColor;
}

/* Outline Style Buttons */
.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent !important;
	border: 2px solid var(--wp--preset--color--shark-950);
	color: var(--wp--preset--color--shark-950);
}
.wp-block-button.is-style-outline:is(:hover, :focus) .wp-block-button__link {
	border-color: transparent;
}
.wp-block-button.is-style-outline:active .wp-block-button__link {
	border-color: transparent;
	text-decoration: none;
}

.wp-block-buttons.is-content-justification-right {
	@media(max-width: 767px) {
		justify-content: left;
	}
}

/**
 * Google Map from baytek-cartographer shortcode
 */
.cartograph {
    min-height: min(66vh, 600px);
    border-radius: 30px;
    height: 100%;
}

.cartograph .marker-layer div {
    overflow: visible !important;
}
.cartograph .marker-layer img {
    filter: drop-shadow(0 5px 10px rgb(0 0 0 / 30%));
}

.cartographer-infowindow-content {
    color: var(--wp--preset--color--black);
}

/**
 * Block: core/columns
 */

.wp-block-column {
    box-sizing: border-box;
}

/* Stack in reverse order on mobile */
@media (max-width: 781px) {
    .wp-block-columns.mobile-reverse {
        flex-wrap: wrap-reverse !important;
    }
}

/* Equal Height Columns */
.wp-block-columns.is-style-equal-height > .wp-block-column {
    align-self: stretch;
    .wp-block-image {
        height: 100%;
        img {
            height: 100%;
            object-fit: cover;
        }
    }
    .wp-block-cover {
        height: 100%;
    }
}

.is-style-flip-mobile.wp-block-columns {
    @media(max-width: 781px) {
        flex-direction: column-reverse;
        gap: var(--wp--preset--spacing--40);
    }
}

.wp-block-column.is-vertically-aligned-center {
    display: flex;
    justify-content: center;
    flex-direction: column;
}

.contact-map .wp-block-column > .wp-block-group {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    .wp-block-group {
        width: 100%;
    }
}
/**
 * Block: core/cover
 */
.wp-block-cover.alignfull .wp-block-cover__inner-container {
    max-width: var(--wp--custom--spacing--wide-size);
}

.wp-block-cover:where(.hero) {
    min-height: auto;
}

/** 
 * Update max width when below our max-width / alignwide limits 
 * eg. 1296px + 3.00rem (48px) on each side = 1392px
 */
@media (max-width: 1392px) {
	.wp-block-cover.alignfull .wp-block-cover__inner-container {
		max-width: 100%;
	}
}

.home .wp-block-cover.is-style-fkcas-cover {
	height: 100%;
}
.wp-block-cover.is-style-fkcas-cover {
	padding: 0;
}

.wp-block-cover .cover-media-wrapper {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: 0;
}

.wp-block-cover .cover-media-wrapper img,
.wp-block-cover .cover-media-wrapper video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.8s ease;
}

.wp-block-cover:hover .cover-media-wrapper img,
.wp-block-cover:hover .cover-media-wrapper video {
	transform: scale(1.05);
}

/**
 * Block: core/details
 */

details {
    margin-block-start: 0 !important;
    margin-bottom: var(--wp--preset--spacing--20) !important;
}
details:last-of-type {
    margin-bottom: 0 !important;
}

details summary {
	font-size: var(--wp--preset--font-size--h-5);
    font-family: var(--wp--preset--font-family--playfair-display);
	padding: var(--wp--preset--spacing--50) calc(var(--wp--preset--spacing--50) + 2.5rem) var(--wp--preset--spacing--50) var(--wp--preset--spacing--50);
    position: relative;
    font-weight: 500;
    background-color: var(--wp--preset--color--shark-50);
    border-radius: 30px;
    line-height: 1.2;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    list-style: none;
    @media(max-width: 767px) {
        padding-right: 4.625rem;
    }
    &::after {
        content: '\f175';
        font-family: 'Font Awesome 6 Pro';
        background-color: var(--wp--preset--color--shark-400);
        color: var(--wp--preset--color--white);
        border-radius: 12px;
        padding: 0.75rem var(--wp--preset--spacing--20);
        position: absolute;
        right: var(--wp--preset--spacing--50);
        font-size: calc(var(--wp--preset--font-size--small) - 2px);
        
    }
}

details summary::marker {
	content: '';
	display: none;
}

details summary::-webkit-details-marker {
	display: none;
}
details .content p {
    color: var(--wp--preset--color--shark-50);
}
details .content {
    padding-left: var(--wp--preset--spacing--50);
    padding-right: var(--wp--preset--spacing--50);
    padding-bottom: var(--wp--preset--spacing--50);
    margin-top: 0; 
    a {
        text-decoration: underline;
        @-moz-document url-prefix() {
            /* Firefox-only styles */
            width: 130px !important;
        }
        
    }
    .wp-block-button.is-style-arrow:is(:hover, :focus) {
        .wp-block-button__link,
        .wp-block-button__link::after {
            color: var(--wp--preset--color--orange-600) !important;
        }
    }
    .wp-block-button.is-style-arrow .wp-block-button__link {
        position: relative;
        text-decoration: none;
        padding-bottom: 0.15rem !important;
        display: inline-flex;
        align-items: center;
    }

    .wp-block-button.is-style-arrow .wp-block-button__link::before {
        content: '';
        position: absolute;
        left: 0;
        right: calc(var(--wp--preset--spacing--40));
        bottom: 7px;
        height: 1px;
        background-color: currentColor;
    }
}
details[open] {
    background-color: var(--wp--preset--color--shark-950);
    border-radius: 30px;
    flex-grow: 1;
    summary {
        background-color: var(--wp--preset--color--shark-950);
        color: var(--wp--preset--color--shark-50);
        padding-bottom: var(--wp--preset--spacing--20);
        &::after {
            content: '' !important;
            background-color: transparent;
        }
    }
    .content {
        color: var(--wp--preset--color--shark-50);
    }
    
}

.accordions {
    .wp-block-image {
        margin-top: 0;
    }
    .wp-block-image.accordion-mobile-visual__image {
        margin-top: 0;
        height: 0 !important;
        opacity: 0;
        transition: opacity 700ms ease-in;
        margin-bottom: 0;
    }
    .accordion-mobile-visual.is-active {
        margin-top: 0;
        .wp-block-image {
            height: 100% !important;
            opacity: 1;
        }
    }
}

 .wp-block-columns.accordions .wp-block-column:first-child {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: clamp(57.8125rem, 53.79rem + 8.24vw, 61.375rem);
}

.wp-block-columns.accordions .wp-block-column:first-child > details {
    flex-shrink: 0;
    width: 100%;
}

.wp-block-columns.accordions .wp-block-column:first-child > details[open] {
    flex-grow: 1;
}

details {
    margin-block-start: 0 !important;
    margin-bottom: var(--wp--preset--spacing--20) !important;
    flex-grow: 0;
    transition: flex-grow 1000ms ease;
    details .content p {
        color: var(--wp--preset--color--shark-50);
    }
.wp-block-columns.accordions .wp-block-column:first-child > details .content {
        height: 100%;
    }
}

.accordion-mobile-visual {
    display: none;
}

.wp-block-columns.accordions > .wp-block-column:last-child .wp-block-image {
    display: none;
    pointer-events: none;
}

.wp-block-columns.accordions > .wp-block-column:last-child .wp-block-image.is-active {
    display: block;
    pointer-events: auto;
}

@media (max-width: 767px) {
    .wp-block-columns.accordions > .wp-block-column:last-child {
        display: none;
    }

    .accordion-mobile-visual {
        margin: 0;
    }

    .accordion-mobile-visual.is-active {
        display: block;
        margin: var(--wp--preset--spacing--40) 0;
    }

    .accordion-mobile-visual__image,
    .accordion-mobile-visual__image img {
        width: 100%;
        height: auto;
    }
}

/**
 * Block: core/gallery
 */
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    /* background: var(--wp--preset--gradient--black-50-to-100); */
    font-size: var(--wp--preset--font-size--small);
    padding: 0.5em 1em;
}

.wp-block-gallery.has-nested-images figure.wp-block-image:is(.is-style-fixed-4-by-3, .is-style-fixed-16-by-9) figcaption {
    border-bottom-left-radius: var(--wp--custom--border--radius);
    border-bottom-right-radius: var(--wp--custom--border--radius);
}
/**
 * Block: genesis-custom-blocks/slider
 */

.slider-block {
	&:not(.swiper-initialized) {
		overflow: hidden;
	}
}

.wp-block-column:not(.block-editor-block-list__block) {
	position: relative;

	.slider-block {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;

		.swiper {
			height: 100%;

			.swiper-wrapper {
				height: 100%;
			}
		}
	}
}

.wp-block-buttons.slider-buttons {
    background-color: var(--wp--preset--color--white);
    padding: 20px var(--wp--preset--spacing--50);
    border-top-left-radius: 30px;
    position: absolute !important;
    bottom: -1px;
    width: 100vw;
    z-index: 99999;
	@media(max-width: 781px) {
		right: 0;
		width: 50vw;
	}
    &::after {
        content: '';
        background-image: url('../images/rounded-corners/corner-radius-16.svg');
        background-repeat: no-repeat;
        background-size: cover;
        width: 2.75rem;
        height: 2.75rem;
        position: absolute;
        left: -2.75rem;
        bottom: 1px;
    }
    .wp-block-button__link {
        background-color: var(--wp--preset--color--shark-950);
        padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
        transition: background-color 300ms ease-out;
        svg {
            fill: var(--wp--preset--color--shark-50);
        }
        &:is(:hover, :focus) {
            background-color: var(--wp--preset--color--shark-600);
        }
    }
}

/* Make sure slider in column still visible on mobile */
@media (max-width: 781px) {
	.wp-block-column .slider-block {
		position: relative !important;
		width: 100%;
		aspect-ratio: 1 / 1;
	}
}

/* And in editor */
.wp-block-column.block-editor-block-list__block {
	.block-editor-block-list__block[data-type="genesis-custom-blocks/slider"] {
		height: 100%;

		* {
			height: 100%;
		}
	}
}

/* Hide buttons if they would all be disabled at different breakpoints */
.slider-block.total-slides-1 .wp-block-buttons {
	display: none;
}

@media (min-width: 600px) {
	.slider-block:is(.total-slides-2) .wp-block-buttons {
		display: none;
	}
}

@media (min-width: 900px) {
	.slider-block:is(.total-slides-3) .wp-block-buttons {
		display: none;
	}
}

@media (min-width: 1180px) {
	.slider-block:is(.total-slides-4) .wp-block-buttons {
		display: none;
	}
}


/**
 * Block: genesis-custom-blocks/team-member
 */

.team-member .name .designation::before {
	content: ', ';
	display: inline;
}

@media (max-width: 782px) {
	/* Centre the view bio button at single column */
	.team-member > .wp-block-group .wp-block-buttons {
		justify-content: center;
	}
}

dialog .biography *:last-child {
	margin-bottom: 0;
}
.gw-mm {
    position: unset;
}
nav.gw-mm__wrapper ul.gw-mm__content {
    position: relative;
}
nav.gw-mm__wrapper li.wp-block-getwid-megamenu-item a {
    position: relative;
    padding-left: 0;
    text-decoration: none;
}
nav.gw-mm__wrapper ul.gw-mm__content {
    gap: clamp(1.5rem, -3.645rem + 8.299vi, 4rem);
}
.gw-mm-item__dropdown-wrapper {
    transition: all 200ms ease-out;
    top: 112%;
    border: 1px solid transparent;
    left: -86px !important;
    right: 0!important;
    opacity: 0;
    transition: opacity 300ms ease-in-out;
    .gw-mm-item__dropdown {
        padding: 0 !important;
        border-radius: 30px;
    }
}
.gw-mm-item__link a.current-menu-ancestor {
    color: var(--wp--preset--color--orange-800);
}
.gw-mm-item__link:has(.current-menu-ancestor) .gw-mm-item__toggle {
    color: var(--wp--preset--color--orange-800);
}
nav.gw-mm__wrapper li.wp-block-getwid-megamenu-item:last-of-type .gw-mm-item__link > a {
    padding-right: 0 !important;
}
nav.gw-mm__wrapper li.wp-block-getwid-megamenu-item .gw-mm-item__link > a {
    font-size: clamp(1rem, 0.485rem + 0.83vi, 1.25rem) !important;
    position: relative;
    padding-bottom: 0;
    padding-top: var(--wp--preset--spacing--20);
}
nav.gw-mm__wrapper li.wp-block-getwid-megamenu-item.has-children .gw-mm-item__link {
    position: relative;  
}
nav.gw-mm__wrapper li.wp-block-getwid-megamenu-item.has-children:is(:hover, :focus) {
    > .gw-mm-item__link::before {
        content: '';
        width: 100%;
        height: 120%;
        position: absolute;
        top: 30%;

    }
    > .gw-mm-item__link a::after {
        content: '';
        width: 100%;
        height: 6px;
        background-color: var(--wp--preset--color--orange-800);
        display: block;
        position: absolute;
        bottom: -5px;
    } 
    .gw-mm-item__toggle {
        color: var(--wp--preset--color--orange-800);
        span.dashicons::before {
            transform: rotate(180deg);
        }
    }
    .gw-mm-item__dropdown-wrapper {
        left: -86px !important;
        right: 0 !important;
        border-radius: 30px;
        border: 0;
        opacity: 1;
        .gw-mm-item__dropdown {
            padding: 0 !important;
            z-index: 9999999;
            position: relative;
        }
        &::before {
            opacity: 0.7;
        }
    }
}
.gw-mm__wrapper li.wp-block-getwid-megamenu-item a:is(:hover, :focus) {
    color: var(--wp--preset--color--orange-800);
}
.gw-mm-item__toggle span.dashicons {
    font-family: unset;
}
.gw-mm-item__toggle {
    
    margin-top: 18px !important;
    height: 20px;
    span.dashicons::before {
        transition: transform 200ms ease-out;
        content: '\f078' !important;
        font-family: 'Font Awesome 6 Pro' !important;
        font-size: calc(var(--wp--preset--font-size--small) - 4px);
        display: inline-block;
        line-height: 1;
        transform-origin: center;
    }
}

.gw-mm-item__dropdown-content > .wp-block-group {
    min-width: clamp(41.1875rem, 16.24rem + 40.65vw, 53.6875rem);
}
.gw-mm-item__dropdown-content > .wp-block-group > .wp-block-columns .wp-block-column:first-of-type {
    flex-basis: clamp(15.375rem, 12.63rem + 4.47vw, 16.75rem) !important;
}
.gw-mm-item__dropdown-content > .wp-block-group > .wp-block-columns .wp-block-columns .wp-block-column {
    flex-basis: 50% !important;
}
.gw-mm-item__dropdown-content .wp-block-cover.is-style-fkcas-cover {
    overflow: visible;
    height: clamp(13.5rem, 10.927rem + 4.149vi, 14.75rem);
    width: clamp(15.375rem, 12.63rem + 4.47vw, 16.75rem);
    min-height: unset;
    img, span {
        border-radius: 30px;
    }
    .cover-media-wrapper {
        overflow: hidden;
        border-radius: 30px;
    }
    
    .wp-block-cover__inner-container .wp-block-group {
        position: absolute;
        bottom: -2px;
        right: -2px;
        border-top-right-radius: 0 !important;
        border-bottom-left-radius: 0 !important;
        padding-bottom: 0 !important;
        padding-right: 0 !important;
        &::before {
            content: '';
            background-image: url('../images/rounded-corners/corner-radius-16-grey-50.svg');
            background-repeat: no-repeat;
            background-size: cover;
            width: 2rem;
            height: 2rem;
            position: absolute;
            right: 2px;
            top: -2rem;
        }
        &::after {
            content: '';
            background-image: url('../images/rounded-corners/corner-radius-16-grey-50.svg');
            background-repeat: no-repeat;
            background-size: cover;
            background-size: cover;
            width: 2rem;
            height: 2rem;
            position: absolute;
            left: -2rem;
            bottom: 2px;
        }
    }
}

li.gw-mm-item .gw-mm-item__dropdown-wrapper {
    pointer-events: none;
}
li.gw-mm-item:is(:hover, :focus) .gw-mm-item__dropdown-wrapper {
    pointer-events: auto;
}

/**
 * Form Blocks: gravityforms/form
 * Intended to replace the built in gravity form css files.
 */

/* Form Fields - up 4 column grid */
.gform_fields {
	display: flex;
	flex-wrap: wrap;
	/* gap: var(--wp--custom--forms--fields--spacing--block-gap); */
	row-gap: var(--wp--preset--spacing--40) !important;
}
.gfield {
	width: 100%;
}
.gfield--width-half {
	width: calc(50% - var(--wp--custom--forms--fields--spacing--block-gap) * 0.5);
}
.gfield--width-third {
	width: calc(33.3333% - var(--wp--custom--forms--fields--spacing--block-gap) * 0.66667);
}
.gfield--width-quarter {
	width: calc(25% - var(--wp--custom--forms--fields--spacing--block-gap) * 0.75);
}

/* Checkbox & Radio Group Form Fields */
.gfield_label + :where(.ginput_container_checkbox, .ginput_container_radio) {
	margin-block-start: var(--wp--custom--forms--fields--spacing--padding);
}


/** 
 * Special Complex Fields 
 * e.g. name, address, date, time, etc
 */
.ginput_complex {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--custom--forms--fields--spacing--padding);
}
.ginput_complex label {
	font-size: var(--wp--preset--font-size--small);
}

/* Name Field */
:is(.gf_name_has_1, .gf_name_has_2, .gf_name_has_3, .gf_name_has_4, .gf_name_has_5) {
	gap: var(--wp--custom--forms--fields--spacing--padding) var(--wp--custom--forms--fields--spacing--block-gap);
}
:where(.gf_name_has_1, .gf_name_has_2, .gf_name_has_3, .gf_name_has_4, .gf_name_has_5) > * {
	flex-basis: calc(20% - var(--wp--custom--forms--fields--spacing--block-gap) * 0.8);
	flex-grow: 1;
}
:where(.gf_name_has_1, .gf_name_has_2, .gf_name_has_3, .gf_name_has_4, .gf_name_has_5) :is(.name_prefix_select, .name_suffix) {
	flex-basis: 4em;
	flex-grow: 0;
}

/* Address Field */
.ginput_container_address {
	gap: var(--wp--custom--forms--fields--spacing--padding) var(--wp--custom--forms--fields--spacing--block-gap);
}
.ginput_container_address .ginput_full {
	width: 100%;
}
.ginput_container_address :where(.ginput_left, .ginput_right) {
	width: calc(50% - var(--wp--custom--forms--fields--spacing--block-gap) * 0.5);
}

/* Date Field */
.ginput_container_date {
	display: flex;
	gap: var(--wp--custom--forms--fields--spacing--padding);
}
:is(.ui-datepicker, .gform-theme-datepicker) {
	padding: 1em;
	/* background-color: var(--wp--preset--color--main-background); */
	font-size: calc(var(--wp--preset--font-size--small) * 0.875);
	border-bottom-left-radius: var(--wp--custom--border--radius-small);
	border-bottom-right-radius: var(--wp--custom--border--radius-small);
	box-shadow: 0px 4px 6px 2px var(--wp--custom--forms--fields--color--box-shadow);
}
.ui-datepicker-header {
	display: grid;
	grid-template-columns: auto 1fr auto;
    align-items: center;
	gap: calc(var(--wp--custom--forms--fields--spacing--padding) * 2);
}
.ui-datepicker-header > * {
	grid-row: 1;
}
.ui-datepicker-header :is(.ui-datepicker-prev, .ui-datepicker-next) {
	cursor: pointer;
}
.ui-datepicker-header :is(.ui-datepicker-prev, .ui-datepicker-next) span {
	display: none;
}
.ui-datepicker-header :is(.ui-datepicker-prev, .ui-datepicker-next)::before {
	font-family: "Font Awesome 6 Pro";
	font-style: normal;
}
.ui-datepicker-header .ui-datepicker-prev::before {
	content: '\f323';
}
.ui-datepicker-header .ui-datepicker-next::before {
	content: '\f324';
}
.ui-datepicker-header .ui-datepicker-next {
	grid-column: 3;
}
.ui-datepicker-title {
	display: flex;
	gap: var(--wp--custom--forms--fields--spacing--padding);
}
.ui-datepicker-title select {
	width: auto;
	font-size: inherit;
	border: none;
	padding-right: 0;
}
.ui-datepicker-calendar {
	width: 100%;
	margin-block-start: var(--wp--custom--forms--fields--spacing--padding);
	text-align: center;
}
.ui-datepicker-calendar :is(th,td) {
	width: calc(100% / 7);
	padding: 0;
}

/* Time Field */
.ginput_container_time {
	display: inline-flex;
	flex-basis: 3em;
	flex-grow: 1;
}
.ginput_container_time input {
	text-align: center;
}
.gfield_time_ampm {
	flex-basis: 4em;
}

/* List Field */
.gfield_list_groups .gfield_list_group + .gfield_list_group {
	margin-block-start: var(--wp--custom--forms--fields--spacing--padding);
}
.gfield_list .gfield_list_icons {
	margin-block-start: var(--wp--custom--forms--fields--spacing--padding);
}
.gfield_list .gfield_list_icons :is(.add_list_item, .delete_list_item) {
	font-size: calc(var(--wp--preset--font-size--small) * 0.875);
}
.gfield_list .gfield_list_icons .delete_list_item {
	margin-inline-start: 1.5em;
	padding: 0;
	background: none;
	/* color: var(--wp--preset--color--main-highlight); */
}

/* File Field */
.ginput_container_fileupload .gform_fileupload_rules {
	font-size: var(--wp--preset--font-size--small);
}

/* Error Validation */
.gform_validation_errors {
	margin-block-end: var(--wp--custom--forms--fields--spacing--block-gap);
	padding: 1em;
	background-color: var(--wp--custom--forms--errors--color--background);
	color: var(--wp--custom--forms--errors--color--text);
	border: 1px solid var(--wp--custom--forms--errors--color--border);
}
.gform_validation_errors .gform_submission_error {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: currentColor;
}
.gform_validation_errors > * {
	margin: 0;
}
.gform_validation_errors > * + *{
	margin-block-start: var(--wp--preset--spacing--20);
}
.gform_validation_error_link {
	color: currentColor;
}
.gfield .validation_message {
	margin-block-start: var(--wp--preset--spacing--10);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--custom--forms--errors--color--text);
}
.gfield.gform_validation_container {
	display: none;
}

/* Form Wrapper - removing margin on the block - leaving to a wrapper block */
body .is-layout-flow > .gform_wrapper {
	margin: 0;
}
/* Form Header */
.gform_heading .gform_required_legend {
	display: none;
}

/* Form Footer */
.gform_footer {
	margin-block-start: var(--wp--custom--forms--fields--spacing--block-gap);
}

/* Required */
.gfield_required {
	visibility: hidden !important;
}

/* Labels */
.gfield_label {
	font-weight: 700 !important;
}

/* Inputs */
.ginput_container input,
.ginput_container select,
.ginput_container textarea {
	padding: 1.5rem var(--wp--preset--spacing--30) !important;
	font-size: var(--wp--preset--font-size--small) !important;
	min-height: 65px !important;
	box-shadow: none !important;
	&:focus {
		border: 1px solid var(--wp--preset--color--shark-400) !important;
	}

}
.ginput_container select {
	color: var(--wp--preset--color--shark-950) !important;
	line-height: 1 !important;
}
.ginput_container textarea {
	border-radius: 16px !important;
	min-height: 200px !important;
}

.ginput_container_select {
	position: relative !important;
	select {
		appearance: none !important;
		background: var(--wp--preset--color--shark-50) !important;
	}
	&::after {
		color: var(--wp--preset--color--shark-950) !important;
		right: var(--wp--preset--spacing--30) !important;
		top: var(--wp--preset--spacing--30) !important;
	}
}

/* Submit Button */
.gform-footer {
	margin-top: var(--wp--preset--spacing--60) !important;
	position: relative !important;
	--button-arrow-hitbox: 2.875rem;
	--mobile-button-arrow-hitbox: 2.25rem;
	--button-arrow-offset: var(--wp--preset--spacing--20);
	--button-arrow-position: var(--button-arrow-offset);
	input[type="submit"] {
		padding-right: var(--wp--preset--spacing--40) !important;
		padding-left: calc(var(--wp--preset--spacing--60) + 14px) !important;
		padding-top: var(--wp--preset--spacing--30) !important;
		padding-bottom: var(--wp--preset--spacing--30) !important;
		transition: all 300ms ease-in-out;
		font-weight: 700 !important;
		font-size: var(--wp--preset--font-size--medium) !important;
		@media(min-width: 768px) {
			min-height: 69px !important;
		}
	}
}
input[type="submit"]:is(:hover, :focus) {
	background-color: var(--wp--preset--color--shark-50) !important;
	padding-left: var(--wp--preset--spacing--40) !important;
	padding-right: calc(var(--wp--preset--spacing--60) + 14px) !important;
	color: var(--wp--preset--color--shark-600) !important;
}
.gform-footer:has(input[type="submit"]:is(:hover, :focus)) {
	--button-arrow-position: 265px;
	&::after {
		background-color: var(--wp--preset--color--shark-600) !important;
	}
}
.gform-footer::after {
	content: '\f178';
	font-family: 'Font Awesome 6 Pro';
	color: var(--wp--preset--color--white);
	background-color: var(--wp--preset--color--shark-950);
	border-radius: 0.75rem;
	position: absolute;
	left: var(--button-arrow-position);
	top: 13px;
	font-size: calc(var(--wp--preset--spacing--20) - 2px);
	padding: 0.75rem var(--wp--preset--spacing--20);
	width: var(--button-arrow-hitbox);
	box-sizing: border-box;
	/* right: auto; */
	transition: left 300ms ease-in-out;
	pointer-events: none;
	cursor: pointer;
	@media(max-width: 767px) {
		width: var(--mobile-button-arrow-hitbox);
		padding: 0.5rem 0.75rem;
		top: 13px;
	}
}
/**
 * Block: core/group
 */

/**
 * Fixes for when Gutenberg isn't outputting inline styles
 * (e.g. markup included through custom blocks)
 */
body .is-layout-flex.is-nowrap {
	flex-wrap: nowrap;
}

body .is-layout-flex.is-vertical {
	flex-direction: column;
}
.wp-block-heading {
    @media(max-width: 767px) {
        font-weight: 400;
    }
}
.wp-block-outermost-icon-block.email-icon {
    margin-top: 3px;
}

.wp-block-outermost-icon-block a.icon-container {
    transition: all 200ms ease-out;
}

/**
 * Blocks: core/image, core/post-featured-image
 */
:is(.wp-block-image, .wp-block-post-featured-image):is(.is-style-rounded) img {
	border-radius: var(--wp--custom--border--radius);
}

.overview .wp-block-image img {
	min-height: 277px;
	@media(min-width: 782px) {
		min-height: 575px;
		object-fit: cover;
	}
	
}
/**
 * Blocks: core/list
 */
:is(ul:not([class]), ol, ul.is-style-default, ol.is-style-default) :is(li + li, ul, ol) {
	margin-block-start: var(--wp--preset--font-size--large);
}

ul.is-style-default {
	list-style-type: disc;
}
ul.wp-block-list {
	padding-left: var(--wp--preset--spacing--40) !important;
	list-style-type: none;
	/* li::marker {
		font-size: 0.6em;
	} */
	li {
		position: relative;
	}
	li::before {
		content: "";
		width: 4px;
		height: 4px;
		background: #000;
		position: absolute;
		left: -1.2rem;
		top: 0.6em; 
	}
}
ul.wp-block-list li {
	margin-bottom: var(--wp--preset--spacing--20);
	line-height: 1.5;
}
ul.wp-block-list li strong {
	font-weight: 700 !important;
}

.is-style-list-style-none {
	list-style-type: none;
	padding-inline-start: 0;
}
.is-style-list-style-none li + li,
.is-style-list-style-none li :is(ul, ol) {
	margin-block-start: var(--wp--preset--font-size--large);
}

ul.is-style-divided-list {
	border-top: solid 1px var(--wp--preset--color--shark-950);
	list-style: none;
	padding-left: 0;
}
ul.is-style-divided-list li {
	padding: var(--wp--preset--font-size--large) 0;
	border-bottom: solid 1px var(--wp--preset--color--shark-950);
}


/**
 * Block: core/navigation-link
 */
.wp-block-navigation-link.is-style-button .wp-block-navigation-item__content {
	background-color: var(--wp--preset--color--black);
	color: var(--wp--preset--color--white);
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--border--radius-small);
	font-weight: 400;
	transition: background-color 0.4s ease;
}

.wp-block-navigation-link.is-style-button:is(:hover, :focus) .wp-block-navigation-item__content {
	background-color: var(--wp--preset--white);
	color: var(--wp--preset--color--black);
}

.wp-block-navigation-link.is-style-button:active .wp-block-navigation-item__content .wp-block-navigation-item__label {
	opacity: 0.5;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .is-style-button .wp-block-navigation-item__content {
	padding: 0.625em 1.5em;
}

.wp-block-navigation-link.is-style-rounded-image img {
	border-radius: var(--wp--custom--border--radius);
	overflow: hidden;
	aspect-ratio: 1.5 / 1;
}
nav.header-top-menu .current-menu-item a.wp-block-navigation-item__content,
nav.header-top-menu .current-menu-item .wp-block-navigation-submenu__toggle,
.current-menu-item > a,
.current-menu-item .gw-mm-item__toggle {
	color: var(--wp--preset--color--orange-800) !important;
}
a.wp-block-navigation-item__content {
	font-weight: 300;
	text-transform: capitalize;
}

/**
 * Block: core/navigation-submenu
 */

.wp-block-navigation-submenu.is-style-columns {
    position: relative;
}

a.wp-block-navigation-item__content {
    z-index: 2;
}

.wp-block-navigation-submenu.is-style-columns:is(:hover, :focus):before {
    content: '';
    position: absolute;
    top: 0;
    left: -160px;
    right: -160px;
    height: calc(100% + var(--wp--preset--spacing--60));
    z-index: 1;
}

.wp-block-navigation-submenu.is-style-columns > .wp-block-navigation__submenu-container {
    --header-height: clamp(10.3125rem, 8.477rem + 2.9605vw, 10.875rem);
    box-sizing: border-box;
    position: fixed;
    inset: var(--header-height) 0 auto 0 !important;
    width: 100% !important;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    padding: var(--wp--preset--spacing--50) max(calc((100vw - var(--wp--style--global--wide-size)) / 2), var(--wp--preset--spacing--40));
    grid-column-gap: var(--wp--preset--spacing--50);
    grid-row-gap: var(--wp--preset--spacing--30);
    border: none !important;
}

.wp-block-navigation-submenu.is-style-columns > .wp-block-navigation__submenu-container a:is(:hover, :focus) {
    color: var(--wp--preset--color--black);
}

.wp-block-navigation-submenu.is-style-columns:is(:hover, :focus) > .wp-block-navigation__submenu-container .wp-block-navigation-item {
    align-items: flex-start;
}

#temporary-message ~ * .wp-block-navigation-submenu.is-style-columns > .wp-block-navigation__submenu-container {
    --header-height: calc(clamp(10.3125rem, 8.477rem + 2.9605vw, 10.875rem) + 40px);
}

.wp-block-navigation-submenu.is-style-columns > .wp-block-navigation__submenu-container > .wp-block-navigation-item.is-style-rounded-image {
    grid-row: 1 / 5;
}

body.admin-bar .wp-block-navigation-submenu.is-style-columns .wp-block-navigation__submenu-container a:is(:hover, :focus) {
    color: var(--wp--preset--color--black);
}

/**
 * Block: core/navigation
 */

.wp-block-group:not(.mobile-menu) ul.wp-block-navigation__container > li.wp-block-navigation-submenu > a.wp-block-navigation-item__content::before {
	content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0;
    right: var(--wp--preset--spacing--30) !important;
    bottom: calc(var(--wp--preset--spacing--50) * -1) !important;
    opacity: 0;
	display: block;
	width: 75px;
}

.mobile-menu {
	justify-content: space-between;
	transition: height 300ms ease-out;
	height: 100vh;
	top: 14px !important;
	width: 100%;
	max-width: 100%;
	padding-bottom: calc(var(--wp--preset--spacing--30) + 13px) !important;
	.logo-row {
		border-bottom: 1px solid var(--wp--preset--color--shark-950);
		padding-bottom: var(--wp--preset--spacing--30);
		margin-bottom: var(--wp--preset--spacing--20);
	}
}
.mobile-menu:not(.block-editor-block-list__block) {
	transition: var(--wp--custom--animation--default-transition);
	position: fixed;
	top: 0;
	width: 100%;
	bottom: 0;
	/* left: 0; */
	z-index: 5;
	overflow: auto;
	overflow-x: hidden;
	opacity: 0;
	pointer-events: none;
	background-color: var(--wp--preset--color--white);

	nav.wp-block-navigation {
		> ul {
			width: 100%;
			padding-left: 0 !important;
			gap: 0;
			margin: 0;

			> li {
				box-sizing: border-box;
				width: 100%;
				display: block !important;
				position: relative;
				border-bottom: 1px solid var(--wp--preset--color--shark-400);
				
				&:last-of-type a {
					padding-bottom: 1.25rem;
				}
				> a {
					font-size: calc(var(--wp--preset--font-size--small) + 2px);
					padding-left: var(--wp--preset--spacing--40) !important;
					padding-right: var(--wp--preset--spacing--40) !important;
					max-height: 76px;
					
				}
				a.wp-block-navigation-item__content::before, 
				a.wp-block-navigation-item__content::after {
					content: '' !important;
					width: 0;
					height: 0;
				}
				.wp-block-navigation__submenu-icon {
					width: 61px !important;
					position: absolute;
					top: 0;
					right: 0;
					border-left: 1px solid var(--wp--preset--color--orange-400);
					height: 59px;
					padding-right: var(--wp--preset--spacing--30);
					padding-top: 0;
					padding-bottom: 0;
					/* margin-right: var(--wp--preset--spacing--30); */
					margin-top: var(--wp--preset--spacing--10);
					margin-bottom: var(--wp--preset--spacing--10);
					
					svg {
						left: 1.5rem;
						top: 1.25rem;
						position: absolute;
						width: 13px;
						height: 14px;
						transition: transform 200ms ease-out;
					}
					
				}

				a,
				.wp-block-navigation-submenu__toggle {
					box-sizing: border-box;
					width: 100%;
					padding: var(--wp--preset--spacing--40) 0;
					color: var(--wp--preset--color--shark-950);
					text-transform: capitalize;
				}

				&.has-child {

					&.has-expanded-submenu {
						> a.wp-block-navigation-item__content {
							background-color: var(--wp--preset--color--shark-50);
							border-bottom: 1px solid var(--wp--preset--color--shark-400);
						}
						> .wp-block-navigation-submenu__toggle svg {
							transform: rotate(180deg);
						}
						.wp-block-navigation__submenu-icon {
							color: var(--wp--preset--color--orange-600);
							border-color: var(--wp--preset--color--shark-100);
						}
						.wp-block-navigation__submenu-container {
							height: 100%;
							max-height: 500px;
							opacity: 1;
							visibility: visible;
							overflow: hidden !important;
							padding-left: var(--wp--preset--spacing--40) !important;
							padding-right: var(--wp--preset--spacing--40) !important;
						}
					}
					.wp-block-navigation__submenu-container {
						height: 0;
						max-height: 0;
						width: auto;
						overflow: hidden;
						transition: max-height 500ms ease-in-out;
						margin: 0;
						a.wp-block-navigation-item__content {
							font-size: var(--wp--preset--font-size--small);
							border-bottom: 1px solid var(--wp--preset--color--orange-400);
							padding-top: var(--wp--preset--spacing--20);
							padding-bottom: var(--wp--preset--spacing--20);
						}
					}
				}
				.wp-block-navigation__submenu-container {
					a {
						color: var(--wp--preset--color--shark-950);
					}
				}
				.wp-block-navigation-submenu {
					border: none;
					border-bottom-left-radius: var(--wp--custom--border--radius-10);
					border-bottom-right-radius: var(--wp--custom--border--radius-10);
					width: 100%;
					position: static;
					overflow: hidden !important;

					li {
						color: var(--wp--preset--color--shark-950);
					}

					li:last-child a.wp-block-navigation-item__content {
						border-bottom: 0;
					}

					a {
						border-radius: 0;
					}
				}
			}
		}
	}
}

body.mobile-menu-open {
	overflow: hidden;

	.mobile-menu {
		opacity: 1;
		pointer-events: auto;
	}
}

.admin-bar .mobile-menu {
	top: 46px;
}
/**
 * Block: core/paragraph
 */
p {
    max-width: var(--wp--custom--typography--max-width);
    word-spacing: var(--wp--custom--typography--word-spacing);
}
/**
 * Post Excerpt
 */
.wp-block-post-excerpt .wp-block-post-excerpt__excerpt {
    margin-block-start: 0;
}

/* Set the readmore link to be one size larger than the paragraph text */
.wp-block-post-excerpt .wp-block-post-excerpt__more-text {
    font-size: var(--wp--preset--font-size--large);
}
.wp-block-post-excerpt.has-small-font-size .wp-block-post-excerpt__more-text {
	font-size: var(--wp--preset--font-size--medium);
}
/**
 * Post Featured Image
 */
.wp-block-post-featured-image img {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
@media (min-width: 782px) {
	.wp-block-query .wp-block-post-featured-image.is-offset-desktop {
		margin-top: calc(-1 * (var(--wp--preset--spacing--60) + var(--wp--preset--spacing--50) + var(--wp--preset--font-size--small)) );
	}
}
/**
 * Block: core/post-navigation-link-previous, core/post-navigation-link-next
 */
:where(.wp-block-post-navigation-link) > a[role="textbox"]:not(:last-child),
:where(.post-navigation-link-previous, .post-navigation-link-next) .post-navigation-link__label {
    display: block;
    font-size: var(--wp--preset--font-size--small);
    font-weight: 700;
}
/**
 * Block: core/post-title
 */
.wp-block-post-title a {
    text-decoration: inherit;
    color: inherit;
}  
/**
 * Block: core/query
 */

.wp-block-query {
	--container-width: var(--wp--custom--spacing--content-size);
}
.wp-block-query.alignwide {
	--container-width: var(--wp--custom--spacing--wide-size);
}

/* Seems like we need this when nesting a query in the cover block for now */
.wp-block-cover .wp-block-query {
	width: var(--container-width);
	max-width: 100%;
}

.wp-block-post-template.is-layout-grid {
	gap: var(--wp--preset--spacing--50);
}
.wp-block-post-template.is-layout-grid:where(.columns-2,.columns-3,.columns-4,.columns-5,.columns-6) {
	display: grid;
	gap: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
	padding: 0;
	list-style: none;
}
.wp-block-post-template.is-layout-grid:is(.columns-2,.columns-3,.columns-4,.columns-5,.columns-6) > li.wp-block-post {
	width: auto;
	margin: 0;
}

.wp-block-post-template.is-layout-grid.columns-2 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/2 - var(--wp--preset--spacing--50)*1/2), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-3 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/3 - var(--wp--preset--spacing--50)*2/3), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-4 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/4 - var(--wp--preset--spacing--50)*3/4), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-5 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/5 - var(--wp--preset--spacing--50)*4/5), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-6 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/6 - var(--wp--preset--spacing--50)*5/6), 1fr));
}

/**
 * If we're down to a single column just do auto columns. Fix for narrow screens.
 */
@media (max-width: 400px) {
	.wp-block-post-template.is-layout-grid:is(.columns-2,.columns-4,.columns-5,.columns-6) {
		grid-template-columns: auto;
	}
}
@media (max-width: 480px) {
	.wp-block-post-template.is-layout-grid:is(.columns-3) {
		grid-template-columns: auto;
	}
}

/**
 * Equal Height, No Wrap Style
 */
.wp-block-query.is-style-equal-height-no-wrap .wp-block-post-template {
	display: flex !important;
}

.wp-block-query.is-style-equal-height-no-wrap .wp-block-post-template > .wp-block-post {
	flex-grow: 1;
	flex-basis: 0;
	min-width: 0;
}

.wp-block-query.is-style-equal-height-no-wrap .wp-block-post-template > .wp-block-post > *:first-child:last-child {
	height: 100%;
}

/**
 * Strips Style
 * Intended be used with columns. Does an offset column view like film strips.
 */
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 {
	display: block;
}
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post {
	width: calc(50% - var(--wp--preset--spacing--50)*1/2);
	float: left;
	margin-block-start: var(--wp--preset--spacing--70);
}
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(even) {
	float: right;
}
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:first-child {
	margin-block-start: 0;
}
/* Push the right side down to create the effect */
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(2) {
	margin-block-start: calc(var(--wp--preset--spacing--70) * 3);
}
/* Clear the floats */
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/**
 * Gutenberg Editor specific layout fixes since it has extra elements
 * A little finicky right now
 */
.block-editor-block-list__block.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(3) {
	margin-block-start: calc(var(--wp--preset--spacing--70) * 3);
}
.block-editor-block-list__block.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(2n+4) {
	float: left;
}
.block-editor-block-list__block.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(2n+3) {
	float: right;
}

/**
 * Fixes for when Gutenberg isn't outputting inline styles
 * (e.g. markup included through custom blocks)
 */
ul.wp-block-post-template {
	list-style: none;
    margin-bottom: 0;
    margin-top: 0;
    max-width: 100%;
    padding: 0;
}
/**
 * Block: core/quote
 */
.wp-block-quote {
    border-left: 0;
    padding-left: 0;
}
.wp-block-quote > p {
    font-size: var(--wp--preset--font-size--large);
    font-weight: 400;
    margin-bottom: var(--wp--preset--spacing--40);
    line-height: 1.5;
    &::before {
        content: '“';
    }
    &::after {
        content: '”';
    }
}
.wp-block-quote > :first-child {
    margin-top: 0;
}
.wp-block-quote cite {
    display: block;
    align-content: center;
    font-size: var(--wp--preset--font-size--medium);
    font-weight: 700;
    line-height: 1.5;
    font-style: normal !important;
}

/* Quote Mark Style - Default (column) & Centred (row) vairations */
.wp-block-quote:is(.is-style-quote-mark,.is-style-quote-mark-centred) {
    border: none;
    padding-left: 0;
}
.wp-block-quote.is-style-quote-mark {
    overflow: visible;
    margin-bottom: var(--wp--preset--spacing--70);
    position: relative;
    p {
        margin-top: 51px;
        margin-left: clamp(3.938rem, 3.275rem + 2.826vi, 5.875rem);
        
    }
}
.wp-block-quote.is-style-quote-mark-centred {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: calc(var(--wp--custom--spacing--content-size) - var(--wp--preset--spacing--70));
}
.wp-block-quote:is(.is-style-quote-mark,.is-style-quote-mark-centred):before {
    content: '“';
    display: inline;
	font-style: normal;
    font-weight: 900;
    font-size: clamp(9.375rem, 8.093rem + 5.469vi, 13.125rem);
    line-height: 1;
    color: #FFFFFF26;
    position: absolute;
    top: 0;
    left: 0;
}
.wp-block-quote.is-style-quote-mark:before {
    grid-column: 1;
}
.wp-block-quote.is-style-quote-mark-centred:before {
    margin-bottom: var(--wp--style--block-gap);
}
.wp-block-quote.is-style-quote-mark > * {
    grid-column: 2;
}
.wp-block-quote.is-style-quote-mark cite {
    /* --cite-line-width: 3em; */
    /* padding-left: calc(var(--cite-line-width) + 1em); */
    font-size: var(--wp--preset--font-size--large);
    /* padding-top: var(--wp--preset--spacing--10); */
}
.wp-block-quote.is-style-quote-mark cite {
    grid-column: 2;
}
/* .wp-block-quote.is-style-quote-mark cite:before {
    content: '';
    display: inline-block;
    width: var(--cite-line-width);
    height: 0.1rem;
    margin-left: calc(-1 * (var(--cite-line-width) + 1em));
    margin-right: 1em;
    margin-bottom: calc(1em / 4);
    background-color: currentcolor;
} */
.wp-block-quote.is-style-quote-mark cite:before {
    grid-column: 1;
}
.wp-block-quote.is-style-quote-mark cite > * {
    grid-column: 2;
}
/**
 * Block: core/separator
 */

/* Thicker lines */
.wp-block-separator.has-background:not(.is-style-dots) {
	height: 1px;
}

.swiper-button-prev:after{
    content: '\f177' !important;
} 

.swiper-button-next:after {
    content: '\f178' !important;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: "Font Awesome 6 Pro" !important;
    color: var(--wp--preset--color--blue);
    font-size: var(--wp--preset--font-size--small) !important;
    font-weight: 400;
}
.slider-container {
    position: relative;
    margin-top: 0;
}

.swiper-button-prev,
.swiper-button-next {
    position: relative !important;
    /* transform: translateY(-50%); */
    z-index: 10;
    cursor: pointer;
    border-radius: 100%;
    transition: background-color .3s ease-in-out;
    padding: 1rem 1.5rem;
    @media(min-width: 1024px) {
        position: absolute !important;
        top: -109px !important;
    }
    &:is(:hover, :focus) {
        background-color: var(--wp--preset--color--blue);
        border-color: var(--wp--preset--color--blue);
        &::after {
            color: var(--wp--preset--color--white);    
        }
    }
}

.swiper-button-prev {
    top: 55px !important;
    left: 0 !important;
    @media(min-width: 1024px) {
        left: unset !important;
        right: 95px !important;
        top: -109px !important;
    }
}

.swiper-button-next {
     @media(max-width: 1023px) {
        left: 85px !important;
     }
}

/**
 * Block: core/table 
 */
.wp-block-table {
	margin-top: var(--wp--preset--spacing--20);
	max-width: 720px;

	@media(max-width: 767px) {
		margin-left: var(--wp--preset--spacing--40) !important;
		margin-right: var(--wp--preset--spacing--40) !important;
		overflow: scroll;
	}
}

.wp-block-table table {
	border-width: 0;
}

.wp-block-table :is(td, th) {
	border-color: var(--wp--preset--color--shark-950);
	border-left-color: transparent !important;
	border-right-color: transparent !important;
	vertical-align: top;
	text-align: center;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 400;
}

.wp-block-table thead,
.wp-block-table tbody tr {
	border-bottom: 1px solid #D4D0C533;
	border-top: 1px solid #D4D0C533;
}

.wp-block-table.is-style-stripes :is(td, th) .wp-block-table.is-style-last-row-highlighted-stripes :is(td, th) {
	border-color: #D4D0C533;
}

.wp-block-table.is-style-stripes,
.wp-block-table.is-style-last-row-highlighted-stripes {
	position: relative;
	border-bottom: 0;
}

.wp-block-table.is-style-last-row-highlighted-stripes tr :is(td, th):last-of-type {
	background-color: #00000040;
}

.wp-block-table.is-style-stripes thead tr th:first-of-type,
.wp-block-table.is-style-last-row-highlighted-stripes thead tr th:first-of-type {
	/* writing-mode: vertical-rl;
    transform: rotate(180deg);
    text-align: center;
    vertical-align: middle;
    position: absolute;
	height: 100%;
    left: -3.125rem;
	border-bottom: 0;
	font-size: var(--wp--preset--font-size--medium); */
}

.wp-block-table thead tr:first-of-type :is(td, th) {
	border-top: none;
}

.wp-block-table thead tr th {
	border-right: 0;
	border-left: 0;
}

.wp-block-table thead tr th,
.wp-block-table tr td:first-of-type {
	font-weight: 700;
}

.wp-block-table :is(td, th) {
	border: 0;
	line-height: 1.2;
	padding: 12px 4px;
}

.wp-block-table tfoot {
	border-top-width: 1px;
}

.wp-block-table tfoot :is(td, th) {
	border-color: transparent !important;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd),
.wp-block-table.is-style-last-row-highlighted-stripes tbody tr:nth-child(odd) {
	background-color: #00000040;
}

.wp-block-table table tbody:first-child tr:first-child td {
	border-top: none;
}

.wp-block-table table tbody:last-child tr:last-child td {
	border-bottom: none;
}

.wp-block-table table :is(td, th):first-child {
	padding-left: 0;
}

.wp-block-table table :is(td, th):last-child {
	padding-right: 0;
}

.wp-block-table td a {
	--table-link-arrow-gap: 0px;
	--table-link-underline-offset: 0.1rem;
	--table-link-underline-thickness: 2px;
	position: relative;
	display: inline-block;
	color: inherit;
	text-decoration: none;
	padding-right: var(--table-link-arrow-gap);
}

.wp-block-table td a::before {
	content: "";
	position: absolute;
	left: 0;
	right: var(--table-link-arrow-gap);
	bottom: calc(var(--table-link-underline-thickness) - 5px);
	height: var(--table-link-underline-thickness);
	background-color: currentColor;
}

.wp-block-table figcaption {
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--small);
	font-style: italic;
	margin-top: var(--wp--preset--spacing--20);
	line-height: 1.2;
}

/* Lists in tables */
.wp-block-table table ul:first-child {
	margin-top: 0;
}

.wp-block-getwid-tabs {
    .wp-block-getwid-tabs__nav-links {
        background-color: var(--wp--preset--color--shark-50);
        border-radius: 30px;
        padding: var(--wp--preset--spacing--40);
        column-gap: clamp(1.5rem, -1.22rem + 5.67vw, 4rem);
        row-gap: var(--wp--preset--spacing--30);
        justify-content: center;
        @media(min-width: 1474px) {
            column-gap: var(--wp--preset--spacing--70);
        }
        .ui-tabs-anchor {
            padding: 0 !important;
            text-decoration: none;
        }
        li.ui-state-active {
            background-color: transparent;
            border: 0;
            a {
                font-weight: 700;
                text-decoration: none !important;
                pointer-events: none;
            }
        }
        li.ui-state-focus {
            text-decoration: none;
        }
        a {
            transition: none;
            position: relative;
        }
        a:is(:hover, :focus) {
            color: var(--wp--preset--color--orange-800);
            text-decoration: none !important;
        }
        li.wp-block-getwid-tabs__nav-link {
            border: 0;
        }
        li.wp-block-getwid-tabs__nav-link:is(:hover, :focus) {
            border: 0;
        }
        @media(max-width: 767px) {
            background-color: transparent;
            padding: 0;
            .wp-block-getwid-tabs__nav-link {
                background-color: var(--wp--preset--color--shark-50);
                border-radius: 20px;
                padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--50);
                width: 100%;
            }
            li.ui-state-active {
                background-color: var(--wp--preset--color--shark-50);
            }
        }
    }
    .wp-block-getwid-tabs__tab-content {
        border: 0;
        padding: var(--wp--preset--spacing--50) 0 0 0;
        min-height: inherit;
        .wp-block-columns {
            min-height: inherit;
        }
    }
    .wp-block-getwid-tabs__tab-content-wrapper {
        opacity: 0;
        transform: translateY(12px);
        transition: opacity 550ms ease-out;
        pointer-events: none;
        top: 82px;
    }
    .wp-block-getwid-tabs__tab-content-wrapper.is-active-tab,
    .wp-block-getwid-tabs__tab-content-wrapper[aria-hidden="false"] {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
}

/**
 * Block: yoast-seo/breadcrumbs 
 */

.yoast-breadcrumbs a {
    font-weight: inherit;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.yoast-breadcrumbs span span:not(.breadcrumb_last)::after {
    content: '\f054';
    font-family: 'Font Awesome 6 Pro';
    font-size: calc(var(--wp--preset--font-size--small) - 6px);
    font-weight: 400;
    margin-left: 1rem;
    margin-right: 1rem;
    position: relative;
    bottom: 1px;
    color: var(--wp--preset--color--shark-950);
}
.yoast-breadcrumbs {
    font-size: var(--wp--preset--font-size--small);
}
.yoast-breadcrumbs .breadcrumb_last {
    font-weight: 700;
    color: var(--wp--preset--color--orange-800);
}

/**
 * Animations for blocks tied to scripting
 * @see /source/scripts/animate.js
 */


/**
 * Be mindful of unintuitive / unexpected animations for those that don't want them 
 * https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-reduced-motion
 */
@media(prefers-reduced-motion) {

}

.animate {
    transition: all 0.3s;
}


/* Fade in and out based on percentage visible in viewport */
:not(.block-editor-block-list__block).animate.scroll-fade-in-out {
    opacity: 0;
}


/**
 * Triggered Canned Animations
 * Animations with set values that get triggered once the element is in view
 */

 
/* Cover specific fade in - image, then text */
/* .animate.cover-fade-in {
    background-color: var(--wp--preset--color--main-foreground);
} */
.animate.in-view.cover-fade-in .wp-block-cover__image-background {
    animation: focus-in 0.5s cubic-bezier(0.470, 0.000, 0.745, 0.715) 0s both;
}
.animate.in-view.cover-fade-in .wp-block-cover__inner-container {
    animation: fade-in 0.75s cubic-bezier(0.470, 0.000, 0.745, 0.715) 0.25s both;
}


/* Blur the text into focus */
.animate.in-view.text-focus-in {
    animation: focus-in 0.6s cubic-bezier(0.550, 0.085, 0.680, 0.530) 1s both;
}
@keyframes focus-in {
    0% {
        filter: blur(12px);
        opacity: 0;
    }
    100% {
        filter: blur(0px);
        opacity: 1;
    }
}

/* Fade in gradually */
.animate.in-view.fade-in {
    animation: fade-in 2s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
}
@keyframes fade-in {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

/* Slide left */
.animate.in-view.slide-left {
    animation: slide-left 0.5s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
}
@keyframes slide-left {
    0% {
        translate: 10%;
    }
    100% {
        translate: 0;
    }
}
/* Slide right */
.animate.in-view.slide-right {
    animation: slide-right 0.5s cubic-bezier(0.470, 0.000, 0.745, 0.715) both;
}
@keyframes slide-right {
    0% {
        translate: -10%;
    }
    100% {
        translate: 0;
    }
}
/* Letter F */
.is-style-letter-f::after {
    content: '';
    background-image: url('../images/background-letters/background_letter-f.svg');
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.1;
    width: 319px;
    height: clamp(25.0625rem, 30.80rem + -11.96vw, 28rem);
    position: absolute;
    right: clamp(-1.75rem, -1.26rem + -1.02vw, -1.5rem);
    bottom: -5px;
    z-index: 1;
    @media(min-width: 768px) {
        bottom: -60px;
        height: 60%;
    }
    @media(min-width: 782px) {
        top: -128px;
        width: 502px;
        height: calc(100% + 203px);
        bottom: unset;
    }
    @media(min-width: 1200px) {
            right: -31px;
    }
}
.wp-block-group.has-timber-green-800-background-color .is-style-letter-f::after {
    opacity: 0.05;
}
/* Letter K */
.is-style-letter-k .wp-block-columns .wp-block-image {
    z-index: 2;
    position: relative;
    @media(max-width: 781px) {
        img {
            max-height: 300px;
            width: 100%;
        }
    }
}
@media(max-width: 781px) {
    .wp-block-group:not(.quotes-slider-block) .is-style-letter-k .wp-block-columns .wp-block-column:first-of-type::after {
        content: '';
        background-image: url('../images/background-letters/background_letter-k.svg');
        background-repeat: no-repeat;
        background-size: cover;
        opacity: 0.03;
        width: 100%;
        min-width: 665px;
        height: calc(100% + 100px);
        position: absolute;
        z-index: 1;
        bottom: -64px;
        z-index: 1;
        left: clamp(-17.625rem, -24.38rem + 28.82vw, -10.3125rem);
       
    }
}
.is-style-letter-k::after {
    @media(min-width: 782px) {
        content: '';
        background-image: url('../images/background-letters/background_letter-k.svg');
        background-repeat: no-repeat;
        background-size: cover;
        opacity: 0.03;
        top: -5px;
        bottom: unset;
        width: 115%;
        height: 100%;
        left: -275px;
        z-index: 1;
        position: absolute;
    }
    @media(min-width: 865px) {
        background-size: contain;
        width: 100%;
    }
}
.wp-block-group:not(.quotes-slider-block):has(.is-style-letter-k) {
    overflow: hidden;
}
/* Testimonial Slider Background Letter K */
.quotes-slider-block .is-style-letter-k .wp-block-columns {
    position: unset;
    .wp-block-column:first-of-type::after {
        background-image: none !important;
    }
}
.quotes-slider-block .is-style-letter-k {
    position: unset !important;
}
.quotes-slider-block .is-style-letter-k::after {
    position: absolute;
    --mobile-slider-button-height: 75px;
    bottom: unset;
    top: 0;
    opacity: 0.03;
    left: -234px;
    content: '';
    background-image: url('../images/background-letters/background_letter-k.svg');
    background-repeat: no-repeat;
    background-size: contain;
    @media(max-width: 781px) {
        width: clamp(33.1875rem, 41.63rem + -17.60vw, 37.5rem);
        height: calc(100% - var(--mobile-slider-button-height));
    }
}

.wp-block-group:not(.quotes-slider-block) .is-style-letter-k,
.wp-block-group:not(.quotes-slider-block) .is-style-letter-f {
    z-index: 3;
    position: relative;
    .wp-block-buttons {
        z-index: 4;
        position: relative;
    }
}
/**
 * Cards
 * Adds to the rounded style by centring content. Useful in multi-column card-like layouts
 * that have content centred vertically.
 */
.is-style-card {
	display: grid;
	align-items: center;
	align-content: center;
}
.wp-block-cover.is-style-card {
    overflow: hidden;
}

/**
 * Shared card styles
 */

.is-style-linked-card {
	position: relative;

	.wp-block-post-title a {
		font-weight: 700;

		&:is(:hover,:focus) {
			&:before {
				box-shadow: 2px 2px 10px 0px #00000026;
				cursor: pointer;
			}
		}
	}

	:is(.wp-block-post-title, .wp-block-heading) a:before {
		transition: var(--wp--custom--animation--default-transition);
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
	}
}

.block-editor-block-list__block .gw-mm-item__dropdown-wrapper {
    min-width: 859px;
    left: 0 !important;
    opacity: 1 !important;
}

details.block-editor-block-list__block p,
details.block-editor-block-list__block .wp-block-button__link {
    color: var(--wp--preset--color--shark-50);
}
details.block-editor-block-list__block[open] {
    padding: var(--wp--preset--spacing--50);
}
details.block-editor-block-list__block[open] summary {
    background-color: transparent;
    color: var(--wp--preset--color--shark-50);
    padding: 0;
}
details.block-editor-block-list__block[open] summary::after {
    background-color: transparent;
    content: '';
}

.block-editor-block-list__block.home-hero {
    height: 100%;
}

.block-editor-block-list__block.has-shark-950-background-color .wp-block-genesis-custom-blocks-quote-slider .wp-block-quote p,
.block-editor-block-list__block.has-shark-950-background-color .wp-block-genesis-custom-blocks-quote-slider h3,
.block-editor-block-list__block.has-shark-950-background-color .wp-block-genesis-custom-blocks-quote-slider .genesis-custom-blocks-repeater--row-add .dashicon::before,
.block-editor-block-list__block.has-shark-950-background-color .wp-block-genesis-custom-blocks-quote-slider .genesis-custom-blocks-repeater--row-delete .dashicon {
    color: var(--wp--preset--color--shark-50);
}
.block-editor-block-list__block.has-shark-950-background-color .wp-block-genesis-custom-blocks-quote-slider h3 svg {
    fill: var(--wp--preset--color--shark-50);
}


.block-editor-block-list__block.quotes-slider-block .block-editor-block-list__block {
    position: unset;
}
.block-editor-block-list__block.quotes-slider-block .wp-block-button.slider-button svg path {
    fill: var(--wp--preset--color--shark-50);
}
.block-editor-block-list__block.quotes-slider-block .wp-block-button.slider-button .wp-block-button__link {
    background-color: var(--wp--preset--color--shark-950);
    padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
}

.block-editor-block-list__block.is-style-fkcas-floating-group {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 2;
}
.block-editor-block-list__block.is-style-fkcas-cover .wp-block-cover__inner-container {
    padding: var(--wp--preset--spacing--60);
}
.home-hero .block-editor-block-list__block.is-style-fkcas-cover .wp-block-cover__inner-container {
    padding: var(--wp--preset--spacing--70) 0 0;
}
.block-editor-block-list__block.is-style-fkcas-cover .wp-block-cover__image-background,
.block-editor-block-list__block.is-style-fkcas-cover .wp-block-cover__background {
    border-radius: 30px;
}
.block-editor-block-list__block.wp-block-cover {
    height: 100%;
}

ul.block-editor-block-list__block li::before {
	content: "";
	width: 4px;
	height: 4px;
	background: #000;
	position: absolute;
	left: -1.2rem;
	top: 0.6em; 
}

.block-editor-block-list__block.service .wp-block-group p {
    min-width: 42px !important;
}
.block-editor-block-list__block.wp-block-cover .is-style-fkcas-floating-top-group {
    position: absolute !important;
}

.block-editor-block-list__block.accordions .wp-block-column .wp-block-image {
    display: block !important;
}

.block-editor-block-list__block.home-hero,
.block-editor-block-list__block.home-hero > .block-editor-block-list__block,
.block-editor-block-list__block .is-style-fkcas-cover {
    height: auto !important;
}

/* Eyebrow */
.is-style-eyebrow {
	font-size: var(--wp--preset--font-size--medium);
	margin-bottom: var(--wp--preset--spacing--10);
}

div:has(.is-style-eyebrow) .wp-block-heading {
	margin-top: var(--wp--preset--spacing--10);
}
/**
 * Full Height Image - Inherits Container Height
 * Should only be used inside of patterns with layout blocks that have content dictating the height (eg. columns)
 */
:is(.wp-block-image, .wp-block-post-featured-image).is-style-full-height {
	height: 100%;
	max-height: 100vh;
}
:is(.wp-block-image, .wp-block-post-featured-image).is-style-full-height.block-editor-block-list__block > div:first-child {
	height: inherit !important;
}

:is(.wp-block-image, .wp-block-post-featured-image).is-style-full-height img {
	object-fit: cover;
	height: inherit;
}
.home-hero .is-style-fkcas-cover {
    position: relative;
    background-color: transparent;
    overflow: visible;
    @media(max-width: 981px) {
        margin-top: var(--wp--preset--spacing--40) !important;
        margin-bottom: var(--wp--preset--spacing--40) !important;
    }
    img.wp-block-cover__image-background {
        border-radius: 30px;
    }
    .wp-block-cover__inner-container {
        width: 100% !important;
        & > .wp-block-group:not(.is-style-fkcas-floating-group) {
            margin-left: var(--wp--preset--spacing--40) !important;
            margin-bottom: var(--wp--preset--spacing--40);
            @media(min-width: 982px) {
                margin-left: var(--wp--preset--spacing--60) !important;
            }
            
        }
    }
    span.wp-block-cover__background {
        border-radius: 30px;
    }
}
.home-hero .is-style-fkcas-cover .wp-block-cover__inner-container {
    width: 100% !important;
    @media(min-width: 900px) {
        width: 50% !important;
    }
    & > .wp-block-group:not(.is-style-fkcas-floating-group) {
        margin-left: var(--wp--preset--spacing--40) !important;
        margin-bottom: var(--wp--preset--spacing--40);
        margin-top: 0;
        @media(min-width: 982px) {
            margin-left: var(--wp--preset--spacing--60) !important;
        }
        
    }
}
.home-hero .is-style-fkcas-floating-group {
    padding-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0;
    padding-bottom: 0;
    position: relative;
    @media(min-width: 900px) {
        padding-top: var(--wp--preset--spacing--40) !important;
        padding-left: var(--wp--preset--spacing--40) !important;
        position: absolute !important;
        right: -2px;
        bottom: -2px;
        max-width: clamp(26rem, -11.42rem + 60.98vw, 44.75rem);
    }
    .wp-block-group {
        padding: clamp(1.5rem, 0.65rem + 3.64vw, 4rem) !important;
        @media(max-width: 981px) {
            max-width: 100%;
        }
    }
}
.home main .wp-block-cover:has(.is-style-fkcas-floating-group) {
    @media(max-width: 781px) {
        min-height: 277px !important;
        p {
            font-size: var(--wp--preset--font-size--medium) !important;
        }
        .is-style-fkcas-floating-group > .wp-block-group {
            max-width: 174px;
        }
    }
}
.is-style-fkcas-floating-group {
    /* @media(min-width: 982px) { */
        &::before {
            content: '';
            background-image: url('../images/rounded-corners/corner-radius-16.svg');
            background-repeat: no-repeat;
            background-size: cover;
            width: 2.75rem;
            height: 2.75rem;
            position: absolute;
            right: 0;
            top: -2.75rem;
        }
        &::after {
            content: '';
            background-image: url('../images/rounded-corners/corner-radius-16.svg');
            background-repeat: no-repeat;
            background-size: cover;
            background-size: cover;
            width: 2.75rem;
            height: 2.75rem;
            position: absolute;
            left: -2.75rem;
            bottom: 0;
        }
    /* } */
}
.scroll-down {
    @media(max-width: 981px) {
        margin-top: var(--wp--preset--spacing--40) !important;
    }
    a {
        text-decoration: none;
    }
}
.home-hero {
    min-height: 477px;
    height: 100%;
    @media(min-width: 900px) {
        height: calc(100vh - 191px);
        min-height: 550px;
    }
    & > .wp-block-group {
        height: 100%;
    }
}
.page-child .hero .wp-block-cover__inner-container > .wp-block-group {
    @media(min-width: 782px) {
        width: clamp(18.625rem, -6.10rem + 50.58vw, 40.5rem);
    }
}
.home-hero, 
.hero {
    --mobile-header-height: 108px;
    --header-height: clamp(9.75rem, 8.00rem + 2.85vw, 10.625rem);
    margin-top: var(--mobile-header-height) !important;
    @media(min-width: 982px) {
        margin-top: var(--header-height) !important;
    }
}
.hero {
    .wp-block-heading, 
    .wp-block-post-title, 
    p {
        color: var(--wp--preset--color--shark-50) !important;
    }
    .wp-block-heading, 
    .wp-block-post-title {
        font-weight: 500;
    }
    .wp-block-cover__inner-container > .wp-block-group {
        margin-right: var(--wp--preset--spacing--40) !important;
        @media(min-width: 782px) {
            width: clamp(28.75rem, 1.35rem + 56.07vw, 53rem);
        }
    }
    .is-style-fkcas-floating-group {
        @media(max-width: 781px) {
            position: relative;
            margin-top: 0;
            padding-left: 0 !important;
            padding-top: 0 !important;
        }
    }
}

main .is-style-fkcas-cover {
    position: relative;
    background-color: transparent;
    overflow: visible;
    min-height: 500px;
    @media(max-width: 981px) {
        margin-top: var(--wp--preset--spacing--40) !important;
        margin-bottom: var(--wp--preset--spacing--40) !important;
    }
    img.wp-block-cover__image-background {
        border-radius: 30px;
    }
    .wp-block-cover__inner-container {
        width: 100% !important;
        & > .wp-block-group:not(.is-style-fkcas-floating-group) {
            margin-left: var(--wp--preset--spacing--40) !important;
            margin-bottom: var(--wp--preset--spacing--40);
            @media(min-width: 982px) {
                margin-left: var(--wp--preset--spacing--60) !important;
            }
            
        }
    }
    span.wp-block-cover__background {
        border-radius: 30px;
    }
}
main .is-style-fkcas-cover .wp-block-cover__inner-container {
    width: 100% !important;
    & > .wp-block-group:not(.is-style-fkcas-floating-group) {
        margin-left: var(--wp--preset--spacing--40) !important;
        margin-bottom: var(--wp--preset--spacing--40);
        margin-top: 0;
        @media(min-width: 982px) {
            margin-left: var(--wp--preset--spacing--60) !important;
            margin-bottom: var(--wp--preset--spacing--60) !important;
        }
        
    }
}
main .is-style-fkcas-floating-group {
    padding-right: 0;
    padding-bottom: 0;
    position: absolute;
    right: 0;
    bottom: 0;
    @media(min-width: 982px) {
        padding-top: var(--wp--preset--spacing--40) !important;
        padding-left: var(--wp--preset--spacing--40) !important;
        max-width: 100%;
    }
    .wp-block-group {
        @media(max-width: 981px) {
            max-width: 100%;
            padding: var(--wp--preset--spacing--20) !important;
        }
    }
}

.is-style-fkcas-floating-group .wp-block-group:has(.yoast-breadcrumbs) {
    border-radius: 20px;
    @media(max-width: 767px) {
        padding: var(--wp--preset--spacing--40) !important;
    }
}

.is-style-fkcas-floating-top-group {
    position: absolute;
    top: 0;
    left: 0;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    &::before {
            content: '';
            background-image: url('../images/rounded-corners/corner-radius-16-2.svg');
            background-repeat: no-repeat;
            background-size: cover;
            width: 2.75rem;
            height: 2.75rem;
            position: absolute;
            right: -2.75rem;
            top: 0;
            transform: rotate(180deg);
        }
        &::after {
            content: '';
            background-image: url('../images/rounded-corners/corner-radius-16-2.svg');
            background-repeat: no-repeat;
            background-size: cover;
            background-size: cover;
            width: 2.75rem;
            height: 2.75rem;
            position: absolute;
            left: 0;
            bottom: -2.75rem;
            transform: rotate(180deg);
        }
}
.wp-block-cover__inner-container:has(.is-style-fkcas-floating-top-group, .is-style-fkcas-floating-group) {
    position: unset;
}
.wp-block-cover:has(.is-style-fkcas-floating-top-group) {
    border-top-left-radius: 0 !important;
}
/* Labels */
label {
	font-weight: 700;
	font-size: var(--wp--preset--font-size--small);
	
}

/* General Form Field Settings */
input, textarea, select {
	margin-top: var(--wp--preset--spacing--10);
	margin-bottom: var(--wp--preset--spacing--40);
	border-width: var(--wp--custom--forms--fields--border--width);
	border-color: var(--wp--custom--forms--fields--color--border);
	border-radius: var(--wp--custom--forms--fields--border--radius);
	border-style: solid;
	background-color: var(--wp--custom--forms--fields--color--background);
	font-family: inherit;
	font-size: var(--wp--preset--font-size--small);
	line-height: inherit;
	color: inherit;
	padding: 1.25rem var(--wp--preset--spacing--30) !important;
}

/* Text Input Fields */
input:not([type="checkbox"],[type="radio"], [type="submit"]), textarea {
	padding: var(--wp--custom--forms--fields--spacing--padding) 0;
	width: 100%;
}
textarea {
	height: 6em;
	resize: vertical;
}
:is(input, textarea)::placeholder {
	/* opacity: 0.5; */
}
:is(input, textarea):focus {
	padding-left: var(--wp--custom--forms--fields--spacing--padding);
	padding-left: var(--wp--custom--forms--fields--spacing--padding);
}
/* :is(input, textarea):invalid, .gfield_error :is(input, textarea, select) {
	background-color: var(--wp--custom--forms--errors--color--background);
	border-color: var(--wp--custom--forms--errors--color--border);
	color: var(--wp--custom--forms--errors--color--text);
} */
.gfield_error {
	color: var(--wp--custom--forms--errors--color--text);
}

/* Radio / Checklist */
input:is([type="checkbox"],[type="radio"]) + label {
	font-weight: 400;
}

/* Select */
select {
	padding-top: var(--wp--custom--forms--fields--spacing--padding);
	padding-bottom: var(--wp--custom--forms--fields--spacing--padding);
	padding-left: 0;
	padding-right: 1em;
	width: 100%;
}

/* Select - Custom Drop Down Arrow - Requires Wrapper */
:is(.ginput_container_select, .ginput_address_country, .name_prefix_select, .gfield_time_ampm) {
	position: relative;
}
:is(.ginput_container_select, .ginput_address_country, .name_prefix_select, .gfield_time_ampm)::after {
	position: absolute;
	top: var(--wp--custom--forms--fields--spacing--padding);
	right: 0;
	z-index: 2;
	font-family: "Font Awesome 6 Pro";
	font-style: normal;
	content: '\f107';
	pointer-events: none;
	cursor: pointer;
}
:is(.ginput_container_select, .ginput_address_country, .name_prefix_select, .gfield_time_ampm) > select {
	appearance: none;
}

/* Form Buttons */
form :is(input[type="submit"], button), input[type="file"]::file-selector-button {
	background-color: var(--wp--preset--color--blue);
	color: var(--wp--preset--color--white);
	padding: 0.625em 1.5em;
	border-width: 0;
	border-radius: var(--wp--custom--border--radius-small);
	font-size: var(--wp--preset--font-size--small);
}
form input[type="file"]::file-selector-button {
	margin-inline-end: 1em;
}
form :is(input[type="submit"], button):focus  {
	opacity: 0.8;
}

/* File Field */
form input[type="file"] {
	border-width: 0;
}
form input[type="file"]:focus {
	border-width: initial;
	border-radius: var(--wp--custom--border--radius-small);
}

/* Fieldset */
fieldset {
	border: none;
	padding-inline-start: 0;
	padding-block-start: 0;
	padding-block-end: 0;
	padding-inline-end: 0;
	margin-inline-start: 0;
	margin-inline-end: 0;
}
fieldset legend {
	font-weight: 700;
}
/**
 * Shared link styles
 */

a {
	transition: all 0.3s ease-out;
	text-underline-offset: 4px;
	text-decoration-thickness: 1px;
	&:active {
		color: var(--wp--preset--color--shark-950);
	}
}

li:not(.wp-block-navigation-item, .gw-mm-item) a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
}
/**
 * General Modal Styling
 */

/* prevent background scroll when a dialog is open */
body.has-open-dialog {
    overflow: hidden;
}

/* overlay for when dialogs are open */
dialog::backdrop {
    background-color: var(--wp--preset--color--shark-400);
    opacity: 0.93;
}

/* leave the container styling to the content within */
dialog {
    background: transparent;
    opacity: 0.8;
    border: none;
    padding: 0;
    position: relative;
    margin: auto !important;
}
dialog .dialog-wrapper {
    background-color: var(--wp--preset--color--white);
    border-radius: 30px;
    margin-top: 3.438rem;
    padding: var(--wp--preset--spacing--60);
    @media(max-width: 767px) {
        padding: var(--wp--preset--spacing--40);
    }
}
dialog.team-modal {
    max-height: calc(100vh - (var(--wp--preset--spacing--30)*5) - var(--wp--preset--font-size--large) + var(--wp--preset--spacing--60)) !important;
    img {
        height: clamp(25rem, 18.608rem + 27.273vi, 39.063rem) !important;
    }
    a {
        text-decoration-thickness: 1px;
    }
}

dialog,
body .is-layout-flow > dialog {
    position: fixed;
    max-height: calc(100vh - (var(--wp--preset--spacing--30)*5) - var(--wp--preset--font-size--large));
    margin-block-start: auto;
    margin-block-end: auto;
}

/* allow it to overflow so we don't have a double scrollbar on smaller screens */
@media (max-width: 850px) {
    dialog {
        position: absolute;
        margin-block-start: var(--wp--preset--spacing--60);
    }
}

/* Close Button Form - closes the modal without the need for scripting */
dialog form.close {
    position: absolute;
    top: 0;
    right: 0;
}
dialog form.close button {
    background: var(--wp--preset--color--shark-950);
    padding: var(--wp--preset--spacing--10);
    font-weight: 700;
    cursor: pointer;
    justify-content: center;
    display: flex;
}
dialog form.close button svg {
    fill: var(--wp--preset--color--white);
    width: var(--wp--preset--font-size--large);
}

/**
 * Shared Styles for pagination more complex blocks
 * Blocks: query-pagination-previous, query-pagination-next, query-pagination-numbers, genesis-custom-blocks/filter-archive-pagination
 */

.wp-block-query-pagination,
.pagination-links {
    --anchor-width: 2.375rem;
}

.pagination-links,
.wp-block-query-pagination-numbers {
    display: flex;
    gap: var(--wp--preset--spacing--20) !important;
    @media(min-width: 768px) {
        border-top: solid 1px var(--wp--preset--color--shark-950);
        padding-top: var(--wp--preset--spacing--40);
    }
}
.mobile-pagination-results {
    display: none;
    @media(max-width: 767px) {
        border-top: solid 1px var(--wp--preset--color--shark-950);
        padding-top: var(--wp--preset--spacing--40);
        display: block;
    }
}

.pagination-links a,
.wp-block-query-pagination-numbers :is(a, span),
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
    
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    color: var(--wp--preset--color--white);
    cursor: pointer;
    font-weight: 400;
    text-decoration: none;
    font-size: var(--wp--preset--font-size--medium);
}
.pagination-links a.next,
.pagination-links a.previous {
    background-color: var(--wp--preset--color--shark-950);
    width: var(--anchor-width);
    height: var(--anchor-width);
    &:is(:hover, :focus) {
        text-decoration: none;
    }
}

.pagination-links a:is(:hover, :focus) {
    color: var(--wp--preset--color--orange-800);
}
.wp-block-query-pagination-numbers :is(a, span):is(:hover, :focus, .current),
.wp-block-query-pagination-previous:is(:hover, :focus)
.wp-block-query-pagination-next:is(:hover, :focus) {
    background-color: var(--wp--preset--color--orange-800);
}

.pagination-links a.previous {
    margin-right: auto;
}

.pagination-links a.previous:after,
.pagination-links a.next:after,
.wp-block-query-pagination-previous:after,
.wp-block-query-pagination-next:after {
    content: '\f177';
    display: inline-flex;
    font-family: "Font Awesome 6 Pro";
    font-style: normal;
    font-weight: 400;
    color: var(--wp--preset--color--shark-950);
    font-size: calc(var(--wp--preset--font-size--small) - 2px) !important;
    transition: transform 0.5s ease;
}

.pagination-links a.next,
.wp-block-query-pagination-next {
    margin-left: auto;
}

.pagination-links a.next:after,
.wp-block-query-pagination-next:after {
    content: '\f178';
}

.pagination-links a.disabled {
    pointer-events: none;
    opacity: 0.5;
}

.wp-block-query-pagination-numbers:first-child {
    margin-left: auto !important;
}

.wp-block-query-pagination-numbers:last-child {
    margin-right: auto !important;
}

.wp-block-query-pagination-numbers .page-numbers.dots {
    border: none;
    pointer-events: none;
}

/**
 * Block: core/query
 */

.wp-block-query {
	--container-width: var(--wp--custom--spacing--content-size);
	padding-bottom: 0 !important;
}
.wp-block-query.alignwide {
	--container-width: var(--wp--custom--spacing--wide-size);
}

/* Seems like we need this when nesting a query in the cover block for now */
.wp-block-cover .wp-block-query {
	width: var(--container-width);
	max-width: 100%;
}

.wp-block-post-template.is-layout-grid {
	gap: var(--wp--preset--spacing--50);
}
.wp-block-post-template.is-layout-grid:where(.columns-2,.columns-3,.columns-4,.columns-5,.columns-6) {
	display: grid;
	column-gap: var(--wp--preset--spacing--40);
	row-gap: var(--wp--preset--spacing--50);
	padding: 0;
	list-style: none;
}
.wp-block-post-template.is-layout-grid:is(.columns-2,.columns-3,.columns-4,.columns-5,.columns-6) > li.wp-block-post {
	width: auto;
	margin: 0;
}

.wp-block-post-template.is-layout-grid.columns-2 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/2 - var(--wp--preset--spacing--50)*1/2), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-3 {
	grid-template-columns: auto;
	@media(min-width: 800px) {
		grid-template-columns: repeat(3, 1fr);
	}
	/* grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/3 - var(--wp--preset--spacing--50)*2/3), 1fr)); */
}
.wp-block-post-template.is-layout-grid.columns-4 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/4 - var(--wp--preset--spacing--50)*3/4), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-5 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/5 - var(--wp--preset--spacing--50)*4/5), 1fr));
}
.wp-block-post-template.is-layout-grid.columns-6 {
	grid-template-columns: repeat(auto-fill, minmax(calc(var(--container-width)/6 - var(--wp--preset--spacing--50)*5/6), 1fr));
}

/**
 * If we're down to a single column just do auto columns. Fix for narrow screens.
 */
@media (max-width: 400px) {
	.wp-block-post-template.is-layout-grid:is(.columns-2,.columns-4,.columns-5,.columns-6) {
		grid-template-columns: auto;
	}
}
@media (max-width: 480px) {
	.wp-block-post-template.is-layout-grid:is(.columns-3) {
		grid-template-columns: auto;
	}
}

/**
 * Equal Height, No Wrap Style
 */
.wp-block-query.is-style-equal-height-no-wrap .wp-block-post-template {
	display: flex !important;
}

.wp-block-query.is-style-equal-height-no-wrap .wp-block-post-template > .wp-block-post {
	flex-grow: 1;
	flex-basis: 0;
	min-width: 0;
}

.wp-block-query.is-style-equal-height-no-wrap .wp-block-post-template > .wp-block-post > *:first-child:last-child {
	height: 100%;
}

/**
 * Strips Style
 * Intended be used with columns. Does an offset column view like film strips.
 */
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 {
	display: block;
}
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post {
	width: calc(50% - var(--wp--preset--spacing--50)*1/2);
	float: left;
	margin-block-start: var(--wp--preset--spacing--70);
}
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(even) {
	float: right;
}
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:first-child {
	margin-block-start: 0;
}
/* Push the right side down to create the effect */
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(2) {
	margin-block-start: calc(var(--wp--preset--spacing--70) * 3);
}
/* Clear the floats */
.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/**
 * Gutenberg Editor specific layout fixes since it has extra elements
 * A little finicky right now
 */
.block-editor-block-list__block.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(3) {
	margin-block-start: calc(var(--wp--preset--spacing--70) * 3);
}
.block-editor-block-list__block.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(2n+4) {
	float: left;
}
.block-editor-block-list__block.wp-block-query.is-style-strips .wp-block-post-template.is-layout-grid.columns-2 > li.wp-block-post:nth-child(2n+3) {
	float: right;
}

/**
 * Fixes for when Gutenberg isn't outputting inline styles
 * (e.g. markup included through custom blocks)
 */
ul.wp-block-post-template {
	list-style: none;
    margin-bottom: 0;
    margin-top: 0;
    max-width: 100%;
    padding: 0;
}

.wp-block-buttons.wp-block-query-pagination-is-layout-flex {
    margin-top: var(--wp--preset--spacing--60);
	a.wp-block-button__link {
		background-color: transparent;
		border: 2px solid var(--wp--preset--color--black);
		&:active {
			border-color: var(--wp--preset--color--black);
		}
	}
}

.wp-block-query.is-layout-flow.wp-block-query-is-layout-flow:not(:has(.wp-block-buttons.wp-block-query-pagination-is-layout-flex)) {
    padding-bottom: var(--wp--preset--spacing--60);
	
}

/**
 * Shared Styles for buttons and links in more complex blocks
 * Blocks: core/button, core/read-more, core-post-excerpt
 * - read-more: Text + Right Arrow visible, arrow moves on hover
 * - arrow: Variation where only Right Arrow is visible initially, text reveals / slides in on hover
 */
:is(.wp-block-read-more),
.wp-block-button:is(.is-style-read-more,.is-style-arrow) {
	font-size: var(--wp--preset--font-size--medium);
}
:is(.wp-block-read-more, .wp-block-post-excerpt__more-link, .wp-block-button.is-style-read-more) {
	transition: var(--wp--custom--animation--default-transition);
}
.wp-block-read-more:after,
:where(.wp-block-post-excerpt__more-link):after,
.wp-block-button:where(.is-style-read-more) .wp-block-button__link:after {
	display: inline-block;
	position: relative;
	font-family: "Font Awesome 6 Pro";
	font-style: normal;
	content: '\f178';
	margin-left: 0.5em;
	transition: inherit;
}
:is(.wp-block-read-more, .wp-block-post-excerpt__more-link):is(:hover, :focus):hover:after,
.wp-block-button.is-style-read-more:is(:hover, :focus) .wp-block-button__link:after {
	margin-left: 0.75em;
}

.wp-block-read-more.is-style-arrow {
	clip-path: inset(0 0 0 calc(100% - 1em));
	transform: translateX(calc(-100% + 1em));
}
.wp-block-read-more.is-style-arrow:is(:hover, :focus) {
	clip-path: inset(0 0 0 0);
	transform: translateX(0);
}
:where(.is-content-justification-center) > .wp-block-read-more.is-style-arrow,
:where(.wp-block-buttons.is-content-justification-center) .wp-block-button.is-style-arrow .wp-block-button__link {
	transform: translateX(calc(-50% + 0.5em));
}
.wp-block-buttons.is-content-justification-right .wp-block-button.is-style-arrow .wp-block-button__link {
	transform: none;
}

.wp-block-button:is(.is-style-read-more, .is-style-arrow) .wp-block-button__link {
	background-color: transparent;
	padding: 0;
}
.wp-block-button.is-style-read-more:is(:hover, :focus) .wp-block-button__link {
	border-color: transparent;
}
.is-style-remove-mobile-padding {
    @media(max-width: 781px) {
        padding: 0 !important;
    }
}
/**
 * Special styling for screen reader text
 */

.screen-reader-text {
    clip: rect(1px,1px,1px,1px);
    height: 1px;
    overflow: hidden;
    position: absolute!important;
    width: 1px;
    word-wrap: normal!important;
}
.service-groups {
    .wp-block-image img {
        min-height: 412px;
        max-height: 500px;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .wp-block-columns:nth-child(2) {
        @media(max-width: 767px) {
            margin-top: var(--wp--preset--spacing--40) !important;
            margin-bottom: var(--wp--preset--spacing--40) !important;
        }
    }
    .wp-block-columns.is-style-equal-height .wp-block-group {
        height: 100%;
    }
}
.service-groups.four-groups {
    .wp-block-columns:nth-child(3) {
        @media(max-width: 767px) {
            margin-top: var(--wp--preset--spacing--40) !important;
            margin-bottom: var(--wp--preset--spacing--40) !important;
        }
    }
}
.service .wp-block-group {
    word-break: keep-all;
    p:first-of-type {
        line-height: 1;
        margin-top: clamp(-0.375rem, -0.12rem + -0.27vw, -0.1875rem);
    }
}

.home-services {
    @media(max-width: 781px) {
        .wp-block-columns {
            margin-top: var(--wp--preset--spacing--40) !important;
            margin-bottom: var(--wp--preset--spacing--40) !important;
            &:first-of-type {
                margin-top: var(--wp--preset--spacing--10) !important;
            }
            img {
                min-height: 308px;
                object-fit: cover;
            }
        }
        .wp-block-buttons {
            justify-content: start !important;
        }
    }
}
/**
 * Any applicable css related to sitewide scrolling
 */

html { 
    scroll-behavior: smooth; 
}
/**
 * Template Part: footer
 */
.wp-site-blocks > footer {
    margin-top: 0;
    .logo-back-top {
        height: 100%;
        justify-content: space-between;
        @media(max-width: 781px) {
            align-items: flex-start;
            flex-direction: row;
            .wp-block-image {
                max-width: 138px;
            }
        }
        .back-to-top a::before {
            content: '\f176';
            font-family: 'Font Awesome 6 Pro';
            margin-right: var(--wp--preset--spacing--10);
            font-size: 18px;
        }
        .back-to-top a:is(:hover, :focus)::before {
            color: var(--wp--preset--color--orange-800);
        }
     }
    .footer-main-columns {
        @media(max-width: 781px) {
            flex-direction: column-reverse;
        }
        @media(max-width: 978px) {
            .wp-block-column:first-of-type {
                flex-basis: 67% !important;
            }
            .wp-block-column:last-of-type {
                flex-basis: 33% !important;
            }
        }
    }
    .footer-nav-columns {
        gap: clamp(4rem, -5.633rem + 19.71vi, 12.5rem);
        @media(max-width: 978px) {
            flex-direction: column;
            gap: var(--wp--preset--spacing--40);
        }
    }
    .footer-copyright {
        @media(max-width: 781px) {
            flex-direction: column;
            text-align: center;
            gap: var(--wp--preset--spacing--20);
            & > div.wp-block-group {
                flex-direction: column;
            }
        } 
        a {
            text-decoration: underline;
            text-underline-offset: 3.5px;
            text-decoration-thickness: 1px;
        }
    }
    a {
        text-decoration: none;
        &:is(:hover, :focus) {
            color: var(--wp--preset--color--orange-800) !important;
        }
    }
}

/* Footer CTA */
.footer-cta {
    overflow: visible;
    --mobile-img-min-height: 304px;
    position: relative;
    margin-top: calc(var(--wp--preset--spacing--70) + var(--wp--preset--spacing--60)) !important;
    @media(max-width: 767px) {
        padding-bottom: 0 !important;
    }
    .wp-block-columns .wp-block-column:first-of-type {
        margin-top: -7.5rem;
        max-height: 304px;
        z-index: 2;
        @media(min-width: 768px) {
            max-height: 100%;
            margin-top: clamp(-11.5rem, -2.32rem + -9.96vw, -8.4375rem);
        }
    }
    .wp-block-columns .wp-block-image {
        height: 100%;
        img {
            height: 100%;
            object-fit: cover;
            min-height: var(--mobile-img-min-height);

        }
    }
    .wp-block-group {
        @media(max-width: 767px) {
            padding-bottom: 0 !important;
        }
    }
}
/**
 * Template Part: header
 */

.wp-site-blocks > header > .wp-block-group {
	padding: var(--wp--preset--spacing--50);
}

/* Bring the Site Logo Overtop of the open mobile menu */
.wp-site-blocks > header .wp-block-site-logo {
	position: relative;
	z-index: 100001;
}

/* Peeking header */
.wp-site-blocks > header.peeking {
	box-shadow: 0 5px 10px 0px rgba(0, 0, 0, 0.1);
	transform: translateY(0);
	@media(min-width: 992px) {
		transform: translateY(-29%);
	}
	@media(min-width: 1101px) {
		margin-top: var(--top-nav-height);
		
	}
	.top-nav {
		transform: translateY(-100%);
	}
}
/* Hiding header */
.wp-site-blocks > header.hiding {
	transform: translateY(-100%);
	@media(min-width: 1101px) {
		margin-top: var(--top-nav-height);
	}
	.top-nav {
		transform: translateY(-100%);
	}
}
.wp-site-blocks > header {
	--admin-bar-offset: 0px;
	background-color: transparent;
	position: fixed;
	width: 100%;
	top: var(--admin-bar-offset);
	background-color: var(--wp--preset--color--white);
	z-index: 10;
	transition: transform 0.6s ease, box-shadow 0.3s ease, margin-top 0.3s ease, top 0.3s ease;
	transform: translateY(0);
	.wp-block-site-logo {
		z-index: 1 !important;
	}
	.top-nav {
		overflow: hidden;
	}
	.top-nav .inner-top-nav-wrapper .nav-wrapper {
		border-bottom-left-radius: 30px;
		transition: margin-right 300ms ease;
		max-width: 500px;
		@media(min-width: 1474px) {
			margin-right: -2rem !important;
		}
		a {
			text-decoration: none;
		}
	}
	.wp-block-site-logo {
		img {
			width: clamp(17.813rem, -5.727rem + 37.967vi, 29.25rem);
		}
	}
}


body.admin-bar .wp-site-blocks > header {
	--admin-bar-offset: 32px;
}

@media (max-width: 782px) {
	body.admin-bar .wp-site-blocks > header {
		--admin-bar-offset: 24px;
	}
	body.admin-bar .wp-site-blocks > header.hiding {
		--admin-bar-offset: 0;
	}
	body.admin-bar .wp-site-blocks > header.peeking {
		transform: translateY(-29%);
	}
}

/* @media (max-width: 600px) {
	body.admin-bar .wp-site-blocks > header {
		--admin-bar-offset: 0px;
	}
} */

/**
 * Main Entry / Post Content Layout Adjustments
 */

/** 
 * Apply hozizontal margins when below our max-width / alignwide limits 
 * eg. 1296px + 3.00rem (48px) on each side = 1392px
 */
@media (max-width: 1392px) {
	main > .entry-content > .alignwide {
		margin-left: var(--wp--preset--spacing--50) !important;
		margin-right: var(--wp--preset--spacing--50) !important;
	}
}

/** 
 * Apply hozizontal margins when below our contrained content limits 
 * eg. 960px + 3.00rem (48px) on each side = 1056px
 */
@media (max-width: 1056px) {
	main > .is-layout-constrained:not(.alignfull, .post-header, .wp-block-post-content),
	main > .entry-content > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
	main > .is-layout-constrained.post-header > :not(.wp-block-post-featured-image) {
		margin-left: var(--wp--preset--spacing--50) !important;
		margin-right: var(--wp--preset--spacing--50) !important;
	}
}

/**
 * Template: index.html
 */

/**
 * Change the aspect ratio of the featured posts to landscape when in single column
 */
@media (max-width: 942px) {
	body.blog .wp-block-post-template.is-flex-container .wp-block-post-featured-image img {
		aspect-ratio: 3 / 2;
	}
}
/**
 * Special Styling of the first post of the blog page on wider screens
 * Two column card layout with larger font sizes and spacing
 */
@media (min-width: 943px) {
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child > .wp-block-group {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: var(--wp--preset--spacing--50);
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-featured-image {
		display: grid;
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-featured-image img {
		aspect-ratio: auto;
		height: 100%;
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-featured-image + .wp-block-group {
		display: grid;
		justify-items: start;
		align-content: center;
		margin-block-start: 0;
		padding: var(--wp--preset--spacing--50);
		border-radius: var(--wp--custom--border--radius);
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-featured-image + .wp-block-group > * {
		width: 100%;
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-title {
		font-size: var(--wp--preset--font-size--h-3) !important;
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-title + .wp-block-group {
		margin-block-start: var(--wp--preset--spacing--30) !important;
	}
	body.blog .wp-block-post-template.is-flex-container > .wp-block-post:first-child .wp-block-post-excerpt {
		margin-block-start: var(--wp--preset--spacing--30) !important;
		font-size: var(--wp--preset--font-size--medium) !important;
	}
}

/**
 * Update how many grid columns the first post takes up so its an entire row
 * Adjust according to breakpoints of other columns (eg. 3 per row to 2 per row)
 */
@media (min-width: 943px) {
	body.blog .wp-block-post-template.is-flex-container.columns-3 > .wp-block-post:first-child {
		grid-area: 1 / 1 / 1 / 3;
	}
}
@media (min-width: 1393px) {
	body.blog .wp-block-post-template.is-flex-container.columns-3 > .wp-block-post:first-child {
		grid-area: 1 / 1 / 1 / 4;
	}
}