/*
 Theme Name:   Homespec Seventeen
 Theme URI:    http://mediaworksweb.com
 Description:  Child Theme of Twenty Seventeen Theme
 Author: MediaWorks - Matt Ediger
 Author URI:   http://mediaworksweb.com
 Template:     twentyseventeen
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         flat, modern, responsive
 Text Domain:  Twenty-Seventeen-child
*/

/*
Colors:
black: #222020;
green: #006351;
blue: #005a7a;
darker-blue: #114354;

new colors:
dark blue: #002b64;
light blue: #454da0;
*/


/*
Fonts
-------------------------------------------------- */

body {
	font-size: 18px;
	line-height: 1.5;
	color: #484848;
}

body,
button,
input,
select,
textarea {
	font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6,
.main-navigation {
	font-family: 'Asap', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	padding-top: 1.5em;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	padding-top: 0;
}

h1 {
	line-height: 1;
}

h2, h3 {
	line-height: 1.2;
}

h4, h5, h6 {
	line-height: 1.4;
}

h1 {
	margin: 0 0 1em;
	font-size: 2.2em;
	color: #002b64;
}

h2 {
	margin: 0 0 1em;
	font-size: 1.4em;
	color: #222020;
}

h3 {
	margin: 0 0 .3em;
	font-size: 1.15em;
	color: #002b64;
}

h4 {
	margin: 0 0 .2em;
	font-size: 1.15em;
}

h5 {
	margin: 0 0 .5em;
	font-style: italic;
	font-weight: 600;
	font-size: 1.2em;
	letter-spacing: .025em;
	text-transform: uppercase;
	color: #454da0;
	opacity: .8;
}

p {
	margin: 0 0 1em;
	line-height: 1.5;
}

a {
	color: #002b64;
	transition: all .2s ease-out;
}

	a:hover,
	a:focus {
		color: #222020;
	}

strong {
	font-weight: 700;
	color: #002b64;
}

figure {
	margin: 0;
}

figcaption,
.wp-caption .wp-caption-text {
	margin: 0 0 1em;
	font-style: normal;
	font-size: .8125rem;
	color: #888;
}

address {
	font-style: normal;
}

label {
	font-weight: 400;
	color: #444;
}

.site-branding a:hover,
.site-branding a:focus {
	opacity: 1;
}

.entry-content a,
.entry-summary a,
.comment-content a,
.widget a,
.site-footer .widget-area a,
.posts-navigation a,
.widget_authors a strong {
	box-shadow: none;
	transition: all .2s ease-out;
}

.entry-content a:focus,
.entry-content a:hover,
.entry-summary a:focus,
.entry-summary a:hover,
.comment-content a:focus,
.comment-content a:hover,
.widget a:focus,
.widget a:hover,
.site-footer .widget-area a:focus,
.site-footer .widget-area a:hover,
.posts-navigation a:focus,
.posts-navigation a:hover,
.comment-metadata a:focus,
.comment-metadata a:hover,
.comment-metadata a.comment-edit-link:focus,
.comment-metadata a.comment-edit-link:hover,
.comment-reply-link:focus,
.comment-reply-link:hover,
.widget_authors a:focus strong,
.widget_authors a:hover strong,
.entry-title a:focus,
.entry-title a:hover,
.entry-meta a:focus,
.entry-meta a:hover,
.page-links a:focus .page-number,
.page-links a:hover .page-number,
.entry-footer a:focus,
.entry-footer a:hover,
.entry-footer .cat-links a:focus,
.entry-footer .cat-links a:hover,
.entry-footer .tags-links a:focus,
.entry-footer .tags-links a:hover,
.post-navigation a:focus,
.post-navigation a:hover,
.pagination a:not(.prev):not(.next):focus,
.pagination a:not(.prev):not(.next):hover,
.comments-pagination a:not(.prev):not(.next):focus,
.comments-pagination a:not(.prev):not(.next):hover,
.logged-in-as a:focus,
.logged-in-as a:hover,
a:focus .nav-title,
a:hover .nav-title,
.edit-link a:focus,
.edit-link a:hover,
.site-info a:focus,
.site-info a:hover,
.widget .widget-title a:focus,
.widget .widget-title a:hover,
.widget ul li a:focus,
.widget ul li a:hover {
	color: #222020;
	box-shadow: none;
}

.button,
input[type="submit"],
input[type="button"] {
	margin: 0;
	padding: 1em 2em;
	border: 1px solid #002b64;
	border-radius: 2px;
	background: #fff;
	font-weight: 400;
	font-size: 1em;
	line-height: 1;
	letter-spacing: 0;
	text-align: center;
	color: #002b64;
	transition: all .3s ease-out;
}

.button:hover,
.button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="button"]:hover,
input[type="button"]:focus {
	background: #002b64;
	color: #fff;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	padding: .6em;
	border-radius: 2px;
}


