/* Variables */
:root {
	--sans: Roboto, sans-serif;
	--title: Roboto, sans-serif;
	--eyebrow: Montserrat, sans-serif;
	
	--scmd-slate: 		#162941;
	--scmd-navy:		#01316E;
	--scmd-cadet: 		#0C71C3;
	--scmd-cerulean:	#339CFF;
	--scmd-heather: 	#B4B4B4;
	--scmd-ash: 		#D9D9D9;
	--scmd-dove-gray:   #F6F7F9;
	--scmd-jade:		#727C2D;
	--scmd-bronze:		#904310;
	
	--small: 320px;
	--medium: 768px;
	--large: 1024px;
	--xlarge: 1280px;
}

/* Header Styles */

#block-style-logonavbar-sitelogo .content {
	& .header-logo {
		display: flex;
		align-items: center;
		gap: 10px;
		& img.header-emblem {
			width: 77px;
			height: auto;
			margin: 0;
		}
		& .subheadline {
			color: var(--scmd-slate);
			font-family: var(--eyebrow);
			font-size: 11px;
			font-weight: 600;
			line-height: 150%;
			letter-spacing: 1.085px;
			text-transform: uppercase;
		}
		& .headline {
			color: var(--scmd-slate);
			font-size: 26.75px;
			font-weight: 500;
			line-height: 110%;
		}
	}
}

.site-header--style-2 .site-navigation nav.menu--main ul.menu-main > li > a {
	font-size: 20px;
	font-weight: 400;
}


@media (min-width: 64rem) {
	.site-header--style-2 .site-navigation nav.menu--main ul.menu-main > li:hover > .flyout > ul {
		display: block;
	}
    .site-header--style-2 .site-navigation nav.menu--main ul.menu-main > li:focus-within > .flyout > ul {
        display: block;
    }
	.site-header--style-2 .site-navigation nav.menu--main ul.menu-main > li > .flyout > ul > li a {
		font-size: 20px;
	}
}

/* Alert Styles */
.paragraph--type--alert .alert-box.info {
	border: none;
}
.paragraph--type--alert .caution .message-box .message a {
    color: #000;
}

/* Hero Overrides */

.paragraph--type--hero-style-2 {
	&::before {
		opacity: 0.7178;
		background: linear-gradient(243deg, rgba(27, 27, 27, 0.00) 21.43%, #08152A 68.74%);
		height: 100%;
	}
	@media (min-width: 1024px) {
		& .hero-content-left {
			max-width: 690px;
		}
	}
	& .hero-headline {
		font-feature-settings: 'liga' off, 'clig' off;
		font-family: var(--sans);
		font-size: 3rem;
		font-weight: 500;
		line-height: normal;
		letter-spacing: -0.828px;
		@media (min-width: 1024px) {
			font-size: 4.5rem;
		}
	}
	& .hero-copy {
		color: #FFF;
		font-size: 1.25rem;
		line-height: 150%;
		letter-spacing: -0.2px;
	}
	& .field--type-link a {
		background-color: var(--scmd-cadet);
		font-size: 1.125rem;
		color: #FFF;
        &:hover {
            background-color: #FFB547;
            color: #000;
        }
	}
	& .hero-content-right {
		background: rgba(22, 41, 65, 0.84);
		padding: 12px !important;
		@media (min-width: 1024px) {
			margin-bottom: 48px;
		}
	}
	& .link-list a {
		background-color: var(--scmd-slate);
		font-size: 1.25rem;
		font-weight: 400;
		line-height: 150%;
		letter-spacing: -0.2px;
		text-decoration: none;
		justify-content: flex-start;
        &::after {
            background-image: url(../../images/arrow-cadet-blue.svg);
            width: 15px;
            height: 12px;
        }
        &:hover {
            color: #FFB547;
        }
	}
}

/* Body Overrides */

.field--type-text-long h2 {
	font-family: var(--title);
	font-size: 32px;
	font-weight: 500;
	line-height: 110%;
}

.large-text {
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: -0.2px;
}

/* Service Highlights Overrides */

.field--name-field-highlight-cards .paragraph--type--service-highlights.style-2.light-teal-arrow {
	& .title {
		color: var(--scmd-cadet);
		font-family: var(--title);
		font-size: 32px;
		font-weight: 500;
		line-height: 110%;
	}
	& .field--name-field-highlight-description {
		line-height: 1.5;
		color: #000;
	}
	& .highlight-read-more {
		color: var(--scmd-slate);
		font-size: 17px;
		line-height: 1.25;
        &::after {
            background-image: url(../../images/arrow-cadet-blue.svg);
            width: 15px;
            height: 12px;
        }
	}
}

/* Icon Launchpad Overrides */

body:not(.site-scdph, .site-des) .paragraph.icon-launchpad-layer .paragraph.icon-launchpad-item .icon-launchpad-item-title {
	font-family: var(--title);
	font-size: 13px;
	font-weight: 600;
	line-height: 150%; /* 19.5px */
	letter-spacing: 1.3px;
	text-transform: uppercase;
}

body:not(.site-scdph, .site-des) .paragraph.icon-launchpad-layer .field--name-field-icon-launchpad-items > .field__item {
	min-width: 230px;
}

/* Footer Style Overrides */

.site-footer__first {
	max-width: 1320px;
	margin: 0 auto;
	& .region-footer-first {
		position: relative;
		& .menu--social-media-menu.style-2 {
			margin: 0;
			@media (min-width: 1024px) {
				position: absolute;
    		top: 96px;
    		left: 150px;
    		width: fit-content;
			}
		}
		/* Change order for footer for mobile/tablet */
		@media (max-width: 1023px) {
			& #block-style-logonavbar-footer.border-bottom {
				order: 0;
				border-bottom: none !important;
			}
			& #block-style-logonavbar-logoaddress {
				order: 1;
				margin-bottom: 24px !important;
			}
			& #block-style-logonavbar-optionalsocialmediamenu {
				order: 2;
			}
		}
	}
}
@media (min-width: 1024px) {
	#block-style-logonavbar-footer {
		& ul.navbar-nav {
			justify-content: flex-end;
			& .nav-item > a {
				font-size: 17px;
				line-height: 1.6;
				letter-spacing: 0.531px;
			}
		}
	}
}

