.footer-t3-address .fa-ext.extlink {
    visibility: hidden;
}

#primary_nav_wrap {
  --drawer-top: 144px;             
  --safe-top: env(safe-area-inset-top, 0px);
  --drawer-top: calc(144px + var(--safe-top));
}

#primary_nav_wrap {
  margin-left: 1em;
  margin-top: 15px;
  position: relative;
}
 
 .header-txt {
    top:55%;
 }
 
 .header-txt .btn a {
    margin-left: 0;
}
.header-txt .btn {
    margin-top: 3em;
    text-align: left;
}

ul#ultimenu-sticky-nav .uitem>.ultimenu__flyout {
  margin: 0;
}

.footer-t3-social-links {
    margin: 2em;
}

#primary_nav_wrap li.menu-item span {
  color: white;
  padding:0;
}

.menu-t1-search {
  display: inline-table;
  position: relative;
  padding: 1.2em 0 0 .5em;
}

#primary_nav_wrap .menu-t1-search a {
  color:white;
}

#header {
    display: block;
    position: sticky;
    top: 0;
    z-index: 999999;
}

.footer-t3-social-links .social-links {
    grid-template-columns: repeat(6, 1fr);
    grid-gap: 0;
    justify-items: left;
    max-width: 500px;
    margin: 0 .9em;
}

.t3-dept-logo a {
  color: white;
  font-family: 'myriad-pro';
  text-decoration: none;
  line-height: 1.5vw;
  font-weight:900;
}

#primary_nav_wrap {
    margin-top: 30px;
}


ul.comp-links {
  padding: 0;
  list-style: none;
  margin-left: 1em;
  line-height: 1.5em;
}

ul.comp-links li a {
    color: white;
    font-weight: 100;
    font-size: .8em;
    background: none;
}

ul.comp-links li a:hover {
  text-decoration:underline;
}

.region.region-primary-menu {
    background: #003973;
    position: relative;
    max-height: 90px;
    height:unset;
    display: grid;
    grid-template-columns: 2fr 5fr;
    z-index: 11;
}
/* Top row spacing only (do not touch dropdown <ul>s) */
 #primary_nav_wrap > ul { padding: 0 2em 0 0; }

/* Ensure dropdown panels have no extra padding */
 #primary_nav_wrap > ul > li > ul { padding: 0 !important; }

/* Color the link, not the <li> container */
#primary_nav_wrap > ul > li:hover > :is(a,span){
  background:#003366 !important;
  color:#fff !important;
  box-shadow: inset 0 0 0 1px #C8B18B;
}

/* Neutralize any li-level background painting */
 #primary_nav_wrap ul li:hover{ background: transparent !important; }


#primary_nav_wrap ul li {

    margin: .5em 0 0;
}

#primary_nav_wrap ul ul {
    background: #003366;
}

#block-views-block-title-caption-block-1-5 h1 {
    background: rgba(0,51,102,0.8);
    color: white;
    text-align: left;
    max-width: 50%;
    margin: 0;
    font-weight: 500;
    font-size: 3em;
    text-transform: unset;
    padding: .3em;
    text-shadow: none;
}

.t3-hero .caption-bg {
    background: rgba(0,51,102,0.8);
    color: white;
    text-align: left;
    max-width: 50%;
    margin: .5em 0 0 0;
    font-weight: 100;
    font-size: 1.5em;
    text-transform: unset;
    padding: .3em;
    text-shadow: none;
}
.t3-uis-logo img {
    max-width: 200px;
}

.t3-uis-logo {
    float: left;
}

.t3-branding {
  max-width:600px;
  display: grid;
  grid-template-columns: 1fr 2fr;
}


nav#block-mainmenu-7 li.menu-item a,
nav#block-mainmenu-20 li.menu-item a,
nav#block-mainmenu-3 li.menu-item a,
nav#block-mainmenu-12 li.menu-item a,
nav#block-mainmenu-7 li.menu-item a,
nav#block-mainmenu-18 li.menu-item a,
nav#block-mainmenu-17 li.menu-item a {
    color: white;
}


.footer-t3 {
    background: #036;
    color: white;
    padding: 3em 1em;
}

.footer-t3-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
}

.footer-t3-contact {
  font-weight: 100;
  margin-left: 1.8em;
  position:relative;
}

.footer-t3-logo img {
    max-width: 180px;
}

img.footer1-dept-logo {
    min-width: 250px;
    margin: 0 .5em 1em;
    padding: .4em 0 .4em 1em;
    border-left: 1px solid white;
}

.footer-t3-links a {
    color: white;
    text-decoration: none;
    font-size: .9em;
}

.footer-t3-links {
    margin-left: 1em;
}

