/* ---- Medusa static-restore fixes (menus, reveal failsafe, a11y) ---- */

/* scroll-reveal / animation failsafe: never leave content hidden without JS */
[data-animation-role],.reveal,.fade-in,.animate,.wp-block-image{opacity:1!important}

/* base readability */
body{min-height:100%}
.mobile-menu-button,.header-search-button{min-height:44px;min-width:44px}

/* ---------- DESKTOP dropdown submenus (lg and up) ---------- */
@media (min-width:1024px){
  #site-navigation .menu-item-has-children{position:relative;display:flex;align-items:center}
  /* caret flows inline after the link (avoid absolute overlap collision) */
  #site-navigation .menu-item-has-children > .arrow-icon{position:static !important;right:auto !important;bottom:auto !important;display:inline-flex;align-items:center;margin-left:3px;pointer-events:auto}
  #site-navigation .menu-item-has-children > a{padding-right:2px !important}
  #site-navigation .sub-menu{
    position:absolute;top:100%;left:0;min-width:230px;margin:0;padding:.4rem 0;
    list-style:none;background:#fff;border-radius:4px;
    box-shadow:0 10px 28px rgba(0,0,0,.16);z-index:70;
    opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s ease,transform .15s ease;
  }
  #site-navigation .menu-item-has-children:hover>.sub-menu,
  #site-navigation .menu-item-has-children:focus-within>.sub-menu,
  #site-navigation .menu-item-has-children.open>.sub-menu{opacity:1;visibility:visible;transform:none}
  #site-navigation .sub-menu li{margin:0 !important;display:block}
  #site-navigation .sub-menu a{
    display:block;padding:.5rem 1.1rem;white-space:nowrap;color:#242424;
    text-transform:none;letter-spacing:0;font-size:.9rem;font-weight:600;
  }
  #site-navigation .sub-menu a:hover{background:#f3eef0;color:#7a2e4a}
  #site-navigation .sub-menu .arrow-icon{display:none}
}

/* ---------- MOBILE slide-in sidebar: submenus always expanded (all links reachable) ---------- */
#toggle-sidebar .menu{list-style:none;margin:0;padding:0}
#toggle-sidebar .menu li{list-style:none;position:relative}
#toggle-sidebar .menu a{display:block;padding:.7rem 1rem;min-height:44px;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.12)}
#toggle-sidebar .menu a:hover{background:rgba(255,255,255,.1)}
#toggle-sidebar .sub-menu{display:block;list-style:none;padding-left:1rem;margin:0}
#toggle-sidebar .sub-menu a{font-size:.95em;opacity:.92}
#toggle-sidebar .arrow-icon{display:none}

/* de-linked / inert search should not look clickable-broken */
form[role="search"] button[type="submit"]{cursor:default}

/* make sure removed-image figures don't leave big gaps */
figure:empty,.wp-block-image:empty{display:none}

/* logo: never overflow (width attr is 842) */
.custom-logo,.custom-logo-link img{max-width:100%;height:auto}
.site-branding .custom-logo{max-width:min(100%,300px)}
@media (max-width:767px){.site-branding .custom-logo{max-width:220px}}
/* author avatar sizing */
.author-avatar img,img.avatar{max-width:96px;height:auto;border-radius:50%}

/* cover blocks whose bg photo was not recoverable: keep readable dark bg for white text */
.wp-block-cover.has-background-dim:not([style*="url("]):not([style*="background-color"]){background-color:#20303a}
.wp-block-cover [style*="background-image:none"]{background-color:#20303a}

/* external video/social facades */
.ext-embed{margin:1.2em 0}
.ext-embed a{display:inline-block;padding:.7em 1.1em;background:#63bd40;color:#fff;border-radius:4px;font-weight:700;text-decoration:none}
.ext-embed a:hover{background:#4e9a30}
