/*
Theme Name: Twenty Twenty Five Child
Template: twentytwentyfive
Version: 1.0.0
*/

html {		
	margin: auto;
}

body {	
	margin: auto;	
	background-color: #FFF;
}

.wp-site-blocks {
	position: relative;
	background-color: #FFF;
	/* Sticky header */
	> header:first-of-type {
		position: fixed;
		inset: 0;
		bottom: auto;
		z-index: 9999;		
		background-color: var(--header-bg, transparent);
		transition: background-color 0.3s ease;
		box-shadow: var(--header-shadow, none);
	}
}
.editor-styles-wrapper {
	/*background-color: var(--wp--preset--color--tan);*/
}
.admin-bar {
	.wp-site-blocks {
		> header:first-of-type {
			@media(min-width: 783px) {
				top: 32px;
				bottom: auto;
			}
		}
	}
}
#wpadminbar {
	/*z-index: 99999999;*/
}

a {
	text-decoration: none;
	transition: color 0.5s ease;	
	&:hover {
		/*color: var(--wp--preset--color--dusty-blue);*/
	}
}
a:focus:not(:focus-visible) {
    outline: none;
}

h1, h2, h3, h4, h5, h6 {	
	margin-top: 0;
	a {
		transition: none;
		&:hover {
			/*color: var(--wp--preset--color--dusty-blue);*/
			text-decoration: underline;
		}
	}
}

.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    /*max-width: 1246px;*/
}

.footer-image {
	height: 108px;
	box-sizing: border-box;
	background-color: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: .75rem;
}

.footer-logo {
	max-width: 1920px;
	img {
		margin: var(--wp--preset--spacing--80) auto 0;
	}
}

.footer-copyright {
	align-self: flex-start;
	padding-bottom: 2rem;
	@media(min-width: 992px) {
		text-align: right;
		align-self: flex-end;
		padding-bottom: 0;
	}
}

.footer-link a {
	&:hover {
		text-decoration: underline;
	}
}

.footer-heading {
	a {
		border-bottom: 2px solid #FFF;
		transition: all .3s ease;
		display: inline-block;
		line-height: 1;
		&:hover {
			border-bottom-color: var(--wp--preset--color--dark-teal);
			color: var(--wp--preset--color--dark-teal);
		}
	}
}

@media(max-width: 991px) {
    :root .footer-copyright {
        text-align: left;
    }
}

.project-content {
	a {
		color: var(--wp--preset--color--bright-blue);
		&:hover {
			text-decoration: underline;
		}
	}
}

/* buttons - default styles --------------------------------------------------------------*/
:root .wp-block-button__link {
    transition: background-color 0.5s ease;
    border-radius: 0;
    font-size: 1rem;    
    letter-spacing: clamp(0.15rem, 8vw, 0.2rem);
    text-transform: uppercase;
    color: var(--wp--preset--color--dark-teal); 	 	
 	border-bottom: 1px solid var(--wp--preset--color--dark-teal);
 	font-weight: 500;
 	padding: 0.75rem 0;
}

:root .wp-block-button__link:hover {
    color: var(--wp--preset--color--teal);
	border-bottom: 1px solid var(--wp--preset--color--teal);
}

/* Gravity Forms ------------------------------------------------------------- */

.gform_wrapper input {
  border: none !important;
  text-transform: uppercase !important;
}

.gform_wrapper select {
	border: none !important;
}

.gfield_label,
.gform-field-label {  
  font-size: var(--wp--preset--font-size--small) !important;
  gap: 0 !important;
}

.gfield_required_asterisk {
	font-size: 1.5rem !important;
}

.ginput_container_textarea {
	textarea {
		border: 0 !important;
	}
}


/* Single Page ------------------------------------------------------------- */
.single-left-column {
	p {
		margin-bottom: 1rem;
	}
	img {
		margin-bottom: 1rem;
	}
}
.single-title {
	margin-left: 0;
	h1 {
		max-width: 670px;
		font-size: var(--wp--preset--font-size--medium-large);
		line-height: 1.2;
		letter-spacing: 0.05rem;
	}
}
.single-sidebar {
	padding-left: 1.5rem;

	ul {
		margin-top: 2.5rem;
		list-style-type: none;
		padding-left: 0;
	}

	li {
		margin-bottom: .6rem;
	}
}


/* Archive pages ------------------------------------------------------------- */
.k8-flex-posts {
	display: flex !important;
	flex-wrap: wrap;
	gap: 2rem;
	@media(min-width: 768px) {
		gap: 6rem 2rem;
	}

	> li {
		@media(min-width: 768px) {
			flex: 0 1 calc((100% - 2.5rem) / 2);
			margin-block-start: 0;
		}
	}
}