/*
GTG Red:  #D41F32
Dk Gray:  #555555
*/
/* HTML
---------------------------------------------------------------------*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
ol,
ul,
li,
form,
label,
table,
tr,
th,
td,
aside,
footer,
header,
hgroup,
section,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font: inherit;
  vertical-align: top;
  font-display: auto;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

html {
  font-family: 'Open Sans', sans-serif;
  font-style: normal;
  font-weight: 400;
  /*  font-size: 62.5%;*/
  font-size: 1.0rem;
  line-height: 1.4rem;
  color: #111;
  scroll-behavior: smooth;
}

body {
  font-size: 1.0rem;
  line-height: 1.4rem;
}

header {
  z-index: 1000;
  width: 100%;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  position: fixed;
  -webkit-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  -moz-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  -ms-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  -o-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  background: rgba(255, 255, 255, 1);
}

#header {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

footer {
  background: #222222;
  padding: 24px 0 12px 0;
  color: #FFF;
  text-align: center;
  overflow: hidden;
}

footer a {
  color: #FFF !important;
  text-decoration: none !important;
}

footer a:hover,
footer a:focus {
  color: #FFF;
}

footer span {
  white-space: nowrap;
}

#subFooter {
  background: #555555;
  color: #FFF;
  padding: 12px 0 16px 0;
  text-align: center;
}

#subFooter a {
  color: #FFF;
  margin: 0 4px 0 4px;
  display: inline-block;
  white-space: nowrap;
}

#subFooter a:hover,
#subFooter a:focus {
  color: #FFF;
}

h1 {
  font-size: 2.0rem;
  line-height: 2.2rem;
  font-weight: 400;
  color: #D41F32;
  margin: 2px 1px 12px 1px;
  padding: 0px 0px 0px 0px;
}

h1:focus {
  background: rgba(0, 0, 0, .05);
}

#H1 {
  font-size: 2.0rem;
  line-height: 2.2rem;
  font-weight: 400;
  color: #D41F32;
}

h2 {
  font-size: 1.3rem;
  line-height: 1.6rem;
  color: #555555;
  font-weight: 100;
  margin: 2px 1px 12px 1px;
  padding: 0px 0px 0px 0px;
}

h2:focus {
  background: rgba(0, 0, 0, .05);
}

#H2 {
  font-size: 1.3rem;
  line-height: 1.6rem;
  color: #555555;
  font-weight: 100;
}

h3 {
  font-size: 1.0rem;
  line-height: 1.3rem;
  font-weight: 600;
  color: #555555;
  margin: 2px 1px 12px 1px;
  padding: 0px 0px 0px 0px;
}

h3:focus {
  background: rgba(0, 0, 0, .05);
}

#H3 {
  font-size: 1.0rem;
  line-height: 1.3rem;
  font-weight: 600;
  color: #555555;
}

h4 {
  font-size: 1.0rem;
  line-height: 1.3rem;
  font-weight: 400;
  margin: 2px 1px 12px 1px;
  padding: 0px 0px 0px 0px;
  color: #555555;
}

h4:focus {
  background: rgba(0, 0, 0, .05);
}

p {
  margin: 2px 0px 12px 0px;
  padding: 0px 0px 0px 0px;
}

p:focus {
  background: rgba(0, 0, 0, .05);
}

ul {
  margin: 0px 0px 12px 10px;
  padding: 0px 0px 0px 0px;
}

ol {
  margin: 0px 0px 12px 10px;
  padding: 0px 0px 0px 0px;
}

li {
  margin: 0px 0px 0px 10px;
  padding: 0px 0px 0px 0px;
}

li:focus {
  background: rgba(0, 0, 0, .05);
}

strong {
  font-weight: 700;
}

em {
  font-style: italic;
}

hr {
  margin: 10px 0px 18px 0px;
}

a {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  color: #D41F32;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #D41F32;
  text-decoration: underline;
}

a img {
  border: 0;
}

p a,
li a {
  color: #D41F32;
  text-decoration: underline;
}

