.epchs-site-wrapper{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

.epchs-site-main{
  flex:1 0 auto;
}

.epchs-header-top{
  border-bottom:1px solid rgba(141,1,2,.10);
  background:rgba(255,255,255,.25);
}

.epchs-header-top-inner{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:8px 0;
}

.epchs-header-alert{
  font-size:.92rem;
  color:var(--epchs-muted);
}

.epchs-header-top-links{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

.epchs-header-top-links a{
  font-size:.92rem;
  color:var(--epchs-muted);
}

.epchs-header-main{
  background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,.08));
  border-bottom:1px solid rgba(141,1,2,.10);
}

.epchs-header-main-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:20px 0;
}

.epchs-brand{
  display:flex;
  align-items:center;
  gap:14px;
  flex-shrink:0;
}

.epchs-brand:hover{
  color:inherit;
}

.epchs-brand-mark{
  width:58px;
  height:58px;
  border:2px solid var(--epchs-red);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--epchs-red);
  font-weight:800;
  background:rgba(255,255,255,.55);
}

.epchs-brand-text{
  display:flex;
  flex-direction:column;
  line-height:1;
  gap:6px;
}

.epchs-brand-text span:first-child,
.epchs-brand-text span:last-child{
  font-family:var(--epchs-font-body);
  font-size:1.05rem;
  font-weight:800;
  color:var(--epchs-ink);
  text-transform:uppercase;
  letter-spacing:.03em;
}

.epchs-nav-wrap{
  display:flex;
  align-items:center;
  gap:28px;
  margin-left:auto;
}

.epchs-main-nav{
  display:flex;
  align-items:center;
  gap:22px;
}

.epchs-main-nav a{
  position:relative;
  color:var(--epchs-ink);
  font-weight:600;
  font-size:.96rem;
}

.epchs-main-nav a.is-active,
.epchs-main-nav a:hover{
  color:var(--epchs-red);
}

.epchs-main-nav a.is-active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-8px;
  height:2px;
  background:var(--epchs-red);
}

.epchs-header-cta{
  display:flex;
  align-items:center;
  gap:12px;
}

.epchs-mobile-toggle{
  width:48px;
  height:48px;
  padding:0;
  border:none;
  background:transparent;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
}

.epchs-mobile-toggle span{
  display:block;
  width:24px;
  height:2px;
  margin:0 auto;
  background:var(--epchs-ink);
}

.epchs-site-footer{
  margin-top:80px;
  background:linear-gradient(180deg, rgba(248,242,227,.75), rgba(248,242,227,1));
  border-top:1px solid rgba(141,1,2,.12);
}

.epchs-footer-top{
  padding:56px 0 36px;
}

.epchs-footer-title{
  font-family:var(--epchs-font-body);
  font-size:1rem;
  font-weight:800;
  color:var(--epchs-ink);
  margin-bottom:14px;
}

.epchs-footer-copy{
  max-width:360px;
}

.epchs-footer-links{
  margin:0;
  padding:0;
  list-style:none;
}

.epchs-footer-links li + li{
  margin-top:10px;
}

.epchs-footer-links a{
  color:var(--epchs-muted);
}

.epchs-footer-links a:hover{
  color:var(--epchs-red);
}

.epchs-footer-contact{
  display:flex;
  flex-direction:column;
  gap:8px;
  color:var(--epchs-muted);
}

.epchs-footer-bottom{
  border-top:1px solid rgba(141,1,2,.10);
  padding:18px 0;
}

.epchs-footer-bottom-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}

.epchs-footer-bottom-links{
  display:flex;
  gap:16px;
}

@media (max-width: 1199.98px){
  .epchs-nav-wrap{
    width:100%;
    flex-direction:column;
    align-items:flex-start;
    padding-top:16px;
  }

  .epchs-main-nav{
    flex-direction:column;
    align-items:flex-start;
    width:100%;
  }

  .epchs-main-nav a.is-active::after{
    display:none;
  }

  .epchs-header-cta{
    flex-wrap:wrap;
  }

  .epchs-header-top-inner{
    flex-direction:column;
    align-items:flex-start;
  }

  
}

.epchs-main-nav {
    display: flex;
    align-items: center;
}

.epchs-nav-dropdown {
    position: relative;
    display: flex;
    align-items: center;
}

.epchs-nav-dropdown-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
}

.epchs-dropdown-arrow {
    width: 7px;
    height: 7px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    margin-top: -4px;
}

.epchs-nav-submenu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;

    display: flex;
    flex-direction: column;

    min-width: 245px;
    padding: 10px 0;
    margin-top: 12px;

    background: #ffffff;
    border: 1px solid rgba(141, 1, 2, 0.15);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.16);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(8px);

    transition:
        opacity 0.2s ease,
        visibility 0.2s ease,
        transform 0.2s ease;
}

.epchs-nav-submenu a {
    display: block;
    width: 100%;
    padding: 11px 18px;

    color: #222222;
    text-decoration: none;
    white-space: nowrap;
}

.epchs-nav-submenu a:hover,
.epchs-nav-submenu a.active {
    color: #8d0102;
    background: #f2e9cf;
}

.epchs-nav-dropdown:hover .epchs-nav-submenu,
.epchs-nav-dropdown:focus-within .epchs-nav-submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}