/*
Reset
-------------------------------------------------- */

.widget {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: inherit;
}

.widget ul {
	margin: 0 0 1em;
	padding: 0 0 0 1.5em;
	list-style: none;
}

.widget ul > li:before {
	content: '\f345';
	position: absolute;
	top: 3px;
	left: -14px;
	font-family: Dashicons;
	font-weight: 600;
	font-size: 12px;
	width: 14px;
}

.widget ul > li {
	position: relative;
	padding: 0;
	border: 0;
}

.widget:not(.widget_tag_cloud) ul li + li {
	margin-top: 2px;
}

.widget ol {
	margin: 0 0 1em;
	padding: 0 0 0 1.5em;
}

.widget ol > li {
	padding: 0;
	border: 0;
}

.post-edit-link,
.comments-area {
	display: none;
}

.entry-content a img, .comment-content a img, .widget a img {
	box-shadow: none;
}


/*
Margins
-------------------------------------------------- */

.wrap {
	margin: 0 auto !important;
	padding: 0 3% !important;
	max-width: 1170px;
}

.site-content {
	margin: 0 !important;
	padding: 3em 0 !important;
}

.content-area {
	margin: 0 auto !important;
}

body:not(.home) .content-area {
	max-width: 960px !important;
}


/*
Globals
-------------------------------------------------- */

/* mce formats */

.larger {
	font-size: 1.1em;
}

.larger-x2 {
	font-size: 1.2em;
}

.smaller {
	font-size: .9em;
}

.smaller-x2 {
	font-size: .8em;
}

.black {
	color: #111;
}

.white {
	color: #fff;
}

.white a {
	color: #eee;
}

.white a:hover,
.white a:focus {
	color: #fff;
}

.green,
.dark-blue {
	color: #002b64;
}

.blue {
	color: #454da0;
}

.no-margin-top {
	margin-top: 0 !important;
}

.no-margin-bottom {
	margin-bottom: 0 !important;
}

h2.no-margin-bottom {
	margin-bottom: .3em !important;
	line-height: 1;
}

h3.no-margin-bottom {
	margin-bottom: .1em !important;
}

.no-padding-top {
	padding-top: 0 !important;
}

.no-padding-bottom {
	padding-bottom: 0 !important;
}

.no-clear {
	clear: none;
}

/* extra classes */

.padding-section {
	padding-top: 50px;
	padding-bottom: 50px;
}

.small-padding-section {
	padding-top: 35px;
	padding-bottom: 35px;
}

.padding-column {
	padding-right: 25px;
	padding-left: 25px;
}

.border-section {
	margin-top: 50px;
	padding-top: 50px;
	border-top: 1px solid #cecece;
}

.use-textwidget-last-margin .textwidget > *:last-child,
.use-textwidget-last-margin.textwidget > *:last-child {
	margin-bottom: inherit;
}

/*
Site Header
-------------------------------------------------- */

.site-header {
	padding: .25em 0;
	border-bottom: 1px solid #dedede;
	background: none;
	box-shadow: none;
}

.site-header > .wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.site-branding {
	margin: 0;
	padding: 0;
	float: left;
}