p a:hover,
p a:focus,
li a:hover,
li a:focus {
  color: #D41F32;
  text-decoration: none;
}

img {
  width: 100%;
  height: auto;
}

img[src*=".svg"] {
  width: 100%;
  height: auto;
}

.ie9 img[src$=".svg"] {
  width: 100%;
  height: auto;
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  img[src$=".svg"] {
    width: 100%;
    height: auto;
  }
}

section {
  padding: 0 0 0 0;
  margin: 0 0 0 0;
  overflow: hidden;
  display: block;
}

.visually-hidden {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

/* FORMS
---------------------------------------------------------------------*/
form {
  overflow: hidden;
}

fieldset {
  margin: 24px 0 12px 0;
  border: 1px solid #DDD;
  padding: 18px;
  -webkit-border-top-left-radius: 6px;
  -webkit-border-bottom-right-radius: 6px;
  -moz-border-radius-topleft: 6px;
  -moz-border-radius-bottomright: 6px;
  border-top-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

legend {
  color: #555555;
  font-size: 1.6rem;
  line-height: 1.8rem;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}

label {
  font-size: 1.0rem;
  line-height: 1.2rem;
  display: inline-block;
  margin: 6px 0 3px 0;
  color: #555555;
}

input:not([type=submit]):not([type=radio]):not([type=checkbox]) {
  border: none;
  background: rgba(0, 0, 0, .05);
  margin: 0 0 6px 0;
  width: 100%;
  padding: 8px;
  font-size: 1.0rem;
  line-height: 1.4rem;
  font-family: 'Open Sans', sans-serif;
  box-sizing: border-box;
}

input:not([type=submit]):not([type=radio]):not([type=checkbox]):focus {
  background: rgba(0, 0, 0, .08);
}

textarea {
  border: none;
  background: rgba(0, 0, 0, .05);
  margin: 0 0 6px 0;
  width: 100%;
  padding: 8px;
  font-size: 1.0rem;
  line-height: 1.4rem;
  font-family: 'Open Sans', sans-serif;
  box-sizing: border-box;
}

textarea:focus {
  background: rgba(0, 0, 0, .08);
}

select {
  border: none;
  background: rgba(0, 0, 0, .05);
  margin: 0 0 6px 0;
  width: 100%;
  padding: 8px;
  font-size: 1.0rem;
  line-height: 1.4rem;
  font-family: 'Open Sans', sans-serif;
  box-sizing: border-box;
}

select:focus {
  background: rgba(0, 0, 0, .08);
}

input:not([type=submit]):not([type=file]):not([type=radio]):not([type=checkbox]):disabled {
  color: #999;
}

textarea:disabled {
  color: #999;
}

select:disabled {
  color: #999;
}

button {
  font-family: 'Open Sans', sans-serif;
}

/* HEADER
---------------------------------------------------------------------*/
#skip a,
#skip a:hover,
#skip a:visited {
  position: absolute;
  left: 0px;
  top: -500px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  color: #0000EE;
}

#skip a:active,
#skip a:focus {
  position: static;
  width: auto;
  height: auto;
}

.topOffset {
  padding-top: 125px;
}

#topOffsetAdmin {
  padding-top: 155px;
}

#notice {
  background: #D41F32;
  color: #FFF;
  text-align: center;
  padding: 8px 0 8px 0;
}

#notice a {
  color: #FFF;
  text-decoration: underline;
}

#notice a:hover,
#notice a:focus {
  text-decoration: none;
}

/* ADMIN
---------------------------------------------------------------------*/
#admin {
  background: #555;
  overflow: hidden;
  text-align: right;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

#admin-nav a {
  display: inline-block;
  width: 30px;
  padding: 6px 6px 4px 6px;
  text-align: center;
}

#admin-nav img {
  height: 18px;
  width: auto;
  aspect-ratio: auto 18/18;
}

#admin-nav a:hover,
#admin-nav a:focus {
  background: rgba(255, 255, 255, .3);
}

