/* Shared finish for the active Zen theme, loaded after page styles. */
.frontend-template-5 .zen-footer { overflow: hidden; isolation: isolate; }
.frontend-template-5 .zen-footer > .container { position: relative; z-index: 1; }
.footer-flow-lines { position: absolute; bottom: -20px; left: -10%; width: 120%; height: 250px; opacity: .28; pointer-events: none; z-index: 0; }
.footer-flow-lines path { fill: none; stroke: #77b7af; stroke-width: 1; stroke-dasharray: 500 700; animation: footer-flow 16s linear infinite; }
.footer-flow-lines path:nth-child(2) { animation-delay: -5s; }
.footer-flow-lines path:nth-child(3) { animation-delay: -10s; }
@keyframes footer-flow { to { stroke-dashoffset: -1200; } }
@media (prefers-reduced-motion: reduce) { .footer-flow-lines path { animation: none; } }
.frontend-template-5 {
    --z-shadow: 0 4px 22px rgba(16, 36, 44, .045);
    --z-shadow-lg: 0 14px 36px rgba(16, 36, 44, .10);
    --z-radius: 8px;
    --z-teal: #008c92;
    --z-teal-dark: #006d73;
    --z-paper: #f5f7f6;
    -webkit-font-smoothing: antialiased;
}
.frontend-template-5 main { min-width: 0; }
.frontend-template-5 .page-header {
    padding: 35px 0 30px;
    background: #f5f8f7;
    color: var(--z-ink);
    border-bottom: 1px solid var(--z-line);
}
.frontend-template-5 .page-header::before { display: none; }
.frontend-template-5 .page-header::after { opacity: .08; width: 155px; }
.frontend-template-5 .page-header h2 {
    color: var(--z-ink);
    font-size: clamp(1.65rem, 2.6vw, 2.6rem);
    line-height: 1.15;
    max-width: 1050px;
}
.frontend-template-5 .page-header .breadcrumb a { color: #586b72; }
.frontend-template-5 .page-header .breadcrumb-item.active { color: var(--z-teal-dark); }
.frontend-template-5 .page-header .breadcrumb { font-size: .68rem; }
.frontend-template-5 :is(.inner-v2-title, .videos-page-title, .contact-v2-title) {
    font-size: clamp(2rem, 3.4vw, 3.2rem);
    line-height: 1.12;
    text-wrap: balance;
}
.frontend-template-5 :is(.inner-v2-section, .videos-page, .contact-v2 .contact-v2-section) { padding: 56px 0 80px; }
.frontend-template-5 :is(.gallery-hero, .branches-hero) { padding: 62px 0; background: #fff; }
.frontend-template-5 :is(.gallery-hero, .branches-hero, .article-hero)::before,
.frontend-template-5 :is(.gallery-hero, .branches-hero, .article-hero)::after { display: none; }
.frontend-template-5 .gallery-page .gallery-hero h1,
.frontend-template-5 .branches-page .branches-hero h1 {
    font-family: var(--font-main);
    font-size: clamp(2.5rem, 4.3vw, 4.4rem);
    font-weight: 700;
    line-height: 1.03;
    letter-spacing: -.045em;
    text-transform: none;
}
.frontend-template-5 :is(.gallery-eyebrow, .branches-eyebrow, .newsroom-eyebrow) { color: var(--z-teal-dark); }
.frontend-template-5 :is(.gallery-hero-copy, .branches-hero-copy) { align-self: center; }
.frontend-template-5 :is(.gallery-album-copy h3, .branches-card-copy h3, .newsroom-card h3) { line-height: 1.3; }
.frontend-template-5 :is(.inner-v2-card, .content-overview-card, .gallery-album, .branches-card, .newsroom-card, .video-card) {
    border-radius: 8px;
    box-shadow: var(--z-shadow);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.frontend-template-5 :is(.inner-v2-card-body, .event-body, .leader-info) { padding: 26px; }
.frontend-template-5 .content-overview { --overview-accent: var(--z-teal-dark); }
.frontend-template-5 .content-overview-lead { border-radius: 8px; background: #fff; color: #536970; box-shadow: var(--z-shadow); }
.frontend-template-5 .content-overview .content-overview-lead :is(h1,h2,h3,h4,h5,h6) { color: var(--z-ink); }
.frontend-template-5 .content-overview-mark { opacity: .65; color: var(--z-ink); }
.frontend-template-5 :is(.inner-v2-sidebar, .sidebar-nav-list) { border-radius: 8px; border: 1px solid var(--z-line); background: #fff; }
.frontend-template-5 :is(.inner-v2-sidebar, .sidebar-nav-list) a { transition: background-color .2s, color .2s; }
.frontend-template-5 :is(.inner-v2-body, .content-body, .article-content) { line-height: 1.85; }
.frontend-template-5 :is(.inner-v2-body, .content-body, .article-content) img { max-width: 100%; height: auto; }
.frontend-template-5 :is(.countdown-event-card, .countdown-bar, .channel-panel, .contact-v2 .contact-v2-panel) {
    background: #fff;
    color: var(--z-ink);
    border: 1px solid var(--z-line);
    border-top: 3px solid var(--z-teal-dark);
    box-shadow: var(--z-shadow);
    border-radius: 8px;
}
.frontend-template-5 :is(.countdown-event-card, .countdown-bar, .channel-panel) :is(h3,h4,h5,h6) { color: var(--z-ink); }
.frontend-template-5 :is(.countdown-event-card, .countdown-bar, .channel-panel) :is(p,.cd-label) { color: #5e7078; }
.frontend-template-5 .cd-val { color: var(--z-teal-dark); font-variant-numeric: tabular-nums; }
.frontend-template-5 .cd-cell { background: #f0f6f5; border: 1px solid #e1eae7; border-radius: 6px; }
.frontend-template-5 .contact-v2 .contact-v2-panel :is(.contact-v2-block-title, .contact-v2-info-item strong) { color: var(--z-ink); }
.frontend-template-5 .contact-v2 .contact-v2-panel :is(.contact-v2-block-copy, .contact-v2-info-item p, .contact-v2-info-item a) { color: #536970; }
.frontend-template-5 .contact-v2 .contact-v2-info-item { border-bottom-color: var(--z-line); }
.frontend-template-5 .contact-v2 .contact-v2-info-icon { background: var(--z-teal-soft); color: var(--z-teal-dark); }
.frontend-template-5 .video-card iframe { border-radius: 8px 8px 0 0; }
.frontend-template-5 .video-card h6 { line-height: 1.3; }
.frontend-template-5 .video-card-meta { font-size: .7rem; }
.frontend-template-5 .main-nav .nav-link { white-space: nowrap; }
.frontend-template-5 .main-nav .dropdown-item { min-height: 42px; display: flex; align-items: center; }
.frontend-template-5 .main-nav .dropdown-menu { max-height: min(70vh, 580px); overflow-y: auto; }
.frontend-template-5 .main-nav { transition: box-shadow .25s ease; }
.frontend-template-5.theme-scrolled .main-nav { box-shadow: 0 6px 22px rgba(7,26,47,.10); }
.frontend-template-5 :is(a,button,input,select,textarea):focus-visible { outline: 3px solid var(--z-teal-dark); outline-offset: 4px; }
.frontend-template-5 :is(.branches-card, .branches-no-results)[hidden] { display: none !important; }
/* Do not position the placeholder emblem as a corner badge. */
.frontend-template-5 :is(.branches-hq-media, .branches-card-media) > .branches-placeholder-mark {
    position: static; background: rgba(255,255,255,.9); color: var(--z-ink); padding: 12px;
}
.frontend-template-5 .gallery-related-card > .gallery-placeholder-mark { position: static; }
.frontend-template-5 .zen-hero-sub { color: #d1dde1; }
.frontend-template-5 .zen-hero-copy { max-width: min(780px, 100%); }
.frontend-template-5 .zen-hero h1 { font-size: clamp(2.65rem, 5.4vw, 5.5rem); }
.frontend-template-5 .zen .z-section { padding-block: 76px; }
.frontend-template-5 .zen .z-heading h2 { text-wrap: balance; }
.frontend-template-5 .zen [data-reveal] { opacity: 1; transform: none; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
    .frontend-template-5 :is(.inner-v2-grid-card,.content-overview-card,.gallery-album,.branches-card,.newsroom-card,.video-card):hover {
        transform: translateY(-4px); box-shadow: var(--z-shadow-lg); border-color: #a7c6c5;
    }
    .frontend-template-5 :is(.inner-v2-btn,.channel-btn,.z-btn,.contact-v2-submit) { transition: background .2s ease, transform .2s ease; }
    .frontend-template-5 :is(.inner-v2-btn,.channel-btn,.z-btn,.contact-v2-submit):hover { transform: translateY(-2px); }
}
@media (max-width: 991px) {
    .frontend-template-5 :is(.gallery-hero-grid,.branches-hero-grid) { gap: 30px; }
    .frontend-template-5 .main-nav .navbar-brand { max-width: calc(100% - 64px); }
    .frontend-template-5 .main-nav .brand-name { white-space: normal; }
}
@media (max-width: 767px) {
    .frontend-template-5 .page-header { padding: 26px 0; }
    .frontend-template-5 :is(.gallery-hero,.branches-hero) { padding: 42px 0; }
    .frontend-template-5 :is(.inner-v2-section,.videos-page,.contact-v2 .contact-v2-section) { padding: 40px 0 56px; }
    .frontend-template-5 .zen .z-section { padding-block: 48px; }
    .frontend-template-5 :is(.gallery-toolbar h2,.branches-section-heading h2,.branches-directory-bar h2) { font-size: 1.85rem; }
    .frontend-template-5 .countdown-event-card { padding: 24px 16px; }
    .frontend-template-5 .countdown-timer { gap: 8px; flex-wrap: wrap; }
    .frontend-template-5 .cd-cell { min-width: 55px; }
    .frontend-template-5 .inner-v2-article { padding: 24px 18px; }
}
@media (prefers-reduced-motion: reduce) {
    .frontend-template-5 *, .frontend-template-5 *::before, .frontend-template-5 *::after {
        animation: none !important; transition: none !important; scroll-behavior: auto !important;
    }
}
@media print {
    .frontend-template-5 [data-theme-motion] { opacity: 1 !important; transform: none !important; }
}
