/* Phase 6: shared controls retain the approved dark/gold navigation. */
#hamburgMenu [hidden], #topnav [hidden] { display:none!important; }
.ep-nav-disclosure, .ep-language-toggle { appearance:none; margin:0; border:0; cursor:pointer; font:inherit; color:inherit; background:transparent; }
.ep-nav-chevron { width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin:0 2px 4px 9px; }
[aria-expanded="true"]>.ep-nav-chevron { transform:rotate(225deg); margin-bottom:0; }
.ep-nav-language-note { font-size:10px; font-weight:600; opacity:.8; margin-left:4px; }
#topnav :is(a,button):focus-visible, #hamburgMenu :is(a,button):focus-visible { outline:2px solid #edc878; outline-offset:3px; }
.ep-language-missing { position:relative; }
.ep-language-notice { color:#eee1c9; background:#201b15; border:1px solid #675331; border-radius:12px; padding:16px; }
.ep-language-notice p { margin:0 0 10px; font:14px/1.6 'Plus Jakarta Sans',Arial,sans-serif; color:#eee1c9; }
#header.nav #topmenu .ep-language-notice>a { font:700 14px/1.5 'Plus Jakarta Sans',Arial,sans-serif; padding:5px 0; color:#edc878; text-align:left; }
@media(min-width:1181px) {
 #header.nav #topmenu .ep-nav-disclosure { display:flex; align-items:center; min-height:44px; padding:0 10px; border-radius:12px; color:rgba(255,255,255,.9); font-size:14px; font-weight:750; white-space:nowrap; }
 #header.nav #topmenu .ep-nav-disclosure:hover, #header.nav #topmenu .ep-nav-disclosure[aria-expanded="true"], #header.nav #topmenu .current-menu-parent>.ep-nav-disclosure { background:rgba(216,173,82,.11); color:#e7bd67; }
 #header.nav #topmenu .ep-language-toggle { display:flex; gap:8px; align-items:center; justify-content:center; min-height:42px; min-width:66px; padding:0 12px; border:1px solid rgba(216,173,82,.3); border-radius:99px; }
 #header.nav #topmenu .ep-language-toggle:hover { background:rgba(216,173,82,.12); }
 #header.nav #topmenu .ep-language-notice { position:absolute; top:calc(100% + 10px); right:0; width:260px; z-index:10; box-shadow:0 12px 30px #0005; }
 #header.nav #topmenu ul.menu>li.menu-item-has-children>ul.sub-menu { top:100%; }
}
@media(min-width:1181px) and (max-width:1280px) {
 #header.nav #topmenu ul.menu>li:not(.apply-online)>a, #header.nav #topmenu .ep-nav-disclosure { font-size:13px; padding-right:7px; padding-left:7px; }
}
@media(max-width:1180px) {
 .ep-menu-open { position:fixed; z-index:100001; top:15px; right:5%; display:flex; align-items:center; justify-content:center; width:46px; height:46px; padding:10px; border:1px solid #cb9f4e70; border-radius:10px; background:#201b15; cursor:pointer; }
 .ep-menu-open img { display:block; }
 .ep-menu-backdrop { position:fixed; inset:0; z-index:999998; background:rgba(0,0,0,.58); }
 #hamburgMenu .menuBar { left:0; width:min(380px,92vw); height:100dvh; transition:none; }
 .ep-menu-is-open { overflow:hidden; }
 #hamburgMenu .menuHeader { display:flex; align-items:center; justify-content:space-between; padding:12px 18px; min-height:76px; box-sizing:border-box; }
 #hamburgMenu .mobile-logo { margin:0; padding:0; }
 #hamburgMenu .mobile-logo img { display:block; width:150px; max-height:64px; object-fit:contain; }
 .ep-menu-close { display:flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; padding:0; border:1px solid #cb9f4e70; border-radius:10px; color:#f4d496; background:#ffffff09; font:32px/1 Arial,sans-serif; cursor:pointer; }
 #hamburgMenu .ep-nav-disclosure { display:flex; width:100%; align-items:center; justify-content:space-between; min-height:55px; padding:14px 15px; border-radius:13px; font-size:18px; font-weight:700; line-height:1.35; text-align:left; color:rgba(255,255,255,.9); }
 #hamburgMenu .current-menu-parent>.ep-nav-disclosure, #hamburgMenu .ep-nav-disclosure[aria-expanded="true"] { background:rgba(230,191,105,.1); color:#f0ce87; }
 #hamburgMenu .menuList ul.sub-menu>li:is(.current-menu-item,.current-menu-parent)>a { background:rgba(230,191,105,.1); color:#f0ce87; }
 #hamburgMenu .menuList ul.menu>li.episkopi-language-switcher>.ep-language-toggle { display:grid; width:100%; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:12px; padding:12px; border:1px solid rgba(230,191,105,.2); border-radius:17px; background:rgba(200,149,39,.1); text-align:left; }
 .ep-language-toggle .nav-language-compact { display:none; }
 .ep-language-notice { margin-top:10px; }
 #hamburgMenu .ep-language-notice>a { display:block; padding:6px 0; border:0; font-size:14px; font-weight:700; color:#edc878; }
 #hamburgMenu .menuList ul.menu>li>a:has(.ep-nav-language-note) { justify-content:flex-start; gap:0; }
}
/* Page trails wrap naturally, without truncating church or event names. */
.ep-breadcrumbs { color:#716350; font:13px/1.6 'Plus Jakarta Sans',Arial,sans-serif; }
.ep-breadcrumbs ol { display:flex; flex-wrap:wrap; align-items:center; gap:5px 10px; list-style:none; margin:0; padding:0; }
.ep-breadcrumbs li { display:inline-flex; gap:10px; align-items:baseline; margin:0; padding:0; max-width:100%; }
.ep-breadcrumbs li+li:before { content:'›'; color:#a99570; }
.ep-breadcrumbs a { color:inherit; font-weight:650; text-decoration:none; }
.ep-breadcrumbs a:hover { text-decoration:underline; text-underline-offset:3px; }
.ep-breadcrumbs a:focus-visible { outline:2px solid #ac7e30; outline-offset:4px; }
.ep-breadcrumbs [aria-current] { overflow-wrap:anywhere; }
.ep-breadcrumbs-elementor { width:90%; max-width:1280px; margin:0 auto; padding:calc(var(--site-nav-height,90px) + 18px) 0 18px; }
.header-overlay .ep-breadcrumbs { color:#e4d6bd; }
.header-overlay .ep-breadcrumbs ol { justify-content:center; }
.ep-breadcrumbs:is(.event-breadcrumbs,.gallery-breadcrumbs) { display:block; overflow:visible; white-space:normal; }
@media(prefers-reduced-motion:reduce) {
 #hamburgMenu *, #topnav * { animation:none!important; transition:none!important; }
}