.footer-t3-address {
    font-size: .8em;
    margin: 1em;
    line-height: 1.3em;
}

.footer-t3-main-links h2 {
    font-size: 1.5em;
}

.footer-t3-address a {
    color: white;
}

.footer-t3-main-links ul {
    list-style: none;
    padding: 0;
    line-height: 2em;
}

.footer-t3-main-links ul li a {
  color: white;
  font-weight: 100;
  font-size: .9em;
  background: none;
}


.footer-t3-logo a {
  color: white;
  font-family: 'myriad-pro';
  text-decoration: none;
  font-size: 1.2em;
  font-weight:900;
}

.t3-dept-logo {
  line-height: .9em;
  margin: auto 0;
  font-size: 1.2vw;
}

.footer-t3-logo {
    display: grid;
    grid-template-columns: 1fr 2fr;
    max-width: 500px;
    grid-gap: 1em;
}

button.button.button--ultimenu {
    display: none;
}

#primary_nav_wrap .menu li.expanding-item::before {
  color: white;
}


@media (max-width:1000px){
  .t3-branding {
    display: grid;
    grid-template-columns: 1fr 2fr;
   }
   
  .footer-t3-grid {
    grid-template-columns: 1fr 1fr;
    text-align:center;
  }
  
  .footer-t3-contact {
    grid-column: span 2;
  }
  
 
  
  #header {
    display:block;
    position: fixed;

  }
  
  .footer-t3-social-links .social-links {
    justify-items: unset;
  }
  
  .header-txt {
    text-align: left;
  }
  
  .t3-hero .title-caption {
    display:unset;
  }
  
  .t3-uis-logo img {
    max-width: 150px;
    margin: .3em 0 0 0;
  }
  
  .t3-dept-logo a {
    font-size: 3.5em;
    line-height: 1.1em;
  }
  
  .footer-t3-logo img {
    max-width: 150px;
  }
  
  #block-ultimenustickynav-4 #ultimenu-sticky-nav>li.ultimenu__item.uitem.has-ultimenu.is-ultimenu-item-expanded {
    width: 100%;
    transition: width .2s ease-in-out;
  }
  
  #block-ultimenustickynav-4 li.ultimenu__item.uitem.has-ultimenu.is-ultimenu-item-expanded {
    width: 100%;
    transition: width .5s ease-in-out;
  }
  
  #ultimenu-sticky-nav>li.ultimenu__item {
    padding: .5em;
  }
  
  .has-ultimenu .caret {
    min-height: 25px;
  }
  
  .has-ultimenu .caret::before {
    border: 5px solid transparent;
    border-top: 8px solid #fff !important;
    top:40%;
  }
  
  li.ultimenu__item.uitem {
    font-size: .8em;
    text-align: center;
  }

  #ultimenu-sticky-nav>li:nth-child(-n+3)>a {
    pointer-events: unset;
  }

  #block-ultimenustickynav-4 li.ultimenu__item.uitem.has-ultimenu {
    width: 33%;
    min-width: unset;
    float: left;
  	font-size: .7em;
  	transition: width .5s ease-in-out;
  }

  .has-ultimenu .caret {
      min-height: 30px;
      width: 25px;
  }
  
  li.ultimenu__item.uitem.has-ultimenu {
      width: 33%;
      min-width: unset;
      float: left;
      font-size: .7em;
      text-align:center;
  }
  
  #block-ultimenustickynav-4 li.ultimenu__item.uitem.has-ultimenu {
      width: 50%;
      min-width: unset;
      float: left;
      font-size: .7em;
  }
  
  #block-ultimenustickynav-4 #ultimenu-sticky-nav>li:nth-child(2) {
      min-width: 50%;
      width: 50%;
      transition: width .2s ease-in-out;
  }
  
  #block-ultimenustickynav-4 #ultimenu-sticky-nav>li:nth-child(4) {
      background: #036;
      margin: 0;
      min-width: 33%;
      width: 33%;
  	}
  
  #block-ultimenustickynav-4 #ultimenu-sticky-nav>li:nth-child(5) {
      min-width: 34%;
      width: 34%;
      margin: 0;
  }
  
  #block-ultimenustickynav-4 #ultimenu-sticky-nav>li:nth-child(6) {
      margin: 0;
      min-width: 33%;
      width: 33%;
    }
    
  .region.region-primary-menu{
    display:inline-block;
    max-height: 80px;
  }
  
  .footer-t3-contact {
    margin-left:unset;
  }
  
  .footer-t3-logo {
    grid-gap: .3em;
  }
  
  #block-views-block-title-caption-block-1-4 h1 {
    max-width: 100%;
    margin: 0 0 .5em;
  }
  
  .t3-dept-logo {
    text-align: left;
    padding-top: .6em;
    float: left;
    max-width: 80%;
    margin: auto 0;
  }
  
  #primary_nav_wrap li.menu-item span {
    padding: 0 .3em;
  }
  .menu-t1-search {
    display: block;
    clear: both;
    margin-left: 2em;
  }
}