.site-branding-text {
	position: absolute;
	left: -999em;
	height: 1px;
	width: 1px;
	clip: rect(1px,1px,1px,1px);
	overflow: hidden;
}

.custom-logo-link {
	margin: .5em 0;
	padding-right: 0 !important;
}

.custom-logo-link .custom-logo {
	display: block;
	max-height: none;
}

.navigation-right {
	float: right;
	width: 80%;
	flex: 1;
	font-size: 1.025em;
}

.main-navigation {
	float: right;
}

.main-navigation > div > ul {
	padding: .5em;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

.main-navigation li {
	padding: 0;
	border-bottom: 1px solid #eee;
}

body:not(.home) .main-navigation li.current-menu-item > a,
body:not(.home) .main-navigation li.current_page_item > a {
	color: #002b64;
}

.main-navigation a {
	padding: .2em 1em;
	color: #222020;
}

.main-navigation > div > ul {
	position: absolute;
	z-index: 100;
	top: 100%;
	top: calc(100% + .25em);
	right: 0;
	transition: all .4s ease-out;
}

.main-navigation > div > ul > li > a {
	min-width: 14em;
}

.main-navigation ul ul a {
	padding: .2em 0;
}

.menu-toggle {
	padding: .5em 1em;
	border: 1px solid #002b64;
	background: #002b64;
	color: #fff;
	transition: all .2s ease-out;
}

.menu-toggle:hover,
.menu-toggle:focus,
.toggled-on .menu-toggle {
	background: #fff;
	color: #002b64;
}

/*
Front Page
-------------------------------------------------- */

.home .site-content {
	padding-top: 0 !important;
}

.twentyseventeen-panel {
	overflow: visible;
}

.home .entry-header {
	display: none;
}

#home-banner .nextend-bar {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	text-align: center !important;
}

#home-banner .nextend-bar:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	height: 120px;
	width: 100%;
	background: url('assets/banner-angle-left.png') 0 0 / 100% 120px no-repeat;
}

#home-banner .nextend-bar:after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	height: 120px;
	width: 100%;
	background: url('assets/banner-angle-right-navy.png') 0 0 / 100% 120px no-repeat;
}

#home-banner .nextend-bar > div {
	position: relative;
	z-index: 10;
}

.blue-circle-link h3 {
	font-style: italic;
	font-weight: 600;
}

.blue-circle-link a {
	display: block;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	padding: 1em 1em 1.5em;
	border-radius: 100%;
	background: #002b64;
	line-height: 1;
	text-align: center;
	transition: all .4s ease;
}

.blue-circle-link a i {
	display: block;
	margin-bottom: 15px;
}

.blue-circle-link a i[class^="wp-svg"] {
	margin-bottom: 25px;
}

.blue-circle-link a:hover,
.blue-circle-link a:focus {
	border-radius: 4px;
	background: #ececec;
	color: #002b64;
	box-shadow: 0 0 0 3px currentColor;
}


/*
Regular Content
-------------------------------------------------- */

#content .entry-header > .entry-title:after {
	content: '';
	display: table;
	clear: both;
}

body {
	background: none;
}

.site {
	background: #f9f9f9;
	background: url('assets/site-bg-granite.jpg') 0 0 / cover no-repeat;;
}

.site-header,
.site-footer {
	background: rgba(236,236,236,.6);
}

.top-bar {
	padding: .2em 0;
	background: #002b64;
	font-weight: 600;
	font-size: .675em;
	color: #eee;
}

.top-bar .white {
	color: #eee;
}

.top-bar a {
	vertical-align: middle;
}

.site-content-contain {
	background: none;
}

#content .entry-header {
	margin: 0;
	padding: 0 0 2em;
}

#content .entry-header > .entry-title {
	display: inline-block;
	margin: 0;
	padding: 0;
	font-weight: 600;
	font-size: 2.5em;
	letter-spacing: 0;
	text-transform: none;
	color: #002b64;
}

