/*------->>> COLOR PALETTE <<<-------
	#1c3561 - rgb(28,53,97) | Primary Color [Blue]
	#aa1d3b - rgb(170,29,59) | Secondary Color [Red]
	#152849 - rgb(21,40,73)) | Tertiary Color [Blue Dark]
	#495d81 - rgb(73,93,129) | Support Color  [Blue Light]
	#80182e - rgb(128,24,46) | Accent Color [Red Dark]
	#f4f4f4  - rgb(244,244,244) | Gray01 [Gray Light]
	#505050 - rgb(80,80,80) | Gray02 [Gray Medium]
	#313131 - rgb(49,49,49) | Base Font Color [Gray Dark]
	#ffffff - rgb(255,255,255) | White
	#000000 - rgb(0,0,0) | Black

/*------->>> FONT STACKS & TYPOGRAPHY <<<-------
    font-family: 'Open Sans', sans-serif;  [Primary Font | 400 700]
	font-family: 'Rubik', sans-serif; [Secondary Font | 400 600 700]

/*------->>> DROP SHADOWS <<<-------
	Button Shadow
		-webkit-box-shadow:0px 2px 10px 0px rgba(0,0,0,0.08);
		-moz-box-shadow:0px 2px 10px 0px rgba(0,0,0,0.08);
		box-shadow:0px 2px 10px 0px rgba(0,0,0,0.08);
	
*/


