.epchs-home-title{max-width:12ch}

.epchs-home-lead{max-width:680px}

.epchs-mini-stat{
    padding:14px 16px;
    border:1px solid var(--epchs-line);
    border-radius:var(--epchs-radius-sm);
    background:rgba(255,255,255,.35);
}

.epchs-mini-stat strong{display:block;color:var(--epchs-ink);font-size:1rem}

.epchs-mini-stat span{display:block;color:var(--epchs-muted);font-size:.92rem;margin-top:4px}

.epchs-hero-media{overflow:hidden}

.epchs-hero-art{position:relative;padding:22px 22px 0}

.epchs-hero-photo{border-radius:18px;overflow:hidden;min-height:360px;background:#e6dcc0}

.epchs-hero-photo img{width:100%;height:360px;object-fit:cover}

.epchs-hero-badge{position:absolute;top:36px;left:36px;background:rgba(255,255,255,.92);padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:800;color:var(--epchs-red);letter-spacing:.08em;text-transform:uppercase}

.epchs-highlight-band{padding:32px;border-radius:var(--epchs-radius-lg);background:linear-gradient(135deg, rgba(255,255,255,.4), rgba(255,255,255,.2));border:1px solid rgba(141,1,2,.12)}

.epchs-section-title{margin-bottom:12px}

.epchs-feature-card{display:block;color:inherit}

.epchs-feature-card:hover{transform:translateY(-3px);color:inherit}

.epchs-news-feature-image{height:320px;overflow:hidden;border-bottom:1px solid var(--epchs-line)}

.epchs-news-feature-image img{width:100%;height:100%;object-fit:cover}

.epchs-post-card h4,.epchs-archive-tile h4,.epchs-info-card h3,.epchs-event-card h3{font-family:var(--epchs-font-body);font-weight:800}
.epchs-event-date{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(141,1,2,.08);color:var(--epchs-red);font-size:.84rem;font-weight:800;margin-bottom:16px}

.epchs-check-list{margin:0;padding-left:1.15rem;color:var(--epchs-muted)}

.epchs-check-list li+li{margin-top:8px}

.epchs-cta-panel{padding:40px;border-radius:var(--epchs-radius-lg);background:linear-gradient(135deg, rgba(141,1,2,.06), rgba(255,255,255,.35));border:1px solid rgba(141,1,2,.12);box-shadow:var(--epchs-shadow-soft)}

.epchs-text-link{font-weight:700;color:var(--epchs-red)}

@media (max-width: 991.98px){
  .epchs-home-title{max-width:none}
  .epchs-hero-photo,.epchs-hero-photo img{height:300px}
}

.epchs-home-hero-fullscreen{
    position: relative;
    min-height: 100vh;
    background: var(--epchs-bg);
    overflow: hidden;
    display: flex;
    align-items: center;
}

.epchs-home-hero-content-center{
    position: relative;
    z-index: 3;
    padding-top: 5rem;
    padding-bottom: 14rem;
}

.epchs-home-title-centered{
    max-width: 20ch;
    margin-left: auto;
    margin-right: auto;
}

.epchs-home-lead-centered{
    max-width: 760px;
}

.epchs-home-hero-bottom-graphic{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 80px;
    z-index: 1;
    pointer-events: none;
}

.epchs-home-hero-bottom-graphic img{
    display: block;
    width: 100%;
    height: auto;
    opacity: .96;

    /* -webkit-mask-image: linear-gradient(
        to top,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,1) 45%,
        rgba(0,0,0,.7) 65%,
        rgba(0,0,0,.25) 82%,
        rgba(0,0,0,0) 100%
    );
    mask-image: linear-gradient(
        to top,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,1) 45%,
        rgba(0,0,0,.7) 65%,
        rgba(0,0,0,.25) 82%,
        rgba(0,0,0,0) 100%
    ); */
}

.epchs-home-hero-bottom-graphic::before{
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    /* background: linear-gradient(
        to bottom,
        var(--epchs-bg) 0%,
        rgba(242,233,207,.94) 18%,
        rgba(242,233,207,.72) 34%,
        rgba(242,233,207,.28) 52%,
        rgba(242,233,207,0) 72%
    ); */
}

.epchs-mini-stat{
    padding: 14px 16px;
    border: 1px solid rgba(221,209,181,.9);
    border-radius: var(--epchs-radius-sm);
    background: rgba(255,255,255,.55);
    backdrop-filter: blur(6px);
}

.epchs-mini-stat strong{
    display: block;
    color: var(--epchs-ink);
    font-size: 1rem;
}

.epchs-mini-stat span{
    display: block;
    color: var(--epchs-muted);
    font-size: .92rem;
    margin-top: 4px;
}

@media (max-width: 991.98px){
    .epchs-home-hero-content-center{
        padding-top: 3.5rem;
        padding-bottom: 10rem;
    }

    .epchs-home-title-centered{
        max-width: none;
    }

    .epchs-home-hero-bottom-graphic img{
        min-height: 320px;
        object-fit: cover;
        object-position: center bottom;
    }
}

.epchs-inner-header{
    padding-top: 3.5rem;
    padding-bottom: 3rem;
}

.epchs-breadcrumbs{
    display: flex;
    align-items: center;
    gap: .65rem;
    flex-wrap: wrap;
    margin-bottom: 2rem;
    font-size: .95rem;
    color: var(--epchs-muted);
}

.epchs-breadcrumbs a{
    color: var(--epchs-red);
    font-weight: 600;
}

.epchs-breadcrumbs span[aria-current="page"]{
    color: var(--epchs-muted);
}

.epchs-inner-header-shell{
    padding-top: .5rem;
}

.epchs-inner-page-title{
    max-width: 12ch;
    margin-bottom: 1rem;
}

.epchs-inner-page-lead{
    max-width: 780px;
}

.epchs-section-nav{
    background: linear-gradient(180deg, rgba(255,255,255,.65), rgba(255,255,255,.35));
    border: 1px solid rgba(141,1,2,.10);
}

.epchs-section-nav-title{
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--epchs-red);
    margin-bottom: 1rem;
}

