/*
Theme Name: Apple Signs 2026
Author: Brand-Eye-Dia
Author URI: https://www.brand-eye-dia.com/
Description: Custom theme for Apple Signs
Developer: Sherri Ferritto
Version: 1.0 021026
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 8.0
*/


/* incoporate reset styles for production site */

/* ----------------------------------------------
THEME STYLES   
------------------------------------------------- */ 

body, html {
	margin: 0px;
	padding: 0px;
	font-family: 'Lato', sans-serif;
	color:#333;
	background-color:#FFF;
	font-size: 16px;
	font-size: 100%;
	-webkit-text-size-adjust: none;
	position: relative;
	height: 100%;
	width: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none;
}
/*========= basic global font sizes =============*/

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
 margin-bottom: .5rem;
	font-weight: 700;
	line-height: 1.2;
}
h1 {
	font-size:22px;
	color:#e51222;
	font-weight:900;
	text-transform:uppercase;
	letter-spacing:.05em;
}
.h1 {
	font-size:26px;
	color:#e51222;
	font-weight:900;
	text-transform:uppercase;
}
h2, .h2, .h2 {
	font-size:24px;
	color:#A11C29;
	text-transform:uppercase;
	margin-top: 15px;
	margin-bottom: 10px;
}
.content h2, .h2 {
	margin-top: 30px;
}
h3, .h3 {
	font-size:18px;
	color:#A11C29;
 margin-bottom: .25rem;
}
p {
	font-size: 16px;
	line-height: 155%;
	margin: 0px;
	padding-bottom: 10px;
}
.content ul {
	margin-left:0;
}
.content ul li {
	font-size: 16px;
	line-height: 155%;
	letter-spacing:-.015em;
	padding-bottom: 10px;
	list-style:none;
}
.content ul.bullets {
	margin-left:1.5rem;
}
.content ul.bullets li {
	font-size: 16px;
	line-height: 125%;
	letter-spacing:-.015em;
	padding-bottom: 10px;
	list-style:none;
}
.content ul.bullets li:before {
	content: '\25A0';
	font-size: 130%;
	float: left;
	margin-left: -1.5rem;
	color: #A11C29;
}
p.lead {
	font-size: 24px;
}
b, strong {
	font-weight: 700;
}
/* @media only screen and (min-width: 414px) {
 h1 {
font-size:32px;
}
h2, .h2, .h2 {
 font-size:24px;
}
h3 {
 font-size:22px;
}
p {
 font-size: 20px;
 line-height: 129%;
 margin: 0px;
 padding-bottom: 10px;
}
.content ul li {
 font-size: 20px;
 line-height: 133%;
 padding-bottom: 5px;
}
p.lead {
 font-size: 30px;
}
}*/
 @media only screen and (min-width: 768px) {
h1 {
font-size:20px;
}
 .h1 {
font-size:24px;
}
 h2, .h2 {
font-size:22px;
}
h3 {
font-size:17px;
}
p {
font-size: 14px;
}
.content ul li {
font-size: 14px;
}
p.lead {
font-size: 16px;
}
}
 @media only screen and (min-width: 992px) {
h1 {
font-size:22px;
}
.h1 {
font-size:26px;
}
h2, .h2 {
font-size:24px;
}
h3 {
font-size:18px;
}
p {
font-size: 16px;
}
.content ul li {
font-size: 16px;
}
p.lead {
font-size: 18px;
}
}
@media only screen and (min-width: 1200px) {
h1 {
font-size:24px;
}
 .h1 {
font-size:29px;
}
h2, .h2 {
font-size:26px;
}
h3 {
font-size:21px;
}
p {
font-size: 17px;
padding-bottom: 15px;
}
.content ul li {
font-size: 17px;
}
p.lead {
font-size: 22px;
}
}
 @media only screen and (min-width: 1800px) {
 h1 {
font-size:28px;
}
 .h1 {
font-size:32px;
}
h2, .h2 {
font-size:30px;
}
 .content h2 {
 margin-top: 50px;
}
h3 {
font-size:24px;
}
p {
font-size: 20px;
}
.content ul li {
font-size: 20px;
}
p.lead {
font-size: 24px;
}
}
/* --------- other helpers and overrides ---------*/

ul, menu, dir {
	display: block;
	list-style-type: disc;
	margin:0;
	padding: 0;
	margin-left:1.2rem;
}
a, a:visited {
	color:#A11C29;
	text-decoration: none;
	transition: all 0.12s ease-in-out 0s;
}
a:hover, a:focus {
	color: #b7202f;
	text-decoration: none;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #8e8f8e;
}
a:focus {
	outline: thin dotted;
}



a.anchor {
    display: block;
    position: relative;
    top: -100px;
    visibility: hidden;
}

/* telephone links */

a[href^="tel:"], a[href^="tel:"]:visited {
color: inherit;
font-weight:inherit;
text-decoration:none;
border:none;
}
 a[href^="tel:"]:hover {
color: inherit;
font-weight:inherit;
border:none;
}



