@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

:root {
	--base-font: "Montserrat", sans-serif;
}




/*
 *
 * Basic HTML
 *
 */
html {
	scroll-behavior: smooth;
	overflow-x: hidden;
	body, button, input, select, textarea {
		font-family: var(--base-font);
		font-weight: 400;
		font-style: normal;
		text-transform: none;
		font-size: 20px;
		line-height: 1.5;
	}
	h1, h2, h3, h4, h5, h6 {
		font-weight: 700;
		line-height: 1.1;
		margin: 1.5em 0 1em 0;
		text-wrap: balance;
	}
	p {
		margin: 1em 0 .5em 0;
	}
	h1 { font-size: clamp( 1em , 2em , 3em ); }
	h2 { font-size: clamp( 1em , 1.5em , 2.5em); }
	h3 { font-size: clamp( 1em , 1.25em , 2em); }
	h4 { font-size: clamp( 1em , 1em , 1.25em); }
	h5 { font-size: clamp( 1rem , 1em , 1em); }
	h6 { font-size: clamp( 1rem , 1em, 1em); }
	body {
	}
	a:not([href]) {
		cursor: default !important;
	}
	b, strong {
		font-weight: 700;
	}
	.plain-no-button {
		a:hover {
			text-decoration: none !important;
		}
	}
}




/*
 *
 * Layout Structure
 *
 */
body {
	.top-bar {
		.wp-block-buttons {
			margin: 0;
			.phone-number {
				font-size: 2.5em;
			}
		}
	}
	#masthead {
		
	}
	.inside-header.grid-container {
		padding-top: 0;
		padding-bottom: 0;
		.site-logo {
			padding: 10px 1em 10px 0;
		}
	}
	#menu-main-menu {
		& > li > a {
			--menu-box-height: 100px;
			min-height: var(--menu-box-height);
			line-height: 20px;
			padding-top: 40px;
			background: var(--accent);
			color: var(--base-3);
		}
		& > li:nth-child(even) > a {
			background: var(--light-blue);
		}
	}
	&.hide-page-title {
		#page {
			#main {
				margin: 0;
				.inside-article {
					padding-top: 0;
					padding-bottom: 0;
				}
			}
		}
	}
	.site-footer {
		border-top: 1em solid var(--bright-blue);
		border-top: 0;
		font-size: .75em;
		.site-info {
			text-align: left;
			.inside-site-info {
				display: block;
			}
		}
		.copyright {
			.site-name {
				
			}
			.site-description {
				display: block;
			}
		}
		.wp-block-heading,
		.widget-title {
			margin: 0;
			font-size: 1em;
			font-weight: bold;
			text-transform: uppercase;
			letter-spacing: 1px;
			color: var(--base-3);
			&.widget-title {
				margin-bottom: 30px;
			}
		}
		ul {
			li {
				margin: 0;
				a {
					color: var(--base-3);
				}
			}
		}
	}
}







/*
 *
 * WP Block Buttons
 *
 */
.wp-block-buttons {
	 margin: .5em 0;
	.wp-block-button__link {
		 font-weight: 700;
		 border-radius: 5px;
		 &:hover {
			 text-decoration: none;
		 }
	 }
}
.wp-block-buttons.is-vertical {
	gap: 0;
	margin: 3rem 0;
	& > .wp-block-button {
		& > .wp-block-button__link {
			border-radius: 0px;
			padding: 1.5rem;
			line-height: 1.1;
			transition: all 300ms;
			&:hover {
				scale: 1.05;
				border-radius: 20px !important;
			}
		}
		&:first-child > .wp-block-button__link {
			border-radius: 20px 20px 0 0;
		}
		&:last-child > .wp-block-button__link {
			border-radius: 0 0 20px 20px;
		}
		&.wp-block-button__width-50 {
			width: 100%;
			@media(min-width:768px){
				width: 50%;
			}
		}
	}
}




/*
 *
 * WP Block Cover
 *
 */
#page {
	.entry-content {
		& > .wp-block-cover {
			&:first-child {
				border-bottom: 10px solid var(--accent);
				margin-bottom: 3em;
			}
			& > .wp-block-cover__inner-container {
				max-width: 800px;
				margin-left: auto;
				margin-right: auto;
				h1 {
					font-size: clamp( 1rem , 10vw , 4rem );
					text-shadow: 3px 3px 3px rgba(0,0,0,.25);
					margin: 10px;
				}
				p {
					font-size: 2em;
					font-size: clamp( 1rem , 5vw , 2rem );
					line-height: 1.2;
				}
			}
		}
	}
	.wp-block-cover {
		.wp-block-cover__inner-container {
		}
		&:not([style]) {
			min-height: 100px;	
		}
	}
}


/*
 *
 * WP Block File
 *
 */
#page .wp-block-file {
	font-size: 1rem;
	display: flex;
	justify-content: space-between;
	line-height: 1;
	margin: .75rem 0;
	& > a:first-child {
		padding: 5px 0;
	}
	& > .wp-block-file__button {
		border-radius: 5px;
		background: var(--accent);
		color: #fff;
		padding: 7px 10px 5px 10px;
		font-size: .75rem;
		font-weight: bold;
		&:hover {
			background: var(--light-blue);
			color: #fff;
			text-decoration: none;
			opacity: 1;
		}
	}
}



/*
 *
 * WP Block Details
 *
 */
.wp-block-details {
	summary {
		font-weight: 700;
		color: var(--accent);
		margin-top: 20px;
		padding-left: 30px;
		text-indent: -20px;
		line-height: 1.2;
	}	
	&[open] {
		border-bottom: 1px solid var(--accent);
		padding-bottom: 20px;
		margin-bottom: 30px;
	}
}




/*
 *
 * People Stuff
 *
 */
.staff {
	border: 1px solid var(--light-blue);
	padding: 10px;
	margin: 0 0 10px 0;
	color: var(--accent);
	h4, p {
		margin: 0;
	}
}


/*
 *
 * Job Stuff
 *
 */
#jobs-wrapper {
	.job {
		border: 1px solid #ccc;
		padding: 1em 2em 2em 2em;
		margin: 2em 0;
	}
}



/*
 *
 * Sticky Block Wrapper
 *
 */
.sticky-block-wrapper {
	.wp-block-senff-sticky-block {
		border: 1px solid var(--accent);
		padding: 0 1em 1em 1em;
		box-shadow: 3px 3px rgba(0,0,0,.25);
	}
	& .wp-block-list {
		padding: 0;
		margin: 0;
		list-style: none;	
		& li {
			line-height: 1.2;
			border-bottom: 1px solid var(--accent);
			padding-bottom: .5em;
			margin-bottom: .5em;
		}
	}
}



/*
 *
 * Modal Search & Search Page
 *
 */
body .gp-search-modal .gp-modal__overlay {
	background: rgba(0,0,0,.75);
}
body.search-results {
	.inside-article	{
		border: 1px solid var(--accent);
		padding: 1.5rem;
		margin: 0 0 0 1rem;
		.entry-title {
			margin: 0 0 .5rem 0;
			a {
				color: var(--accent);
				&:hover {
					color: var(--light-blue);
				}
			}
		}
		.entry-summary {
			margin: 0;
			p {
				margin: 0;
			}
		}
	}
}