.epchs-section-nav-list{
    list-style: none;
    margin: 0;
    padding: 0;
}

.epchs-section-nav-list li + li{
    margin-top: .85rem;
}

.epchs-section-nav-list a{
    color: var(--epchs-ink);
    font-weight: 600;
}

.epchs-section-nav-list a:hover{
    color: var(--epchs-red);
}

@media (max-width: 991.98px){
    .epchs-inner-page-title{
        max-width: none;
    }
}

.epchs-about-intro{
    padding-top: 3.5rem;
    padding-bottom: 5rem;
}

.epchs-breadcrumbs{
    display: flex;
    align-items: center;
    gap: .65rem;
    flex-wrap: wrap;
    margin-bottom: 2rem;
    font-size: .95rem;
    color: var(--epchs-muted);
}

.epchs-breadcrumbs a{
    color: var(--epchs-red);
    font-weight: 600;
}

.epchs-breadcrumbs span[aria-current="page"]{
    color: var(--epchs-muted);
}

.epchs-about-intro-shell{
    position: relative;
}

.epchs-about-intro-copy{
    max-width: 640px;
}

.epchs-about-intro-title{
    font-size: clamp(3rem, 6vw, 5.25rem);
    line-height: .95;
    max-width: 8ch;
    margin-bottom: 1.25rem;
}

.epchs-about-intro-lead{
    max-width: 560px;
    font-size: 1.1rem;
    line-height: 1.75;
}

.epchs-about-visual{
    position: relative;
    min-height: 620px;
}

.epchs-about-visual-main{
    position: relative;
    width: 82%;
    margin-left: auto;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: var(--epchs-shadow-raise);
    z-index: 2;
}

.epchs-about-visual-main img{
    width: 100%;
    height: 620px;
    object-fit: cover;
    display: block;
}

.epchs-about-visual-card{
    position: absolute;
    left: 0;
    bottom: 36px;
    width: 58%;
    z-index: 3;
    box-shadow: var(--epchs-shadow-raise);
    background: rgba(251,247,235,.96);
}

.epchs-about-visual-card h3{
    font-size: 1.5rem;
}

.epchs-about-visual-accent{
    position: absolute;
    top: 24px;
    right: -24px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: rgba(141,1,2,.08);
    z-index: 1;
}

@media (max-width: 1199.98px){
    .epchs-about-intro-title{
        max-width: 9ch;
    }
}

@media (max-width: 991.98px){
    .epchs-about-intro{
        padding-top: 2.5rem;
        padding-bottom: 4rem;
    }

    .epchs-about-intro-title{
        max-width: none;
        font-size: clamp(2.5rem, 10vw, 4.25rem);
    }

    .epchs-about-visual{
        min-height: auto;
        margin-top: 1rem;
    }

    .epchs-about-visual-main{
        width: 100%;
    }

    .epchs-about-visual-main img{
        height: 420px;
    }

    .epchs-about-visual-card{
        position: relative;
        left: auto;
        bottom: auto;
        width: 100%;
        margin-top: 1rem;
    }

    .epchs-about-visual-accent{
        display: none;
    }
}

.epchs-page-banner{
    position: relative;
    min-height: 420px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

    background-color: #d9c9a8;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.epchs-page-banner-overlay{
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.38)),
        rgba(141,1,2,.08);
    z-index: 1;
}

.epchs-page-banner-inner{
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 4rem 0;
    max-width: 960px;
    margin: 0 auto;
}

.epchs-page-banner-kicker{
    display: inline-block;
    margin-bottom: 1rem;
    color: #fff;
    font-size: .85rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    opacity: .95;
}

.epchs-page-banner-title{
    margin: 0 0 1rem;
    color: #fff;
    font-family: var(--epchs-font-heading);
    font-size: clamp(2.8rem, 6vw, 5rem);
    line-height: 1.02;
    text-shadow: 0 4px 18px rgba(0,0,0,.18);
}

.epchs-page-banner-breadcrumb ol{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .65rem;
    margin: 0;
    padding: .9rem 1.2rem;
    list-style: none;

    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 999px;
    backdrop-filter: blur(8px);
}

.epchs-page-banner-breadcrumb li{
    color: rgba(255,255,255,.88);
    font-size: .95rem;
    font-weight: 600;
    line-height: 1;
}

.epchs-page-banner-breadcrumb a{
    color: #fff;
    text-decoration: none;
    transition: color .2s ease;
}

.epchs-page-banner-breadcrumb a:hover{
    color: #f2e9cf;
}

.epchs-page-banner-breadcrumb .is-current{
    color: #f2e9cf;
    font-weight: 800;
}

@media (max-width: 991.98px){
    .epchs-page-banner{
        min-height: 340px;
    }

    .epchs-page-banner-inner{
        padding: 3rem 0;
    }
}

@media (max-width: 767.98px){
    .epchs-page-banner{
        min-height: 300px;
    }

    .epchs-page-banner-breadcrumb ol{
        border-radius: 18px;
        padding: .85rem 1rem;
    }

    .epchs-page-banner-breadcrumb li{
        font-size: .9rem;
    }
}