img {
	max-width: 100%;
	height: auto
}
img.fullwidth-photo {
	width: 100%;
	height: auto
}
figure {
	padding: 0px;
	margin: 0px
}
.marginabove {
	padding-top: 30px
}
.spaceabove {
	padding-top: 30px
}
.spacebelow {
	padding-bottom: 30px
}
@media only screen and (min-width: 768px) {
.spaceabove {
padding-top: 30px
}
.spacebelow {
padding-bottom: 30px
}
}
@media only screen and (min-width: 1200px) {
.spaceabove {
padding-top: 40px
}
.spacebelow {
padding-bottom: 40px
}
}
@media only screen and (min-width: 1800px) {
.spaceabove {
padding-top: 60px
}
.spacebelow {
padding-bottom: 60px
}
}
.padding {
	padding-top: 30px;
	padding-bottom: 30px
}
.overflow {
	overflow:hidden;
}
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	white-space: nowrap;
	height: 1px;
	width: 1px;
	overflow: hidden
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000
}
a#skiptocontent {
	padding: 6px;
	position: absolute;
	top: -60px;
	left: 0px;
	color:#FFF;
	background: #00A8E2;
	border-right: 1px solid white;
	border-bottom: 1px solid white;
	border-bottom-right-radius: 8px;
	background: transparent;
	-webkit-transition: top 1s ease-out, background 1s linear;
	transition: top 1s ease-out, background 1s linear;
	z-index: 100
}
a#skiptocontent:focus {
	position: absolute;
	left: 0px;
	top: 0;
	color:#FFF;
	background: #FF8300;
	outline: 0;
-webkit-transition: top .1s ease-in, background .5s linear;
transition: top .1s ease-in, background .5s linear;
	margin-bottom:200px;
}
.video-responsive {
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
	height: 0;
	margin-bottom:20px;
}
.video-responsive iframe {
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	position: absolute
}
.video-border, .photo-border {
	border: 3px solid #FFF;
	margin-bottom: 30px
}
@media only screen and (min-width: 768px) {
.video-wrapper {
margin-bottom: 0px
}
}
@media only screen and (min-width: 1200px) {
.iframe-responsive.map {
margin-top:30px;
}
}
.iframe-container {
	overflow: hidden;
	padding-top: 56.25%;
	position: relative;
}
.iframe-container iframe {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.error-message {
	color:#cc0000;
	font-weight:bold;
}
/* =========== CONTAINERS ================= */
.container {
	width:95%;
	max-width:95%;
	margin-left:auto;
	margin-right:auto;
}
@media only screen and (min-width: 360px) {
.container {
}
}
@media only screen and (min-width: 768px) {
.container {
 width:90%;
 max-width:90%;
}
}
 @media only screen and (min-width: 1200px) {
 .container {
width:82%;
max-width:82%;
}
}
.card {
	background-color: transparent;
	background-clip: border-box;
	border: none;
	border-radius: 0;
}
.img-border {
	background-color:#333;
	border: 3px solid #dee2e6;
}
.img-border:hover {
	border: 3px solid #FFF;
}
.img-thumbnail {
	padding:3px;
	background-color: rgba(255, 255, 255, 0.7);
	border: 1px solid #dee2e6;
	border-radius: 0;
	max-width: 100%;
	height: auto;
}
.img-thumbnail:hover {
	background-color: #FFF;
	border: 1px solid #FFF;
}
/* =========== buttons and colors ================= */

.btn {
	font-weight: 600;
	font-style: normal;
	font-size: 1rem;
	line-height: 1.42857143;
	text-align: center;
	white-space:  normal;
	vertical-align: middle;
	display: inline-block;
	text-decoration: none;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	border: 3px solid transparent;
	border-radius: 0;
	margin-bottom: 0;
	padding-top: 6px;
	padding-right: 1rem;
	padding-bottom: 6px;
	padding-left: 1rem;
}
.btn:visited {
	color: #FFF
}




.btn-black, .btn-black:visited {
	font-weight:400;
	font-size:16px;
	
	
	color:#FFF;
	text-transform:uppercase;
	letter-spacing:.07em;
	background-color:rgba(0, 0, 0, 0.5);
	background-color:rgba(51, 51, 51, 0.7);
	border: 1px solid #FFF;
	padding-top: 8px;
	padding-right: 1.1rem;
	padding-bottom: 8px;
	padding-left: 1.1rem;
}
a.btn-black:hover, a.btn-black:focus {
	color:#FFF;
	background-color:rgba(0, 0, 0, 1);
	border: 1px solid #A11C29;
}

 @media only screen and (min-width: 576px) {

.btn-black, .btn-black:visited {
	
	font-size:20px;
	

	padding:12px;
	padding-right: 26px;

	padding-left: 26px;
}
}


.gray {
	color: #59666C;
}

.white {
	color: #FFF;
}

.bold {
	font-weight:700;
}
.bolder {
	font-weight:900;
}


/* backgrounds */
.bg-ltgray {
	background-color: #dbdddf;
}
.bg-gray {
	background-color: #AA8A52;
}
.bg-red {
	background-color: #A11C29;
}
.bg-red, .bg-red h2, .bg-red h3, .bg-red p {
	color:#FFF;
}
.bg-red a {
	color:#FFF;
}
.bg-pink {
	background-color: #FCF;
}
/* ================================================= */
/* ====================== header ================= */
/* ================================================= */


header .container {
	width:95%;
	max-width:95%;
}

#header {
	position: fixed;
	width: 100%;
	height: 96px;
	top: 0;
	bottom: inherit;
	background-color: #FFF;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: space-around;
	z-index: 8000;
}
 @media only screen and (min-width: 992px) {
#header {
 height: 140px;
}
}
 @media only screen and (min-width: 1200px) {
}
/* =================================================== */
/* ================= navigation menu ================= */
header nav {
	color: #59666C;
	text-transform:uppercase;
}
 @media only screen and (min-width: 992px) {
header nav {
 text-align: center;
}
}
header nav ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	line-height: 1;
	vertical-align: middle;
	letter-spacing: normal;
	text-align:  right;
}
header nav ul li {
	display: inline;
	text-align: center;
	padding:0;
	margin:0;
	vertical-align: middle;
	line-height:100%;
}
header nav li a, header nav li a:visited {
	display:inline-block;
	font-size: 18px;
	font-weight: normal;
	font-style:normal;
	color: #005366;
	text-transform: uppercase;
	letter-spacing:.065em;
	margin:0;
}