@media (max-width:1299px){
  .t3-uis-logo img {
    max-width: 140px;
  }
  #header {
    display: block;
    width:100%;
  }
}

@media (max-width:599px){
	  .layout-container {
    padding-top: 43px;
  }
	
  #block-views-block-title-caption-block-1-4 {
    margin-top: 8em;
  }
  
  li.ultimenu__item.uitem.has-ultimenu a svg {
    display: none;
  }
  

  .header-txt .title-caption {
    display: none;
  }
  
 .view-id-title_caption img {
    max-height: 300px;
    width: 100%;
    margin-top: 5em;
    overflow: hidden;
  }
  .header-txt {
    top: 65%;
  }
  .header-txt .btn {
    margin-top: 0;
  }
  .btn a {
    padding: 10px 10px 5px;
  }
}

@media screen and (min-width: 600px) and (max-width: 1000px) and (orientation: portrait) {
  .t3-dept-logo a {
    font-size: 2em;          
    line-height: 1.1em;
    white-space: normal;    
    display: block;          
    max-width: 75%;          
  }
  
  :root { --header-h: 144px; }       /* match your real header height */
  #header { position: fixed; top: 0; }
  #highlighted, .t3-hero { margin-top: var(--header-h) !important; }
  html, body { margin: 0; }
  body[class*="toolbar"] { padding-top: 0 !important; }

}


/* =========================
   THEME 3 — COLORS ONLY
   (works with your colorless general.css)
   Scope: <nav class="t3-menu"> … #primary_nav_wrap …
   ========================= */

/* ---- Desktop (≥1001px) ---- */
@media (min-width:1001px){

  /* Top-level tabs (idle) */
 #primary_nav_wrap > ul > li > :is(a,span){
font-weight:400;
    color: #ffffff !important;
    border: 1px solid transparent; /* prevents layout jump */
  }

  /* Gold 2px frame on hover/focus (no layout shift) */
#primary_nav_wrap > ul > li:hover > :is(a,span),
 #primary_nav_wrap > ul > li:focus-within > :is(a,span){
    color:white !important;
    background:#003366 !important;
    box-shadow: inset 0 0 0 1px #C8B18B;
  }

  /* Level-2 dropdown container + rows */
 #primary_nav_wrap > ul > li > ul{
    background:#fff !important;
    border-top:1px solid #003366 !important; /* blue seam under the tab */
  }
 #primary_nav_wrap > ul > li > ul > li{ background:#fff !important; }
 #primary_nav_wrap > ul > li > ul > li > :is(a,span){
    color:white !important;
    font-weight:400;
    background:#003366 !important;
  }
 #primary_nav_wrap > ul > li > ul > li:hover > :is(a,span){
    background:#C8B18B !important;
    color:#003366 !important;
  }

  /* Level-3+ flyouts */
 #primary_nav_wrap ul ul ul{ background:#003366 !important; }
 #primary_nav_wrap ul ul ul > li > :is(a,span){
    background:white !important; color:#003366 !important;     font-weight:400;
  }
 #primary_nav_wrap ul ul ul > li:hover > :is(a,span){
    background:#003366 !important; color:white !important;
  }

 /* Show/force caret icons if markup already includes them */
#primary_nav_wrap i.fa-caret-down,
#primary_nav_wrap i.fas.fa-caret-down,
 #primary_nav_wrap i.fa-solid.fa-caret-down{
    display: inline-block !important;
    color: #ffffff !important;        /* white on dark-blue tab */
    margin-left: .35em;
    font-size: .85em;
  }
 #primary_nav_wrap i.fa-caret-right,
 #primary_nav_wrap i.fas.fa-caret-right,
 #primary_nav_wrap i.fa-solid.fa-caret-right{
    display: inline-block !important;
    margin-left: .35em;
    font-size: .85em;
    color: currentColor !important;   /* follows submenu link color */
  }


  
   /* Fallback carets via pseudo-elements (if no <i> icons are present) */
  /* Top-level items with children: down-caret */
 #primary_nav_wrap > ul > li.menu-item--expanded > :is(a,span)::after,
 #primary_nav_wrap > ul > li.menu-item-expanded    > :is(a,span)::after{
    content: "\f0d7";                 /* Font Awesome: caret-down */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-left: .35em;
    font-size: .85em;
    color: #ffffff;                   /* white on dark-blue tab */
  }

  /* Submenu items with children: right-caret */