.epchs-visit-hub{
    margin-top: -3.5rem;
    position: relative;
    z-index: 3;
}

.epchs-visit-shortcut{
    display: block;
    color: inherit;
    transition: transform .2s ease, box-shadow .2s ease;
}

.epchs-visit-shortcut:hover{
    color: inherit;
    transform: translateY(-4px);
    box-shadow: var(--epchs-shadow-raise);
}

.epchs-visit-shortcut h3{
    font-family: var(--epchs-font-body);
    font-weight: 800;
    margin-bottom: .5rem;
}

.epchs-visit-section-head{
    margin-bottom: 1.5rem;
}

.epchs-visit-info-card{
    background: linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.45));
}

.epchs-visit-info-label{
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--epchs-red);
    margin-bottom: .75rem;
}

.epchs-visit-info-card h4{
    font-family: var(--epchs-font-body);
    font-weight: 800;
    margin-bottom: .45rem;
}

.epchs-visit-map-panel{
    background: linear-gradient(135deg, rgba(255,255,255,.6), rgba(248,242,227,.75));
}

.epchs-map-placeholder{
    min-height: 300px;
    border-radius: 18px;
    border: 1px dashed rgba(141,1,2,.18);
    background: linear-gradient(135deg, rgba(141,1,2,.04), rgba(255,255,255,.55));
    display: flex;
    align-items: center;
    justify-content: center;
}

.epchs-map-placeholder-inner{
    text-align: center;
    color: var(--epchs-muted);
}

.epchs-map-placeholder-inner strong{
    display: block;
    color: var(--epchs-ink);
    margin-bottom: 6px;
}

.epchs-rental-summary{
    overflow: hidden;
    box-shadow: var(--epchs-shadow-card);
}

.epchs-rental-summary-row{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 24px;
    border-top: 1px solid var(--epchs-line);
    background: var(--epchs-card);
}

.epchs-rental-summary-row:first-child{
    border-top: 0;
}

.epchs-rental-summary-row:nth-child(even){
    background: rgba(255,255,255,.55);
}

.epchs-rental-summary-row span{
    color: var(--epchs-ink);
    font-weight: 500;
}

.epchs-rental-summary-row strong{
    color: var(--epchs-red);
    font-size: .95rem;
    font-weight: 800;
}

