:root{
  --cnvs-themecolor:#007b85;
  --navy:#003e7e;
  --green:#007b85;
  --sage:#edf5f5;
  --text:#364b58
}
body{
  color:var(--text);
  font-family:Inter,sans-serif
}
h1,h2{
  color:var(--navy);
  font-family:"Playfair Display",serif;
  font-weight:400
}
h3,h4{
  color:var(--navy)
}
.button{
  background-color:var(--green)
}
.button:hover{
  background-color:var(--navy)
}
.facility-location{
  color:var(--green);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.04rem;
  margin:.6rem 0 1rem
}
.facility-directory-heading:after{
  display:none
}
.facility-map-section{
  align-items:center;
  background:var(--sage);
  display:grid;
  gap:2rem;
  grid-template-columns:minmax(0,1fr) minmax(280px,430px);
  margin:0 0 3rem;
  padding:2.5rem
}
.facility-map-copy p:last-child{
  margin-bottom:0
}
.facility-map-image{
  align-items:center;
  display:flex;
  justify-content:center;
  padding:0
}
.facility-map-image img{
  display:block;
  height:auto;
  margin:0 auto;
  max-width:100%
}
.site-header{
  --cnvs-primary-menu-font-weight:600;
  --cnvs-primary-menu-font-size:.82rem;
  --cnvs-primary-menu-tt:uppercase;
  --cnvs-primary-menu-ls:.07rem
}
.site-header .menu-link{
  color:var(--navy)
}
.site-header .current>.menu-link,.site-header .menu-link:hover{
  color:var(--green)
}
.transparent-header.site-header:not(.sticky-header) .menu-link{
  color:#fff
}
.site-logo{
  align-items:center;
  display:flex;
  height:100%
}
.site-logo .logo-image{
  display:block;
  height:auto;
  max-height:52px;
  width:205px
}
.site-logo .logo-compact{
  display:none
}
.transparent-header:not(.sticky-header) .site-logo .logo-color{
  display:none
}
.transparent-header.sticky-header .site-logo .logo-light{
  display:none
}
.site-hero{
  background-position:center;
  background-size:cover;
  position:relative
}
.site-hero:before{
  background:linear-gradient(90deg,rgba(16,44,56,.86),rgba(16,44,56,.48));
  content:"";
  inset:0;
  position:absolute
}
.site-hero h1{
  color:#fff;
  font-size:clamp(3rem,6vw,5.5rem);
  line-height:1.05;
  margin:0 auto 1.5rem;
  max-width:1000px
}
.hero-kicker,.section-kicker{
  color:var(--green);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.18rem;
  margin-bottom:1rem;
  text-transform:uppercase
}
.site-hero .hero-kicker{
  color:#c9ddd5
}
.hero-copy{
  font-size:1.18rem;
  line-height:1.8;
  margin:auto;
  max-width:780px
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  justify-content:center;
  margin-top:2rem
}
.site-heading{
  max-width:760px
}
.site-section{
  background:var(--sage);
  padding:90px 0
}
.support-panel{
  background:#fff;
  border-left:4px solid var(--green);
  box-shadow:0 12px 40px rgba(24,55,70,.09);
  padding:2.5rem
}
.support-panel .iconlist li{
  margin-bottom:1rem
}
.support-panel .iconlist i{
  color:var(--green)
}
.network-number{
  color:var(--navy);
  font-family:"Playfair Display",serif;
  font-size:4.5rem;
  line-height:.8
}
.network-number small{
  display:block;
  font-family:Inter,sans-serif;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1rem;
  margin-top:1rem;
  text-transform:uppercase
}
.site-cta{
  background:var(--navy);
  color:#dbe5e1;
  padding:65px 0
}
.site-cta h2{
  color:#fff;
  margin-bottom:.5rem
}
.site-cta p{
  margin:0
}
.page-title-banner{
  background:linear-gradient(120deg,var(--navy),#285563);
  color:#dce8e3;
  padding:72px 0
}
.page-title-banner h1{
  color:#fff;
  font-size:clamp(2.5rem,5vw,4rem);
  margin-bottom:.75rem
}
.page-title-banner p:last-child{
  font-size:1.08rem;
  margin:0;
  max-width:720px
}
.page-title-banner .section-kicker{
  color:#bcd3ca
}
.info-card{
  background:#fff;
  border-top:3px solid var(--green);
  box-shadow:0 8px 30px rgba(24,55,70,.07);
  height:100%;
  padding:2rem
}
.simple-cta{
  padding:80px 0
}
.narrow-copy{
  margin:auto;
  max-width:780px
}
.facility-grid{
  row-gap:1.5rem
}
.facility-card{
  border:1px solid #dfe6e2;
  display:flex;
  flex-direction:column;
  height:100%;
  padding:2rem;
  transition:.2s
}
.facility-card:hover{
  box-shadow:0 12px 30px rgba(24,55,70,.08);
  transform:translateY(-3px)
}
.facility-card>span{
  color:var(--green);
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.08rem;
  text-transform:uppercase
}
.facility-card p{
  flex-grow:1
}
.facility-card .button{
  align-self:flex-start
}
.facility-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem
}
.facility-actions .button{
  line-height:1.3;
  margin:0;
  padding:.55rem .8rem;
  text-align:center
}
.facility-actions .button-border{
  border-color:var(--green);
  color:var(--green)
}
.facility-actions .button-border:hover{
  background:var(--navy);
  border-color:var(--navy);
  color:#fff
}
.employment-note{
  align-items:flex-start;
  background:var(--sage);
  display:flex;
  gap:1rem;
  margin-top:3rem;
  padding:1.5rem
}
.employment-note i{
  color:var(--green);
  font-size:1.4rem
}
.employment-note p{
  margin:0
}
.leader-card{
  border:1px solid #dfe6e2;
  height:100%
}
.leader-photo{
  background:var(--sage);
  display:block;
  height:300px;
  object-fit:contain;
  object-position:center center;
  width:100%
}
.leader-placeholder{
  align-items:center;
  background:var(--sage);
  color:#8ca399;
  display:flex;
  height:230px;
  justify-content:center
}
.leader-placeholder i{
  font-size:5rem
}
.leader-copy{
  padding:2rem
}
.leader-role{
  color:var(--green);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1rem;
  margin-bottom:.5rem;
  text-transform:uppercase
}
.contact-list>div{
  align-items:flex-start;
  border-bottom:1px solid #e1e7e4;
  display:flex;
  gap:1rem;
  padding:1.25rem 0
}
.contact-list i{
  color:var(--green);
  font-size:1.5rem
}
.contact-list strong,.contact-list span{
  display:block
}
.site-footer{
  border-top:4px solid var(--green)
}
.site-footer .footer-widgets-wrap{
  padding:65px 0
}
.footer-brand{
  display:inline-block;
  margin-bottom:1.5rem
}
.footer-brand img{
  display:block;
  height:auto;
  max-width:220px;
  width:100%
}
.site-footer p{
  color:#b8c5c9;
  max-width:470px
}
.footer-links{
  list-style:none;
  margin:0;
  padding:0
}
.footer-links li{
  margin-bottom:.55rem
}
.footer-links a{
  color:#c9d3d6
}
.site-footer #copyrights{
  color:#8fa0a6;
  font-size:.82rem;
  padding:25px 0
}
@media(max-width:991.98px){
  .site-logo .logo-full{
    display:none!important
  }
  .site-logo .logo-compact{
    display:block
  }
  .site-logo .logo-image{
    max-height:42px;
    width:150px
  }
  .transparent-header:not(.sticky-header) .site-logo .logo-compact.logo-color{
    display:none
  }
  .transparent-header.sticky-header .site-logo .logo-compact.logo-light{
    display:none
  }
  .interior-header .primary-menu{
    background:#fff
  }
  .site-header .primary-menu .menu-link,.transparent-header.site-header:not(.sticky-header) .primary-menu .menu-link{
    color:var(--navy)
  }
  .site-cta{
    text-align:center
  }
  .site-cta .button{
    margin-top:1.5rem!important
  }
}
@media(max-width:575.98px){
  .site-hero{
    min-height:720px!important
  }
  .hero-actions{
    align-items:stretch;
    flex-direction:column
  }
  .hero-actions .button{
    margin:0
  }
  .page-title-banner{
    padding:55px 0
  }
  .site-section{
    padding:65px 0
  }
  .support-panel{
    padding:1.75rem
  }
  .facility-map-section{
    grid-template-columns:1fr;
    padding:1.75rem
  }
  .facility-actions{
    align-items:stretch;
    flex-direction:column
  }
  .facility-actions .button{
    width:100%
  }
}
#logo a .logo-image{
  display:block
}
#header-wrap #logo .logo-image{
  height:auto
}
#logo .site-logo .logo-compact{
  display:none
}
.transparent-header:not(.sticky-header) #logo .site-logo .logo-color{
  display:none
}
.transparent-header.sticky-header #logo .site-logo .logo-light{
  display:none
}
@media(max-width:991.98px){
  #logo .site-logo .logo-full{
    display:none!important
  }
  #logo .site-logo .logo-compact{
    display:block
  }
  .transparent-header:not(.sticky-header) #logo .site-logo .logo-compact.logo-color{
    display:none
  }
  .transparent-header.sticky-header #logo .site-logo .logo-compact.logo-light{
    display:none
  }
}
/* Homepage sticky-header contrast and dark-footer typography. */
.transparent-header.site-header.sticky-header .menu-link{
  color:#fff
}
.transparent-header.site-header.sticky-header .current>.menu-link,.transparent-header.site-header.sticky-header .menu-link:hover{
  color:#c9eeee
}
.site-footer h4{
  color:#fff
}
.site-footer .footer-links a:hover{
  color:#fff
}
#header-wrap #logo .homepage-logo-desktop,#header-wrap #logo .homepage-logo-mobile{
  height:auto;
  max-height:52px;
  width:205px
}
#logo .homepage-logo-mobile{
  display:none
}
@media(max-width:991.98px){
  #logo .homepage-logo-desktop{
    display:none
  }
  #logo .homepage-logo-mobile{
    display:block
  }
  #header-wrap #logo .homepage-logo-mobile{
    max-height:42px;
    width:150px
  }
}