/* NAV WCAG
-----------------------------------------------------------------------------*/
#flyoutnav {
  display: table;
  width: 100%;
}

#flyoutnav>ul {
  margin: 0;
  padding: 0;
  display: table-row;
  background-color: #D41F32;
  color: #FFF;
}

#flyoutnav>ul>li {
  display: table-cell;
  width: 14.28%;
  text-align: center;
  position: relative;
}

#flyoutnav a,
#flyoutnav .current {
  display: block;
  padding: .25em;
  border-color: #E8E8E8;
  text-transform: uppercase;
}

#flyoutnav a {
  color: #FFF;
  text-decoration: none;
  box-shadow: -.5px 0px 0px 0px #FFF, .5px 0px 0px 0px #FFF;
  font-weight: 100;
  padding: 12px 0 12px 0;
}

#flyoutnav a:hover,
#flyoutnav a:focus {
  background-color: #555555;
  color: #FFF;
  text-decoration: none;
  font-weight: 800;
}

#flyoutnav .current {
  background-color: #555555;
  color: #D41F32;
}

#flyoutnav>ul>li>ul {
  text-align: left;
  list-style: none;
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  padding: 0;
  margin: 0;
  background-color: #D41F32;
}

#flyoutnav>ul>li>ul>li {
  padding: 0;
  margin: 0;
}

#flyoutnav>ul>li.open>ul {
  display: block;
}

#flyoutnav>ul>li>ul a {
  border-bottom: 1px solid #FFF;
  text-transform: none !important;
  font-weight: 400;
  letter-spacing: 0;
  padding: 12px 0 12px 12px;
}

#flyoutnav>ul>li>ul a:hover,
#flyoutnav>ul>li>ul a:focus {
  letter-spacing: 0;
}

/* Google Translate
-----------------------------------------------------------------------------*/
.VIpgJd-ZVi9od-l4eHX-hSRGPd {
  display: none;
}

.VIpgJd-ZVi9od-l4eHX-hSRGPd img {
  font-size: .1rem;
  line-height: .0rem;
}

.goog-te-gadget {
  font-size: .1rem;
  line-height: .0rem;
  color: #333;
}

.goog-te-gadget a img {
  display: none;
  height: 1;
  width: 1;
}

.goog-te-combo {
  background: #DDD;
  font-size: 1rem;
}

.fixed-con {
  z-index: 9724790009779558 !important;
  background-color: #DDD;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: auto;
}

.VIpgJd-ZVi9od-aZ2wEe-wOHMyf {
  z-index: 9724790009779 !important;
  top: 0;
  left: unset;
  right: -5px;
  display: none !important;
  border-radius: 50%;
  border: 2px solid #333;
}

.VIpgJd-ZVi9od-aZ2wEe-OiiCO {
  width: 1px;
  height: 1px;
}

.goog-logo-link,
.gskiptranslate,
.goog-te-gadget span,
.goog-te-banner-frame,
#goog-gt-tt,
.goog-te-balloon-frame,
div#goog-gt- {
  display: none !important;
}

.goog-te-gadget {
  color: transparent !important;
  font-size: 0px;
}

.goog-text-highlight {
  background: none !important;
  box-shadow: none !important;
}

#google_translate_element select {
  display: block;
  background: #FFF;
  color: #222;
  border: 1px solid #CCC;
  margin: 24px auto 0 auto;
  padding: 6px;
  font-size: .9rem;
  font-weight: 400;
  width: 100%;
}

/* LOGO
-----------------------------------------------------------------------------*/
#header_logo_div {
  -webkit-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  -moz-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  -ms-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  -o-box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
  box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, .2);
}

#header_logo_div img {
  height: 60px;
  width: auto;
  aspect-ratio: auto 18/6;
}

#header_logo_img {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-transform: scale(.97);
  -moz-transform: scale(.97);
  -ms-transform: scale(.97);
  -o-transform: scale(.97);
  transform: scale(.97);
  height: 60px;
  width: auto;
  padding: 8px 0 8px 0;
  margin: 0 auto 0 auto;
}

