/* PHP pages remain readable and usable without JavaScript. */
.reveal { opacity: 1; transform: none; }
.reveal.aq-reveal-pending { opacity: 0; transform: translate3d(0,var(--reveal-distance,18px),0); }
[data-aquento-menu-toggle], [data-copy-bank]:not(.aq-copy-ready) { display: none !important; }
.aq-menu-ready [data-aquento-menu-toggle] { display: flex !important; }
.aq-menu-ready .aq-nav-fallback { display: none; }
.aq-menu { padding: 0; border: 0; margin: 0 0 0 auto; width: min(90vw,420px); max-width: 100vw; height: 100dvh; max-height: 100dvh; color: #041c2c; background: #fff; overflow-y: auto; overscroll-behavior: contain; box-shadow: -20px 0 60px -25px #041c2c88; }
.aq-menu:not([open]) { display: none; }
.aq-menu::backdrop { background: #041c2c99; backdrop-filter: blur(2px); }
.aq-menu-heading { position: sticky; top: 0; z-index: 1; display:flex; align-items:center; justify-content:space-between; min-height:70px; padding:12px 20px; border-bottom:1px solid #e0f4f6; background:#fffffff5; }
.aq-menu-heading>a { font-size:18px; letter-spacing:.16em; font-weight:900; }
.aq-menu-heading button { width:44px; height:44px; border:1px solid #dbe2e8; border-radius:50%; background:#fff; font-size:28px; line-height:1; }
.aq-menu-content { padding:12px 20px 28px; }
.aq-menu nav ul, .aq-nav-fallback nav ul { list-style:none; margin:0; padding:0; }
.aq-menu nav li+li, .aq-nav-fallback nav li+li { border-top:1px solid #edf2f6; }
.aq-menu nav a, .aq-nav-fallback nav a { display:block; min-height:46px; padding:12px 8px; font-size:15px; font-weight:800; }
.aq-menu a[aria-current], .aq-nav-fallback a[aria-current] { color:#087b8e; background:#edfafa; border-radius:12px; }
.aq-menu-enroll { display:block; margin-top:18px; padding:14px; text-align:center; color:#041c2c; background:#67d9e3; border-radius:999px; font-weight:900; }
.aq-menu-contact { display:grid; gap:12px; margin-top:24px; font-size:13px; font-weight:700; overflow-wrap:anywhere; }
.aq-menu :focus-visible, .aq-nav-fallback :focus-visible { outline:3px solid #18aabd; outline-offset:3px; }
.aq-nav-fallback { position:fixed; top:18px; right:16px; z-index:110; color:#041c2c; }
.aq-nav-fallback>summary { cursor:pointer; list-style:none; border:1px solid #ccecef; border-radius:999px; padding:10px 15px; background:#fff; font-size:13px; font-weight:900; }
.aq-nav-fallback>div { margin-top:8px; width:min(88vw,360px); max-height:calc(100dvh - 90px); overflow:auto; padding:16px; border:1px solid #dbe2e8; border-radius:20px; background:#fff; box-shadow:0 16px 50px #041c2c33; }
.aq-nav-fallback:not([open])>div { display:none; }
@media(min-width:1024px) { .aq-nav-fallback, .aq-menu-ready [data-aquento-menu-toggle] { display:none !important; } }
@media(prefers-reduced-motion:reduce), print { .reveal.aq-reveal-pending { opacity:1!important; transform:none!important; } }
@media print { .aq-menu, .aq-nav-fallback { display:none!important; } }

/* Owner-supplied long words and pasted URLs must stay inside narrow screens. */
#main-content { overflow-wrap: anywhere; }
