/* ============================================================
   Last Countdown mobile offcanvas menu — self-contained accordion.
   Ported from the wcf orionkit_one offcanvas (2026-07-04). pjo_apocalyptic
   ships no UIKit, so the panel visuals live here; markup is a plain Joomla
   mod_menu (ul.menu > li[.parent] > a + <ul>). Content-type glyphs use the
   already-loaded FontAwesome 4.7 family (no new dependency, no brand clobber).
   Same-origin, no runtime insertRule -> CDN/GTranslate-safe.
   ============================================================ */

/* --- hamburger trigger, lives in the nav bar, mobile only --- */
.lc-oc-toggle{ display:none; }
#hor_nav .lc-oc-toggle{
    position:relative; z-index:2; float:left;
    width:54px; height:54px; padding:0; margin:0;
    background:transparent; border:0; cursor:pointer; color:#fff;
    -webkit-appearance:none; appearance:none;
}
.lc-oc-toggle .lc-oc-burger,
.lc-oc-toggle .lc-oc-burger::before,
.lc-oc-toggle .lc-oc-burger::after{
    content:""; position:absolute; left:50%; width:24px; height:2px; margin-left:-12px;
    background:currentColor; border-radius:1px;
}
.lc-oc-toggle .lc-oc-burger{ top:50%; margin-top:-1px; }
.lc-oc-toggle .lc-oc-burger::before{ top:-7px; }
.lc-oc-toggle .lc-oc-burger::after{ top:7px; }

/* --- offcanvas shell: fixed backdrop + sliding bar --- */
#lc-offcanvas{
    position:fixed; top:0; left:0; width:100%; height:100%; z-index:2000;
    visibility:hidden; opacity:0; background:rgba(0,0,0,.5);
    transition:opacity .25s ease, visibility .25s ease;
}
#lc-offcanvas.lc-oc-open{ visibility:visible; opacity:1; }
.lc-oc-bar{
    position:absolute; top:0; left:0; width:280px; max-width:85%; height:100%;
    overflow-y:auto; -webkit-overflow-scrolling:touch;
    color:#e6ebf0; background:#11202e;
    box-shadow:2px 0 12px rgba(0,0,0,.4);
    transform:translateX(-100%); transition:transform .25s ease;
}
#lc-offcanvas.lc-oc-open .lc-oc-bar{ transform:translateX(0); }