#header_logo_img:hover,
#header_logo_img:focus {
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.headerPhone {
  text-align: right;
  padding: 8px 0 8px 0;
}

.headerText {
  color: #555;
  display: inline-block;
  padding: 20px 12px 12px 12px;
}
/* Emergency
-----------------------------------------------------------------------------*/
#emergencySection {
  background: #555;
  color:#FFF;
}
#emergencySection img {
  margin: 32px 0 32px 0;
  height: 96px !important;
  width: auto !important;
}
#emergencySection h2 {
  color: #FFF;
  font-size: 1.8rem;
  line-height: 1.9rem;
  font-weight: 700;
  margin: 12px 0 0 0;
  padding: 0 0 0 0;
}
.emergencyCTA {
  overflow: hidden;
  border-bottom: 1px solid #FFF;
  margin-bottom: 8px;
  padding-bottom: 8px;
}
.emergencyPhone {
  text-align:right;
}
.emergencyLinks {
  float: left;
}
.emergencyLinks li {
  display: inline-block;
  padding: 6px;
  margin: 0 6px 0 6px;
}
.emergencyLinks a {
  color: #FFF !important;
  text-decoration: underline dotted rgba(255,255,255,.5) !important;
  text-underline-offset: 6px;
}
.emergencyLinks a:hover, .emergencyLinks a:focus {
  color: #FFF !important;
  text-decoration: underline dotted rgba(255,255,255,.9) !important;
}
/* Social
-----------------------------------------------------------------------------*/
#whyGTGsection {
  background-color: #EFEFEF;
  background-image: url('/media/static/images/pierce-county-neighborhood.jpg');
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
  padding: 72px 0 72px 0;
}
#whyGTG {
  width: 90%;
  overflow: hidden;
  background: #FFF;
  padding: 36px 4% 36px 4%;
  margin: 0 auto 24px auto;
  border-radius: 6px;
  box-shadow: 6px 6px 8px rgba(0, 0, 0, 0.2);
}
#whyGTG h2 {
  color: #D41F32;
  font-size: 1.8rem;
  line-height: 1.9rem;
  font-weight: 700;
}
.GoogleReviews {
  width: 50% !important;
  margin: 8px 0 18px 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.GoogleReviews:hover, .GoogleReviews:focus {
  -webkit-transform: scale(.97);
  -moz-transform: scale(.97);
  -ms-transform: scale(.97);
  -o-transform: scale(.97);
  transform: scale(.97);
}
.links a {
  font-size: 1.2rem;
  line-height: 1.3rem;
  color: #111 !important;
  display: block;
  text-decoration: underline dotted #CCC;
  padding: 5px 0 5px 0;
}
.links a:hover,
.links a:focus {
  background: #EEE;
}
#reviews {
  overflow: hidden;
  width: 94%;
  margin:12px auto 0 auto;
}
.reviewBox {
  color:#111 !important;
  background: #FFF;
  text-align: center;
  padding: 24px;
  border-radius: 6px;
  display: inline-block;
}
.reviewBox:hover, .reviewBox:focus {
  color:#111 !important;
  text-decoration: none;
  -webkit-transform: scale(.97);
  -moz-transform: scale(.97);
  -ms-transform: scale(.97);
  -o-transform: scale(.97);
  transform: scale(.97);
}
.reviewTxt {
  font-size: 1.2rem;
  line-height: 1.4rem;
}
.reviewLoc {
  font-size:.8rem;
  line-height:1rem;
  font-weight:700;
  margin:12px 0 0 0;
  color: #555;
}

.socialLinks {
  margin: 0 0 12px 0;
  padding: 0 0 0 0;
  overflow: hidden;
  text-align: center;
}

.socialLinks a {
  margin: 0 6px 0 6px;
  padding: 0 0 0 0;
  width: 30px;
  display: inline-block;
}

