/*
Theme Name: Twenty Twenty-Three Child
Theme URI: https://diviextended.com/
Author: Elicus Technologies
Author URI: https://elicus.com
Template: twentytwentythree
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

html {
	scroll-behavior: smooth;
}

body {
	--wp--preset--font-family--system-font: 'depot-new-web', sans-serif;
}

#wpadminbar {
	position: fixed;
}
header {
	transition: all .2s linear;
}
.sticky-header main {
	padding-top: 114px;
}
.sticky-header header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
	box-shadow: 0 2px 10px 0 rgb(36 50 66 / 100%);
}
.sticky-header.admin-bar header {
	top: 32px;
}
@media (max-width: 782px) {
	.sticky-header.admin-bar header {
		top: 46px;
	}
}
@media (max-width: 1200px) {
	.wp-block-site-logo img {
		max-width: 190px;
	}
}
@media (max-width: 1240px) {
	header .primary-nav,
	header .mobile-nav,
	header .wp-block-social-links {
		padding-right: 12px;
	}
}

@media (max-width: 480px) {
	.top-header-row .wp-block-buttons,
	.top-header-row .wp-block-buttons > .wp-block-button > a {
		width: 140px;
		flex-flow: column;
	}
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'din-2014', sans-serif;
	font-weight: 600;
}

.bg-roof-overlay {
	background-image: url(https://gfedale.wpengine.com/wp-content/uploads/2022/12/Roof-Shape-Overlay-copy.png);
	background-position: bottom right;
	background-repeat: no-repeat;
	background-size: cover;
}

.stk-separator__bottom {
	z-index: 1 !important;
}

.wp-block-post-featured-image img {
	aspect-ratio: 16/9;
	object-fit: cover;
}

.wp-block-cover__background {
	mix-blend-mode: multiply;
}
.wp-block-cover__background:first-child:nth-last-child(2) {
	opacity: 1;
}
.wp-block-cover__inner-container:nth-child(3) {
	padding: 6vh 0;
}

header nav.primary-nav {
	margin-top: 0.5rem;
}
header nav.primary-nav .wp-block-navigation__container > .wp-block-navigation-item:not(:last-child):after,
header nav.secondary-nav .wp-block-navigation__container > .wp-block-navigation-item:not(:last-child):after {
	content: '|';
	padding-left: 1rem;
}
header nav.primary-nav .wp-block-navigation__submenu-container {
	padding: 10px;
}
header nav.secondary-nav ul.wp-block-navigation__container {
	gap: 1rem;
}
header nav.primary-nav .wp-block-navigation-item:not(:last-child):after {
	color: var(--wp--preset--color--secondary);
}
header nav .rfth span:after {
	content: '';
    display: inline-block;
    width: 30px;
    height: 20px;
    margin-left: 6px;
    vertical-align: middle;
    background-image: url(https://gfedale.wpengine.com/wp-content/uploads/2023/01/RFTH-Icon.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--white);
}

.services-heading a {
	text-decoration: none;
}

.gf-services-grid ul {
	justify-content: space-between;
	gap: 1.25rem !important;
}
.gf-services-grid li {
    position: relative;
	width: calc(100% - 6px) !important;
	height: 0;
	padding-bottom: calc(100% - 6px);
    overflow: hidden;
	border: 3px double var(--wp--preset--color--tertiary);
	border-radius: 50%;
}
@media (min-width: 600px) {
	.gf-services-grid li {
		width: calc(33.33333% - 1.25rem) !important;
		padding-bottom: calc(33.33333% - 1.25rem);
	}
}
.gf-services-grid li:hover {
	border-style: solid;
	box-shadow: 0px 4px 12px 0px rgb(0 0 0 / 70%);
}
.gf-services-grid .wp-block-post-featured-image {
    width: 100%;
    height: 0;
    padding-top: 100%;
    margin: 0;
}
.gf-services-grid .wp-block-post-featured-image a,
.gf-services-grid .wp-block-post-featured-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.gf-services-grid .wp-block-post-title {
    position: absolute;
    width: 90%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.gf-services-grid .wp-block-post-title a {
	display: block;
}
.gf-services-grid .wp-block-post-title a:hover {
	text-decoration: none;
}
.gf-services-grid li:hover .wp-block-post-title {
	width: 100%;
	height: 100%;
	opacity: 0;
	z-index: 1;
}
.gf-services-grid li:hover .wp-block-post-title a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1;
}
.gf-services-grid .wp-block-post-excerpt {
	display: none;
}
.gf-services-grid li:hover .wp-block-post-excerpt {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
    opacity: .9;
	background-blend-mode: multiply;
}
.gf-services-grid .wp-block-post-excerpt p {
	padding: 10%;
	margin: 0;
	font-weight: 500;
	font-style: italic;
}
.gf-services-grid .wp-block-post-excerpt__more-text {
	display: none;
}

.gf-locations-grid {
	display: grid;
	grid: 1fr / 1fr 3fr;
	gap: 1rem;
}
.gf-locations-grid > div {
	width: 100%;
}
.gf-locations-grid p,
.gf-locations-grid .stk-block-map {
	width: 100%;
	height: 300px;
	margin: 0;
}
@media (max-width: 920px) {
	.gf-locations-grid {
		grid: 1fr / 1fr 2fr;
	}
}
@media (max-width: 500px) {
	.gf-locations-grid {
		grid: none;
		position: relative;
	}
	.gf-locations-grid > div:last-child {
		position: absolute;
		top: 120px;
	}
	.gf-locations-grid p,
	.gf-locations-grid .stk-block-map {
		height: 440px;
	}
}

footer {
	margin-top: 0 !important;
}
footer .footer-bottom * {
	text-align: center;
}
footer .wp-block-latest-posts__post-title {
	text-transform: uppercase;
	text-decoration: none;
}
footer .wp-block-latest-posts__post-title:hover {
	text-decoration: underline;
}
footer .wp-block-latest-posts__featured-image {
	margin-bottom: 1rem;
}
footer .wp-block-latest-posts__post-excerpt {
	font-size: .8em;
	margin-top: 1rem;
}
@media (min-width: 769px) {
	footer .footer-bottom * :not(.wp-element-button) {
		text-align: left !important;
		justify-content: start !important;
		align-items: start !important;
	}
}

input::placeholder,
textarea::placeholder {
    color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--system-font);
}
.gform_wrapper.gravity-theme .gfield label,
.gform_wrapper.gravity-theme .gfield_description,
.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--wp--preset--color--contrast);
	border: none;
}
.gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
	border-radius: 2px;
	box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 50%);
}
.gform_wrapper.gravity-theme .gfield_error input[type=email],
.gform_wrapper.gravity-theme .gfield_error input[type=number], 
.gform_wrapper.gravity-theme .gfield_error input[type=password], 
.gform_wrapper.gravity-theme .gfield_error input[type=search], 
.gform_wrapper.gravity-theme .gfield_error input[type=tel], 
.gform_wrapper.gravity-theme .gfield_error input[type=text], 
.gform_wrapper.gravity-theme .gfield_error input[type=url], 
.gform_wrapper.gravity-theme .gfield_error select, 
.gform_wrapper.gravity-theme .gfield_error textarea {
	border: 1px solid red;
}
.gfield_description {
	display: inline;
	padding-left: 8px;
}
.ginput_container_radio {
	display: inline-block
}
.gchoice {
	display: inline;
}
.gform_wrapper.gravity-theme .gform_footer {
	margin: 10px 0 0 0;
	padding: 0;
}
.gform_wrapper.gravity-theme .gform_footer input {
	margin: 0;
}
.gform_button {
    border: 1px solid var(--wp--preset--color--base);
    background-color: var(--wp--preset--color--secondary);
    color: var(--wp--preset--color--base);
    text-transform: uppercase;
    font-weight: 700;
    padding: 1rem;
    font-size: 1.2rem;
    width: 100%;
	cursor: pointer;
}
.gfield_validation_message {
	display: none;
}
#gform_1 {
	padding: 12px;
	border-radius: 8px;
	background: rgb(255 255 255 / 85%);
}
@media (min-width: 768px) {
	#gform_1 .gform_button {
		width: auto;
	}
	.stk-1385973-container {
		transform: translatey(-70px);
	}
}
/* what in the actual fuck WordPress... */
.gfield_radio > .gchoice > br {
	display: none;
}

.gf-arrow-down {
	position: relative;
	margin-bottom: 50px;
}
.gf-arrow-down:after {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-top: 30px solid var(--wp--preset--color--tertiary);
	border-left: calc(45vw - 12px) solid transparent;
	border-right: calc(45vw - 12px) solid transparent;
}
@media (min-width: 768px) {
	.gf-arrow-down:after {
		border-left: clamp(131px, calc(19vw - 12px), 175px) solid transparent;
		border-right: clamp(131px, calc(19vw - 12px), 175px) solid transparent;
	}
}

#services {
	position: relative;
}
#services .services-flyout {
	display: none;
}
@media (min-width: 1200px) {
	#services .services-flyout {
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translatey(-50%);
		margin-top: 0 !important;
	}
	#services .services-flyout .wp-block-button__link {
		width: 400px;
		height: 150px;
		padding-top: 60px;
		transform: rotate(-90deg) translateY(125px);
		clip-path: polygon(50% 0, 100% 50%, 100% 100%, 0% 100%, 0% 50%);
	}
}