/* --- menu list reset (override the horizontal-nav / bootstrap styling) --- */
.lc-oc-bar ul.menu, .lc-oc-bar ul{ list-style:none; margin:0; padding:0; }
.lc-oc-bar ul.menu{ padding:6px 0 40px; }
.lc-oc-bar li{
    position:relative; margin:0; padding:0; float:none;
    height:auto; background:none; white-space:normal; min-width:0;
}
.lc-oc-bar li > a{
    display:flex; align-items:flex-start;
    padding:12px 46px 12px 18px;
    color:#e6ebf0; font-size:15px; line-height:1.3; font-weight:normal;
    text-decoration:none; text-transform:none; text-align:left; /* kill the template's global justify on wrapped items */
    border-bottom:1px solid rgba(255,255,255,.07); background:none;
}
.lc-oc-bar li > a:hover, .lc-oc-bar li > a:focus{ background:rgba(255,255,255,.08); color:#fff; }
.lc-oc-bar li.current > a, .lc-oc-bar li.active > a{ background:rgba(120,170,255,.18); color:#fff; }
.lc-oc-bar .caret{ display:none; }

/* --- content-type glyph in front of every link (FA4.7, scoped) --- */
.lc-oc-bar .lc-mi{
    flex:0 0 auto; width:1.25em; margin-right:11px; margin-top:.05em; text-align:center;
    font-family:'FontAwesome'; font-weight:normal; font-style:normal; font-variant:normal;
    line-height:inherit; opacity:.7;
    -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
.lc-oc-bar li.current > a .lc-mi, .lc-oc-bar li > a:hover .lc-mi{ opacity:1; }
/* Home uses the corporate crown logo (language-neutral), not a glyph — matches wcf. The explicit
   margin reset kills any stray global img margin that would inflate the Home row height. */
.lc-oc-bar img.lc-mi{ width:1.3em; height:1.3em; margin:0 11px 0 0; align-self:center; opacity:1; }
.lc-oc-bar .lc-mi-home::before      { content:"\f015"; } /* home  = featured / home (fallback glyph) */
.lc-oc-bar .lc-mi-article::before   { content:"\f0f6"; } /* file-text-o   = article               */
.lc-oc-bar .lc-mi-category::before  { content:"\f114"; } /* folder-o      = category (list)        */
.lc-oc-bar .lc-mi-blog::before      { content:"\f1ea"; } /* newspaper-o   = category blog / news    */
.lc-oc-bar .lc-mi-categories::before{ content:"\f0e8"; } /* sitemap       = category tree          */
.lc-oc-bar .lc-mi-search::before    { content:"\f002"; } /* search        = search                 */
.lc-oc-bar .lc-mi-url::before       { content:"\f08e"; } /* external-link = generic external URL    */
.lc-oc-bar .lc-mi-link::before      { content:"\f0c1"; } /* link          = alias                  */
.lc-oc-bar .lc-mi-heading::before   { content:"\f097"; } /* bookmark-o    = heading                */
.lc-oc-bar .lc-mi-default::before   { content:"\f016"; } /* file-o        = generic                */
/* contact family — these are url links back to the shared wcf contact pages */
.lc-oc-bar .lc-mi-contact::before   { content:"\f2b9"; } /* address-book  = Contact (parent)       */
.lc-oc-bar .lc-mi-cert::before      { content:"\f0a3"; } /* certificate   = High Sabbath Society    */
.lc-oc-bar .lc-mi-authors::before   { content:"\f040"; } /* pencil        = Authors                */
.lc-oc-bar .lc-mi-regional::before  { content:"\f041"; } /* map-marker    = Regional Secretaries    */
.lc-oc-bar .lc-mi-study::before     { content:"\f0c0"; } /* users         = Study Groups           */

/* --- per-level indent + slightly darker child rows --- */
.lc-oc-bar ul ul li > a{ padding-left:36px; font-size:14px; background:rgba(0,0,0,.16); }
.lc-oc-bar ul ul ul li > a{ padding-left:52px; }
.lc-oc-bar ul ul ul ul li > a{ padding-left:68px; }

/* --- collapsed by default; .lc-open (set by JS) reveals the direct child list --- */
.lc-oc-bar li.parent > ul{ display:none; }
.lc-oc-bar li.parent.lc-open > ul{ display:block; }

/* --- expand/collapse toggle (injected by JS, never a link -> panel stays open on tap).
   Plus/minus indicator: two centred bars; open hides the vertical one -> "+" becomes "-". --- */
.lc-oc-bar .lc-acc-toggle{
    position:absolute; top:0; right:0; width:46px; height:46px; padding:0; margin:0;
    background:transparent; border:0; cursor:pointer; color:#aeb9c6;
    -webkit-appearance:none; appearance:none;
}
.lc-oc-bar .lc-acc-toggle::before,
.lc-oc-bar .lc-acc-toggle::after{
    content:""; position:absolute; top:50%; left:50%;
    width:12px; height:2px; margin:-1px 0 0 -6px;
    background:currentColor; border-radius:1px;
    transition:transform .18s ease, opacity .18s ease;
}
.lc-oc-bar .lc-acc-toggle::after{ transform:rotate(90deg); }              /* vertical bar -> "+" */
.lc-oc-bar li.parent.lc-open > .lc-acc-toggle{ color:#e6ebf0; }
.lc-oc-bar li.parent.lc-open > .lc-acc-toggle::after{ transform:rotate(0); opacity:0; } /* -> "-" */

/* --- scroll lock while open (plain overflow, never body position-fixed) --- */
html.lc-oc-lock, html.lc-oc-lock body{ overflow:hidden !important; }

/* --- mobile: show the hamburger, hide the legacy <select> dropdown --- */
@media (max-width:767px){
    #hor_nav .lc-oc-toggle{ display:inline-flex; align-items:center; justify-content:center; }
    #hor_nav select{ display:none !important; }
}