.socialLinks a img {
  width: 30px;
  height: auto;
  aspect-ratio: auto 1/1;
}

.socialLinks a:hover,
.socialLinks a:focus {
  -webkit-transform: scale(.90);
  -moz-transform: scale(.90);
  -ms-transform: scale(.90);
  -o-transform: scale(.90);
  transform: scale(.90);
}

/* Anchors
-----------------------------------------------------------------------------*/
.anchor {
  display: block;
  position: relative;
  top: -150px;
  visibility: hidden;
}

/* Big Buttons
-----------------------------------------------------------------------------*/
.bigBtn {
  display: inline-block;
  padding: 12px 20px 12px 20px;
  margin: 6px 16px 6px 0;
  min-width: 100px;
  background: #D41F32;
  color: #FFF;
  text-align: center;
  font-weight: 400;
  border-left: 4px solid #555555;
  box-shadow: inset 0 0 0 0 #555555;
  -webkit-transition: ease-out 0.5s;
  -moz-transition: ease-out 0.5s;
  -ms-transition: ease-out 0.5s;
  -o-transition: ease-out 0.5s;
  transition: ease-out 0.5s;
  white-space: nowrap;
  border-radius: 4px;
}

.bigBtn:hover,
.bigBtn:focus {
  background: #555555;
  color: #FFF;
  text-decoration: none;
  box-shadow: inset 200px 0 0 0 #555555;
}

.bigBtnWhite {
  display: inline-block;
  padding: 12px 20px 12px 20px;
  margin: 6px 16px 6px 0;
  min-width: 100px;
  background: #FFF;
  color: #D41F32;
  text-align: center;
  font-weight: 400;
  border-left: 4px solid #555555;
  border-radius: 4px;
}

.bigBtnWhite:hover,
.bigBtnWhite:focus {
  background: #555555;
  color: #FFF;
  text-decoration: none;
  box-shadow: inset 200px 0 0 0 #555555;
}

.bigBtnIcon {
  width: 12px;
  height: 12px;
  padding: 2px 0 0 0;
  margin: 0 0 0 12px;
}

/* TEXT STYLES
-----------------------------------------------------------------------------*/
.hgroup {
  margin: 0 0 24px 0;
  padding: 0 0 24px 0;
  border-bottom: 1px solid #DDD;
  overflow: hidden;
}

.intro {
  font-size: 1.3rem;
  line-height: 1.6rem;
  font-weight: 100;
  color: #D41F32;
  margin: 1px 1px 24px 1px;
  padding: 0 0 0 0;
}

.intro:focus {
  background: rgba(0, 0, 0, .05);
}

#INTRO {
  font-size: 1.3rem;
  line-height: 1.6rem;
  font-weight: 100;
  color: #D41F32;
}

.intro2 {
  font-size: 1.3rem;
  line-height: 1.6rem;
  font-weight: 100;
  color: #D41F32;
  margin: 1px 1px 24px 1px;
  padding: 0 0 0 0;
}

.intro2:focus {
  background: rgba(0, 0, 0, .05);
}

#INTRO2 {
  font-size: 1.3rem;
  line-height: 1.6rem;
  font-weight: 100;
  color: #D41F32;
}

.body {
  margin: 0 0 12px 0;
  padding: 0 0 0 0;
}

.footnote {
  font-size: 0.8rem;
  line-height: 1.1rem;
  border-top: 1px solid #555555;
  margin: 36px 0 24px 0;
  padding: 12px 0 0 0;
}

#byline {
  margin: 0 0 36px 0;
  padding: 0 0 12px 0;
  border-bottom: 1px solid #555555;
}

/* Hero + Slideshow
-----------------------------------------------------------------------------*/
.owl-carousel {
  width: 100%;
}
.hero {
  width: 100%;
  background-color: #D41F32;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
  padding: 140px 0 140px 0;
  text-align: center;
  overflow: hidden;
}

.hero h1 {
  color: #FFF;
  font-size: 3.6rem;
  line-height: 4.0rem;
  display: block;
  margin: 0 0 12px 0;
  font-weight: 200;
}