.epchs-inquiry-grid{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.epchs-inquiry-chip{
    display: inline-flex;
    align-items: center;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(141,1,2,.08);
    color: var(--epchs-red);
    font-weight: 700;
    font-size: .9rem;
}

.epchs-faq .accordion-item{
    border: 1px solid var(--epchs-line);
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 14px;
    background: var(--epchs-card);
}

.epchs-faq .accordion-button{
    background: var(--epchs-card);
    color: var(--epchs-ink);
    font-weight: 700;
    box-shadow: none;
}

.epchs-faq .accordion-button:not(.collapsed){
    background: rgba(141,1,2,.05);
    color: var(--epchs-red);
}

.epchs-faq .accordion-body{
    color: var(--epchs-muted);
    line-height: 1.7;
}

@media (max-width: 991.98px){
    .epchs-visit-hub{
        margin-top: -2rem;
    }
}

/* =========================
   EVENTS INDEX
========================= */

.epchs-events-highlight-image{
    height: 280px;
    overflow: hidden;
    border-bottom: 1px solid var(--epchs-line);
}

.epchs-events-highlight-image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.epchs-events-marketing-band{
    padding: 32px;
    border-radius: var(--epchs-radius-lg);
    background: linear-gradient(135deg, rgba(141,1,2,.06), rgba(255,255,255,.35));
    border: 1px solid rgba(141,1,2,.12);
    box-shadow: var(--epchs-shadow-soft);
}

.epchs-event-card-link{
    display: block;
    color: inherit;
    text-decoration: none;
}

.epchs-event-card-link:hover{
    color: inherit;
}

.epchs-event-marketing-card{
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.epchs-event-marketing-card:hover{
    transform: translateY(-6px);
    box-shadow: var(--epchs-shadow-raise);
    border-color: rgba(141,1,2,.22);
}

.epchs-event-card-media{
    position: relative;
    height: 260px;
    overflow: hidden;
}

.epchs-event-card-media img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.epchs-event-marketing-card:hover .epchs-event-card-media img{
    transform: scale(1.04);
}

.epchs-event-card-overlay{
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(44,42,38,.38), rgba(44,42,38,.03));
}

.epchs-event-card-badge{
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255,255,255,.92);
    color: var(--epchs-red);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.epchs-event-date-pill{
    display: inline-flex;
    align-items: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(141,1,2,.08);
    color: var(--epchs-red);
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .05em;
}

.epchs-event-card-title{
    font-family: var(--epchs-font-body);
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1.25;
    margin-bottom: .85rem;
}

.epchs-event-card-footer{
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.epchs-event-arrow{
    color: var(--epchs-red);
    font-size: 1.15rem;
    font-weight: 700;
}

.epchs-events-promo,
.epchs-events-side-panel{
    background: linear-gradient(135deg, rgba(255,255,255,.38), rgba(255,255,255,.18));
}

/* =========================
   EVENT DETAIL
========================= */

.epchs-event-detail-shell{
    background: linear-gradient(135deg, rgba(255,255,255,.38), rgba(255,255,255,.2));
}

.epchs-event-detail-image{
    min-height: 100%;
    background: #e9dcc0;
}

.epchs-event-detail-image img{
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
}

.epchs-event-detail-content{
    padding: 40px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.epchs-event-meta-grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 14px;
    margin-top: 10px;
}

.epchs-event-meta-card{
    padding: 16px;
    border-radius: var(--epchs-radius-sm);
    background: rgba(255,255,255,.65);
    border: 1px solid var(--epchs-line);
}

.epchs-event-meta-card strong{
    display: block;
    margin-bottom: 6px;
    color: var(--epchs-ink);
    font-size: .92rem;
    font-weight: 800;
}

.epchs-event-meta-card span{
    display: block;
    color: var(--epchs-muted);
    font-size: .95rem;
}

.epchs-event-article .epchs-card-body{
    padding: 32px;
}

.epchs-event-article p:last-child{
    margin-bottom: 0;
}

/* optional styling for rendered wysiwyg content */
.epchs-event-article h1,
.epchs-event-article h2,
.epchs-event-article h3,
.epchs-event-article h4{
    font-family: var(--epchs-font-heading);
}

.epchs-event-article ul,
.epchs-event-article ol{
    padding-left: 1.2rem;
}

.epchs-event-article img{
    border-radius: 16px;
    margin: 1rem 0;
}

@media (max-width: 991.98px){
    .epchs-event-detail-image img{
        min-height: 320px;
    }

    .epchs-event-detail-content{
        padding: 28px;
    }
}

@media (max-width: 767.98px){
    .epchs-events-highlight-image{
        height: 220px;
    }

    .epchs-event-card-media{
        height: 220px;
    }

    .epchs-events-marketing-band{
        padding: 22px;
    }

    .epchs-event-meta-grid{
        grid-template-columns: 1fr;
    }

    .epchs-event-detail-content{
        padding: 22px;
    }

    .epchs-event-article .epchs-card-body{
        padding: 22px;
    }
}

.epchs-pagination-wrap{
    display: flex;
    justify-content: center;
}

.epchs-pagination .page-item{
    margin: 0 4px;
}

.epchs-pagination .page-link{
    min-width: 44px;
    height: 44px;
    padding: 0 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid var(--epchs-line);
    background: var(--epchs-white);
    color: var(--epchs-ink);
    font-weight: 700;
    box-shadow: none;
}

.epchs-pagination .page-link:hover{
    border-color: var(--epchs-red);
    color: var(--epchs-red);
    background: rgba(255,255,255,.95);
}

.epchs-pagination .page-item.active .page-link{
    background: var(--epchs-red);
    border-color: var(--epchs-red);
    color: var(--epchs-white);
}

.epchs-pagination .page-item.disabled .page-link{
    background: rgba(255,255,255,.65);
    border-color: var(--epchs-line);
    color: var(--epchs-muted);
    pointer-events: none;
}

/* =========================
   MEMBERSHIP PAGE
========================= */

.epchs-membership-hero{
    position: relative;
    overflow: hidden;
}

.epchs-membership-hero::after{
    content: "";
    position: absolute;
    width: 520px;
    height: 520px;
    right: -220px;
    top: -180px;
    border-radius: 50%;
    background: rgba(141, 1, 2, .045);
    pointer-events: none;
}

.epchs-membership-hero-copy{
    max-width: 720px;
    margin-top: 1.25rem;
}

.epchs-membership-hero-panel{
    position: relative;
    z-index: 1;
    padding: 30px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .68),
            rgba(255, 255, 255, .25)
        );
}

.epchs-membership-hero-panel-top h2{
    margin-bottom: 1rem;
}

.epchs-membership-hero-stats{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 28px;
}

.epchs-membership-hero-stats > div{
    padding: 16px 12px;
    border: 1px solid var(--epchs-line);
    border-radius: var(--epchs-radius-sm);
    background: rgba(255, 255, 255, .58);
}

.epchs-membership-hero-stats strong,
.epchs-membership-hero-stats span{
    display: block;
}

.epchs-membership-hero-stats strong{
    color: var(--epchs-red);
    font-size: 1rem;
    margin-bottom: 4px;
}

.epchs-membership-hero-stats span{
    color: var(--epchs-muted);
    font-size: .84rem;
    line-height: 1.35;
}

.epchs-membership-quote{
    position: relative;
    margin: 28px 0 0;
    padding: 24px 26px 24px 30px;
    border-left: 4px solid var(--epchs-red);
    border-radius: 0 var(--epchs-radius-md) var(--epchs-radius-md) 0;
    background: rgba(255, 255, 255, .55);
    color: var(--epchs-ink);
    font-family: var(--epchs-font-heading);
    font-size: 1.2rem;
    line-height: 1.55;
}

