/* ===== MFM 404 skin — brand the Error 404 page (added 2026-10-07) ===== */
body.error404{background:linear-gradient(160deg,#1C0A34 0%,#2E1259 45%,#4A2378 100%) !important;color:#F7F1E8 !important}
body.error404 .toprow,
body.error404 .nav-backed-header,
body.error404 .page-header,
body.error404 .main-content-row .col-md-4,
body.error404 .main-content-row .sidebar,
body.error404 footer,
body.error404 .footer-widgets,
body.error404 .copyrights,
body.error404 .sermon-archive .breaker,
body.error404 .sermon-archive .icon,
body.error404 .sermon-archive .entry-meta{display:none !important}
body.error404 .main,
body.error404 #content,
body.error404 .main-content-row,
body.error404 .main-content-row>div{background:transparent !important;border:0 !important;box-shadow:none !important}
body.error404 .main{padding:4rem 1.5rem 6rem !important;min-height:70vh}
body.error404 header.site-header,
body.error404 header.site-header .container,
body.error404 header.site-header .navbar{background:transparent !important;border:0 !important;box-shadow:none !important}
body.error404 header.site-header .sf-menu a,
body.error404 header.site-header a{color:#F7F1E8 !important;background:transparent !important}
body.error404 header.site-header .sf-menu a:hover{color:#E9A13B !important}
body.error404 .main-content-row .col-md-8{width:100% !important;float:none !important;margin:0 auto !important;max-width:680px !important;text-align:center}
body.error404 .sermon-archive article{background:transparent !important;border:0 !important;padding:0 !important;box-shadow:none !important}
body.error404 .sermon-archive article:before{content:"";display:block;width:230px;height:64px;margin:0 auto 2.2rem;background:url(/wp-content/uploads/2026/09/mfm-jmc-logo-footer.png) center/contain no-repeat}
body.error404 .sermon-archive article h2{font-family:Fraunces,Georgia,serif !important;font-size:clamp(1.8rem,5vw,2.8rem) !important;line-height:1.1 !important;color:#ffffff !important;margin:0 0 1rem !important}
body.error404 .sermon-archive .entry,
body.error404 .sermon-archive .entry p{color:rgba(247,241,232,.85) !important;font-size:1.05rem !important;line-height:1.65 !important}
body.error404 .sermon-archive .entry:after{content:"Use the menu above, or call the church office on +1 306-316-9224.";display:block;margin-top:1.6rem;font-size:.95rem;color:rgba(247,241,232,.6)}
/* ===== MFM responsive fixes (new chrome) — 2026-10-07 ===== */
html body #siteHeader .burger:empty::before{content:"";display:block;width:18px;height:2px;margin:0 auto;border-radius:2px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}
@media (max-width:900px){
html body section.hero .wrap.hero-grid.hero-grid{grid-template-columns:1fr!important;gap:26px!important;align-items:start!important}
html body .hero .hero-copy{order:1!important}
html body section.hero .hero-grid .hero-art.hero-art{order:2!important;width:100%!important;aspect-ratio:16/10!important;height:auto!important;min-height:0!important}
html body .hero .hero-photo-box{width:100%!important;height:100%!important}
html body .hero .lede{max-width:100%!important}
}
@media (max-width:640px){
html body .hero h1.hero-eyebrow{font-size:.7rem!important;letter-spacing:.14em!important}
html body .hero h2.hero-h{font-size:clamp(1.6rem,7.4vw,2.3rem)!important;line-height:1.14!important}
html body .hero .wrap{padding-top:24px!important;padding-bottom:34px!important}
html body .hero .hero-art{aspect-ratio:4/3!important}
html body .util .u-left,html body .util .sep,html body .util .socials{display:none!important}
html body .util{font-size:12px!important}
html body .util .wrap{justify-content:center!important;gap:12px!important}
html body .util .u-right{gap:14px!important;justify-content:center!important;width:auto!important}
html body .ev{grid-template-columns:1fr!important;gap:6px!important}
html body .visit-card .row{margin-left:0!important}
}
@media (min-width:1025px) and (max-width:1700px){
html body #siteHeader .wrap.nav{max-width:100%!important;padding-left:20px!important;padding-right:20px!important;gap:14px!important}
html body #siteHeader .cc-brand-logo{height:48px!important}
html body #siteHeader nav.menu{gap:14px!important}
html body #siteHeader nav.menu a{font-size:14px!important;letter-spacing:0!important}
html body #siteHeader .nav-cta{gap:8px!important}
html body #siteHeader .nav-cta .btn{padding:9px 14px!important;font-size:12.5px!important}
}
@media (min-width:1025px) and (max-width:1200px){
html body #siteHeader nav.menu{gap:10px!important}
html body #siteHeader nav.menu a{font-size:13px!important}
html body #siteHeader .cc-brand-logo{height:42px!important}
html body #siteHeader .nav-cta .btn{padding:8px 11px!important;font-size:11.5px!important}
}

/* cc-nav-hover-fix 2026-10-08 */
html body #siteHeader nav.menu a:hover,html body #siteHeader nav.menu a:focus-visible{background:#F1E9FB;color:#3A1A63;box-shadow:inset 0 -2px 0 #EBB43F}
html body #siteHeader nav.menu .submenu a:hover{background:#F1E9FB;color:#3A1A63;box-shadow:none}
html body #siteHeader .cc-donate:hover{border-color:#4A2378;color:#4A2378;background:#F1E9FB}

/* cc-mobile-menu-scroll 2026-10-08 */
html body .mobile-menu{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:96px}
html body .mobile-menu .close{position:fixed}
html body .mobile-menu a{font-size:1.25rem;padding:.42rem 0}
@media (max-width:900px){html body .mobile-menu{padding-top:68px}html body .mobile-menu a{font-size:1.15rem}}

/* cc-mobile-nav-v2 2026-10-08 */
html body .mobile-menu a:not(.btn){color:#F7F1E8;text-decoration:none}
html body .mobile-menu a:not(.btn):hover,html body .mobile-menu a:not(.btn):focus,html body .mobile-menu a:not(.btn):active,html body .mobile-menu a:not(.btn):focus-visible{color:#FFD873;background:rgba(255,255,255,.08);box-shadow:none}
html body .mobile-menu a:not(.btn)[aria-current],html body .mobile-menu a.is-current{color:#EBB43F;background:rgba(235,180,63,.12)}
html body .mobile-menu .close{position:fixed;top:14px;right:14px;float:none;opacity:1;filter:none;text-shadow:none;width:44px;height:44px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#F7F1E8;font-size:0;z-index:5;cursor:pointer}
html body .mobile-menu .close:before{content:'\00D7';font:400 30px/1 system-ui,-apple-system,sans-serif;color:#F7F1E8}
html body .mobile-menu .close:hover{background:rgba(235,180,63,.18);border-color:#EBB43F;opacity:1}
html body .mobile-menu .close:hover:before{color:#EBB43F}
html body .mobile-menu .mm-group{display:flex;flex-direction:column}
html body .mobile-menu .mm-parent{display:flex;align-items:center;gap:6px;border-bottom:1px solid rgba(255,255,255,.1)}
html body .mobile-menu .mm-parent>a{flex:1 1 auto;border-bottom:0!important}
html body .mobile-menu .mm-toggle{flex:0 0 auto;appearance:none;-webkit-appearance:none;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:10px;color:#EBB43F;width:42px;height:34px;display:grid;place-items:center;cursor:pointer;padding:0}
html body .mobile-menu .mm-toggle:before{content:'';width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s}
html body .mobile-menu .mm-group.open .mm-toggle{background:rgba(235,180,63,.16);border-color:rgba(235,180,63,.5)}
html body .mobile-menu .mm-group.open .mm-toggle:before{transform:rotate(225deg) translateY(-2px)}
html body .mobile-menu .mm-kids{display:none;flex-direction:column}
html body .mobile-menu .mm-group.open .mm-kids{display:flex}
html body .mobile-menu .mm-sub{position:relative;padding-left:24px}
html body .mobile-menu .mm-sub:before{content:'\2013';position:absolute;left:5px;top:.40rem;color:#EBB43F;opacity:.9;font-weight:700}
html body .mobile-menu .mcta{align-items:center}
html body .mobile-menu .mcta .btn-ghost{display:inline-flex!important;align-items:center;justify-content:center;color:#F7F1E8!important;border-color:rgba(255,255,255,.4)!important}
html body #siteHeader .nav-cta .btn,html body .mobile-menu .mcta .btn{padding:.82em 1.6em;line-height:1.15}
html body #siteHeader .nav-cta{display:flex;align-items:center;gap:12px}
html body #siteHeader .nav-cta br{display:none}
html body #siteHeader .cc-donate{white-space:nowrap;padding:.82em 1.4em;border-radius:999px;font-weight:700;font-size:15px;background:transparent;color:#2a1350;border:1.6px solid rgba(42,19,80,.28);text-decoration:none;line-height:1.15}
html body #siteHeader .cc-donate:hover{border-color:#4A2378;color:#4A2378;background:#F1E9FB}
@media(max-width:1080px){html body #siteHeader nav.menu{display:none!important}html body #siteHeader .burger{display:grid!important}}
/* cc-event-flyer 2026-10-08 */
html body .ev-flyer{margin:0 0 26px;text-align:center}
html body .ev-flyer img{max-width:420px;width:100%;height:auto;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.18);display:inline-block}

/* cc-kill-dark 2026-10-13: site has no dark theme; force the light palette everywhere */
html:root,html:root[data-theme="dark"],html:root[data-theme="light"]{--bg:#F6F1EC;--bg-2:#EFE7E0;--surface:#FFFFFF;--surface-2:#FBF6F2;--ink:#2A153F;--ink-soft:#5C4A6E;--ink-faint:#8A7B98;--line:#E4D8CF;--line-strong:#D3C3B7;--royal:#4A2378;--royal-deep:#341552;--violet:#7A45B8;--ember:#E8842B;--ember-hot:#F0611F;--gold:#EBB43F;--on-royal:#F7EEFB;--shadow:0 1px 2px rgba(42,21,63,.06),0 12px 34px -14px rgba(42,21,63,.20);--shadow-lg:0 30px 70px -30px rgba(42,21,63,.45);color-scheme:light}
@media (prefers-color-scheme:dark){html:root,html:root:not([data-theme="light"]),html:root[data-theme="dark"]{--bg:#F6F1EC;--bg-2:#EFE7E0;--surface:#FFFFFF;--surface-2:#FBF6F2;--ink:#2A153F;--ink-soft:#5C4A6E;--ink-faint:#8A7B98;--line:#E4D8CF;--line-strong:#D3C3B7;--royal:#4A2378;--royal-deep:#341552;--violet:#7A45B8;--ember:#E8842B;--ember-hot:#F0611F;--gold:#EBB43F;--on-royal:#F7EEFB;--shadow:0 1px 2px rgba(42,21,63,.06),0 12px 34px -14px rgba(42,21,63,.20);--shadow-lg:0 30px 70px -30px rgba(42,21,63,.45);color-scheme:light}}
/* cc-visit-card-heading 2026-10-13: dark ink heading was unreadable on the royal card */
html body .visit-card h3{color:#EBB43F}