.hero em {
  color: #FFF;
  font-size: 2.4rem;
  line-height: 3.0rem;
  display: block;
}

/* Page Main
-----------------------------------------------------------------------------*/
.pageMain {
  background-color: #FFF;
  padding: 36px 0 36px 0;
}

#sections {
  background: #CCC;
  padding: 48px 0 48px 0;
}

/* SEARCH
---------------------------------------------------------------------*/
#SEARCH_TXT {
  background: #FFF;
  padding: 12px;
  border: none;
  color: #5BA1BF;
  text-align: left;
  width: 85%;
  float: left;
}

#SEARCH_GO {
  background: #5BA1BF;
  padding: 12px;
  border: none;
  color: #FFF;
}

/* News
---------------------------------------------------------------*/
#newsDiv {
  width: 100%;
  background-color: #555555;
  background-image: url('/media/static/images/default-bg.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: center;
  padding: 48px 0 48px 0;
  text-align: center;
  overflow: hidden;
}

#newsDiv h2 {
  color: #FFF;
  font-size: 3.6rem;
  line-height: 3.6rem;
  margin: 0 0 24px 0;
}

.newsLink {
  text-align: left;
  display: block;
  background: #FFF;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  margin: 0 0 24px 0;
  border: 1px solid #DDD;
  font-size: 1rem;
  line-height: 1.2rem;
  padding: 18px;
}

.newsLink:hover,
.newsLink:focus {
  text-decoration: none;
  background-position: bottom;
  background-repeat: repeat-x;
  border: 1px solid #D41F32;
  -webkit-transform: scale(.98);
  -moz-transform: scale(.98);
  -ms-transform: scale(.98);
  -o-transform: scale(.98);
  transform: scale(.98);
}

.newsLinkTitle {
  font-size: 1.4rem;
  line-height: 1.6rem;
  font-weight: 600;
  color: #D41F32;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}

.newsLinkDate {
  color: #555555;
  margin: 8px 0 8px 0;
}

.newsLinkBody {
  margin: 0 0 0 0;
  color: #000;
}

/* Sub-pages
---------------------------------------------------------------*/
#subpage-div {
  text-align: center;
  padding: 60px 0 48px 0;
  overflow: hidden;
  background-color: #D41F32;
  background-image: url('/media/static/images/overlay-dk-blue.svg'), url('/media/static/images/default-bg.jpg');
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
  -webkit-box-shadow: inset 0px 4px 12px 0px rgba(0, 0, 0, 0.25);
  -moz-box-shadow: inset 0px 4px 12px 0px rgba(0, 0, 0, 0.25);
  -ms-box-shadow: inset 0px 4px 12px 0px rgba(0, 0, 0, 0.25);
  -m-box-shadow: inset 0px 4px 12px 0px rgba(0, 0, 0, 0.25);
  box-shadow: inset 0px 4px 12px 0px rgba(0, 0, 0, 0.25);
  color: #FFF;
}

#subpage-div h2 {
  font-size: 3.6rem;
  line-height: 4.0rem;
  font-weight: 100;
  color: #FFF;
  text-align: center;
  margin: 0 0 24px 0;
}

#subpage-container {
  display: flex;
  flex-direction: row;
  flex-flow: row wrap;
  justify-content: space-around;
  width: 100%;
}