.epchs-membership-benefit{
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.epchs-membership-benefit:hover{
    transform: translateY(-4px);
    box-shadow: var(--epchs-shadow-raise);
}

.epchs-membership-benefit h3{
    font-family: var(--epchs-font-body);
    font-size: 1.18rem;
    font-weight: 800;
}

.epchs-membership-benefit-number{
    display: block;
    margin-bottom: 24px;
    color: rgba(141, 1, 2, .32);
    font-family: var(--epchs-font-heading);
    font-size: 2.3rem;
    font-weight: 700;
    line-height: 1;
}

.epchs-membership-publication-panel{
    padding: 42px;
    border: 1px solid rgba(141, 1, 2, .12);
    border-radius: var(--epchs-radius-lg);
    background:
        linear-gradient(
            135deg,
            rgba(141, 1, 2, .055),
            rgba(255, 255, 255, .48)
        );
    box-shadow: var(--epchs-shadow-soft);
}

.epchs-membership-publication-cover{
    aspect-ratio: 4 / 5;
    max-width: 290px;
    margin: auto;
    padding: 32px 24px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border-radius: 8px 24px 24px 8px;
    background:
        linear-gradient(
            160deg,
            var(--epchs-red),
            var(--epchs-red-dark)
        );
    box-shadow:
        -12px 12px 0 rgba(141, 1, 2, .1),
        var(--epchs-shadow-card);
    color: var(--epchs-white);
}

.epchs-membership-publication-cover span{
    font-family: var(--epchs-font-heading);
    font-size: 2.7rem;
    font-weight: 700;
    line-height: 1;
}

.epchs-membership-publication-cover small{
    margin-top: 12px;
    font-size: .85rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.epchs-membership-receive-list{
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 26px;
}

.epchs-membership-receive-item{
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.epchs-membership-receive-item > span{
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--epchs-red);
    color: var(--epchs-white);
    font-size: .82rem;
    font-weight: 800;
}

.epchs-membership-receive-item p{
    margin: 1px 0 0;
}

.epchs-pricing-card{
    position: relative;
    display: flex;
    overflow: hidden;
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
}

.epchs-pricing-card:hover{
    transform: translateY(-6px);
    box-shadow: var(--epchs-shadow-raise);
}

.epchs-pricing-card.is-featured{
    border: 2px solid var(--epchs-red);
    transform: translateY(-8px);
}

.epchs-pricing-card.is-featured:hover{
    transform: translateY(-12px);
}

.epchs-pricing-featured-label{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 8px 14px;
    background: var(--epchs-red);
    color: var(--epchs-white);
    text-align: center;
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.epchs-pricing-card .epchs-card-body{
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 30px 24px;
}

.epchs-pricing-card.is-featured .epchs-card-body{
    padding-top: 54px;
}

.epchs-pricing-card-header h3{
    font-family: var(--epchs-font-body);
    font-size: 1.15rem;
    font-weight: 800;
}

.epchs-pricing-price{
    display: flex;
    align-items: flex-start;
    margin: 22px 0 18px;
    color: var(--epchs-red);
}

.epchs-pricing-currency{
    margin-top: 5px;
    font-size: 1.15rem;
    font-weight: 800;
}

.epchs-pricing-price strong{
    font-size: 3.2rem;
    line-height: .9;
}

.epchs-pricing-period{
    align-self: flex-end;
    margin: 0 0 3px 6px;
    color: var(--epchs-muted);
    font-size: .88rem;
}

.epchs-pricing-features{
    margin: 8px 0 28px;
    padding: 0;
    list-style: none;
}

.epchs-pricing-features li{
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(221, 209, 181, .7);
    color: var(--epchs-muted);
    font-size: .92rem;
}

.epchs-pricing-features li span{
    color: var(--epchs-red);
    font-weight: 900;
}

.epchs-membership-pricing-note{
    max-width: 760px;
    margin: 32px auto 0;
    color: var(--epchs-muted);
    font-size: .88rem;
}

.epchs-existing-member-panel{
    padding: 38px 40px;
    border-radius: var(--epchs-radius-lg);
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .55),
            rgba(141, 1, 2, .055)
        );
    border: 1px solid rgba(141, 1, 2, .12);
    box-shadow: var(--epchs-shadow-soft);
}

.epchs-membership-faq-intro{
    position: sticky;
    top: 110px;
}

.epchs-modern-accordion{
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.epchs-modern-accordion .accordion-item{
    border: 1px solid var(--epchs-line);
    border-radius: var(--epchs-radius-md);
    overflow: hidden;
    background: rgba(255, 255, 255, .72);
    box-shadow: var(--epchs-shadow-soft);
}

.epchs-modern-accordion .accordion-button{
    min-height: 72px;
    padding: 20px 24px;
    background: transparent;
    color: var(--epchs-ink);
    font-size: 1rem;
    font-weight: 800;
    box-shadow: none;
}

.epchs-modern-accordion .accordion-button:not(.collapsed){
    background: rgba(141, 1, 2, .05);
    color: var(--epchs-red);
}

.epchs-modern-accordion .accordion-button:focus{
    box-shadow: none;
}

.epchs-modern-accordion .accordion-button::after{
    width: 34px;
    height: 34px;
    margin-left: auto;
    border-radius: 50%;
    background-color: rgba(141, 1, 2, .08);
    background-position: center;
    background-size: 14px;
}

.epchs-modern-accordion .accordion-body{
    padding: 4px 24px 24px;
    color: var(--epchs-muted);
    line-height: 1.75;
}

.epchs-membership-final-message{
    margin-top: 28px;
    padding: 28px;
    border-radius: var(--epchs-radius-md);
    background: var(--epchs-red);
    color: var(--epchs-white);
}

.epchs-membership-final-message h3,
.epchs-membership-final-message p{
    color: var(--epchs-white);
}

.epchs-membership-final-message p{
    max-width: 680px;
}

.epchs-membership-final-message .epchs-btn-primary{
    background: var(--epchs-white);
    border-color: var(--epchs-white);
    color: var(--epchs-red);
}

.epchs-membership-final-message .epchs-btn-primary:hover{
    background: var(--epchs-bg);
    border-color: var(--epchs-bg);
    color: var(--epchs-red-dark);
}

@media (max-width: 1199.98px){
    .epchs-pricing-card.is-featured{
        transform: none;
    }

    .epchs-pricing-card.is-featured:hover{
        transform: translateY(-6px);
    }
}

@media (max-width: 991.98px){
    .epchs-membership-faq-intro{
        position: static;
    }

    .epchs-membership-hero-stats{
        grid-template-columns: 1fr;
    }

    .epchs-membership-publication-panel{
        padding: 30px;
    }
}

@media (max-width: 767.98px){
    .epchs-membership-hero-panel{
        padding: 22px;
    }

    .epchs-membership-publication-panel{
        padding: 22px;
    }

    .epchs-existing-member-panel{
        padding: 26px 22px;
    }

    .epchs-modern-accordion .accordion-button{
        min-height: 64px;
        padding: 18px;
    }

    .epchs-modern-accordion .accordion-body{
        padding: 2px 18px 20px;
    }
}

/* ==========================================
   EVENTS LISTING SECTIONS
========================================== */

.epchs-events-listing{
    position: relative;
}

.epchs-events-listing::before{
    content: "";
    position: absolute;
    top: 80px;
    right: 0;
    width: 340px;
    height: 340px;
    border-radius: 50%;
    background: rgba(141, 1, 2, .035);
    pointer-events: none;
}

.epchs-events-listing .container-xl{
    position: relative;
    z-index: 1;
}

.epchs-event-card-link{
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.epchs-event-card-link:hover{
    color: inherit;
    text-decoration: none;
}

.epchs-event-marketing-card{
    position: relative;
    display: flex;
    flex-direction: column;
    background: var(--epchs-card);
    transition:
        transform .24s ease,
        box-shadow .24s ease,
        border-color .24s ease;
}

.epchs-event-marketing-card:hover{
    transform: translateY(-7px);
    border-color: rgba(141, 1, 2, .24);
    box-shadow: var(--epchs-shadow-raise);
}

.epchs-event-card-media{
    position: relative;
    height: 255px;
    overflow: hidden;
    background: var(--epchs-line);
}

.epchs-event-card-media picture{
    display: block;
    width: 100%;
    height: 100%;
}

.epchs-event-card-media img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}

.epchs-event-marketing-card:hover .epchs-event-card-media img{
    transform: scale(1.045);
}

.epchs-event-card-overlay{
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(44, 42, 38, .55) 0%,
            rgba(44, 42, 38, .12) 48%,
            rgba(44, 42, 38, 0) 75%
        );
}

.epchs-event-card-badge{
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 2;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(251, 247, 235, .94);
    color: var(--epchs-red);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1;
    text-transform: uppercase;
    box-shadow: 0 5px 18px rgba(44, 42, 38, .12);
}

.epchs-event-marketing-card .epchs-card-body{
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 26px;
}

.epchs-event-date-pill{
    width: fit-content;
    margin-bottom: 17px;
    padding: 7px 11px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border-radius: 999px;
    background: rgba(141, 1, 2, .075);
    color: var(--epchs-red);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.epchs-event-date-pill span{
    font-size: .48rem;
}

.epchs-event-card-title{
    margin-bottom: 12px;
    color: var(--epchs-ink);
    font-family: var(--epchs-font-heading);
    font-size: clamp(1.3rem, 1.6vw, 1.6rem);
    line-height: 1.23;
}

.epchs-event-card-excerpt{
    margin-bottom: 22px;
    color: var(--epchs-muted);
    line-height: 1.7;
}

.epchs-event-card-footer{
    margin-top: auto;
    padding-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    border-top: 1px solid var(--epchs-line);
}

.epchs-event-arrow{
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(141, 1, 2, .075);
    color: var(--epchs-red);
    font-size: 1.1rem;
    transition:
        background .2s ease,
        color .2s ease,
        transform .2s ease;
}

.epchs-event-marketing-card:hover .epchs-event-arrow{
    background: var(--epchs-red);
    color: var(--epchs-white);
    transform: translateX(3px);
}

/* Past-event variation */

.epchs-past-events{
    position: relative;
    overflow: hidden;
}

.epchs-past-events::after{
    content: "";
    position: absolute;
    left: -180px;
    bottom: -200px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(141, 1, 2, .08);
    border-radius: 50%;
    pointer-events: none;
}

.epchs-past-events .container-xl{
    position: relative;
    z-index: 1;
}

.epchs-past-event-slide{
    height: 100%;
    padding: 5px 4px 18px;
}

.epchs-event-card-past .epchs-event-card-media{
    height: 225px;
}

.epchs-event-card-past .epchs-event-card-media img{
    filter: saturate(.8) sepia(.08);
}

.epchs-event-card-past .epchs-event-card-badge{
    background: rgba(44, 42, 38, .88);
    color: var(--epchs-white);
}

/* Owl navigation */

.epchs-past-events-carousel .owl-stage{
    display: flex;
}

.epchs-past-events-carousel .owl-item{
    display: flex;
}

.epchs-past-events-carousel .owl-nav{
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 25px;
}

.epchs-past-events-carousel .owl-nav button.owl-prev,
.epchs-past-events-carousel .owl-nav button.owl-next{
    width: 46px;
    height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--epchs-line) !important;
    border-radius: 50%;
    background: var(--epchs-card) !important;
    color: var(--epchs-red) !important;
    font-size: 1.5rem !important;
    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.epchs-past-events-carousel .owl-nav button:hover{
    border-color: var(--epchs-red) !important;
    background: var(--epchs-red) !important;
    color: var(--epchs-white) !important;
}

.epchs-past-events-carousel .owl-dots{
    display: flex;
    justify-content: center;
    gap: 7px;
    margin-top: 18px;
}

.epchs-past-events-carousel .owl-dot span{
    width: 8px;
    height: 8px;
    display: block;
    border-radius: 50%;
    background: var(--epchs-line);
}

.epchs-past-events-carousel .owl-dot.active span{
    width: 24px;
    border-radius: 999px;
    background: var(--epchs-red);
}

/* Empty state */

.epchs-events-empty-state{
    max-width: 760px;
    margin: 0 auto;
    padding: 54px 36px;
    border: 1px dashed rgba(141, 1, 2, .25);
    border-radius: var(--epchs-radius-lg);
    background: rgba(251, 247, 235, .65);
    text-align: center;
}

.epchs-events-empty-state h3{
    margin: 8px 0 12px;
    color: var(--epchs-ink);
    font-family: var(--epchs-font-heading);
}

.epchs-events-empty-state p{
    max-width: 600px;
    margin: 0 auto 24px;
    color: var(--epchs-muted);
}

/* Marketing CTA */

.epchs-events-community-cta{
    padding: 40px;
    border: 1px solid rgba(141, 1, 2, .14);
    border-radius: var(--epchs-radius-lg);
    background:
        linear-gradient(
            135deg,
            rgba(141, 1, 2, .065),
            rgba(251, 247, 235, .88)
        );
    box-shadow: var(--epchs-shadow-soft);
}

/* Admin controls */

.epchs-admin-status{
    color: var(--bs-danger);
    font-family: var(--epchs-font-body);
    font-size: .75rem;
    font-weight: 700;
}

.epchs-event-card-unpublished{
    border-color: rgba(220, 53, 69, .38);
}

.epchs-event-admin-tools{
    position: relative;
    z-index: 5;
    margin-bottom: 18px;
}

/*
Prevent the parent event link from interfering with buttons
inside the admin controls.
*/
.epchs-event-admin-tools a,
.epchs-event-admin-tools button{
    position: relative;
    z-index: 6;
}

@media (max-width: 991.98px){
    .epchs-event-card-media{
        height: 235px;
    }

    .epchs-events-community-cta{
        padding: 30px;
    }
}

@media (max-width: 767.98px){
    .epchs-event-card-media,
    .epchs-event-card-past .epchs-event-card-media{
        height: 220px;
    }

    .epchs-event-marketing-card .epchs-card-body{
        padding: 22px;
    }

    .epchs-events-empty-state{
        padding: 38px 22px;
    }

    .epchs-events-community-cta{
        padding: 26px 22px;
    }
}


/* ==========================================
   ARTICLE / NEWS DETAIL
========================================== */

.epchs-article-detail{
    position:relative;
    overflow:hidden;
}

.epchs-article-detail::before{
    content:"";
    position:absolute;
    top:80px;
    right:-180px;
    width:480px;
    height:480px;
    border-radius:50%;
    background:rgba(141,1,2,.03);
    pointer-events:none;
}

.epchs-article-detail .container-xl{
    position:relative;
    z-index:1;
}

.epchs-article-masthead{
    max-width:1060px;
    margin:0 auto 42px;
    text-align:center;
}

.epchs-article-title{
    max-width:18ch;
    margin:0 auto 24px;
    color:var(--epchs-ink);
    font-family:var(--epchs-font-heading);
    font-size:clamp(2.5rem,5vw,5rem);
    line-height:1.03;
    letter-spacing:-.035em;
}

.epchs-article-intro{
    max-width:820px;
    margin:0 auto;
    color:var(--epchs-muted);
    font-size:clamp(1.08rem,1.8vw,1.35rem);
    line-height:1.7;
}

.epchs-article-intro p:last-child{
    margin-bottom:0;
}

.epchs-article-meta{
    margin-top:26px;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px 22px;
}

.epchs-article-meta-item{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--epchs-muted);
    font-size:.9rem;
    font-weight:700;
}

.epchs-article-meta-item i{
    color:var(--epchs-red);
}

.epchs-article-admin-tools{
    position:relative;
    z-index:3;
    margin-top:24px;
}

.epchs-article-featured-image{
    width:100%;
    max-width:1240px;
    height:clamp(320px,52vw,650px);
    margin:0 auto 56px;
    overflow:hidden;
    border:1px solid var(--epchs-line);
    border-radius:var(--epchs-radius-lg);
    background:var(--epchs-line);
    box-shadow:var(--epchs-shadow-card);
}

.epchs-article-featured-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}