#block-style-logonavbar-logoaddress {
	& .field--type-text-with-summary {
		@media (min-width: 768px) {
		  display: flex;
		  gap: 15px;
    }
		& .emblem img {
			width: 134px;
			height: auto;
		}
		& .logo-content {
			margin-top: 1rem;
		}
		& p {
			margin-bottom: 0;
		}
	}
}

#block-style-logonavbar-optionalsocialmediamenu ul.nav {
	align-items: center;
	gap: 10px;
	&::before {
		content: 'Follow us: ';
		text-transform: uppercase;
		font-weight: 700;
	}
	& .nav-item {
		margin: 0 !important;
	}
}

.site-footer__bottom-nav {
	margin-bottom: 16px;
	justify-content: center;
	gap: 0 30px;
	& > div {
		padding: 0;
		@media (min-width: 1024px) {
			width: fit-content;
			flex: 0 0 auto;
		}
		& a.text-white {
			color: #F6F6F6;
			text-decoration: underline;
		}
	}
}

footer.site-footer #block-style-logonavbar-logoaddress.style-2 {
	width: initial;
}

/* Dynamic Page Overrides */

.header-style-2 .featured-top {
	& h1.title {
		font-family: var(--title);
		font-size: 48px;
		font-weight: 500;
		line-height: normal;
		letter-spacing: -0.828px;
	}
    &.dark-blue-gradient-circles {
        background-image: url(../../images/scmd-header-texture.png);
    }
	& .breadcrumb {
		& .breadcrumb-item {
			font-weight: 400;
			font-size: 14px;
			line-height: 150%;
			& > a {
				font-weight: 800;
			}
			& + .breadcrumb-item::before {
				content: '/';
			}
		}
	}
}
@media (max-width: 35.9375rem) {
	.header-style-2 .sub-page .featured-top-hero-content {
		padding: 30px 20px 16px;
		& h1.title {
			text-align: left;
			font-size: 40px;
			letter-spacing: -0.4px;
		}
	}
	.header-style-2 .featured-top {
		min-height: initial;
	}
	
	body:not(.path-frontpage) .block-system-breadcrumb-block {
		display: block;
	}
}

/* Sidebar Overrides */

.sidebar_first {
	& .block.menu--main h2 {
		&::before {
			content: none;
		}
		& a {
			font-family: var(--title);
			font-size: 22px;
			color: var(--scmd-cadet);
			font-weight: 500;
			line-height: 1.2;
		}
	}
	& .block.menu--main > ul > li {
		border: none;
		& > a:not(.plus) {
			font-size: 14px;
			font-weight: 400;
			line-height: 1.5;
		}
		& .block.menu--main ul a:not(.plus) {
			font-size: 14px;
		}
	}
	& .menu-main .menu-item--active-trail {
		text-decoration: underline;
	}
}

/* Resource Listing Pages */