#primary_nav_wrap ul ul > li.menu-item--expanded > :is(a,span)::after,
 #primary_nav_wrap ul ul > li.menu-item-expanded    > :is(a,span)::after{
    content: "\f0da";                 /* Font Awesome: caret-right */
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin-left: .35em;
    font-size: .85em;
    color: currentColor;              /* matches submenu link color */
  }
}

/* ---- Mobile + Portrait Tablet (≤1000px) ---- */
@media (max-width:1000px){

  /* Drawer background */
#primary_nav_wrap .menu{ background:#003366 !important; }

  /* LEVEL 1 — main items: white bg, blue text + blue separators */
 #primary_nav_wrap .menu > li > :is(a,span){
    background: transparent !important;
    color: white !important;
    border-bottom:1px solid white !important;
  }
 #primary_nav_wrap .menu > li > :is(a,span) i[class*="fa-caret"],
 #primary_nav_wrap .menu li.expanding-item::before{
    color: white !important;
  }

  /* LEVEL 2 — submenu: gold rows with blue text/lines */
 #primary_nav_wrap .menu > li > ul{
    background:#c8b18b !important;
    border-top:0 !important;    /* remove stray top line */
  }
  #primary_nav_wrap .menu > li > ul > li > :is(a,span) {
    background:#c8b18b !important;
    color:#003366 !important;
    border-bottom:1px solid #003366 !important;
  }
  
    /* Submenu (L2) carets = dark blue */
 #primary_nav_wrap .menu > li > ul > li > :is(a,span) i[class*="fa-caret"],
 #primary_nav_wrap .menu > li > ul > li.expanding-item::before{
    color:#003366 !important;
  }

  /* Last L2 row divider behavior */
#primary_nav_wrap .menu > li > ul > li:last-child > :is(a,span){
    border-bottom-color: white !important;
  }
 #primary_nav_wrap .menu > li > ul > li.open:last-child > :is(a,span){
    border-bottom-color:#fff !important; /* so it shows against dark L3 */
  }

  /* LEVEL 3+ — subsubmenu: dark blue with white text/lines */
 #primary_nav_wrap .menu > li > ul > li > ul{
    background: white !important;
    border-top:1px solid #003366 !important; /* white seam at panel top */
  }
 #primary_nav_wrap .menu > li > ul > li > ul > li > :is(a,span){
    background:white !important;
    color:#003366 !important;
    border-bottom:1px solid #003366 !important;
  }
 #primary_nav_wrap .menu > li > ul > li > ul > li > :is(a,span) i[class*="fa-caret"]{
    color:#003366 !important;
  }
   /* 1) Keep the blue divider under the OPEN L2 row (restore it) */
 #primary_nav_wrap .menu > li > ul > li.open > :is(a,span){
    border-bottom-color:#003366 !important;  /* was transparent */
  }

  /* 2) Prevent L3 from adding a second top line */
 #primary_nav_wrap .menu > li > ul > li > ul{
    border-top:0 !important;                 /* no extra top seam */
  }
 #primary_nav_wrap .menu > li > ul > li > ul > li:first-child > :is(a,span){
    border-top:0 !important;                  /* first L3 row: no top line */
  }

  /* 3) Ensure L3 rows have blue dividers (for the seam above next L2 row) */
 #primary_nav_wrap .menu > li > ul > li > ul > li > :is(a,span){
    border-bottom:1px solid #003366 !important;
  }

  /* 4) Keep the special case: last L2 item → white divider before next L1 */
 #primary_nav_wrap .menu > li > ul > li:last-child > :is(a,span){
    border-bottom-color:#fff !important;
  }
  
 #primary_nav_wrap .menu > li > ul > li > ul > li:last-child > a,
 #primary_nav_wrap .menu > li > ul > li > ul > li:last-child > span{
    border-bottom: 1px solid #003366 !important; /* dark blue */
  }
}

/* ---- Small global color bits used by your general rules ---- */

/* Mobile hamburger button colors */
 #primary_nav_wrap label{ background:#000; color:#fff; }
 #primary_nav_wrap label:hover{ background:#036; }
 #primary_nav_wrap label::before{ color:#fff; }

/* Desktop header underline (if you keep that element outside nav) */
 .region-primary-menu{ border-bottom-color:#003366; }

/* Optional: if any tablet helper set a background on sticky nav */
@media (min-width:599px) and (max-width:1000px){
 #block-ultimenustickynav-5 #ultimenu-sticky-nav > li:nth-child(4){ background:#036; }
}