/* ==========================================
   ARTICLE CONTENT
========================================== */

.epchs-article-content{
    overflow:hidden;
}

.epchs-article-content > .epchs-card-body{
    padding:clamp(26px,4vw,58px);
}

.epchs-rich-content{
    color:var(--epchs-ink);
    font-size:1.06rem;
    line-height:1.85;
}

.epchs-rich-content > *:first-child{
    margin-top:0;
}

.epchs-rich-content > *:last-child{
    margin-bottom:0;
}

.epchs-rich-content p{
    margin-bottom:1.45rem;
}

.epchs-rich-content h2,
.epchs-rich-content h3,
.epchs-rich-content h4{
    margin-top:2.2rem;
    margin-bottom:1rem;
    color:var(--epchs-ink);
    font-family:var(--epchs-font-heading);
    line-height:1.2;
}

.epchs-rich-content h2{
    font-size:clamp(1.8rem,3vw,2.5rem);
}

.epchs-rich-content h3{
    font-size:clamp(1.45rem,2.3vw,1.95rem);
}

.epchs-rich-content a{
    color:var(--epchs-red);
    font-weight:700;
    text-decoration-thickness:1px;
    text-underline-offset:3px;
}

.epchs-rich-content blockquote{
    margin:2rem 0;
    padding:24px 28px;
    border-left:4px solid var(--epchs-red);
    border-radius:0 var(--epchs-radius-md)
        var(--epchs-radius-md) 0;
    background:rgba(141,1,2,.045);
    color:var(--epchs-ink);
    font-family:var(--epchs-font-heading);
    font-size:1.25rem;
    line-height:1.6;
}