@media all and (min-width:40rem) { /*- 640px and up -*/
	/*---> Forms [Spacing]  <---*/
	.formElements .formRow ul > li {
		padding-right:0.938rem !important; 
	}
	.formElements .formRow ul > li:only-child {
		width: 100%;
	}
	.formElements .formRow ul > li:last-child,
	.formElements .formRow ul > li:only-child {
		padding-right:0 !important;
	}
	.formElements .formRow ul > li:nth-last-child(n+2):nth-last-child(-n+2):first-child,
	.formElements .formRow ul > li:nth-last-child(n+2):nth-last-child(-n+2):first-child ~ li {
		width: 50%;
	}
	.formElements .formRow ul > li:nth-last-child(n+3):nth-last-child(-n+3):first-child,
	.formElements .formRow ul > li:nth-last-child(n+3):nth-last-child(-n+3):first-child ~ li {
		width: 33.333%;
	}
	.formElements .formRow ul > li:nth-last-child(n+4):nth-last-child(-n+4):first-child,
	.formElements .formRow ul > li:nth-last-child(n+4):nth-last-child(-n+4):first-child ~ li {
		width: 25%;
	}
	.formElements .formRow ul > li.radio fieldset span,
	.formElements .formRow ul > li.checkbox fieldset span {
		float:left;
	}
	.formElements .formRow ul > li.radio fieldset span:not(:last-of-type),
	.formElements .formRow ul > li.checkbox fieldset span:not(:last-of-type) {
		margin-right:1.125rem;
	}
    /* Form Specific */
    form:is(#form-317, #form-318) .formElements .formRow ul > li:is(.radio, .checkbox) fieldset span {
		width:calc(33.33333% - 1.125rem);
	}
	/*---> Main <---*/
	.primary-content-index:before {
		background:url(../images/bg-gray-pattern-1920x1618.jpg) top center no-repeat;
		background-size:cover;
	}
	/*---> Callouts <---*/
	.callout {
		background:transparent;
		margin:0 0 1.25rem 0;
	}
	.callout:after {
		max-height:75px;
	}
	.callout:hover:after,
	.callout:active:after {
		max-height:100%;
	}
	.callout:hover:after {
		background:rgba(28,53,97,0.90);
	}
	.callout:active:after {
		background:rgba(28,53,97,0.95);
	}
	.callout-media,
	.callout-body {
		-ms-flex:0 0 100%;
		flex:0 0 100%;
		max-width:100%;	
	}
	.callout-media.has-logo {
		min-height:360px;
	}
	.callout-media-img.media-img-logo {
		margin-top:-75px; /* The height of the Callout Title */
	}
	.callout-link:after {
		display:none;
	}
	.callout-body {
		padding:0 1.5rem;
		position:absolute;
		left:0;
		right:0;
		bottom:0;
	}
	.callout:hover .callout-body,
	.callout:active .callout-body {
		text-align:center;
		bottom:calc(50% - 25px);
		-webkit-transform:translateY(50%);
		transform:translateY(50%);
	}
	.callout-body:after {
		display:none;
		margin:0 auto;
		width:auto;
		padding:0.875rem 2.5rem;
		content: 'Learn More\0020'url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.19 17.87' width='25.19' height='17.87'%3E%3Cpath d='M16.64,17.87c-.26,0-.51-.1-.71-.29-.39-.39-.39-1.02,0-1.41l7.28-7.27L15.93,1.71c-.39-.39-.39-1.02,0-1.41s1.02-.39,1.41,0l7.28,7.28c.75,.76,.75,1.98,0,2.74l-7.28,7.27c-.2,.2-.45,.29-.71,.29Z' fill='%23fff' /%3E%3Cpath d='M23.93,9.9H1c-.55,0-1-.45-1-1s.45-1,1-1H23.93c.55,0,1,.45,1,1s-.45,1-1,1Z' fill='%23fff' /%3E%3C/svg%3E");
		position:relative;
		bottom:0;
		left:0;
		right:0;
		font-size:1.25rem;
		text-align:center;
		border:1px solid #fff;
		opacity:0;
	}
	.callout:hover .callout-body:after,
	.callout:active .callout-body:after {
		opacity:1;
		display:inline-block;
	}
	.callout-header {
		width:100%;
		height:75px;
	}
	.callout:hover .callout-header,
	.callout:active .callout-header {
		height:auto;
	}
	.callout-title {
		padding:0;
		margin:0 auto;
		text-align:center;
		position:absolute;
		top:50%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
		left:0;
		right:0;
	}
	.callout:hover .callout-title,
	.callout:active .callout-title {
		position:relative;
		top:initial;
		transform:none;
		margin:1.5rem 0;
	}
	.callout:hover .callout-overflow,
	.callout:active .callout-overflow {
		max-height:15.625rem;
	}
	/*---> Careers <---*/
	#divCareerDisplay#divCareerDisplay table {
		margin-top:0;
	}
	#divCareerDisplay#divCareerDisplay table,
	#divCareerResume#divCareerResume {
		width:calc(50% - 0.625rem);
	}
	#divCareerDisplay#divCareerDisplay table {
		float:left;
	}
	#formCareerResume#formCareerResume table {
		float:none;
		width:100%;
	}
}
@media all and (min-width:48.000rem) { /*- 768px and up -*/
	/*---> Galleries <---*/
	.lbThumb {
		-ms-flex:0 0 calc(33.33333% - 1.25rem);
		flex:0 0 calc(33.33333% - 1.25rem);
		max-width:calc(33.33333% - 1.25rem);
	}
	/*---> Careers <---*/
	#divCareerDisplay#divCareerDisplay table td {
		font-size:1.125rem;
	}
	#divCareerDisplay#divCareerDisplay .tdCareerLeft {
		width:155px;
	} 
	#divCareerResume#divCareerResume .tdCareerLeft {
		width:auto;
	}
}
@media all and (min-width:980px) { /*- 980px and up -*/
	/*---> Careers <---*/
	#divCareerDisplay#divCareerDisplay table {
		width:calc(66.667% - 0.625rem);		
	}
	#divCareerResume#divCareerResume {
		width:calc(33.333% - 0.625rem);
	}
	#formCareerResume#formCareerResume table {
		width: 100%;
	}
}
@media all and (min-width:64rem) { /*- 1024px and up -*/
	/* Desktop Font Sizing from basicStyles.css */
	h1, .like-h1 {
		font-size:3.5rem; /* 56 */
	}
	h2, .like-h2 {
		font-size:2.750rem; /* 44 */
	}
	h3, .like-h3 {
		font-size:2.125rem; /* 34 */
	}
	h4, .like-h4,
	.accordion-title,
    .tabs-title > a,
    .table caption,
	h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
		font-size:1.625rem; /* 26 */
	}
	h5, .like-h5,
	dl:not([class]) dt {
		font-size:1.375rem; /* 22 */
	}
	h6, .like-h6,
	blockquote p,
    figcaption,
    label,
    fieldset legend,
    input[type="submit"],
    form button,
    input[type="button"],
    button[type="submit"],
    .table thead tr th,
    .btn {
		font-size:1.25rem; /* 20 */
	}
	blockquote cite,
	.download-list li,
	.download-list li a,
	.download-link,
	.video-link {
		font-size:1.125rem; /* 18 */
	}
	p, li, td, dt, dd,
	ol:not([class]) li:before,
	.formElements .formRow > ul > li.required > label::after,
	.formElements .formRow > ul > li.required legend::after,
	.table,
	.table td,
	.alpha-list li:before {
		font-size:1rem;/* 16 */
	}
	/*---> Masthead <---*/
	.masthead-branding-link {
		max-width:155px;
	}
	.masthead-phone-link {
		margin-left:initial;
		margin-right:initial;
		padding:2.813rem 1.5rem 0 0;
		background:transparent;
		font-size:1.625rem;
	}
	/*---> Hero <---*/
	.hero-index {
		min-height:750px;
	}
	.hero-messaging {
		top:calc(50% + 65px);
	}
	.hero-messaging-title small {
		font-size:2rem;
	}
	.hero-messaging-content {
		padding:1.875rem 3.125rem;
	}
	/*---> Main <---*/
	.primary-content-index {
		padding-top:3rem;
	}
	/*---> Content Blocks <---*/
	.content-block:not([class*="pad-x"]):not([class*="pad-top"]):not([class*="pad-bottom"]) {
		padding-top:1.25rem;
		padding-bottom:1.25rem;
	}
	.content-block:not([class*="pad-y"]):not([class*="pad-right"]):not([class*="pad-left"]) {
		padding-left:3rem;
		padding-right:3rem;
	}
	/*---> Callouts <---*/
	.callout-title {
		/* Default h4 size. Set size so can use whatever header is appropriate */
		font-size:1.625rem;
	}
	/*---> Cards <---*/
	.card {
		padding:3.750rem 15%;
		text-align:left;
	}
	.columns:not(:last-of-type) .card {
		border:0;
		border-right:1px solid #dadada;
	}
	.card-body {
		display:block;
	}
	.card-title {
		/* Default h2 size. Set size so can use whatever header is appropriate */
		font-size:1.875rem; /* 30 */
	}
	.card-btn {
		padding-left:0;
		padding-right:0;
		width:100%;
		max-width:235px;
	}
	.glyph-card-title {
		/* Default h4 size. Set size so can use whatever header is appropriate */
		font-size:1.625rem;
	}
	.media-card {
		padding:4.5rem 0;
	}
	.media-card:before {
		left:0;
		right:auto;
		max-width:75%;
	}
	.media-card-media {
		margin-left:auto;
		margin-right:auto;
	}
	/*---> Panels <---*/
	.download-panel-content {
		padding:5.25rem 0;
	}
	/*---> Media Blocks <---*/
	.media-block-media {
		width:100%;
		height:100%;
		overflow: hidden;
	}
	.media-block-img {
		position: absolute;
		top: 50%;
		right:0;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
		width: auto;
		min-height: 100%;
		min-width: 100%;
		max-width: none;
		margin: 0 auto;
	}
	.media-block .large-order-2 .media-block-img {
		right: auto;
		left: 0;
	}
	.media-block-content {
		padding:6.25rem 4rem;
	}
	.media-block-content > .row > .columns {
		max-width:565px;
		padding:0;
	}
	/*--> CTAs <---*/
	.ctas {
		/* 50/50 split background color */
		background:linear-gradient(to right, #152849 0%, #152849 50%, #495d81 50%),#495d81;
		padding-top:5.625rem;
		padding-bottom:5.625rem;
		/*- Align Cener -*/
		-ms-flex-pack:center;
		justify-content:center;
		/*- Align Middle -*/
		-ms-flex-align:center;
		align-items:center;
	}
	.cta {
		-ms-flex:0 0 50%;
		flex:0 0 50%;
		max-width:640px;
	}
	.cta:first-of-type,
	.cta:nth-of-type(2) {
		background:transparent;
	}
	.cta-link {
		max-width:480px;
		margin-left:auto;
		margin-right:auto;
		padding:1.5rem 0.313rem;
		background:transparent;
		border:0;
		color:#fff;
	}
	.cta-link:before {
		max-height:0;
		border:2px solid #fff;
	}
	.cta-link:hover:before,
	.cta-link:active:before,
	.cta-link:focus:before,
	.cta-link:focus-visible:before {
		max-height:100%;
		border:4px solid #fff;
	}
	.cta-text {
		font-size:2.750rem; /* 44 */
	}
	.cta-text small {
		font-size:1.625rem; /* 26 */
	}
	/*---> Locations Map <---*/
	.locations-map:before {
		display:block;
	}
	/*---> Empoweren News Manager <---*/
	.title {
		font-size:1.625rem; /* 26 */
	}
	.newsHeader .date, .newsHeader .title,
	.short_description, #spanNavText {
		font-size:1rem;
	}	
	.newsArticles li {
		font-size:1rem;
	}
	.newsArticlesDate {
		font-size:1.625rem;
	}
	/*---> Empoweren Search Results <---*/
    .search_link  {
		font-size:1.375rem; /* 22 */
	}
	/*---> Colophon <---*/
	.colophon {
		padding:0;
		text-align:left;
	}
	.colophon .row:first-of-type {
		padding-top:5.625rem;
		padding-bottom:2rem;
	}
	.colophon-branding-link {
		margin-left:initial;
		margin-right:initial;
	}
	/*---> Locations Map <---*/
	.row.locationsBg .columns:last-of-type {
		margin-top:-5.125rem;
	}
	.interactiveMap {
		height:0;
		padding-bottom:73%;
	}
	.interactiveMap img {
		margin:0;
		position:absolute;
		width:100%;
		max-width:100%;
		left:50%;
		top:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	.interactiveMap .desktopMap {
		display:block;
	}
	.interactiveMap .mobileMap {
		display:none;
	}
	.interactiveMap a {
		display:block;
	}
}
@media all and (min-width:64.063rem) { /*- 1025px and up -*/
	a[href^="tel"] {
		pointer-events:none;
	}
	/*---> Masthead <---*/
	.masthead-hidden {
		will-change: transform;
		transform: translateY(-134px);
		transition: transform 0.3s ease-out;
	}
	.masthead-stuck {
		background:#fff;
		position:fixed;
		top:0;
		left:0;
		right:0;
		-webkit-box-shadow:0px 10px 20px 0px rgba(0,0,0,0.08);
		-moz-box-shadow:0px 10px 20px 0px rgba(0,0,0,0.08);
		box-shadow:0px 2px 10px 0px rgba(0,0,0,0.08);
		-webkit-animation: navSlide 0.75s ease-in-out forwards;
		animation: navSlide 0.75s ease-in-out forwards;
	}
	.masthead-stuck .masthead-phone-link {
		color:#1c3561;
		text-shadow:initial;
	}
	.masthead-stuck .masthead-branding-link svg .logo-hammer-steel-svg01,
	.masthead-stuck .masthead-branding-link:hover svg .logo-hammer-steel-svg02 {
		fill:#1c3661;
	}
	.masthead-stuck .masthead-branding-link svg .logo-hammer-steel-svg02,
	.masthead-stuck .masthead-branding-link:hover svg .logo-hammer-steel-svg01 {
		fill:#86162d;
	}
}
@media all and (min-width:1180px) { /*- 1180px and up -*/
}
@media all and (min-width:1275px) {
	.locations-map:before {
		/*
			Based off of 1275 as max row width
			50% of 1270 = 637.5px
			41.6667% of 1275 = 531.25px
			position left side of large-7 columns that contains map points
		*/
		left:calc((50vw - 637px) + (531px));
	}	
}