.subpage-link {
  width: 29%;
  margin: 0 1% 24px 1%;
  background: #FFF;
  flex: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.subpage-link:hover,
.subpage-link:focus {
  -webkit-transform: scale(.97);
  -moz-transform: scale(.97);
  -ms-transform: scale(.97);
  -o-transform: scale(.97);
  transform: scale(.97);
  text-decoration: none;
  background-color: rgba(0, 0, 0, .2);
  color: #FFF;
}

.subpage-image {
  background-color: #555555;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  background-position: center center;
}

.subpage-image:after {
  content: "";
  display: block;
  padding-bottom: 80%;
}

.subpage-text {
  padding: 12px;
}

.subpage-text h3 {
  color: #D41F32;
  font-weight: 700;
}

.subpage-text:hover h3,
.subpage-text:focus h3 {
  color: #FFF;
}

/* VIDEOS - Responsive
---------------------------------------------------------------*/
.videoWrapper {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;
  margin: auto;
  background: #D41F32;
}

.squareVideo {
  padding-bottom: 100%;
  /* 1:1 */
}

.verticalVideo {
  padding-bottom: 177%;
  /* 9:16 */
}

.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* MODALS
-----------------------------------------------------------------------------*/
.modalBtn {
  padding: 0 0 0 0;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.modalBtn:hover,
.modalBtn:focus {
  opacity: .9;
}

.modalThumbnail {
  -webkit-background-size: 72px, cover;
  -moz-background-size: 72px, cover;
  -ms-background-size: 72px, cover;
  -o-background-size: 72px, cover;
  background-size: 72px, cover;
  background-repeat: no-repeat;
  background-color: #555555;
  background-position: center;
  padding-bottom: 50%;
  margin: 24px 0 36px 0;
}

.modaliFrame {
  width: 100%;
  height: 480px;
}

.modal {
  display: none;
  position: fixed;
  z-index: 100000000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
}

.modal-content {
  background-color: #FFF;
  margin: 5% auto;
  padding: 6px 24px 24px 24px;
  width: 60%;
}

.modal h2 {
  text-transform: none;
  font-size: 1.2rem;
  line-height: 1.4rem;
  border: none;
  margin: 6px 0 12px 0;
  padding: 0;
}

.close {
  color: #888;
  float: right;
  font-size: 2rem;
  margin: 0 0 6px 0;
}

.close:hover,
.close:focus {
  color: #222;
  text-decoration: none;
  cursor: pointer;
}

.sectAnchor::before {
  content: "";
  display: block;
  height: 150px;
  margin: -150px 0 0 0;
  visibility: hidden;
}

/* MEDIA ELEMENTS
-----------------------------------------------------------------------------*/
.mediaElements {
  width: 40%;
  float: right;
  margin: 0 0 24px 24px;
  font-size: .9rem;
  line-height: 1.1rem;
}

.mediaElements h3 {
  font-size: .9rem;
  line-height: 1.1rem;
  margin: 0 0 2px 0;
  padding: 0 0 0 0;
}

.mediaElements p {
  font-size: .9rem;
  line-height: 1.1rem;
  margin: 0 0 0 0;
  padding: 0 0 0 0;
}

.mediaElements ul {
  margin: 0 0 0 12px;
}

.mediaElements li {
  margin: 0 0 12px 0;
}

.mediaElements img {
  width: 100%;
  margin: 0 0 6px 0;
  padding: 0 0 0 0;
}

/* Forms
-----------------------------------------------------------------------------*/
.buttons {
  overflow: hidden;
}

.buttons a,
.buttons button {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  text-align: center;
  margin: 0;
  text-decoration: none;
  cursor: pointer;
  padding: 6px;
}

.buttons button[type] {
  padding: 6px;
  line-height: .7rem;
}

*:first-child+html button[type] {
  padding: 6px;
}

.buttons button img,
.buttons a img {
  margin: 0;
  padding: 0;
  border: none;
  width: 14px;
  height: 14px;
}

/* ADMIN BUTTONS: Standard */
button,
.buttons a {
  background: #D41F32;
  border: 1px solid #D41F32;
  color: #FFF;
}

button:hover,
.buttons a:hover,
.buttons a:focus {
  background: #D41F32;
  color: #FFF;
  cursor: pointer;
}

/* ADMIN BUTTONS: Positive */
button.positive,
.buttons a.positive {
  background-color: #E6EFC2;
  border: 1px solid #C6D880;
  color: #529214;
}

.buttons a.positive:hover,
button.positive:hover,
button.positive:focus {
  background: #C6D880;
  color: #529214;
}

/* ADMIN BUTTONS: Negative */
.buttons a.negative,
button.negative {
  background: #FBE3E4;
  border: 1px solid #FBC2C4;
  color: #D12F19;
}

.buttons a.negative:hover,
button.negative:hover,
button.negative:focus {
  background: #FBC2C4;
  color: #D12F19;
}

.req {
  color: #F00;
}

#ADDRESS3label {
  display: none;
}

#ADDRESS3 {
  display: none;
}