.epchs-rich-content img{
    max-width:100%;
    height:auto;
    margin:1.5rem auto;
    border-radius:var(--epchs-radius-md);
}

.epchs-rich-content table{
    width:100%;
    margin:1.5rem 0;
    border-collapse:collapse;
}

.epchs-rich-content th,
.epchs-rich-content td{
    padding:12px 14px;
    border:1px solid var(--epchs-line);
}

.epchs-rich-content th{
    background:rgba(141,1,2,.055);
}

.epchs-article-secondary-section,
.epchs-article-gallery,
.epchs-article-video,
.epchs-article-attachments{
    margin-top:46px;
    padding-top:38px;
    border-top:1px solid var(--epchs-line);
}

.epchs-content-section-heading{
    margin-bottom:24px;
}

.epchs-content-section-heading h2{
    margin-bottom:0;
    font-family:var(--epchs-font-heading);
}

.epchs-article-video iframe{
    width:100%;
    height:100%;
}

.epchs-article-external-link{
    margin-top:46px;
    padding:26px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    border:1px solid rgba(141,1,2,.14);
    border-radius:var(--epchs-radius-md);
    background:rgba(141,1,2,.04);
}

.epchs-article-external-link h2{
    margin:5px 0 8px;
    font-family:var(--epchs-font-heading);
}

