/*
 * University of Houston
 * Style sheet for UH headers and footers
 * Created Summer 2016 by UH Web Marketing Team
 * Contact Rainer Schuhsler for assistance with this file.
 *
 * Table of Contents:
 * ------------------
 * Import Web Fonts
 * Import normalize.css
 * Base Styles
 * Grid Container
 * Accessibility
 * General Header Styles
 * Global Navigation Container
 * Tactical Links
 * Search
 * Site Name
 * Site Navigation Container
 * Menu Button
 * Primary Navigation
 * Responsive Menu Styles
 * General Footer Styles
 * Site Footer
 * Global Footer
 * Browser Upgrade
 *
 */

/* ==========================================================================
   Import Web Fonts
   ========================================================================== */

   @import url('https://www.uh.edu/css/fonts.css');

   /* ==========================================================================
      Import normalize.css
      ========================================================================== */
   
   @import url('https://www.uh.edu/css/refresh/normalize.css');
   
   /* ==========================================================================
      Base Styles
      ========================================================================== */
   
   html {
       -webkit-box-sizing: border-box;
               box-sizing: border-box;
   }
   
   *, *::before, *::after {
       -webkit-box-sizing: inherit;
               box-sizing: inherit;
   }
   
   @-moz-viewport {
       width: device-width;
   }
   
   @-ms-viewport {
       width: device-width;
   }
   
   @-webkit-viewport {
       width: device-width;
   }
   
   @viewport {
       width: device-width;
   }
   
   head br {
       display: none;
   }
   
   html, body {
       overflow-x: hidden;
   }
   
   html {
       font-size: 16px;
       -webkit-tap-highlight-color: transparent;
   }
   
   body {
       color: #111;
       font: 1rem 'Milo', sans-serif; /* 16px */
       line-height: 1.3125em;
       line-height: calc(1.5em - 3px);
       min-height: 100vh;
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: column;
               flex-direction: column;
   }
   
   body > main {
       overflow: hidden;
       -webkit-flex-grow: 1;
               flex-grow: 1;
   }
   
   @media screen and (min-width: 1921px) {
       html {
           background: #333;
       }
       body {
           margin: 0 auto;
           max-width: 1920px;
       }
   }
   
   [tabindex="-1"]:focus {
       outline: none !important;
   }
   
   abbr {
       text-decoration: inherit;
   }
   
   img {
       border: 0;
       height: auto;
       max-width: 100%;
       vertical-align: middle;
       -ms-interpolation-mode: bicubic;
   }
   
   [role="button"] {
       cursor: pointer;
   }
   
   a,
   area,
   button,
   [role="button"],
   input,
   label,
   select,
   summary,
   textarea {
       -ms-touch-action: manipulation;
           touch-action: manipulation;
   }
   
   nav ul,
   nav ol,
   nav li {
       list-style: none;
       margin-bottom: 0;
       padding-left: 0;
   }
   
   /* ==========================================================================
      Grid Container
      ========================================================================== */
   
   .container {
       margin-right: auto;
       margin-left: auto;
       max-width: 1600px;
       padding-right: 1.25rem;
       padding-left: 1.25rem;
       width: 100%;
   }
   
   @media screen and (min-width: 768px) {
       .container {
           padding-right: 2.5rem;
           padding-left: 2.5rem;
       }
   }
   
   /* ==========================================================================
      Accessibility
      ========================================================================== */
   
   .skipToContent {
       background: #c8102e;
       color: #FFF9D9;
       font-size: .875rem;  /* 14px */
       padding: .5em 1em;
       position: absolute;
       margin-left: -1000px;
   }
   
   .skipToContent:focus {
       margin-left: 0;
   }
   
   /* ==========================================================================
      General Header Styles
      ========================================================================== */
   
   .uh-header {
       background-color: #c8102e;
       position: relative;
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: column;
               flex-direction: column;
	   height: 48px;
   }
   
   .uh-header-secondary-red {
       background-color: #54585A;
   }
   
   .uh-header a,
   .uh-header a:visited {
       color: #FFF9D9;
       text-decoration: none;
   }
   
   .uh-header a:hover,
   .uh-header a:focus,
   .uh-header a:visited:hover {
       color: white;
       text-decoration: none;
   }
   
   /* ==========================================================================
      Search
      ========================================================================== */
   
   .uh-header .global-search {
       background: #eee;
       display: block;
       font-size: 1rem; /* 16px */
       line-height: 1.5;
       margin: 0;
       overflow: hidden;
       position: relative;
       transition: margin .25s ease;
   }
   
   .uh-header-primary .global-search {
       margin-top: 3rem;
   }
   
   .uh-header .global-search.collapse.in {
       margin-top: 0;
   }
   
   .uh-header .global-search .container {
       padding-top: .5em;
       padding-bottom: .5em;
       /* position: relative; */
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: column;
               flex-direction: column;
   }
   
   .uh-header .global-search input,
   .uh-header .global-search button {
       color: #222;
   }
   
   .uh-header .global-search ::-webkit-input-placeholder {
       color: #222;
       opacity: 0.54;
   }
   
   .uh-header .global-search ::-ms-input-placeholder {
       color: #888;
       opacity: 1;
   }
   
   .uh-header .global-search .search-field {
       border: none;
       border-radius: 20px;
       box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.125), 0 0 0 1px rgba(0, 0, 0, 0.2);
       padding: .25rem .75em;
       font-size: 1.125rem; /* 18px */
       line-height: 1.5rem;
       /* line-height: 1.5; */
       -webkit-flex-grow: 1;
               flex-grow: 1;
   }
   
   .uh-header .global-search .search-field:focus {
       outline: 0;
   }
   
   .uh-header .global-search label {
       margin: .25em 0 0;
       padding: .25em 0;
   }
   
   .uh-header .global-search input[type='checkbox'] {
       margin-right: .25em;
   }
   
   .uh-header .global-search button {
       border: none;
       border-radius: .25em;
       font-size: inherit;
       line-height: 1.5;
       padding: .25em .75em;
   }
   
   .uh-header .global-search .search-submit {
       color: #FFF9D9;
       background-color: #c8102e;
   }
   
   .uh-header .global-search .search-close {
       background: none;
       color: #c8102e;
       display: none;
       margin-right: -.75em;
   }
   
   .uh-header .global-search button svg {
       display: block;
       fill: currentColor;
       float: left;
       height: 1.5em;
       margin-right: .25em;
       width: 1.5em;
   }
   
   .uh-header .global-search .search-submit {
       background-color: transparent;
       border: 0;
       color: transparent;
       /*font: 0/0 a;*/
       height: 2rem;
       text-indent: 999em; /* needed for older android devices */
       text-shadow: none;
       overflow: hidden;
       padding: .25em;
       width: 2rem;
       position: absolute;
       top: .5rem;
       right: 1.75rem;
   }
   
   .uh-header .global-search .search-submit svg {
       fill: #c8102e;
       float: none;
       margin: 0;
   }
   
   .uh-header .global-search .search-close svg {
   }
   
   @media screen and (min-width: 992px) {
       .uh-header .global-search {
           margin-top: -3rem;
       }
       .uh-header .global-search .container {
           -webkit-flex-direction: row;
                   flex-direction: row;
           -webkit-justify-content: flex-end;
                   justify-content: flex-end;
       }
       .uh-header .global-search .search-field,
       .uh-header .global-search .search-submit {
           -webkit-order: -1;
                   order: -1;
       }
       .uh-header .global-search .search-field,
       .uh-header .global-search label,
       .uh-header .global-search .search-submit {
           margin-right: 1em;
       }
       .uh-header .global-search label {
           margin: 0 1em 0 0;
           /* padding: .25em 0; */
       }
       .uh-header .global-search .search-submit {
           position: static;
           margin: 0;
           margin-left: -3.25rem;
           margin-right: 1.125rem;
       }
       .uh-header .global-search .search-close {
           display: block;
       }
   }
   
   /* ==========================================================================
      Global Navigation Container
      ========================================================================== */
   
   .uh-header .global-nav {
       overflow: hidden;
       padding: 0;
   }
   
   .uh-header .global-logo {
       left: 0;
       height: 3rem; /* fixes bug in IE11 */
       padding: 0 1.25rem;
       position: absolute;
       top: 0;
       right: 4.25rem;
       -webkit-align-items: center;
               align-items: center;
       display: -webkit-flex;
       display: flex;
	   z-index: 1000;
   }
   
   .uh-header .global-logo a {
       display: block;
       max-width: 260px;
       min-width: 220px;
       width: 50%;
   }
   
   .uh-header .global-logo img,
   .uh-header .global-logo svg {
       display: block;
       height: auto;
       width: 100%;
   }
   
   .uh-header .global-logo svg {
       fill: white;
   }
   
   @media screen and (min-width: 768px) {
       .uh-header .global-logo {
           padding: 0 2.5rem;
       }
   }
   
   @media screen and (min-width: 992px) {
       .uh-header {
           display: block;
           z-index: 100;
       }
       .uh-header .global-nav {
           /* https://www.smashingmagazine.com/2016/05/fluid-typography/#controlling-the-rate-of-scale */
           font-size: calc(14px + (16 - 14) * (100vw - 992px) / (1200 - 992)); /* scale between 14px and 16px (see above link) */
       }
       .uh-header-primary .global-nav {
           margin-bottom: -3em;
           position: relative;
       }
       .uh-header .global-nav .container {
           display: -webkit-flex;
           display: flex;
           -webkit-flex-direction: row;
                   flex-direction: row;
       }
       .uh-header-primary .global-nav .container {
           -webkit-justify-content: flex-end;
                   justify-content: flex-end;
       }
       .uh-header .global-logo {
           margin-right: 2.5rem;
           padding: 0;
           position: static;
           -webkit-align-self: center;
                   align-self: center;
           -webkit-flex-basis: 260px;
                   flex-basis: 260px;
           -webkit-flex-grow: 1;
                   flex-grow: 1;
           -webkit-flex-shrink: 1;
                   flex-shrink: 1;
       }
       .uh-header-primary .global-logo {
           display: none;
       }
   }
   
   @media screen and (min-width: 1200px) {
       .uh-header .global-nav {
           font-size: 1rem; /* 16px */
       }
   }
   
   /* ==========================================================================
      Tactical Links
      ========================================================================== */
   
   .uh-header .nav-tactical {
       line-height: 1.5;
       margin: 0 -.75em;
       /*padding-top: .5em;*/
   }
   
   .uh-header .nav-tactical a {
       display: block;
       padding: .5em .75em;
   }
   
   .uh-header .nav-tactical a svg,
   .uh-header .nav-tactical a img {
       display: block;
       float: left;
       height: 1.5em;
       margin-right: .5em;
       width: 1.5em;
   }
   
   .uh-header .nav-tactical a svg,
   .uh-header .nav-tactical a svg * {
       fill: currentColor !important;
   }
   
   .uh-header .nav-tactical .nav-link-search {
       display: none;
   }
   
   @media screen and (min-width: 992px) {
       .uh-header .nav-tactical {
           -webkit-align-items: center;
                   align-items: center;
           display: -webkit-flex;
           display: flex;
           /*padding-top: 0;*/
       }
       .uh-header .nav-tactical a {
           padding: .75em;
       }
       .uh-header .nav-tactical .nav-link-search {
           display: block;
           opacity: 1;
           transition: opacity .25s ease, color .25s ease;
       }
       .active-search .uh-header .nav-tactical .nav-link-search {
           color: black;
           opacity: .25;
       }
   }
   
   /* ==========================================================================
      Site Name
      ========================================================================== */
   
   .uh-header:not(.uh-header-primary) .site-name {
       margin-top: 3rem;
       -webkit-order: -1;
               order: -1;
   }
   
   .uh-header-primary .site-name {
       display: none;
   }
   
   .uh-header-secondary .site-name {
       background-color: #960C22;
       color: white;
       font-family: 'League Gothic', sans-serif;
       /* https://www.smashingmagazine.com/2016/05/fluid-typography/#controlling-the-rate-of-scale */
       font-size: calc(22px + (44 - 22) * (100vw - 320px) / (992 - 320)); /* scale between 22px and 44px (see above link) */
       line-height: 1.06818181818182em;
       line-height: calc(1em + 3px);
       padding: .25em 0 calc(.25em + 3px);
   }
   
   .uh-header-secondary-slate .site-name {
       background-color: #54585A;
   }
   
   .uh-header-secondary-red .site-name {
       background-color: #c8102e;
   }
   
   .uh-header-secondary-white .site-name {
       background-color: white;
       color: #54585A;
   }
   
   .uh-header-secondary .site-name h1 {
       color: inherit;
       font: inherit;
       letter-spacing: inherit;
       margin: 0;
       padding: 0;
       text-transform: none;
   }
   
   .uh-header .site-name a,
   .uh-header .site-name svg,
   .uh-header .site-name img {
       display: block;
   }
   
   .uh-header .site-name a,
   .uh-header .site-name a:visited {
       color: white;
   }
   
   .uh-header-primary .site-name a {
       display: block;
       height: 0;
       padding: 0 0 26.923076923077%;
       position: relative;
       width: 100%;
   }
   
   .uh-header-primary .site-name img,
   .uh-header-primary .site-name svg {
       display: block;
       height: 100%;
       left: 0;
       position: absolute;
       top: 0;
       width: 100%;
   }
   
   .uh-header-primary .site-name svg {
       fill: white;
   }
   
   .uh-header-secondary-white .site-name a,
   .uh-header-secondary-white .site-name a:visited {
       color: inherit;
   }
   
   .uh-header-custom  .site-name {
       background-color: white;
       padding: 2.5rem 0;
   }
   
   .uh-header-custom .site-name img {
       max-width: 500px;
       width: 100%;
   }
   
   @media screen and (min-width: 992px) {
       .uh-header:not(.uh-header-primary) .site-name {
           margin-top: 0;
       }
       .uh-header-primary .site-name {
           display: block;
           min-width: 0; /* fixes a bug where Edge ignores flex-basis here */
           -webkit-flex-basis: 260px;
                   flex-basis: 260px;
           -webkit-flex-grow: 0;
                   flex-grow: 0;
           -webkit-flex-shrink: 1;
                   flex-shrink: 1;
       }
       .uh-header-secondary .site-name {
           font-size: 3.75rem; /* 60px */
           /* https://www.smashingmagazine.com/2016/05/fluid-typography/#controlling-the-rate-of-scale */
           font-size: calc(44px + (60 - 44) * (100vw - 992px) / (1200 - 992)); /* scale between 44px and 60px (see above link) */
           margin-top: 0;
           padding: .25em 0 calc(.25em - 3px);
       }
       .uh-header-custom .site-name {
           margin-top: 0;
       }
   }
   
   @media screen and (min-width: 1200px) {
       .uh-header-secondary .site-name {
           font-size: 3.75rem; /* 60px */
       }
   }
   
   /* ==========================================================================
      Site Navigation Container
      ========================================================================== */
   
   .uh-header-primary .site-nav {
   }
   
   .uh-header-secondary .site-nav {
       background-color: #960C22;
   }
   
   .uh-header-secondary-slate .site-nav {
       background-color: #54585A;
   }
   
   .uh-header-secondary-red .site-nav {
       background-color: #c8102e;
   }
   
   .uh-header-secondary-white .site-nav {
       background-color: #54585A;
   }
   
   @media screen and (min-width: 992px) {
       .uh-header-primary .site-nav {
           padding: 2rem 0;
           /*padding: calc(32px + (40 - 32) * (100vw - 992px) / (1200 - 992)) 0;*/
       }
       .uh-header-primary .site-nav .container {
           display: -webkit-flex;
           display: flex;
       }
   }
   
   @media screen and (min-width: 1200px) {
       .uh-header-primary .site-nav {
           /*padding: 2.5rem 0;*/
       }
   }
   
   /* ==========================================================================
      Menu Button
      ========================================================================== */
   
   .uh-header .menu-button {
       background: none;
       border: none;
       color: #fff9d9;
       cursor: pointer;
       display: block;
       height: 3rem;
       padding: .75rem;
       position: absolute;
       right: 1.25rem;
       top: 0;
       width: 3rem;
   }
   
   .uh-header .menu-button svg {
       fill: currentColor;
       height: 1.5rem;
       width: 1.5rem;
   }
   
   .uh-header .menu-button-active {
       background-color: #960C22;
   }
   
   @media only screen and (min-width: 768px) {
       .uh-header .menu-button {
           right: 2.55rem;
       }
       .uh-header .global-search .search-submit {
           right: 3rem;
       }
   }
   
   @media only screen and (min-width: 992px) {
       .uh-header .menu-button {
           display: none;
       }
   }
   
   /* ==========================================================================
      Primary Navigation
      ========================================================================== */
   
   .uh-header .nav-primary {
       font-weight: bold;
       line-height: 1.5;
       margin: 0 -1.25rem;
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: column;
               flex-direction: column;
   }
   
   .uh-header .nav-primary li {
       position: relative;
   }
   
   /*.uh-header .nav-primary > li:last-child {
       padding-bottom: .5em;
   }*/
   
   .uh-header .nav-primary a {
       display: block;
       padding: .5em 1.25rem;
   }
   
   .uh-header .nav-primary a:empty {
       /*display: none;*/
   }
   
   .uh-header .nav-primary .caret {
       /* border-top: .25em solid #FFF9D9; */
       /* border-right: .25em solid transparent; */
       /* border-bottom: none; */
       /* border-left: .25em solid transparent; */
       position: absolute;
       right: 1.75rem;
       top: .25em;
       width: 2rem;
       height: 2rem;
       border: none;
       padding: .25rem;
       display: block;
       transition: transform .25s ease;
       -webkit-transform: rotate(0deg);
               transform: rotate(0deg);
   }
   
   .uh-header .nav-primary .opened .caret {
       -webkit-transform: rotate(-180deg);
               transform: rotate(-180deg);
   }
   
   .uh-header .nav-primary .caret svg {
       fill: #fff9d9;
       height: 1.5rem;
       width: 1.5rem;
   }
   
   .uh-header .nav-primary .children {
       background-color: rgba(0,0,0,.25);
       font-weight: normal;
       max-height: 0;
       overflow: hidden;
       transition: max-height .5s ease;
   }
   
   .uh-header .nav-primary .opened + .children {
       max-height: 50rem;
   }
   
   @media screen and (min-width: 768px) {
       .uh-header .nav-primary {
           margin: 0 -2.5rem;
       }
       .uh-header .nav-primary a {
           padding: .5em 2.5rem;
       }
       .uh-header .nav-primary .caret {
           right: 2.5rem;
       }
   }
   
   @media screen and (min-width: 992px) {
       .uh-header .nav-primary {
           /* https://www.smashingmagazine.com/2016/05/fluid-typography/#controlling-the-rate-of-scale */
           font-size: calc(15px + (18 - 15) * (100vw - 970px)/(1200 - 970)); /* scale between 15px and 18px (see above link) */
           margin: 0 -.75rem;
           -webkit-align-items: flex-end;
                   align-items: flex-end;
           -webkit-flex-direction: row;
                   flex-direction: row;
       }
       .uh-header-primary .nav-primary {
           margin-left: calc(2.5rem - .75em);
           -webkit-flex-grow: 1;
                   flex-grow: 1;
           -webkit-flex-shrink: 0;
                   flex-shrink: 0;
           -webkit-justify-content: flex-end;
                   justify-content: flex-end;
       }
       .uh-header .nav-primary > li {
           transition: background .25s ease;
       }
       /*.uh-header .nav-primary > li:last-child {
           padding-bottom: 0;
       }*/
       .uh-header-primary .nav-primary > li {
           margin: auto 0 -1.125rem;
       }
       .uh-header .nav-primary li:hover {
           background: rgba(0,0,0,.25);
       }
       .uh-header .nav-primary a {
           padding: .75rem;
       }
       .uh-header .nav-primary .caret {
           border-top: .25em solid #FFF9D9;
           border-right: .25em solid transparent;
           border-bottom: none;
           border-left: .25em solid transparent;
           margin: 0;
           opacity: 0.5;
           position: relative;
           right: -.25em;
           top: auto;
           width: 0;
           height: 0;
           display: inline-block;
           padding: 0;
       }
       .uh-header .nav-primary li:hover .caret {
           opacity: 1;
       }
       .uh-header .nav-primary .caret svg {
           display: none;
       }
       .uh-header .nav-primary .children {
           background-color: #f2f2f2;
           border: 1px solid rgba(0,0,0,0.1);
           border-top-width: 0;
           box-shadow: 0 .5rem 1rem rgba(0,0,0,0.05);
           font-size: 1rem; /* 16px */
           line-height: 1.3125em;
           line-height: calc(1.5em - 3px);
           left: -999em;
           max-height: none;
           opacity: 0;
           overflow: visible;
           position: absolute;
           width: 260px;
       }
       .uh-header .nav-primary > li:hover > .children {
           left: -1px;
           opacity: 1;
           transition: opacity .25s ease .25s, left 0 ease .25s;
       }
       .uh-header .nav-primary > li:last-child:hover > .children {
           left: auto;
           right: 0;
       }
       .uh-header .nav-primary li:hover .children li:hover {
           background-color: #e5e5e5;
       }
       .uh-header .nav-primary .children a,
       .uh-header .nav-primary .children a:visited {
           color: #c8102e;
       }
       .uh-header .nav-primary .children a:hover,
       .uh-header .nav-primary .children a:visited:hover {
           color: #960C22;
       }
       .uh-header .nav-primary .children a {
           padding: .5em 1.5em .5em .75em;
       }
       .uh-header .nav-primary .children .caret {
           border-top: .25em solid transparent;
           border-right: none;
           border-bottom: .25em solid transparent;
           border-left: .25em solid #c8102e;
           position: absolute;
           right: .75em;
           top: .875em;
       }
       .uh-header .nav-primary .grandchildren {
           border-top-width: 1px;
           left: -999em;
           margin-left: 260px;
           opacity: 0;
           top: -1px;
           transition: opacity 0s linear .25s, left 0s linear .25s;
       }
       .uh-header .nav-primary .children li:hover .grandchildren {
           left: -2px;
           opacity: 1;
           transition: opacity .25s ease, left 0s linear;
       }
       .uh-header .nav-primary > li:last-child .children li .grandchildren {
           transition: opacity 0s linear .25s, right 0s linear .25s;
       }
       .uh-header .nav-primary > li:last-child .children li:hover .grandchildren {
           left: auto;
           opacity: 1;
           right: 258px;
           transition: opacity .25s ease, right 0s linear;
       }
   }
   
   @media screen and (min-width: 1200px) {
       .uh-header .nav-primary {
           font-size: 1.125rem; /* 18px */
       }
   }
   
   /* ==========================================================================
      Responsive Menu Styles
      ========================================================================== */
   
   @media screen and (max-width: 991px) {
       .uh-header .global-search,
       .uh-header .global-nav,
       .uh-header .nav-primary {
           max-height: 0;
           overflow: hidden;
           transition: max-height .35s ease;
       }
       .active-nav .uh-header .global-nav {
           max-height: 20rem;
       }
       .active-nav .uh-header .global-search {
           max-height: 10rem;
       }
       .active-nav .uh-header .nav-primary {
           max-height: 100rem;
           transition: max-height 1s ease;
       }
   }
   
   /* ==========================================================================
      General Footer Styles
      ========================================================================== */
   
   /* fixes a flexbox column bug seen in IE11 https://github.com/philipwalton/flexbugs#5-column-flex-items-dont-always-preserve-intrinsic-aspect-ratios */
   body > [name*="Footer"],
   body > .uh-footer {
       overflow: hidden; 
   }
   
   .uh-footer {
       z-index: 100;
   }
   
   .uh-footer a,
   .uh-footer a:visited {
       color: #FFF9D9;
       text-decoration: none;
   }
   
   .uh-footer a:hover,
   .uh-footer a:focus,
   .uh-footer a:visited:hover {
       color: white;
       text-decoration: none;
   }
   
   /* ==========================================================================
      Site Footer
      ========================================================================== */
   
   .uh-footer .site-footer {
       background-color: #c8102e;
       color: white;
       font-size: 1rem; /* 16px */
       line-height: 1.3125em;
       line-height: calc(1.5em - 3px);
       padding: calc(1.5em - 3px) 0;
   }
   
   .uh-footer-slate .site-footer {
       background-color: #54585A;
   }
   
   .uh-footer-brick .site-footer {
       background-color: #960C22;
   }
   
   .uh-footer .site-footer .container {
       display: block;
       padding: 0 1.25rem;
   }
   
   .uh-footer .site-footer h1,
   .uh-footer .site-footer h2,
   .uh-footer .site-footer h3 {
       font-family: 'League Gothic';
       margin-top: 0;
   }
   
   .uh-footer .site-footer h1 {
       font-size: 2.25rem;
       text-transform: uppercase;
   }
   
   .uh-footer .site-footer h2 {
       font-size: 1.6875rem;
       text-transform: uppercase;
   }
   
   .uh-footer .site-footer h3 {
       font-size: 1.125rem;
   }
   
   .uh-footer .site-footer .contact-block,
   .uh-footer .site-footer .footer-links-column {
       margin-bottom: calc(1.5em - 3px);
       padding: 0;
       width: 100%;
   }
   
   .uh-footer .site-footer .footer-logo {
       margin: 10px 0 30px;
       max-width: 260px;
   }
   
   .uh-footer .site-footer .footer-logo a {
       display: block;
   }
   
   .uh-footer .site-footer .footer-logo svg {
       display: block;
       fill: white;
   }
   
   .uh-footer .site-footer .contact-info {
       line-height: 1.5;
   }
   
   .uh-footer .site-footer .footer-links {
       display: block;
       width: 100%;
   }
   
   .uh-footer .site-footer .footer-links-list {
       margin: 0 0 calc(1.5em - 3px);
       padding: 0;
       width: 100%;
       -webkit-column-count: 1;
          -moz-column-count: 1;
               column-count: 1;
       -webkit-column-gap: 2.5rem;
          -moz-column-gap: 2.5rem;
               column-gap: 2.5rem;
   }
   
   .uh-footer .site-footer .footer-links-list li {
       margin: 0;
       padding: 9px 0 0;
       -webkit-column-break-inside: avoid;
                 page-break-inside: avoid;
                      break-inside: avoid;
   }
   
   .uh-footer .site-footer .social-media-list {
       list-style: none;
       margin-top: 0;
       padding: 9px 0 0;
       width: 100%;
       -webkit-align-content: flex-start;
               align-content: flex-start;
       display: -webkit-flex;
       display: flex;
       -webkit-flex-direction: row;
               flex-direction: row;
       -webkit-flex-wrap: wrap;
               flex-wrap: wrap;
   }
   
   .uh-footer .site-footer .social-media-list li {
       margin: 0 10px 10px 0;
       padding: 0;
   }
   
   .uh-footer .site-footer .social-media-list a {
       background: #FFF9D9;
       border-radius: 50%;
       display: block;
       height: 40px;
       padding: 8px;
       transition: background .25s ease;
       width: 40px;
   }
   
   .uh-footer .site-footer .social-media-list a:hover,
   .uh-footer .site-footer .social-media-list a:focus {
       background: white;
   }
   
   .uh-footer .site-footer .social-media-list svg {
       fill: #c8102e;
   }
   
   .uh-footer-slate .site-footer .social-media-list svg {
       fill: #54585A;
   }
   
   .uh-footer-brick .site-footer .social-media-list svg {
       fill: #960C22;
   }
   
   @media screen and (min-width: 420px) {
       .uh-footer .site-footer .footer-links-list {
           -webkit-column-count: 2;
              -moz-column-count: 2;
                   column-count: 2;
       }
   }
   
   @media screen and (min-width: 600px) {
       .uh-footer .site-footer .contact-block,
       .uh-footer .site-footer .footer-links-list,
       .uh-footer .site-footer .social-media-list,
       .uh-footer .site-footer .footer-links-column {
           padding-left: 1.25rem;
           padding-right: 1.25rem;
       }
       .uh-footer .site-footer .container {
           padding: 0;
           display: -webkit-flex;
           display: flex;
       }
       .uh-footer .site-footer .contact-block {
           width: 33%;
       }
       .uh-footer .site-footer .footer-links {
           width: 67%;
       }
       .uh-footer .site-footer .footer-links-list {
           width: 100%;
       }
   }
   
   @media screen and (min-width: 768px) {
       .uh-footer .site-footer .container {
           padding: 0 1.25rem;
       }
   }
   
   @media screen and (min-width: 992px) {
       .uh-footer .site-footer .footer-links {
           display: -webkit-flex;
           display: flex;
       }
       .uh-footer .site-footer .footer-links-column {
           margin-bottom: 0;
       }
       .uh-footer .site-footer .footer-links-list {
           width: 67.77777777%;
           -webkit-column-count: 2;
              -moz-column-count: 2;
                   column-count: 2;
       }
       .uh-footer .site-footer .social-media-list {
           width: 33.33333333%;
       }
   }
   
   @media screen and (min-width: 1200px) {
       .uh-footer .site-footer .contact-block {
           width: 33.33333333%;
       }
       .uh-footer .site-footer .footer-links {
           width: 67.77777777%;
       }
       .uh-footer .site-footer .footer-links-list {
           width: 75%;
           -webkit-column-count: 3;
              -moz-column-count: 3;
                   column-count: 3;
       }
       .uh-footer .site-footer .social-media-list {
           width: 25%;
       }
   }
   
   /* ==========================================================================
      Global Footer
      ========================================================================== */
   
   .uh-footer .global-footer {
       background-color: #54585A;
       color: white;
       font-size: .875rem;  /* 14px */
       padding: 1em 0;
       line-height: 1.5;
   }
   
   .uh-footer-slate .global-footer,
   .uh-footer-brick .global-footer {
       background-color: #c8102e;
   }
   
   .uh-footer .global-footer a,
   .uh-footer .global-footer a:visited {
       color: #fff9d9;
       text-decoration: none;
   }
   
   .uh-footer .global-footer a:hover,
   .uh-footer .global-footer a:focus,
   .uh-footer .global-footer a:visited:hover {
       color: white;
       text-decoration: none;
   }
   
   .uh-footer .global-footer .copyright {
       display: inline;
       margin: 0 .5em 0 0;
   }
   
   .uh-footer .global-footer .nav-required {
       display: inline;
   }
   
   .uh-footer .global-footer .nav-required li {
       display: inline-block;
       margin-right: .5em;
   }
   
   .uh-footer .global-footer .nav-item-highlighted a,
   .uh-footer .global-footer .nav-item-highlighted a:visited {
       color: #F6BE00;
       text-decoration: none;
   }
   
   .uh-footer .global-footer .nav-item-highlighted a:hover,
   .uh-footer .global-footer .nav-item-highlighted a:focus,
   .uh-footer .global-footer .nav-item-highlighted a:visited:hover {
       color: white;
   }
   
   /* ==========================================================================
      Browser Upgrade
      ========================================================================== */
   
   .browserupgrade {
       background: #F6BE00;
       color: black;
       font-size: 1.75em;
       line-height: 1.4;
       margin: 0;
       padding: 40px;
       position: relative;
       z-index: 9999;
   }
   
   .browserupgrade a {
       font-weight: bold;
   }
   
   .browserupgrade ~ .uh-header,
   .browserupgrade ~ .uh-footer {
       height: 0;
       overflow: hidden;
   }