/*
Customizations to r3417 theme

Colors:

Orange		#ef7926		UIA
Dark Orange	#b45b1d
Gold		#f1ad00		Fiber
Dark Gold	#af7f00
Teal		#58a6af		FTW
Dark Teal	#46848b
Purple		#8074cb		VoIP
Dark Purple	#6a5fa7
Gray 25		#404040
Gray 44		#707070
Gray 60		#989a9d
Gray 95		#f3f4f4

*/


/* STANDARD HTML */

body {
	font-size: 106.25%;
}

body, body * {
	font-family: 'soleil', sans-serif;
	-webkit-font-smoothing: antialiased !important;
}

blockquote {
	background: #ef7926;
	border-radius: 0.5em;
	color: #ffffff;
	margin: 1.5em 0 calc(40px + 0.5em) 0;
	padding: 2em 2em 2em 4em;
	position: relative;
}
blockquote:before {
	content: '\201c';
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 300%;
	position: absolute; top: 0.8em; left: 0.5em;
}
blockquote:after {
	background: transparent;
	border-top: 40px solid #ef7926;
	border-left: 40px solid #ef7926;
	border-bottom: 40px solid transparent;
	content: '';
	display: block;
	height: 0;
	position: absolute; right: 80px; bottom: -40px;
	width: 0;
}

	blockquote * { color: #ffffff; }
	
	blockquote > *:last-child { margin-bottom: 0; }

h1, h2, h3, h4, h5, h6 {
	color: #191919;
	font-weight: normal;
}

h1 {
	font-size: 265%;
	font-weight: normal;
}

h2 {
	font-size: 225%;
	font-weight: normal;
}

h3 {
	font-size: 140%;
	font-weight: normal;
}

h4 {
	font-size: 105%;
	font-weight: bold;
}

h5 {
	font-size: 95%;
	font-weight: bold;
	text-transform: uppercase;
}

h6 {
	font-size: 82.5%;
	font-weight: bold;
	text-transform: uppercase;
}


/* CUSTOM CSS CLASSES */

.button { text-transform: none; }

.column_slideshow_navigation, .column_slideshow_navigation > ul {
	right: 0; left: 0;
	text-align: center;
}

.columns.graph {
	border-collapse: separate;
	border-spacing: 1em 0;
}

	.columns.graph > .column {
		background: #ffffff;
		padding: 1.5em 1.5em 0.5em 1.5em !important;
	}
	
	.columns.graph > .column * {
		color: initial !important;
	}
	
	.columns.graph > .column:after { display: none !important; }

	.columns.graph > .column h3 {
		background: transparent url('../img/icon-users.svg') center top no-repeat;
		background-size: 61px 37px;
		border-bottom: 1px solid #f3f4f4;
		color: #ef7926 !important;
		font-size: 100% !important;
		font-weight: 400 !important;
		line-height: 1.5em;
		margin: 0 0 0.5em 0 !important;
		padding: 50px 0 0.5em 0;
		text-align: center;
		text-transform: uppercase;
	}
	
	.columns.graph .bars {
		border-bottom: 1.5em solid transparent;
		color: #989a9d;
		font-size: 80%;
		line-height: 1.5em;
		table-layout: auto;
		white-space: nowrap;
		width: 100%;
	}
	
		.columns.graph .bars td { font-weight: 500; position: relative; }
	
		.columns.graph .bars tr:first-of-type td, .columns.graph .bars tr:first-of-type td * { color: #ef7926 !important; }
		
		.columns.graph .bars tr td:first-of-type { text-align: right; }
		
		.columns.graph .bar_label { white-space: nowrap; }
		.columns.graph .bar_container { width: 100%; }
		.columns.graph .bar_value {  }
		
		.columns.graph .bar {
			background: #989a9d;
			display: inline-block;
			height: 22px;
			min-width: 1px;
			opacity: 0.5;
			vertical-align: middle;
		}
		.columns.graph tr:first-of-type .bar {
			background: #ef7926;
		}
		
		.columns.graph .bar_row.full .bar { opacity: 1 !important; }

		.columns.graph .bar_row .final {
			position: relative;
			visibility: hidden;
		}
		.columns.graph .bar_row.full .final { visibility: visible; }
		
		.columns.graph .bar_row .waiting {
			position: absolute; top: 0; left: 0;
			visibility: visible;
		}
		.columns.graph .bar_row.full .waiting { visibility: hidden; }

.columns_header h2 { padding-bottom: 5px; } /* Descenders were getting cut off */

.hero { border-bottom: 16px solid #ef7926; }
.hero.slug-fiber { border-bottom-color: #f1ad00; }
.hero.slug-ftw { border-bottom-color: #58a6af; }
.hero.slug-voip { border-bottom-color: #8074cb; }

.icon_grid {
	table-layout: fixed;
	width: 100%;
}

	.icon_grid_4 td {
		padding: 1.5em;
		width: 25%;
	}
	
	.icon_grid .icon_wrapper {
		height: 120px;
		margin: 0 auto 1em auto;
		position: relative;
		text-align: center;
		width: 120px;
	}
	
		.icon_grid .icon_wrapper img {
			display: inline-block;
			height: 100%;
			vertical-align: middle;
			width: 100%;
		}

.reversed_color[style*='#ef7926'] *,
.reversed_color[style*='#f17926'] * /* Old color that may still be in some site data */
{ color: #ffffff !important; }

.slides .caption h1, .slides .caption h2, .slides .caption h3, .slides .caption h4 {
	margin-top: 0 !important;
	margin-bottom: 1rem !important;
}

.slides .caption .button { border: 1px solid #ffffff !important; }
.slides .caption .button:not(:hover) { background: transparent !important; }
.hero.slug-fiber .slides .caption .button:hover { background-color: #f1ad00 !important; }
.hero.slug-ftw .slides .caption .button:hover { background-color: #58a6af !important; }
.hero.slug-voip .slides .caption .button:hover { background-color: #8074cb !important; }

.tiles.overlay.static .tile .image:after {
	background: linear-gradient(to bottom, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.333) 50%, rgba(0,0,0,0.5) 100%);
	content: ' ';
	display: block;
	opacity: 1;
	position: absolute; top: 0; right: 0; bottom: 0; left: 0;
	transition: opacity 0.25s ease;
	z-index: 10;
}
.tiles.overlay.static .tile:hover .image:after {
	opacity: 0.75;
}

.tiles.overlay.static .tile .text {
	background: transparent !important;
	font-size: 120%;
	padding: 2em 5em 2em 1.5em !important;
}

.tiles.overlay.static .tile { border-bottom: 8px solid #ef7926; }
.tiles.overlay.static .tile.slug-fiber { border-bottom-color: #f1ad00; }
.tiles.overlay.static .tile.slug-ftw { border-bottom-color: #58a6af; }
.tiles.overlay.static .tile.slug-voip { border-bottom-color: #8074cb; }

.tiles.overlay.static .tile .text .title { font-weight: bold; }

.tiles.overlay.static .tile .text .title:before {
	background: transparent url('') left bottom no-repeat;
	background-size: contain;
	content: ' ';
	display: block;
	height: 120px;
	position: relative;
	top: 0;
	transition: top 0.333s ease;
	width: 120px;
}
.tiles.overlay.static .tile:hover .text .title:before {
	top: -0.25em;
}

.tiles.overlay.static .tile .text .title:after
{
	background: transparent url('') center center no-repeat;
	background-size: contain;
	content: ' ';
	display: inline-block;
	font-size: 200%;
	height: 0.5em;
	margin-left: 0.1em;
	transition: margin-left 0.333s ease;
	vertical-align: middle;
	width: 0.5em;
}
.tiles.overlay.static .tile:hover .text .title:after {
	margin-left: 0.25em;
}

.tiles.overlay.static .tile.slug-fiber .text .title:before {
	/*background-image: url('../img/icon-fiber.svg');*/
}
.tiles.overlay.static .tile.slug-fiber .text .title:after {
	background-image: url('data:image/svg+xml;utf8,<svg viewBox="7.2 -3.5 21 21" xmlns="http://www.w3.org/2000/svg"><g transform="matrix(1,0,0,-1,15,14.25)"><path d="M0,15L6,7.5L0,0" style="fill:none;stroke:#f1ad00;stroke-width:2px;"/></g></svg>');
}
.tiles.overlay.static .tile.slug-ftw .text .title:before {
	/*background-image: url('../img/icon-ftw.svg');*/
}
.tiles.overlay.static .tile.slug-ftw .text .title:after {
	background-image: url('data:image/svg+xml;utf8,<svg viewBox="7.2 -3.5 21 21" xmlns="http://www.w3.org/2000/svg"><g transform="matrix(1,0,0,-1,15,14.25)"><path d="M0,15L6,7.5L0,0" style="fill:none;stroke:#58a6af;stroke-width:2px;"/></g></svg>');
}
.tiles.overlay.static .tile.slug-voip .text .title:before {
	/*background-image: url('../img/icon-voip.svg');*/
}
.tiles.overlay.static .tile.slug-voip .text .title:after {
	background-image: url('data:image/svg+xml;utf8,<svg viewBox="7.2 -3.5 21 21" xmlns="http://www.w3.org/2000/svg"><g transform="matrix(1,0,0,-1,15,14.25)"><path d="M0,15L6,7.5L0,0" style="fill:none;stroke:#8074cb;stroke-width:2px;"/></g></svg>');
}


/* DOM ELEMENTS */

#header {
	background: #ef7926;
}

#footer { }

	#prefooter1 {
		background: #ffffff url('../img/prefooter1-bg.svg') center center no-repeat;
		background-size: cover;
		padding: 3em 25% !important;
	}

	#prefooter1 h2 a, #prefooter1 h2 a:hover {
		background: #ef7926;
		border-radius: 6px;
		border-bottom: 3px solid #b45b1d;
		color: #ffffff !important;
		display: inline-block;
		line-height: 1.5em;
		margin: 0.25em 0;
		padding: 0 0.5em;
	}
	
	#prefooter1 .widget {
		padding: 4em 0;
	}

	#footer_wrapper .widget img {
		max-width: 13.125rem;
	}
	
	#footer_wrapper .widget strong {
		color: #9c9c9c !important;
		font-weight: normal;
		text-transform: uppercase;
	}
	
	#footer_wrapper .widget ul {
		padding-top: 0 !important;
	}
	
	#footer_wrapper a[href^='tel:'] { color: #ef7926 !important; }
	
	#contact #footer_legal {
		margin-top: 0.5em;
		padding-top: 0.75em;
	}

	#contact .copyright {
		border-top: 1px solid rgba(153,153,153,0.333);
		color: #999999 !important;
		font-size: 100%;
		margin-top: 0.5em;
		padding-top: 0.75em;
	}
	
		#contact .copyright * { color: #999999 !important; }


/* PLUGINS */


/* CSS3 MEDIA QUERIES */


/* NON-PHONE NAVIGATION (content area over 783 pixels) */
@media screen and (min-width: 783px) {

	#header .menu * {
		font-weight: normal;
	}

	#header .menu a[href^='tel:'] {
		border: 2px solid #f1ad00 !important;
		border-radius: 4px;
		padding-right: 0.75em !important; padding-left: 0.75em !important;
	}

	#header .menu > li > a {
		background: transparent !important;
		border-bottom: 1px solid transparent;
		margin: 0 13px !important;
		padding: 3px 0 !important;
	}

	#header .menu > li:hover > a:not([href^='tel:']):not(.submenu-toggle),
	#header .menu > li:hover > a:not([href^='tel:']):not(.submenu-toggle):hover {
		background: transparent !important;
	}
	#header .menu > li:not(.menu-item-has-children):hover > a:not([href^='tel:']):not(.submenu-toggle),
	#header .menu > li:not(.menu-item-has-children):hover > a:not([href^='tel:']):not(.submenu-toggle):hover {
		border-bottom: 1px solid #ffffff !important;
	}

	#header .menu > li.current-menu-item > a:not([href^='tel:']):not(.submenu-toggle),
	#header .menu > li.current-menu-item > a:not([href^='tel:']):not(.submenu-toggle):hover {
		background: transparent !important;
		border-bottom: 1px solid #f1ad00 !important;
	}
	
		/* Compensating for specific SVG being used in header navigation item */
		#header .menu > li > a.empty-node svg { position: relative; top: 3px; }
	
	#auxiliary_navigation { margin-top: 10px !important; }

	#primary_navigation {
		font-size: 90%;
		margin-bottom: 8px !important;
	}

}


