/* Static-archive additions (see site.js). Theme and Weebly CSS are untouched. */

/* desktop dropdowns: #wsite-menus sits inside the fixed header */
#wsite-menus { position: absolute; top: 0; left: 0; width: 0; height: 0; }
#wsite-menus .wsite-menu-wrap { z-index: 5000; }
#wsite-menus .wsite-menu .wsite-menu-wrap { position: absolute; left: 100%; top: 0; display: none !important; }
#wsite-menus .sa-flip .wsite-menu .wsite-menu-wrap { left: auto; right: 100%; }
#wsite-menus .wsite-menu li:hover > .wsite-menu-wrap,
#wsite-menus .wsite-menu li:focus-within > .wsite-menu-wrap { display: block !important; }
#wsite-menus .wsite-menu li.has-submenu > a .wsite-menu-arrow { display: block; }
.desktop-nav li.wsite-nav-more > a { cursor: default; }

/* Weebly's "reveal" section effect needed its JS; show the content with a short fade instead */
.wsite-section-effect-reveal .wsite-section-content > * { visibility: visible; animation: sa-reveal 0.8s ease-out both; }
@keyframes sa-reveal { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .wsite-section-effect-reveal .wsite-section-content > * { animation: none; } }

/* lightbox */
.sa-lightbox { display: none; position: fixed; inset: 0; z-index: 10000; background: rgba(0,0,0,0.88);
  align-items: center; justify-content: center; }
.sa-lightbox.sa-open { display: flex; }
.sa-lightbox img { max-width: 92vw; max-height: 86vh; box-shadow: 0 4px 30px rgba(0,0,0,0.5); background: #fff; }
.sa-lightbox button { position: absolute; border: 0; background: none; color: #fff; cursor: pointer;
  font: 300 48px/1 sans-serif; padding: 10px 16px; opacity: 0.8; }
.sa-lightbox button:hover, .sa-lightbox button:focus { opacity: 1; }
.sa-lb-close { top: 8px; right: 8px; }
.sa-lb-prev { left: 4px; top: 50%; transform: translateY(-50%); font-size: 64px !important; }
.sa-lb-next { right: 4px; top: 50%; transform: translateY(-50%); font-size: 64px !important; }
.sa-lightbox.sa-single .sa-lb-prev, .sa-lightbox.sa-single .sa-lb-next { display: none; }
.sa-lb-caption { position: absolute; bottom: 12px; left: 0; right: 0; text-align: center; color: #fff;
  font: 14px/1.4 sans-serif; padding: 0 60px; }