/* mobile nav displays till 992 */
 @media only screen and (min-width: 992px) {
 header nav li:after {
content: '|';
font-weight:700;
color: #A11C29;
padding-left:1px;
}
 header nav ul li:last-child {
 padding-right:0;
}
 header nav li:last-child:after {
content: '';
}
 header nav li a {
 font-size: 14px;
 padding-left: .5rem;
 padding-right:.5rem;
}
}
 @media only screen and (min-width: 1200px) {
header nav li a {
 font-size: 16px;
}
}
 @media only screen and (min-width: 1400px) {
header nav li a {
 font-size: 17px;
 padding-left: 1rem;
 padding-right:1rem;
}
}
 @media only screen and (min-width: 1800px) {
header nav li a {
 font-size: 21px;
 padding-left: 1.5rem;
 padding-right:1.5rem;
}
}
header nav li a:hover, header nav li a:focus {
	color: #A11C29;
	text-decoration:none;
}
header nav li.current_page_item a, header nav li.active a {
	color: #A11C29;
}
header nav li.current_page_item a:hover, header nav li.active a:hover {
	color: #A11C29;
}
header nav li.current-page-ancestor a {
	color: #A11C29;
}
.nav>li>a:focus, .nav>li>a:hover {
	background-color: transparent;
}
/* mobile navigation takeover overlay */


header .mobile-tools {
	text-align:right;
}
/* =================================================== */
.menu-overlay {
	position: fixed;
	width: 100%;
	height:100%;
	z-index: 9999;
	top: 0;
	left: 0;
	background-color: #59666C;
	background-color: #222;
	overflow-y: hidden;
	transition: 0.5s;
	animation-duration: 2s;
	display:none;
}
.overlay-header {
	width:100%;
	height:96px;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.menu-overlay .btn-close {
	/*position: absolute;*/
	
	width: 40px;
	height: 40px;
	line-height: 1;
	text-decoration: none;
	text-align: center;
	padding: 0;
	margin-top: 6px;
	margin-right: 1.25rem;
	color: rgba(255, 255, 255, 0.90);
	border-radius: 50%;
	border: 2px solid rgba(255, 255, 255, 0.90);
}
.menu-overlay .btn-close:hover {
	color: #FFF;
	border: 2px solid #FFF;
}
.overlay-content {
	position: relative;
	width: 100%;
	height:100%;
	padding-bottom:96px;
	text-align: center;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
}
.menu-overlay nav {
	color: #FFF;
	text-transform:uppercase;
	padding-bottom:20%;
}
.menu-overlay nav ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	line-height: 1;
	vertical-align: middle;
	letter-spacing: normal;
	text-align: center;
}
.menu-overlay nav ul li {
	display: block;
	text-align: center;
	padding:0;
	margin:0;
	vertical-align: middle;
	line-height:100%;
}
.menu-overlay nav li a {
	display:block;
	font-size: 28px;
	line-height:150%;
	font-weight: normal;
	font-style: normal;
	color: #FFF;
	text-transform: uppercase;
	letter-spacing:.085em;
	margin:0;
	padding-top:12px;
	padding-bottom:12px;
}
 @media only screen and (min-width: 768px) {
.menu-overlay nav li a {
 font-size: 20px;
 padding:3px;
}
}
.menu-overlay nav li a:visited {
	color: #FFF;
}
.menu-overlay nav li a:hover, .menu-overlay nav li a:focus {
	color: #b7202f;
	border:none;
}
.menu-overlay nav li.current_page_item a {
	color: #b7202f;
}
.menu-overlay nav li.current_page_item a:hover {
	color: #b7202f;
}
/* show and hide header */
.headroom {
	will-change: transform;
	transition: transform 200ms linear;
	-moz-transition: transform 200ms linear;
	-webkit-transition: transform 200ms linear;
}
#header.headroom--not-top {
 transition: opacity .25s ease-in-out;
 -moz-transition: opacity .25s ease-in-out;
 -webkit-transition: opacity .25s ease-in-out;
	background-color: rgba(255, 255, 255, 0.77);
	/*background-color:rgba(0, 0, 0, 0.67);*/
	height:60px;
	padding-bottom:30px;
}
 @media only screen and (min-width: 992px) {
 #header.headroom--not-top .logo {
 display:none;
}
}
#header.headroom--pinned {
	-webkit-transform: translateY(0%);
	-moz-transform: translateY(0%);
	-o-transform: translateY(0%);
	-ms-transform: translateY(-100%);
	transform: translateY(0%);
}
#header.headroom--unpinned {
	-webkit-transform: translateY(-100%);
	-moz-transform: translateY(-100%);
	-o-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	transform: translateY(-100%);
}
#header.headroom--not-top nav li a, #header.headroom--not-top nav li a:visited {
}
#header.headroom--not-top nav ul {
	text-align:   center;
}
#header.headroom--not-top .justify-content-between {
	justify-content: center!important;
}
 @media only screen and (min-width: 992px) {
 #header.headroom--not-top nav li:after {
}
}
/* ================================================= */
/* ====================== main ================= */
/* ================================================= */


main {
	min-height:500px;
	margin-top:96px;
}
 @media only screen and (min-width: 992px) {
main {
 margin-top:140px;
}
}
/* ================================================= */
/* ====================== home page ================= */
/* ================================================= */


/* -------- owl carousel theme styles -------- */

