﻿@import url('text-style.css');

html, body { margin:0; }

.layout { width:8rem; margin:0 auto; height:inherit; display:flex; justify-content:space-between; align-items:center; }
#masthead { height:0.6rem; background:#ffffff; z-index:1000; }
#masthead-logo { position:relative; display:block; margin:0; height:65%; margin-top:0.05rem; }
#masthead-logo img { display:block; margin:0; height:100%; width:auto; }
.masthead-item { display:flex; justify-content:space-between; align-items:flex-start; font-size:90%; line-height:1; }
.masthead-item i { display:block; color:#8d1419; font-size:220%; margin-right:0.05rem; }
.masthead-item div { font-family:'Heebo Medium'; }
.masthead-item div:first-line { font-family:'Heebo'; }
.masthead-item a { color:inherit; text-decoration:none; }
.masthead-item a:hover { text-decoration:underline; }

#masthead-logo-strip { align-items:center; }
#masthead-logo-strip img:nth-child(1) { margin-right:0.05rem; }
#masthead-logo-strip img { display:block; width:0.8rem; }

#main-nav { background-color:#272933; height:0.4rem; }
#main-nav-layout { display:block; }
#main-nav-root, #main-nav-root > li { height:100%; }
#main-nav-root > li { flex-grow:1; flex-shrink:1; position:relative; }
#main-nav-root ul { min-width:100%; position:absolute; left:0; top:100%; max-height:0; opacity:0; transition:opacity 0.2s; }
#main-nav-root li:hover > ul { max-height:1000rem; opacity:1; }
#main-nav-root li.indented > a { padding-left:0.2rem; }
#main-nav * { text-transform:none; }
#promo { background:url('../img/layout/promo.bkg.jpg') center no-repeat; background-size:cover; color:#ffffff; position:relative; width:100%; height:0; padding-bottom:35.31%; }
#promo-container { position:absolute; left:0; right:0; top:0; bottom:0; width:100%; height:100%; display:flex; align-items:center; justify-content:flex-start; }
#promo-content { width:45%; }
#promo-content h1 { color:#ffffff; font-size:400%; font-weight:normal; }
#promo-content p { color:#ffffff; font-family:'Heebo Light'; font-size:120%; }

#home-panels { position:relative; height:0.7rem; margin:-0.35rem 0 0; }
.home-panel { width:30%; display:flex; justify-content:space-between; align-items:center; color:inherit; text-decoration:none; background:#ffffff; border-radius:0.05rem; height:100%; padding:0 0.1rem 0 0.15rem; box-shadow:0 0.1rem 0.1rem rgba(0,0,0,0.15); }
.home-panel span { display:flex; background:#8d1419; border-radius:50%; width:0.4rem; height:0.4rem; justify-content:space-around; align-items:center; padding:0; align-self:center; }
.home-panel span img { display:block; margin:0; max-width:50%; max-height:60%; }
.home-panel h3, .home-panel p { margin:0; }
.home-panel div { width:70%; }

#home-partners { background:#ffffff; padding:0.3rem 0 0.15rem; }
#home-partners h3::after { font-family:'FontAwesome'; content:'\f054'; color:#8d1419; display:inline-block; margin-left:0.1rem; }
#home-partners img { display:block; max-height:0.3rem; max-width:0.7rem; }

#home-middle { background:#dadada; padding:0.3rem 0; }
#home-middle-content { background:#272933; float:left; padding:0.3rem; height:2.2rem; margin-left:0.25rem; display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start; z-index:1; position:relative; }
#home-middle-content * { color:#ffffff; }
#home-middle-layout { flex-direction:row-reverse; }
#home-middle img { width:80%; margin-left:-15%; flex-grow:0; flex-shrink:0; }
#home-middle blockquote { padding:0; margin:0; font-family:'Heebo light'; font-size:140%; text-indent:-0.05rem; line-height:1.4; }
#home-middle p:first-line { font-family:'Heebo Medium'; }
#home-middle p { margin:0.05rem 0 0; font-size:90%; }
#home-middle p:last-child { justify-self:flex-end; margin-top:0.15rem; }

#home-sourcing { padding:0.3rem 0; }
#home-sourcing-layout { flex-direction:column; align-items:center; }
#home-sourcing h2 { color:#8d1419; }
#home-sourcing-details { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; list-style-type:none; padding:0; margin:0; }
#home-sourcing li { display:flex; gap:0.05rem; width:30%; margin-top:0.25rem; }
#home-sourcing li:last-child { margin-left:auto; margin-right:auto; }
#home-sourcing img { display:block; width:0.5rem; align-self:center; }
#home-sourcing h3, #home-sourcing p { margin:0; }
#home-sourcing h3 { font-size:110%; }

#home-contracts { background:#252830; padding:0.3rem 0; }
#home-contracts * { color:#ffffff; }
#home-contracts-layout { flex-direction:column; }
#home-contracts h1 { margin:0; }
#home-contracts p { font-family:'Heebo Light'; font-size:140%; margin:0 0 0.3rem; }
#home-contracts p strong { font-weight:normal; }
#home-contracts p strong::after { content:':'; }
#home-contracts .contracts-list { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; list-style-type:none; padding:0; margin:0; width:70%; }
#home-contracts .contracts-list li { width:30%; padding:0; margin:0.05rem 0; }
#home-contracts .contracts-list strong::after { content:':'; }
#home-contracts-logos { display:flex; justify-content:space-around; align-items:center; gap:0.25rem; margin-top:0.3rem; }
#home-contracts-logos img { display:block; align-self:center; max-height:0.65rem; max-width:1rem; }
#main-footer { background:#8d1419; padding:0.2rem; }
#main-footer * { color:#ffffff; }
#main-footer-layout { flex-direction:column; }
#footer-nav { margin-bottom:0.1rem; }
#footer-nav-root * { text-transform:none; }
#footer-nav-root ul, #mobile-nav-root ul ul { display:none; }
#copyright { font-size:90%; }


.nav-root { display:flex; margin:0; padding:0; list-style-type:none; align-items:center; }
.nav-root li { display:flex; margin:0; padding:0; position:relative; }
.nav-root a { color:#ffffff; text-decoration:none; text-transform:uppercase; font-family:'Heebo Bold'; padding:0.05rem 0.1rem; white-space:nowrap; width:100%; text-align:center; display:flex; justify-content:space-around; align-items:center; width:100%; height:100%; }
.nav-root a:hover { background-color:#8d1419; }
.nav-root a:active { background-color:#000000; }

#main-nav { z-index:1000; }

#mobile-nav { display:none; z-index:1001; }
#mobile-nav-root { z-index:1001; }
#mobile-nav-root a { white-space:normal; }
#mobile-nav-root ul { /*position:absolute; right:0; top:100%; max-height:0; opacity:0; transition:all 0s; */ list-style-type:none; margin:0; padding:0; background:#000000; }
#mobile-nav-root ul li { display:block; white-space:nowrap; padding:0; margin:0; }
#mobile-nav-root > li { margin-left:0.2rem !important; }
#mobile-nav-root > li:last-child { /*margin-left:0.75rem !important;*/ }
#mobile-nav-root > li > a { color:#000000; }
#mobile-nav-root > li:hover > a { color:#ffffff; background:#000000; }
#mobile-nav-shroud { display:none; position:fixed; left:0; right:0; top:0; bottom:0; width:100%; height:100%; background:rgba(0,0,0,0.01); z-index:999; }
#mobile-nav-panel { display:none; position:fixed; left:100%; bottom:0; top:0.7rem; width:50%; transition:left 0.5s; z-index:1010; }
#mobile-nav-panel li { border-bottom:0.005rem #ffffff solid; height:14.257%; display:flex; justify-content:flex-start; align-items:center; }
#mobile-nav-panel li:last-child { border-bottom:none; }
.nav-expanded #mobile-nav-panel { left:50%; }

#main-nav-root ul { display:block; position:absolute; left:0; top:100%; max-height:0; overflow:hidden; transition:max-height 0.2s; list-style-type:none; padding:0; margin:0; z-index:1000; }
#main-nav-root > li:hover > a, #main-nav-root > li.activeLink > a { background:#8d1419; }
#main-nav-root ul li a { background:#8d1419; justify-content:flex-start; white-space:normal; text-align:left; }
#main-nav-root ul li:hover > a { background:#000000; }
#main-nav-root li:hover > ul { max-height:10000rem; }
#main { padding:0.3rem 0; }
#main-content > *:first-child { margin-top:0; }
#main-header { position:relative; width:100%; height:0; padding-bottom:18.958%; background:url('../img/layout/main-header.bkg.jpg') center no-repeat; background-size:cover; }
#main-header-container { position:absolute; left:0; right:0; top:0; bottom:0; width:100%; height:100%; }
#main-header h1 { color:#ffffff; text-shadow:0.01rem 0.01rem 0.01rem #000000; }
#main-layout { gap:2.5%; align-items:flex-start; }
#sidebar { width:1.5rem; flex-grow:0; flex-shrink:0; }
#main-content { flex-grow:1; flex-shrink:1; }
#sidebar-nav-root { flex-direction:column; }
#sidebar-nav-root li { width:100%; margin-bottom:0.05rem; }
#sidebar-nav-root a { width:100%; background:#f2f2f2; color:#000000; transition:background-color 0.2s, color 0.2s; white-space:normal; height:0.5in; }
#sidebar-nav-root li:hover a, #sidebar-nav-root li.active a { background:#bc1a2d; color:#ffffff; }

#sidebar p { text-align:center; margin-left:5%; margin-right:5%; }
#sidebar .contracts-list,
#sidebar .contracts-list li { display:block; list-style-type:none; padding:0; margin:0; text-align:center; margin-bottom:0.05rem; }
#sidebar .contracts-list strong, #sidebar p strong { display:block; }

@media (max-width:14in) {
	body, p, td, th, li { font-size:0.125rem; }
	.layout { width:9rem; }
	#masthead-logo { height:75%; }
	#promo-content { margin-top:-5%; }
	#promo-content h1 { font-size:250%; }
	.home-panel { width:32%; }
	.home-panel span { width:0.5rem; height:0.5rem; }
	#home-panels { height:0.8rem; }
	#home-middle-content { height:2.4rem; }
	#home-sourcing img { width:0.6rem; }
	#home-sourcing li { width:32%; font-size:90%; }
	#main-nav-layout { padding:0; width:100%; }
	#sidebar { width:2rem; }
}

@media (max-width:12in) {
	body, p, td, th, li { font-size:0.15rem; }
	.layout { width:9.5rem; }
	#masthead-logo { height:80%; }
	.home-panel h3 { font-size:110%; }
	.home-panel p { font-size:90%; }
	#home-middle-content { height:2.6rem; }
	#home-middle img { margin-left:-25%; }
	#sidebar { width:2.5rem; }
}

@media (max-width:10in) {
	body, p, td, th, li { font-size:0.17rem; }
	#main-nav { display:none; }
	#mobile-nav { display:block; margin-right:-0.15rem; }
	#mobile-nav a { font-size:200%; }
	#mobile-nav-root > li { width:0.5rem; height:0.5rem; position:relative; }
	#mobile-nav-root > li > a { position:absolute; left:0; right:0; top:0; bottom:0; width:100%; height:100%; text-align:center; display:flex; justify-content:space-around; align-items:center; }
	#mobile-nav-root > li:last-child { width:0.9rem; height:0.9rem; border-left:1px rgba(0,0,0,0.1) solid; }
	#mobile-nav-root > li:last-child > a { font-size:300%; }

	.nav-expanded #mobile-nav-toggle > a, #mobile-nav-toggle > a:hover, #mobile-nav-toggle > a:active { color:#ffffff !important; background:#000000 !important; }
	.nav-expanded #mobile-nav-shroud { display:block; }
	#mobile-nav-panel { display:flex; top:0.9rem; align-items:stretch; flex-direction:column; }
	#masthead { height:0.9rem; }
	#masthead-logo { height:85%; }
	#home-contracts .contracts-list { width:95%; }
	/*
	#masthead-logo-strip { display:block; flex-direction:column; justify-content:space-around; align-items:flex-start; gap:0.1rem; }
	#masthead-logo-strip img { max-width:unset; max-height:unset; align-self:flex-start; height:0.3rem !important; width:auto !important; }
	*/
	.masthead-item { display:none; }
	#masthead-logo-strip { display:flex; gap:0.5rem; }
	#masthead-logo-strip img { width:auto !important; height:0.5rem !important; }
	
	#promo { padding-bottom:40%; }
	#promo-content { margin:0 0 0 0.25rem; width:50%; }
	
	#home-partners { padding-bottom:0.3rem; }
	#home-partners-layout { flex-wrap:wrap; }
	#home-partners h3 { width:100%; text-align:center; }
	#home-partners h3::after { display:none; }
	#home-partners img { max-width:1.4rem; max-height:0.6rem; margin:0.3rem; }
	#home-partners img:nth-of-type(6) { margin-left:1rem; }
	#home-partners img:nth-of-type(8) { margin-right:1rem; }
	
	#home-panels { height:auto; margin:0; background:#dadada; }
	#home-panels-layout { padding:0.2rem; }
	.home-panel { flex-direction:column; padding:0.2rem 0; }
	.home-panel div { width:90%; text-align:center; }
	.home-panel h3 { margin-bottom:0.2rem; font-size:125%; }

	#home-middle-content { height:2.8rem; }
	#home-middle img { margin-left:-27%; }
	
	#home-sourcing { padding-bottom:1rem; }
	#home-sourcing-details { justify-content:flex-start; }
	#home-sourcing li { width:45%; margin-left:2.5%; margin-right:2.5%; }
	#home-sourcing img { width:0.9rem; }
	
	#home-contracts-logos img { max-height:1rem; max-width:1.6rem; margin:0 0.5rem; }
	#footer-nav { display:none; }

	#sidebar { width:3.0rem; }
	
	@media (max-aspect-ratio:1/1) {
		body { padding-top:0.9rem; }
		#masthead { position:fixed; left:0; right:0; top:0; box-shadow:0 0 0.1rem 0.1rem rgba(0,0,0,0.5); }
	}
	@media (min-aspect-ratio:1/1) {
		#mobile-nav-root ul a { font-size:150%; }
	}
}

@media (max-width:8in) {
	body, p, td, th, li { font-size:0.2rem; }
	#promo { padding-bottom:50%; }
	#home-middle { padding:0; }
	#home-middle-layout { flex-direction:column; padding:0; margin:0; width:100%; }
	#home-middle img { width:100%; float:none; margin:0; }
	#home-middle-content { margin:0; width:100%; height:auto; padding:0.5rem; }
	#home-sourcing img { width:1rem; }
	
	#home-contracts-list li { width:45%; margin-left:2.5%; margin-right:2.5%; }

	#main-layout { flex-direction:column; }
	#sidebar { width:100%; margin-bottom:0.25in; }
	#sidebar > p, #sidebar .contracts-list { display:none; }
}

@media (max-width:6in) {
	body, p, td, th, li { font-size:0.23rem; }	
	#masthead { height:0.5in; }
	body { padding-top:0.5in; }
	#mobile-nav-root > li:last-child { width:0.5in; height:0.5in; }
	#mobile-nav-panel { top:0.5in; }
	
	#home-panels-layout { flex-direction:column; justify-content:space-between; align-items:stretch; }
	.home-panel { width:unset; flex-direction:row; justify-content:flex-start; margin:0.1rem 0; padding:0.3rem; }
	.home-panel div { text-align:left; font-size:130%; }
	.home-panel h3 { margin-bottom:0; }
	.home-panel span { width:1rem; height:1rem; margin:0.2rem; }
	
	#home-partners img { max-width:2rem; max-height:1.2rem; margin:0.5rem; }
	#home-partners img:nth-of-type(1) { margin-left:1.5rem; }
	#home-partners img:nth-of-type(2) { margin-top:-0.5rem; }
	#home-partners img:nth-of-type(3) { margin-right:1.5rem; }
	#home-partners img:nth-of-type(3) { margin-right:1.5rem; }
	#home-partners img:nth-of-type(6) { margin-left:0rem; }
	#home-partners img:nth-of-type(7) { margin-left:1.5rem; }
	#home-partners img:nth-of-type(8) { margin-right:1.5rem; }
	#promo { padding-bottom:60%; }
	#promo-content { width:60%; }
	
	#home-sourcing { padding-bottom:0.5rem; }
	#home-sourcing li { width:95%; margin:0.25rem; }
	#home-sourcing img { width:1.2rem; }
	#home-contracts-logos img { max-height:1.3rem; max-width:2rem; }
	#home-contracts .contracts-list { flex-direction:column; align-items:center; justify-content:space-between; white-space:nowrap; }
}

@media (max-width:4in) {
	body, p, td, th, li { font-size:0.26rem; }	
	#promo-content { width:100%; margin:0; background:rgba(0,0,0,0.25); position:absolute; left:0; right:0; top:0; bottom:0; height:100%; padding:0.5rem 2rem 0.5rem 0.5rem; }
	#promo h1 { margin-top:0; }
	#masthead-logo { height:80%; }
	#masthead-logo-strip img { height:0.4rem !important; }
	#mobile-nav-panel { width:75%; }
	#mobile-nav-root > li:last-child { margin-right:-0.15rem; }
	.nav-expanded #mobile-nav-panel { left:25%; }
}