.topbar-inner, .topbar-links { flex-wrap: wrap; }
.nav-wrap { gap: 18px; }
.nav { gap: 18px; }
.nav .nav-link[aria-current="page"] { color: var(--green-dark); }
.membership-plan-tag { align-self: flex-start; }
.membership-plan h3 { margin-top: 16px; }
@media (max-width: 1100px) and (min-width: 981px) {
  .nav { gap: 10px; }
  .nav-link { font-size: .85rem; }
  .logo strong { font-size: 1.25rem; }
}
@media (max-width: 640px) {
  .topbar-links { justify-content: center; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
}

.footer .socials{flex-wrap:wrap;max-width:150px;gap:10px}.footer .socials a{flex:0 0 40px}
@media(max-width:1200px){.footer .socials{max-width:none}}

/* Decorative loading screen; never traps navigation or interaction. */
.jj-loader{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;pointer-events:none;background:radial-gradient(ellipse at 20% 10%,#e9f3dd,transparent 65%),#fffdf7;color:#1c3529;animation:jj-loader-exit 0s 2.5s forwards}
.jj-loader[hidden]{display:none}
.jj-loader-content{text-align:center;padding:24px}
.jj-loader-logo{position:relative;display:grid;place-items:center;width:152px;height:152px;margin:0 auto 22px;background:#fff;border-radius:50%;box-shadow:0 16px 42px #274c2110}
.jj-loader-logo img{object-fit:contain;width:100px;height:100px}
.jj-loader-logo>span{position:absolute;inset:-8px;border:2px solid #dce8cf;border-top-color:#16844f;border-right-color:#e9bd49;border-radius:50%;animation:jj-loader-spin 1.5s linear infinite}
.jj-loader-content>strong{font:800 2rem/1.2 'Baloo 2',sans-serif;letter-spacing:-.025em}.jj-loader-content>p{font:400 .95rem/1.6 'Nunito',sans-serif;color:#627562;margin:10px 0 22px}
.jj-loader-dots{display:flex;gap:8px;justify-content:center}.jj-loader-dots span{width:8px;height:8px;border-radius:50%;background:#228452;animation:jj-loader-bounce 1s ease-in-out infinite}.jj-loader-dots span:nth-child(2){background:#e3b449;animation-delay:.15s}.jj-loader-dots span:nth-child(3){background:#8eb968;animation-delay:.3s}
@keyframes jj-loader-spin{to{transform:rotate(360deg)}}@keyframes jj-loader-bounce{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(-6px);opacity:1}}@keyframes jj-loader-exit{to{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.jj-loader-logo>span,.jj-loader-dots span{animation:none}}