.owl-carousel {
	-webkit-animation-duration:1000ms;
	animation-duration:1000ms;
	-webkit-animation-fill-mode:both;
	animation-fill-mode:both;
}
.owl-carousel .owl-item {
	-webkit-transition:opacity 400ms ease;
	-moz-transition:opacity 400ms ease;
	-ms-transition:opacity 400ms ease;
	-o-transition:opacity 400ms ease;
	transition:opacity 400ms ease
}
.owl-theme .owl-nav {
	text-align: center;
	-webkit-tap-highlight-color: transparent;
}
 .owl-theme .owl-nav [class*=owl-] {
 background-color:transparent;
 opacity: .7;
}
 .owl-theme .owl-nav [class*=owl-]:hover {
background-color:transparent;
 opacity: .9;
}
/* owl arrows for banners */

.owl-carousel .owl-nav .owl-prev {
	background-image: url(images/arrows/arrow-left-white.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.owl-carousel .owl-nav .owl-next {
	background-image: url(images/arrows/arrow-right-white.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.owl-prev {
	width: 30px;
	height: 30px;
	position: absolute;
	left: 10px;
	top:48%;
	border: none;
	z-index:19999;
}
.owl-next {
	width: 30px;
	height: 30px;
	position: absolute;
	right: 10px;
	top:48%;
	border: none;
	z-index:19999;
}
 @media only screen and (min-width: 768px) {
.owl-carousel .owl-prev {
 width: 46px;
 height: 46px;
left: 20px;
}
.owl-carousel .owl-next {
 width: 46px;
 height: 46px;
right: 20px;
}
}
 @media only screen and (min-width: 992px) {
.owl-carousel .owl-prev {
 width: 57px;
 height: 57px;
}
.owl-carousel .owl-next {
 width: 57px;
 height: 57px;
}
}
 @media only screen and (min-width: 1600px) {
.owl-carousel .owl-prev {
 width: 63px;
 height: 63px;
}
.owl-carousel .owl-next {
 width: 63px;
 height: 63px;
}
}
.owl-prev, .owl-prev:visited, .owl-next, .owl-next:visited {
	opacity:.8;
}
.owl-prev, .owl-prev:hover, .owl-next, .owl-next:focus {
	opacity:1;
}
/* -------- home globals -------- */


.home-wrapper {
	width:95%;
	margin-left:auto;
	margin-right:auto;
}


.homebanner-wrapper {
	position:relative;
	
}

.homebanner-wrapper .portfolio-button {
margin: 0;
	position: absolute;
	bottom: 7%;
	
	left: 50%;
	-ms-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
	
	  z-index:9999;
	
}


.homebanner .item {
	position:relative;
}
.homebanner .item .tagline {
	position: absolute;
	top:8%;
	right:10%;
	font-size:16px;
	color:#FFF;
	text-transform:uppercase;
}
 @media only screen and (min-width: 768px) {
 .homebanner .item .tagline {
 font-size:20px;
 top:17%;
}
}
 @media only screen and (min-width: 992px) {
.homebanner .item .tagline {
 font-size:24px;
}
}
 @media only screen and (min-width: 1200px) {
.homebanner .item .tagline {
 font-size:26px;
}
}
 @media only screen and (min-width: 1800px) {
.homebanner .item .tagline {
 font-size:42px;
}
}
.homebanner .item .tagline span {
	color:#b7202f;
	padding-left:8px;
	padding-right:8px;
}
 @media only screen and (min-width: 1200px) {
.homebanner .item .tagline span {
 padding-left:15px;
 padding-right:15px;
}
}
/* -------- homeintro -------- */






.img-fillhv {
	width:100%;
	height:100%;
}
.homeintro, .homeintro h1, .homeintro h2, .homeintro p {
	color:#FFF;
}
.homeintro p {
	font-family: 'Merriweather', serif;
}
.homeintro article {
	width:90%;
	margin-left:auto;
	margin-right:auto;
	padding:15px;
	padding-top:30px;
	padding-bottom:30px;
}
 @media only screen and (min-width: 768px) {
 .homeintro article {
 width:90%;
 padding:0;
}
}
.homeintro h1 {
	text-align:center;
}
 @media only screen and (min-width: 768px) {
 .homeintro h1 {
 text-align: left;
 font-size:18px;
}
.homeintro p {
 font-size:12px;
 padding-bottom:0;
}
}
 @media only screen and (min-width: 768px) {
 .homeintro h1 {
 text-align: left;
 font-size:18px;
}
.homeintro p {
 font-size:12px;
}
}
 @media only screen and (min-width: 1200px) {
 .homeintro h1 {
 font-size:26px;
}
.homeintro p {
 font-size:16px;
}
}
 @media only screen and (min-width: 1500px) {
 .homeintro h1 {
 font-size:29px;
}
.homeintro p {
 font-size:18px;
}
}
.homeintro .homephoto {
	min-height:200px;
	width:100%;
}
 @media only screen and (min-width: 992px) {
.homeintro .homephoto {
 min-height:200px;
}
}
 @media only screen and (min-width: 1200px) {
.homeintro .homephoto {
}
}
 @media only screen and (min-width: 1800px) {
.homeintro .homephoto {
 min-height: inherit;
}
}
/* home category grid */

.category-grid {
	background-color:rgba(89, 102, 108, 0.45);
	padding-top:30px;
	padding-bottom:30px;
}
.category-grid h2 {
	text-align:center;
	color:#FFF;
	margin-bottom:30px;
}
.category-grid .card {
	padding-left:10px;
	padding-right:10px;
}
.category-grid .card-body {
	padding:0;
	padding-top:10px;
	padding-bottom:30px;
}
.category-grid p {
	text-align:center;
}
.category-grid a, .category-grid a:visited {
	color:inherit;
	border:none;
}
.category-grid a:hover {
	color:#A11C29;
}
.category-grid a:focus {
	outline:none;
}
/* home portfolio search */
.portfolio-search {
	background-color:#000;
	padding-top:20px;
	padding-bottom:20px;
}
.viewlinkwrapper {
	position:relative;
	text-align:center;
}
.viewlinkwrapper .h3 {
	position: absolute;
	width:100%;
	top:20px;
	left:0;
	text-align:center;
	text-transform:uppercase;
	color:#FFF;
	letter-spacing:.035em;
}
.viewlinkwrapper .h3 a, .viewlinkwrapper .h3 a:visited {
	color:#FFF;
}
.viewlinkwrapper .h3 a:hover {
	color:#b7202f;
}
.portfolio-search .container {
	width:95%;
	max-width:95%;
}
 @media only screen and (min-width: 992px) {
 .portfolio-search {
 padding:0;
}
}
 @media only screen and (min-width: 992px) {
.portfolio-search .homephoto {
 min-height:275px;
 width:100%;
}
}
 @media only screen and (min-width: 1200px) {
.portfolio-search .homephoto {
 min-height:350px;
}
}
 @media only screen and (min-width: 1800px) {
.portfolio-search .homephoto {
 min-height: inherit;
}
}
.portfolio-search h2, .portfolio-search .h3 {
	margin-top:0;
}
.portfolio-search ul {
	list-style:none;
	margin-left:0;
}
.portfolio-search ul li {
	line-height:100%;
	color:#FFF;
	margin-bottom:2px;
}
 @media only screen and (min-width: 768px) {
.portfolio-search ul li {
 font-size:14px;
}
}
 @media only screen and (min-width: 1200px) {
 .portfolio-search ul li {
 font-size:16px;
 line-height:120%;
 margin-bottom:4px;
}
}
 @media only screen and (min-width: 1500px) {
 .portfolio-search ul li {
 font-size:18px;
}
}
 @media only screen and (min-width: 1800px) {
 .portfolio-search ul li {
 font-size:22px;
}
}
.portfolio-search ul li a:link, .portfolio-search ul li a:visited {
	color:#FFF
}
.portfolio-search ul li a:hover, .portfolio-search ul li a:focus {
	color:#e51222;
}
/* home testimonial */

.home-testimonial {
	background-color:rgba(89, 102, 108, 0.45);
}
.home-testimonial h2, .home-testimonial .h3 {
	color:#FFF;
	letter-spacing:.05em;
	text-align:center;
	margin-bottom:20px;
}
.home-testimonial .testimonial {
	padding:15px;
}
 @media only screen and (min-width: 992px) {
.home-testimonial .homephoto {
 min-height:430px;
 width:100%;
}
}
 @media only screen and (min-width: 1200px) {
.home-testimonial .homephoto {
 min-height:450px;
}
}
 @media only screen and (min-width: 1800px) {
.home-testimonial .homephoto {
 min-height: inherit;
}
}
/* ================================================= */
/* ====================== interior ================= */
/* ================================================= */

.content {
	min-height:500px;
	padding-top:30px;
	padding-bottom:50px;
}
 @media only screen and (min-width: 1800px) {
.content {
 padding-bottom:70px;
}
}
/* ====================== Page Headers ================= */


/* smaller page header without photo */

.pageheader {
	background-color:#000;
	padding-top:30px;
	padding-bottom:30px;
}
.pageheader h1 {
	margin:0;
	padding:0;
}
 @media only screen and (min-width: 768px) {
 .pageheader.nopad {
 padding:0;
}
}
.pageheader .pageheading h1 {
	color:#999;
	text-transform:uppercase;
}
.pageheader .pageheading .separator {
	color:#b7202f;
	padding-left:1.5rem;
	padding-right:1.5rem;
}
.pageheader .pageheading .subheadings a, .pageheader .pageheading .subheadings a:visited {
	color:#999;
}
.pageheader .pageheading .subheadings a:hover, .pageheader .pageheading .subheadings a.active {
	color:#FFF;
}
.pageheader .pageheading .subheadings .active {
	color:#FFF;
}
/* Large page header with photo */

.pageheader.h-100 {
	padding-bottom:0;
}
.pageheader .pagetitle {
	background-color:#000;
	color:#FFF;
	text-align:center;
	position: relative;
	-js-display: flex;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	justify-content: center;
	padding:0;
}
.pageheader .pagetitle.large {
	padding-bottom:30px;
}
.pageheader .pagetitle h1 {
	color:#FFF;
	text-transform:uppercase;
}
.pageheader .pagetitle h1 span {
	color:#e51222;
}
/* ====================== About Page================= */


.mfont h3, .mfont .h3, .mfont p {
	font-family: 'Merriweather', serif;
}
.subnavlinks {
	width:100%;
	color:#FFF;
	background-color:#A11C29
}
.subnavlinks ul {
	padding:29px;
	list-style:none;
}
 @media only screen and (min-width: 768px) {
.subnavlinks ul {
 padding:49px;
}
}
 @media only screen and (min-width: 992px) {
}
 @media only screen and (min-width: 1200px) {
.subnavlinks ul {
 padding:69px;
}
}
.subnavlinks ul li {
	margin-bottom:15px;
}
.subnavlinks ul li a {
	color:#FFF;
	font-size:22px;
}
 @media only screen and (min-width: 768px) {
 .subnavlinks ul li a {
 font-size:18px;
}
}
 @media only screen and (min-width: 992px) {
 .subnavlinks ul li a {
 font-size:24px;
}
}
 @media only screen and (min-width: 1200px) {
.subnavlinks ul li a {
 font-size:28px;
}
}
/* ======================SIDEBAR ================= */


.sidebarpadding {
	padding:39px;
}


 @media only screen and (min-width: 768px) {
.sidebarpadding {
	padding:36px;
}


}

 @media only screen and (min-width: 992px) {
.sidebarpadding {
	padding:39px;
}


}
 @media only screen and (min-width: 1200px) {
.sidebarpadding {
 width:95%;
  padding:49px;
}
}
 @media only screen and (min-width: 1800px) {
.sidebarpadding {
 width:90%;
 padding:69px;
}
}
.sidebarpadding.less {
	padding-top:0;
	padding-bottom:0;
}


.sidebar h3 {
	text-transform:uppercase;
	font-weight:700;
}
.sidebar p {
	font-size:18px;
}
 @media only screen and (min-width: 768px) {
.sidebar p {
 font-size:16px;
}
}
 @media only screen and (min-width: 992px) {
.sidebar p {
 font-size:18px;
}
}
 @media only screen and (min-width: 1200px) {
.sidebar p {
 font-size:20px;
}
}
 @media only screen and (min-width: 1800px) {
.sidebar p {
 font-size:23px;
 width:90%;
}
}
/* testimonial blockquote */



blockquote {
	font-family: 'Merriweather', serif;
	font-size:18px;
	line-height:200%;
}
blockquote span {
	font-size:150%;
	color:#A11C29;
	display:inline;
	line-height:1;
}
blockquote p {
	display:inline;
}
.testimonial figcaption {
	font-family: 'Merriweather', serif;
	font-size:16px;
	color:#A11C29;
	font-style:normal;
	display:block;
	margin-top:20px;
}
 @media only screen and (min-width: 768px) {
blockquote {
 font-size:18px;
}
}
 @media only screen and (min-width: 992px) {
blockquote {
 font-size:20px;
}
}
 @media only screen and (min-width: 1200px) {
blockquote {
 font-size:22px;
}
}
 @media only screen and (min-width: 1800px) {
blockquote {
 font-size:26px;
}
}
/* ====================== Porfolio and filtering ================= */

.subnav-header {
	background-color:#A11C29;
	color:#FFF;
	padding-top:20px;
	padding-bottom:30px;
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #707070;
}
.subnav-header h2 {
	padding:0;
	margin:0;
	margin-bottom:15px;
	color:#FFF;
}

/* filtering and sorting */

 @media only screen and (min-width: 768px) {
.subnav-header .filters-button-group {
 -webkit-column-count: 2;
 -moz-column-count: 2;
 column-count: 2;
}
 .subnav-header .subnav-group {
 -webkit-column-count: 2;
 -moz-column-count: 2;
 column-count: 2;
}
}
.subnav-header .filters-button-group button {
	font-weight:700;
	text-align: left;
	cursor: default;
	color:#FFF;
	background-color:  transparent;
	box-sizing: border-box;
	padding:0;
	padding-bottom:6px;
	border: none;
	display:block;
}
.subnav-header .filters-button-group button:hover {
	color:#000;
}
.subnav-header .filters-button-group button.is-checked {
	color: #000;
}
.subnav-header .subnav-group ul {
	font-weight:700;
	text-align: left;
	cursor: default;
	color:#FFF;
	background-color:  transparent;
	box-sizing: border-box;
	padding:0;
	padding-bottom:6px;
	border: none;
	display:block;
	list-style:none;
	margin:0;
}
.subnav-header .subnav-group li {
	list-style:none;
	margin:0;
	color:#FFF;
}
.subnav-header .subnav-group li a, .subnav-header .subnav-group li a:visited {
	color:#FFF;
}
.subnav-header .subnav-group li a:hover, .subnav-header .subnav-group li a:focus {
	color:#000;
}
.filter-wrapper {
	position:relative;
	padding-left:2.5%;
	padding-right:2.5%;
}

.catgrid-item{
	margin-bottom:20px;
}

.catgrid-item .card-body p{
	margin:0;
	padding:0;
}

/* portfolio slider modal */


.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 8500;
	overflow: hidden;
	position: fixed;
	background: #000;
	opacity: 0.9;
}
.mfp-wrap {
	z-index: 8600;
}
.slider-wrapper {
	padding:30px;
}


.portfolio-slider img {
	border: 5px solid #999;
	background-color:#999;
}
.portfolio-slider.owl-carousel .owl-item img {
	width:auto;
}
 @media only screen and (min-width: 768px) {
 .portfolio-slider img {
 max-height:775px;
 max-height: calc(83vh);
 width:auto;
 margin-left:auto;
 margin-right:auto;
}
}
.port-modal .mfp-close {
	position: absolute;
	width: 40px;
	height: 40px;
	line-height: 40px;
	right: 15px;
	top: 15px;
	text-decoration: none;
	text-align: center;
	opacity: 1;
	padding: 0;
	color: #999 !important;
	border-radius: 50%;
	border: 2px solid #999;
}
.port-modal .mfp-close:hover {
	color: #FFF !important;
	border: 2px solid #FFF;
}


/* Portfolio Sign Type gallery popup */


.category-grid.catgrid {
	min-height:400px;
}


.grid {
  padding: 30px 0;
  width: 100%;
}

.gallery-item img {
	border: 5px solid #999;
	background-color:#999;
}





img.mfp-img {
   border: 5px solid #999;
   padding:0;
   margin: 40px 0 40px;

   
	
}

 @media only screen and (min-width: 768px) {
img.mfp-img {
  

  height:80vh !important;
 max-height:80vh !important;
   
	
}

}
/* Case Study */


.single-casestudy-wrapper {
	background-color:rgba(89, 102, 108, 0.45);
	padding-top:60px;
	padding-bottom:60px;
}
.single-casestudy {
	background-color: #FFF;
	border: 1px solid #707070;
	padding:30px;
}
 @media only screen and (min-width: 768px) {
 .single-casestudy {
padding:60px;
}
}
 @media only screen and (min-width: 1200px) {
.single-casestudy {
 padding:80px;
}
}
 @media only screen and (min-width: 1800px) {
.single-casestudy {
 padding:120px;
}
}
.single-casestudy article {
	padding-bottom:30px;
}
 @media only screen and (min-width: 768px) {
 .single-casestudy article {
 padding-left:10px;
}
}
 @media only screen and (min-width: 992px) {
 .single-casestudy article {
 padding-left:15px;
 padding-bottom:0;
}
}
 @media only screen and (min-width: 1200px) {
.single-casestudy article {
 padding-left:20px;
}
}
 @media only screen and (min-width: 1800px) {
.single-casestudy article {
 padding-left:24px;
}
}

/* single case study typography */

.single-casestudy h2 {
	font-size:18px;
	font-weight:900;
	color:#000;
	text-transform:none;
	margin:0;
	padding:0;
	margin-bottom:15px;
}
.single-casestudy h3 {
	
	color:#000;

}
.single-casestudy ul {
	margin-left:1rem;
	padding-bottom:15px;
}
.single-casestudy ul li {
	letter-spacing:-.015em;
	padding-bottom: 10px;
	list-style:none;
}
.single-casestudy ul li:before {
	font-family: FontAwesome;
	content: '\f111';
	font-size: 40%;
	float: left;
	margin-left: -1rem;
	color: #A11C29;
}
.single-casestudy p, .single-casestudy ul li {
	font-family: 'Merriweather', serif;
	font-size:17px;
	line-height:150%;
}
 @media only screen and (min-width: 768px) {
 .single-casestudy h2 {
 font-size:20px;
}
}
 @media only screen and (min-width: 992px) {
.single-casestudy h2 {
 font-size:20px;
}
 .single-casestudy p, .single-casestudy ul li {
 font-size:16px;
}
}
 @media only screen and (min-width: 1200px) {
 .single-casestudy h2 {
 font-size:26px;
 margin-bottom:20px;
}
 .single-casestudy p, .single-casestudy ul li {
 font-size:17px;
}
}
 @media only screen and (min-width: 1800px) {
 .single-casestudy h2 {
 font-size:32px;
 margin-bottom:24px;
}
 .single-casestudy p, .single-casestudy ul li {
 font-size:17px;
}
}
.single-casestudy .img-thumbnail {
	width:100%;
	height:auto;
	background-color: transparent;
	border: 1px solid #666;
	padding:0;
}
.single-casestudy .single-featured-image img {
	width:100%;
	height:auto;
	background-color: transparent;
	border: 1px solid #666;
	padding:0;
}

.single-casestudy .sidebar-photo {
	margin-bottom:30px;
}
/* News */


.news {
	background-color:#dbdddf;
}
.news h1 {
	color:#000;
	text-transform:none;
	letter-spacing:normal;
}
.news h2, .news .h2, .news h2 a:link, .news .h2 a:link, .news h2 a:visited, .news .h2 a:visited {
	color:#000;
	text-transform:none;
	letter-spacing:normal;
}
.news h2 a:hover, .news .h2 a:focus {
	color:#b7202f;
}
.news p {
	line-height:162%;
}
.newslinks {
	color: #FFF;
}
.newslinks.sidebarpadding {
	padding:69px;
	padding-right:20px;
}
 @media only screen and (min-width: 1200px) {
.newslinks.sidebarpadding {
 width:95%;
 padding-right:20px;
}
}
 @media only screen and (min-width: 1800px) {
.newslinks.sidebarpadding {
 width:90%;
 padding-right:20px;
}
}
.newslinks article {
	max-width:90%;
}
.newslinks a {
	color: #FFF;
}
.newslinks p {
	padding:0;
	margin:0;
}
.newslinks h3 {
	padding:0;
	margin:0;
	margin-bottom:30px;
}


/* Careers */


.careers h2 {
	font-size:18px;
	
}

/* -------- search, 404, etc --------- */

.read-more {
	margin-left:8px;
}


.entry-summary {
	margin-bottom: 20px;
	padding-bottom: 24px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #c5c6c8;	
}


.news .entry-summary h2 {
	padding-top:0;
	margin-top:0;
}
/* -------- pagination --------- */


.pagination-wrapper {
	width:100%;
	font-weight:600;
	text-align:left;
	justify-content: left;
	padding-top:25px;
	padding-bottom:25px;
}
.pagination-wrapper ul.pagination li {
	position: relative;
	display: block;
	display:inline-block;
	margin-left: 2px;
	margin-right:2px;
	line-height: 1.25;
	color: #FFF;
	background-color: rgba(255, 255, 255, .35);
	background-color:transparent;
	border: 1px solid #dee2e6;
	border:none;
}
.pagination-wrapper ul.pagination li a, .pagination-wrapper ul.pagination li a:visited {
	color: #FFF;
 padding: .5rem .75rem;
}
.pagination-wrapper ul.pagination li a:hover, .pagination-wrapper ul.pagination li a:focus {
	background-color: rgba(255, 255, 255, .35);
	color: #FFF;
}
.pagination-wrapper ul.pagination li.active a {
	color: #FFF;
	background-color: rgba(255, 255, 255, .35);
}
/* ====== Connect ========== */

/* contact form styles */
.wpcf7-form {
	font-family: 'Lato', sans-serif;
	font-size:18px;
	font-weight:400;
	color:#000;
}
.mfont .wpcf7-form p {
	font-family: 'Lato', sans-serif;
}
.modal .wpcf7-form {
	padding-top:0;
	padding-bottom:0;
}
span.wpcf7-not-valid-tip {
	color: #f00;
	font-size: 1em;
	font-weight: normal;
	display: block;
}
.content .wpcf7 p {
	text-align:left;
	margin-top:8px;
	margin-bottom:8px;
}
form.wpcf7-form label span {
	display: inline;
	width:100%;
}
span.wpcf7-form-control-wrap.your-consent > span.wpcf7-list-item-label {
	display:  inline;
}
form.wpcf7-form label {
	display: block;
	width:100%;
}
form.wpcf7-form .wpcf7-form-control.g-recaptcha.wpcf7-recaptcha {
	margin-bottom:20px;
}
form input[type=text], form input[type=email], form input[type=tel], form textarea, form select {
	width:100%;
	padding:6px;
	-webkit-appearance:none;
	margin-top:6px;
	margin-bottom:6px;
	border-radius: 0;
	border: 1px solid #9ba3a6;
	background-color:#edeeef;
}
form input[type=text]:focus, form input[type=email]:focus, form input[type=tel]:focus, form textarea, form select:focus {
	background-color:#FFF;
}
.content span.wpcf7-list-item {
	display: block;
	margin: 0 0 0 1em;
}
form input[type=submit] {
	display: inline-block;
	margin-top: -1px;
	font-weight: 700;
	line-height: 1;
	text-transform:uppercase;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	background-color:#A11C29;
	color:#FFF;
	letter-spacing:.015em;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	background-image: none;
	border: none;
	border-radius: 0px;
	padding-top: 12px;
	padding-right: 2rem;
	padding-bottom: 12px;
	padding-left: 2rem;
}
form input[type=submit]:hover, form input[type=submit]:focus {
	background-color:#e51222;
}
.bg-red form input.wpcf7-submit.btn-white {
	background-color:#FFF;
	color:#A11C29;
}
.bg-red form input.wpcf7-submit.btn-white:hover, .bg-red form input.wpcf7-submit.btn-white:focus {
	background-color:#e51222;
	color:#FFF;
}
.bg-red form .wpcf7-response-output {
	background-color:#FFF;
}
.bg-red span.wpcf7-not-valid-tip {
	color: #FF0;
}
/* connect sidebar */

.resources {
	padding-top:30px;
	padding-bottom:30px;
}
 @media only screen and (min-width: 1200px) {
.resources {
 padding-top:40px;
 padding-bottom:40px;
}
}
.resources h3 {
	padding-bottom:20px;
}
.resources p {
	line-height:135%;
	margin-bottom:20px;
}
/* ================================================= */
/* ====================== footer ================= */
/* ================================================= */

footer {
	color: #666666;
	background-color: #FFF;
	padding-top:20px;
	padding-bottom:80px;
	border-top-width: 6px;
	border-top-style: solid;
	border-top-color: #59666C;
}
 @media only screen and (min-width: 1200px) {
footer {
 padding-top:40px;
}
}
 @media only screen and (min-width: 1800px) {
footer {
 padding-top:60px;
}
}
footer .container {
	width:95%;
	max-width:95%;
}
footer .item {
	margin-bottom:30px;
}
 @media only screen and (min-width: 768px) {
footer .item {
 margin-bottom:0;
}
}
footer .copyright {
	margin-bottom:50px;
}
footer .affiliations img {
	width:35%;
	max-width:180px;
	height:auto;
}
footer h2 {
	color: #A11C29;
	font-weight:900;
	text-transform:uppercase;
	margin-top:0;
}
footer p {
	line-height:150%;
}
footer .connect p {
	margin-bottom:30px;
}
footer .social a {
	margin-right:15px;
}
 @media only screen and (min-width: 1200px) {
footer .social a {
 margin-right:25px;
}
}
footer .social .fa {
	font-size:72px;
	color: #A11C29;
}
footer .social .fa:hover {
	color: #b7202f;
	border:none;
}
/* back to top script */

/* ----- back to top ------- */

.cd-top {
	display: inline-block;
	height: 40px;
	width: 40px;
	position: fixed;
	bottom: 40px;
	right: 10px;
	-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
	/* image replacement properties */
  overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: rgba(122, 11, 11, 0.8) url(images/cd-top-arrow.svg) no-repeat center 50%;
	visibility: hidden;
	opacity: 0;
 -webkit-transition: opacity .3s 0s, visibility 0s .3s, background-color .3s 0s;
 transition: opacity .3s 0s, visibility 0s .3s, background-color .3s 0s;
}
.cd-top.cd-top--show, .cd-top.cd-top--fade-out, .cd-top:hover {
 -webkit-transition: opacity .3s 0s, visibility 0s 0s, background-color .3s 0s;
 transition: opacity .3s 0s, visibility 0s 0s, background-color .3s 0s;
}
.cd-top.cd-top--show {
	/* the button becomes visible */
  visibility: visible;
	opacity: 1;
}
.cd-top.cd-top--fade-out {
	/* if the user keeps scrolling down, the button is out of focus and becomes less visible */
  opacity: .5;
}
.cd-top:hover {
	background-color: #A11C29;
	opacity: 1;
}
 @media only screen and (min-width: 768px) {
 .cd-top {
 right: 20px;
 bottom: 20px;
}
}
 @media only screen and (min-width: 1024px) {
 .cd-top {
 height: 60px;
 width: 60px;
 right: 30px;
 bottom: 30px;
}
}