/* LARGE SCREENS (content area over 1600 pixels) */
@media screen and (min-width: 1600px) {

	#primary_navigation {
		font-size: 110%;
	}


}


/* SMALLER COMPUTERS (content area under 1200 pixels) */
@media screen and (max-width: 1200px) {

}
@media screen and (max-width: 1200px) and (min-width: 783px) {

}


/* TABLETS (content area under 1024 pixels) */
@media screen and (max-width: 1024px) {

}
@media screen and (max-width: 1024px) and (min-width: 783px) {

	#logo { left: 5%; }

	#primary_navigation {
		font-size: 87.5% !important;
		top: 47.5% !important; right: 1.5% !important;
	}
	
	.hero .caption img[src*='.svg'] { display: none; }

}


/* PHONES (content area under 782 pixels) */
@media screen and (max-width: 782px) {

	blockquote { font-size: 100% !important; }

	.columns.graph.columns:not(.columns-2) > .column {
		background: #ffffff;
		padding: 1.5em !important;
	}
	
	.column_slideshow_item section { padding: 0.5em 0 !important; }
	
	.icon_grid_4 td {
		display: inline-block;
		width: 50%;
	}
	
	/* Special navigation submenu workarounds */
	body.nav_open #header .menu a.empty-node { display: none !important; }
	body.nav_open #header .menu .sub-menu,
	body.nav_open #header .menu li:hover > ul {
		display: block !important;
		margin: 0 !important;
	}
	body.nav_open #header .menu li.menu-item-has-children { background: transparent !important; }

	#prefooter1 {
		padding: 1em 5% !important;
	}

		#prefooter1 .widget {
			padding: 1em 0;
		}

}