#content .entry-header > .entry-title:before {
	content: '';
	position: relative;
	display: block;
	margin: 0 0 .4em;
	background: #002b64;
	height: 3px;
	width: 85px;
}

.textwidget > *:last-child {
	margin-bottom: 0;
}

/* #pre-footer */

.pre-footer {
	font-size: .925em;
}

.pre-footer .widget-title {
	margin-bottom: .5em;
	font-weight: 400;
	font-size: 1.75rem;
	color: #fff;
}

.pre-footer i {
	font-size: 140px;
}

.pre-footer .nf-before-form-content {
	display: none;
}

.pre-footer .nf-form-cont .recaptcha-container,
.pre-footer .nf-form-cont .g-recaptcha {
	float: right;
}

.pre-footer .nf-form-cont .submit-container {
	clear: right;
	float: right;
}

.pre-footer .nf-form-cont .recaptcha-wrap,
.pre-footer .nf-form-cont .submit-wrap {
	text-align: right;
}

.pre-footer .nf-form-cont .submit-wrap {
	margin-top: 0;
}

.pre-footer .nf-form-cont .submit-wrap input[type="button"] {
	border: 2px solid #f9f9f9;
	background: none;
	font-weight: 600;
	color: #f9f9f9;
}

.pre-footer .nf-form-cont .submit-wrap input[type="button"]:hover,
.pre-footer .nf-form-cont .submit-wrap input[type="button"]:focus {
	background: #f9f9f9;
	color: #002b64;
}

/*
Plugins/Widgets
-------------------------------------------------- */

.nf-form-cont .nf-form-fields-required {
	margin-bottom: 1em;
	font-style: italic;
	font-size: .8em;
	opacity: .8;
}

.nf-form-cont .label-above .nf-field-label {
	margin-bottom: .2em;
}

.nf-form-cont .nf-field-label label {
	font-weight: 400;
}

.nf-form-cont #ninja_forms_required_items,
.nf-form-cont .nf-field-container {
	margin-bottom: .5em;
}

.nf-form-cont nf-field:last-child .nf-field-container {
	margin-bottom: 0;
}

.nf-form-cont .nf-field-element textarea {
	height: 120px;
}

/*
.nf-form-cont .nf-form-wrap .recaptcha-container {
	position: absolute;
	left: -999em;
	margin-bottom: 0;
	visibility: hidden;
	opacity: 0;
}
*/

.nf-form-cont .submit-wrap {
	margin-top: 1em;
}


/*
Site Footer
-------------------------------------------------- */

.site-footer {
	margin-top: 0;
	border-top: 1px solid #dedede;
	font-size: 1em;
	line-height: inherit;
}

.sidebar-2 {
	padding: 2em 0;
	font-size: .9em;
}

.sidebar-2 img {
	width: auto;
	max-height: 130px;
}

.sidebar-3 {
	position: relative;
	padding: 1.5em 0;
	border-top: 1px solid #ddd;
	background: #e9e9e9;
	font-size: .75em;
	color: #888;
}

.sidebar-3 a {
	color: #888;
}

.sidebar-3 a:hover,
.sidebar-3 a:focus {
	color: #555;
}

.mediaworks-tagging {
	position: absolute;
	right: 3%;
	bottom: 0;
	padding: 0 0 6px;
	font-size: 10px;
	opacity: .55;
}


/*
Media Queries
-------------------------------------------------- */

/* >= 320px */
@media screen and (min-width: 20em) {
	.custom-logo-link img {
		max-width: 200px;
	}

	.blue-circle-link a {
		height: 270px;
		width: 270px;
	}

	.blue-circle-link a i {
		display: block;
		margin-bottom: 15px;
		font-size: 78px;
	}

	.alignright,
	.alignleft {
		float: none;
		margin: 0 auto;
		width: 100%;
	}

}