/* LAYOUT - COLUMNS
-----------------------------------------------------------------------------*/
.container {
  margin: 0 auto 0 auto;
  overflow: hidden;
  -webkit-transition: all .5s ease-in-out;
  -moz-transition: all .5s ease-in-out;
  -ms-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  width: 80%;
}

[class*="span"] {
  margin-left: 2.12766%;
  float: left;
}

[class*="span"]:first-child {
  margin-left: 0;
}

.span1 {
  width: 6.38298%;
}

.span2 {
  width: 14.89362%;
}

.span3 {
  width: 23.40426%;
}

.span4 {
  width: 31.91489%;
}

.span4x {
  width: 33.3%;
  margin-left: 0;
}

.span5 {
  width: 40.42553%;
}

.span6 {
  width: 48.93617%;
}

.span6x {
  width: 50%;
}

.span7 {
  width: 57.44681%;
}

.span8 {
  width: 65.95745%;
}

.span9 {
  width: 74.46809%;
}

.span10 {
  width: 82.97872%;
}

.span11 {
  width: 91.48936%;
}

.span12 {
  width: 100%;
}

/* Desktop (large)
-----------------------------------------------------------------------------*/
@media only screen and (min-width: 1025px) {
  .container {
    width: 1000px;
  }
}

/* Desktop (regular)
-----------------------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
  .container {
    width: 700px;
  }

  .mediaElements {
    width: 100%;
    margin: 0 0 0 0;
    float: none;
  }

  #nav_bar,
  #nav_bar .container {
    width: 100%;
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }

  .topOffset {
    padding-top: 125px;
  }

  #topOffsetAdmin {
    padding-top: 155px;
  }

  #header_nav a {
    font-size: .65rem;
    line-height: .65rem;
  }

  #header_logo_div {
    text-align: center;
  }

  .headerPhone {
    text-align: center;
  }
}

/* Desktop (medium)
-----------------------------------------------------------------------------*/
@media only screen and (max-width: 749px) {
  .container {
    width: 88%;
    margin: 0 21px 0 21px;
  }

  .hero {
    padding: 80px 0 80px 0;
    background-attachment: scroll, scroll, scroll;
  }

  .hero h1 {
    font-size: 4rem;
    line-height: 4.2rem;
  }

  .hero em {
    font-size: 2rem;
    line-height: 2.2rem;
  }

  .sectionBody {
    column-count: 1;
  }

  .sectionToggleTitle h2 {
    font-size: 1.2rem;
  }

  #breadcrumb {
    display: none;
  }

  #anchorLinks {
    display: none;
  }

  .tileLinkTitle {
    min-height: 0;
  }

  footer {
    padding: 24px 0 12px 0;
    text-align: center;
  }

  [class*="span"] {
    margin-left: 0;
  }

  [class*="span"]:first-child {
    margin-left: 0;
  }

  .span1 {
    width: 100%;
  }

  .span2 {
    width: 100%;
  }

  .span3 {
    width: 50%;
  }

  .span4 {
    width: 100%;
  }

  .span4x {
    width: 100%;
  }

  .span5 {
    width: 100%;
  }

  .span6 {
    width: 100%;
  }

  .span6x {
    width: 100%;
  }

  .span7 {
    width: 100%;
  }

  .span8 {
    width: 100%;
  }

  .span9 {
    width: 100%;
  }

  .span10 {
    width: 100%;
  }

  .span11 {
    width: 100%;
  }

  .span12 {
    width: 100%;
  }
}