:root {
    --heading-font-family: "Libre Baskerville", serif;
    --body-font-family: "Source Sans 3", sans-serif;
    --heading-color: #1F3A4A;
    --body-link-color: #006D77;
    --body-link-hover-color: #9D4F2E;
    --mainnav-link-color: #006D77;
    --mainnav-link-hover-color: #9D4F2E;
    --mainnav-link-active-color: #9D4F2E;
    --bg-light-pergamen: #F4F0E8;
    --bg-light-alternative: #EFEAE0;
    --bg-light-other: #F3F6F7;
    --bg-bronze: #A67C52;
    --footer-bg-color: #1F3A4A;
    --topbar-link-color: #c2c2c2;
}

p {
    font-size: 18px;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--heading-color);
}

.page-header > h1::after,
.item-page .page-header h2::after {
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    background-color: var(--body-link-hover-color);
    margin-top: 0.75rem;
}

.com-content-article.item-page .page-header:has(h1) {
  display: none;
}

a,
h2.item-title a, 
.item-title.h2 a, 
.item-title h2 a, 
.item-title .h2 a {
  text-decoration: underline dashed 1px var(--topbar-link-color);
}

a:hover, a:focus,
h2.item-title a:hover, h2.item-title a:focus, 
.item-title.h2 a:hover, .item-title.h2 a:focus, 
.item-title h2 a:hover, .item-title h2 a:focus, 
.item-title .h2 a:hover, .item-title .h2 a:focus,
.active a {
  text-decoration: underline solid 1px var(--mainnav-link-active-color);
}

.page-header h1, .page-header .h1, .categories-list h1, .categories-list .h1,
.item-page .page-header h2, .item-page .page-header .h2 {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 1rem;
  margin-bottom: 1rem;
  text-transform: uppercase;
  color: var(--heading-color);
}

p.readmore .btn {
    background-color: var(--body-link-color);
    color: var(--bg-light-pergamen);
    text-decoration: none;
}

p.readmore .btn:hover,
p.readmore .btn:focus {
    background-color: var(--body-link-hover-color);
    color: var(--bg-light-pergamen);
    text-decoration: none;
}

h2.item-title a, .item-title.h2 a, .item-title h2 a, .item-title .h2 a {
    color: var(--body-link-color);
}


/* Topbar */
#t4-topbar a {
    color: #c2c2c2;
    text-decoration-color: #c2c2c2;
}

#t4-topbar a:hover, #t4-topbar a:focus {
    color: #ffffff;
    text-decoration-color: #ffffff;
}

.social-list-sm {
    text-align: right;

    li a {
        display: block;
        opacity: .8;
        text-decoration: none;
    }
}

/* Header */
.navbar-brand.logo-control img.logo-img {
    max-height: 100px;
    width: auto;
}

/* Menu */
.t4-megamenu .navbar-nav>li>a, .t4-megamenu .navbar-nav>li>.nav-link {
    font-family: var(--body-font-family);
    font-weight: 600;
    font-style: normal;
    font-size: 1.3rem;
    text-transform: uppercase;
    letter-spacing: -1px;
}

/* Slideshow */
#t4-slideshow .container-fluid {
    padding: 0;
}

/* About */
#t4-about {
    padding: 4rem 0;
    background-color: var(--bg-light-pergamen);

    .about-title {
        font-family: var(--body-font-family);
        text-align: center;
        color: var(--heading-color);
        text-transform: uppercase;
        font-weight: 700;
        font-size: 4rem;
        margin-bottom: 10px;
        line-height: 1;

        .brand {
            color: var(--body-link-hover-color);
        }
    }

    .about-slogan {
        font-family: var(--body-font-family);
        font-weight: 500;
        font-size: 1.2rem;
        text-transform: uppercase;
        text-align: center;
        color: var(--heading-color);
    }

    hr {
        width: 200px;
        margin: 1rem auto;
        color: var(--heading-color);
        border-top: 4px solid;
        opacity: 1;
    }

    p {
        font-size: 17px;
        margin-bottom: .5rem;
        text-align: center;
    }

    p:last-child {
        margin-bottom: 0;
    }
}


/* Footer */
#t4-footnav {
    .t4-row {
        align-items: center;
    }

    li {
      list-style: none;

      a {
          font-family: var(--body-font-family);
          font-size: 1.2rem;
          color: var(--bg-light-pergamen);
          text-decoration-color: var(--bg-light-pergamen);
          text-transform: uppercase;
          letter-spacing: -1px;
      }
    }

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

    .social-list-sm li span {
        display: block;
        line-height: 20px;
        text-align: center;
        font-size: 1.8rem;
        width: auto;
        height: auto;
    }
}

#t4-footer {
    p {
        color: #ffffff;
    }

    a {
        color: #c2c2c2;
    }

    a:hover,
    a:focus {
        color: #ffffff;
    }
}