.resource-listing {
	max-width: 1340px;
	margin: 0 auto 40px;
	& .view-header {
		padding: 0 16px;
		@media (min-width: 1340px) {
			padding: 0;
		}
	}
	& .view-filters .views-exposed-form .flex-wrap {
		padding: 16px;
		& > .js-form-item {
			width: 100%;
			& label {
				margin-left: 0;
				font-family: Roboto;
				font-size: 13px;
				font-weight: 600;
				line-height: 150%; /* 19.5px */
				letter-spacing: 1.3px;
				text-transform: uppercase;
			}
		}
		@media (min-width: 1024px) {
			justify-content: flex-end;
			gap: 0 9px;
			& > .js-form-item {
				width: fit-content;
			}
			& > .form-item-title {
				flex: 1 1 auto;
				max-width: 418px;
				margin-right: auto;
			}
		}
		@media (min-width: 1340px) {
			padding: 16px 0;
		}
		& .form-actions {
			margin-right: 0.625rem;
    		margin-left: auto;
    		display: flex;
			@media (min-width: 1024px) {
				margin-left: 0;
			}
			& input.form-submit {
				background: var(--scmd-cadet) !important;
				color: var(--Actual-White, #FFF);
				padding: 0.675rem 1.25rem;
				border-radius: 4px;
				border: 0;
    			margin-left: 0.3125rem;
    			margin-right: 0.3125rem;
				font-size: 20px;
				font-weight: 700;
				text-transform: none;
				line-height: normal;
				&[name="reset"] {
					background: var(--scmd-heather) !important;
					color: rgba(0, 0, 0, .62);
				}
			}
		}
	}
	& .pagination .page-item a.page-link {
		font-weight: 400;
		color: var(--scmd-navy);
		text-decoration: none;
		&:hover {
			text-decoration: underline;
		}
	}
	& .view-content .views-row:nth-of-type(2n-1) .resource {
		background-color: #EFF0F2;
	}

	& .resource {
		display: flex;
		padding: 20px 0;
		&.header {
			background-color: var(--scmd-ash);
			font-weight: 700;
			padding: 12px 0;
			display: none;
			@media (min-width: 1024px) {
				display: flex;
			}
		}
		& .resource-name {
			flex: 1 1 55%;
			padding: 0 20px;
			@media (min-width: 1024px) {
				flex: 1 1 65%;
				max-width: 900px;
			}
			& a {
				font-family: Roboto;
				color: var(--scmd-cadet);
				font-size: 20px;
				font-weight: 700;
				line-height: 1.5;
				letter-spacing: -0.2px;
				text-decoration-line: underline;
				@media (min-width: 1024px) {
					font-size: 16px;
					font-weight: 400;
					letter-spacing: normal;
				}
			}
		}
		& .resource-content {
			flex: 1 1 45%;
			padding: 0 20px;
			@media (min-width: 1024px) {
				flex: 1 1 35%;
				display: grid;
				align-items: baseline;
				justify-content: space-between;
				grid-template-columns: 1fr 1fr;
				& .resource-category, & .resource-date {
					margin-bottom: 0;
				}
				& .resource-category {
					flex: 0 1 180px;
				}
			}
		}
		& .resource-label {
			font-size: 16px;
			color: #000;
			font-weight: 700;
			line-height: 150%; /* 24px */
			letter-spacing: 0.32px;
			@media (min-width: 1024px) {
				&.mobile {
					display: none;
				}
			}
		}
		& .resource-category, & .resource-date, & .resource-type {
			margin-bottom: 20px;
		}
		@media (min-width: 1024px) {
			.resource-type {
				display: none;
			}
		}
	}
}

/* Tweaks/fixes */


/* Page margin fixes */
body .container-xxl {
	max-width: 1390px;
}

#block-style-logonavbar-sitelogo {
	max-width: calc(100% - 58px);
}

@media (max-width: 424px) {
	#block-style-logonavbar-sitelogo .content {
  		& .header-logo {
    		& .headline {
    			font-size: 21px !important;
    		}
  		}
	}	
}

body:has(.resource-listing) #main-wrapper #main {
	min-height: initial;
}

/* Suppress image highlight alternating styles */
.field--name-field-highlight-cards > .row > .col:nth-of-type(6n - 2) a {
	flex-direction: row;
}

.field--name-field-highlight-cards .paragraph--type--service-highlights.style-2 a {
	border: 1px solid #FFF;
}

.page-news,
.page-blog,
.page-events {
    .bef-exposed-form .form-submit  {
        background: #162941 !important;
        color: #fff;
        &:hover {
            background: #0c71c3 !important;
        }
    }
}

.view-policies .view-filters .form-actions input.form-submit:hover, .view-database-policy-search .view-filters .form-actions input.form-submit:hover {
	transform: none !important;
	text-decoration: underline;
	}

	.resource-listing {
		& .view-filters .views-exposed-form .flex-wrap {
			& .form-actions {
				& input.form-submit {
					&[name="reset"]:hover {
						color: rgba(0, 0, 0, .62) !important;
					}
				}
			}
		}
	}	