/* >= 480px */
@media screen and (min-width: 30em) {
	.alignright {
		margin: 0 0 .75em .75em;
		float: right;
		width: auto
	}

	.alignleft {
		margin: 0 .75em .75em 0;
		float: left;
		width: auto
	}

	.aligncenter {
		margin: 0 auto .75em;
		float: none;
		clear: both;
		width: auto
	}
}

/* >= 768px */
@media screen and (min-width: 48em) {
	h1 {
		font-size: 2.4em; 
	}

	h2 {
		font-size: 1.65em;
	}

	h3 {
		font-size: 1.35em;
	}

	.top-bar {
		font-size: .775em;
	}

	.custom-logo {
		margin-right: 2em;
	}

	.custom-logo-link img {
		max-width: 250px;
	}

	.page-one-column .panel-content .wrap,
	.wrap {
		max-width: 1170px;
	}

	.main-navigation {
		margin-right: -.6em;
	}

	.main-navigation > div > ul {
		position: relative;
		border: 0;
	}

	.main-navigation > div > ul > li {
		padding: 0 .5em;
	}

	.main-navigation > div > ul > li > a {
		padding: .5em .1em;
		min-width: auto;
		font-weight: 600;
		color: #222020;
	}

	.main-navigation > div > ul > li > a:hover,
	.main-navigation > div > ul > li > a:focus {
		color: #002b64;
	}

	.main-navigation li.menu-item-has-children > a > .icon,
	.main-navigation li.page_item_has_children > a > .icon {
		left: 0;
	}

	.main-navigation ul li.menu-item-has-children:after,
	.main-navigation ul li.page_item_has_children:after {
		border-color: transparent transparent #f9f9f9;
	}

	.main-navigation li {
		border: 0;
	}

	.main-navigation ul ul {
		left: -999em;
		border: 1px solid #bbb;
		background: #f9f9f9;
		font-size: .9em;
	}

	.main-navigation ul li:hover > ul,
	.main-navigation ul li.focus > ul {
		left: auto;
		right: -.5em;
	}

	.main-navigation ul li.menu-item-has-children:before,
	.main-navigation ul li.menu-item-has-children:after,
	.main-navigation ul li.page_item_has_children:before,
	.main-navigation ul li.page_item_has_children:after {
		right: .8em;
	}

	.main-navigation li li {
		background: none;
		transition: all .2s ease-out;
	}

	.main-navigation ul ul li:hover,
	.main-navigation ul ul li.focus,
	.main-navigation ul ul li.current-menu-item,
	.main-navigation ul ul li.current_page_item {
		background: #f1f1f1;
	}

	.main-navigation ul ul a {
		padding: .5em 1em;
		width: auto;
		min-width: 14em;
		max-width: 24em;
		color: #484848;
	}

	.main-navigation ul ul li:hover a,
	.main-navigation ul ul li.focus a,
	.main-navigation ul ul a:hover,
	.main-navigation ul ul a:focus {
		color: #002b64;
	}

	.main-navigation ul ul li.current-menu-item > a,
	.main-navigation ul ul li.current_page_item > a {
		box-shadow: none;
	}

	#home-banner .n2-ss-slider .nextend-bar {
		text-align: right !important;
	}

	#home-banner .nextend-bar:before,
	#home-banner .nextend-bar:after {
		height: 170px;
		background-size: 100% 170px;
	}

	.blue-circle-link a {
		height: 220px;
		width: 220px;
	}

	.blue-circle-link a i {
		display: block;
		margin-bottom: 15px;
		font-size: 72px;
	}

	#home-banner .nextend-bar span {
		font-size: 1.5em !important;
	}

}

/* >= 1024px */
@media screen and (min-width: 64em) {
	#home-banner .nextend-bar:before,
	#home-banner .nextend-bar:after {
		height: 220px;
		background-size: 100% 220px;
	}

	#home-banner .nextend-bar span {
		font-size: 1.75em !important;
	}

	.blue-circle-link a {
		height: 240px;
		width: 240px;
	}

	.blue-circle-link a i {
		display: block;
		margin-bottom: 15px;
		font-size: 76px;
	}

}