.epchs-article-external-link p{
    margin:0;
    color:var(--epchs-muted);
}


/* ==========================================
   ARTICLE SIDEBAR
========================================== */

.epchs-article-sidebar{
    position:sticky;
    top:110px;
    display:flex;
    flex-direction:column;
    gap:24px;
}

.epchs-sidebar-card{
    overflow:hidden;
}

.epchs-sidebar-card .epchs-card-body{
    padding:24px;
}

.epchs-sidebar-label{
    display:block;
    margin-bottom:8px;
    color:var(--epchs-red);
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.epchs-sidebar-title{
    margin-bottom:20px;
    color:var(--epchs-ink);
    font-family:var(--epchs-font-heading);
    font-size:1.55rem;
    line-height:1.2;
}

.epchs-contact-sidebar-list{
    display:flex;
    flex-direction:column;
}

.epchs-contact-sidebar-item{
    position:relative;
    display:flex;
    gap:14px;
    padding:18px 0;
    border-bottom:1px solid var(--epchs-line);
    color:inherit;
    text-decoration:none;
    transition:transform .2s ease;
}

.epchs-contact-sidebar-item:first-child{
    padding-top:4px;
}

.epchs-contact-sidebar-item:last-child{
    padding-bottom:0;
    border-bottom:0;
}

a.epchs-contact-sidebar-item:hover{
    color:inherit;
    transform:translateX(4px);
}

.epchs-contact-sidebar-icon{
    width:40px;
    height:40px;
    flex:0 0 40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(141,1,2,.075);
    color:var(--epchs-red);
}

.epchs-contact-sidebar-content{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:4px;
}

.epchs-contact-sidebar-content strong{
    color:var(--epchs-ink);
    font-size:.93rem;
}

.epchs-contact-sidebar-content > span{
    color:var(--epchs-muted);
    font-size:.9rem;
    line-height:1.55;
}

.epchs-contact-sidebar-content small{
    color:var(--epchs-red);
    font-size:.74rem;
    font-weight:700;
}

.epchs-contact-hours{
    display:block;
}

.epchs-tag-list{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

.epchs-tag-chip{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 11px;
    border:1px solid var(--epchs-line);
    border-radius:999px;
    background:rgba(255,255,255,.52);
    color:var(--epchs-ink);
    font-size:.8rem;
    font-weight:700;
    text-decoration:none;
    transition:
        border-color .2s ease,
        background .2s ease,
        color .2s ease;
}

.epchs-tag-chip small{
    min-width:21px;
    height:21px;
    padding:0 5px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:rgba(141,1,2,.08);
    color:var(--epchs-red);
}

.epchs-tag-chip:hover{
    border-color:var(--epchs-red);
    background:var(--epchs-red);
    color:var(--epchs-white);
}

.epchs-tag-chip:hover small{
    background:rgba(255,255,255,.18);
    color:var(--epchs-white);
}

.epchs-sidebar-support-card{
    background:linear-gradient(
        145deg,
        rgba(141,1,2,.065),
        rgba(251,247,235,.96)
    );
}


/* ==========================================
   RELATED ARTICLES
========================================== */

.epchs-related-articles{
    position:relative;
}


/* ==========================================
   RESPONSIVE
========================================== */

@media (max-width:991.98px){
    .epchs-article-sidebar{
        position:static;
    }

    .epchs-article-title{
        max-width:none;
    }

    .epchs-article-featured-image{
        margin-bottom:38px;
    }
}

@media (max-width:767.98px){
    .epchs-article-masthead{
        margin-bottom:30px;
        text-align:left;
    }

    .epchs-article-meta{
        justify-content:flex-start;
    }

    .epchs-article-featured-image{
        height:280px;
        border-radius:var(--epchs-radius-md);
    }

    .epchs-article-content > .epchs-card-body{
        padding:24px 20px;
    }

    .epchs-article-external-link{
        align-items:flex-start;
        flex-direction:column;
        padding:22px;
    }

    .epchs-article-external-link .epchs-btn{
        width:100%;
        justify-content:center;
    }
}