/* =========================================================
   UFV Legacy Rebrand Overrides
   Loaded after all legacy CSS files.
   Purpose: colour/typography reskin only; avoid layout changes.
   ========================================================= */


/* Rebrand tokens
   Use CSS variables so colours are easy to change later.
--------------------------------------------------------- */
:root {
  --ufv-brand-deep-green: #17382b;
  --ufv-brand-valley-green: #006d56;
  --ufv-brand-leaf-green: #00a055;
  --ufv-brand-lichen-green: #bdefdd;
  --ufv-brand-orange: #ff8a65;
  --ufv-brand-yellow: #ffe164;
  --ufv-brand-purple: #ed9eff;
  

  --ufv-neutral-charcoal: #333;
  --ufv-neutral-grey: #f4f4f2;
  --ufv-neutral-mushroom: #f6f4ea;
  --ufv-neutral-white: #fff;
 
/* Semantic design tokens for legacy CSS classes */

--ufv-text:              var(--ufv-brand-charcoal);

  --ufv-link:              var(--ufv-brand-valley-green);
  --ufv-link-hover:        var(--ufv-brand-deep-green);

  --ufv-heading:           var(--ufv-brand-valley-green);

  --ufv-nav-background:    var(--ufv-brand-deep-green);
  --ufv-nav-text:          var(--ufv-neutral-white);

  --ufv-button-primary:        var(--ufv-brand-valley-green);
  --ufv-button-primary-hover:  var(--ufv-brand-deep-green);

  --ufv-button-secondary:      var(--ufv-brand-orange);

  --ufv-sidebar-active:        var(--ufv-brand-valley-green);

  --ufv-footer-background:     var(--ufv-brand-deep-green);
  --ufv-footer-text:           var(--ufv-neutral-mushroom);

}

/* Typography - global font family overrides
    font is linked in head of each page, so we can use it here 
    
    ------------------------------------------------------------*/

:root {
  --ufv-font-body: 'Utile', sans-serif;
  --ufv-font-heading: 'Utile', sans-serif;
}

p {font-size: 1.125rem;}

body, p, li, ul {
  font-family: var(--ufv-font-body)!important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--ufv-font-heading)!important; color: var(--ufv-heading)!important; font-weight: 600;
}

a { color: var(--ufv-link)!important; text-decoration: none; font-weight: 600; }
a:hover { color: var(--ufv-brand-deep-green); text-decoration: underline; }

:is(h1, h2, h3, h4, h5, h6, p) a {
  color: var(--ufv-link);
  text-decoration: underline;
}

:is(h1, h2, h3, h4, h5, h6, p) a:hover,
:is(h1, h2, h3, h4, h5, h6, p) a:focus {
  color: var(--ufv-link-hover);
  text-decoration-thickness: 2px;
}

/* Header overrides for B5 program page */
.ufv-bg-header {
    background-color: var(--ufv-brand-deep-green);
}

.ufv-bg-responsive {
    background-color: var(--ufv-brand-deep-green);
}

.top-bar li.nav-item a:hover {
  background-color: var(--ufv-brand-lichen-green);
  color: var(--ufv-brand-deep-green)!important;
}

a.nav-link:hover {
  background-color: var(--ufv-brand-lichen-green)!important;
  color: var(--ufv-brand-deep-green)!important;
}

/* hero overlay overrides */

.ct-hero-overlay__title {
    color: var(--ufv-brand-deep-green) !important;
  }

  .ct-hero-overlay__description {
    color: var(--ufv-brand-deep-green) !important;
  }

@media (max-width: 767px) {
  .ct-hero-overlay__content {
    background-color: var(--ufv-brand-lichen-green)!important;
  }
}


@media (min-width: 768px) {
  .ct-hero-overlay__content {
      border-radius: 1.5rem;
      color: var(--ufv-brand-deep-green)!important;
}


}




.btn {
  border-radius: 1.5rem;
  --bs-btn-padding-x: 3rem;
  --bs-btn-padding-y: 0.375rem;
}

.btn-primary {
     --bs-btn-color: #fff;
    --bs-btn-bg: var(--ufv-brand-deep-green);
    --bs-btn-border-color: var(--ufv-brand-deep-green);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: rgb(0, 95.2, 51);
    --bs-btn-hover-border-color: rgb(0, 89.6, 48);
    --bs-btn-focus-shadow-rgb: 38, 133, 89;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: rgb(0, 89.6, 48);
    --bs-btn-active-border-color: #00542d;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #00703c;
    --bs-btn-disabled-border-color: #00703c;
}

.ct-hero-overlay__cta:hover, .ct-hero-overlay__cta:focus {
    background-color: var(--ufv-brand-lichen-green)!important;
    border: 1px solid var(--ufv-brand-deep-green)!important;
    color: var(--ufv-brand-deep-green)!important;
    font-weight: 600;
}

/* Site title breadcrumb overrides */

.main-header {
    background-color: var(--ufv-neutral-mushroom);
    border-bottom: 0px solid var(--ufv-border-gray);
    color: #333;
}

.page-title {
  color: var(--ufv-brand-valley-green)
}

/* search input overrides */

.input-group .btn {
  border-radius: 0;
  --bs-btn-padding-x: 1rem;
  background-color: var(--ufv-brand-lichen-green);
}

.input-group .btn:hover, .input-group .btn:focus {
    background-color: var(--ufv-brand-valley-green);
    color: var(--ufv-neutral-white);
}

.bi-search:before {
  color: var(--ufv-brand-deep-green);
}
.bi-search:hover::before, .bi-search:focus::before {
  color: var(--ufv-neutral-white);
}


/* program page text overrides */

#ct-493-ufv-programs .UFV-Program-Name h1 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #444 !important;
    letter-spacing: -1px;
    margin-bottom: 1rem;
}

#ct-493-ufv-programs .box-header {
  background-color: var(--ufv-brand-valley-green);
  border-top-left-radius: 0.75em;
  border-top-right-radius: 0.75em;
  
}

#ct-493-ufv-programs .quick-facts.row.g-0 {
  background-color: var(--ufv-neutral-mushroom)!important;
  border-bottom-left-radius: 0.75em;
  border-bottom-right-radius: 0.75em;
}

#ct-493-ufv-programs h2, #ct-493-ufv-programs h3, #ct-493-ufv-programs h4 {
  color: var(--ufv-neutral-charcoal)!important;
  border-bottom: 2px solid var(--ufv-brand-leaf-green);
}

/* sidebar quick-links overrides */
.b5-sidebar-quick-links li {
    border-top-left-radius: 10px;
    border-bottom-right-radius: 10px;
    background-color: var(--ufv-brand-lichen-green);
    margin-bottom: 0.5rem;
    text-align: left;
    display: block;
    transition: 0.2s;
    border: none !important;
}
.b5-sidebar-quick-links li a {
  padding: .55rem 1rem;
}


.b5-sidebar-quick-links li:hover {
  background-color: var(--ufv-brand-deep-green);
  color: var(--ufv-neutral-white);
}

#contact-bar {
  background-color: var(--ufv-neutral-mushroom);
  color: var(--ufv-brand-deep-green);
}

.social-buttons a {
  color: var(--ufv-brand-deep-green) !important;687306
}


.footer-section-heading {
  border-bottom: 2px solid var(--ufv-brand-leaf-green);
}