.nav[data-v-efa6fded]{--nav-bar-height: 3.35rem;--nav-offset: calc(var(--nav-bar-height) + 1px);position:sticky;top:0;z-index:120;background:#ffffffeb;border-bottom:1px solid rgba(8,36,73,.14);box-shadow:0 8px 24px #042a5214;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.nav-inner[data-v-efa6fded]{max-width:1100px;margin:0 auto;padding:.75rem 1rem;display:flex;align-items:center;gap:1rem}.nav-desktop[data-v-efa6fded]{justify-content:space-between}.nav-desktop .left[data-v-efa6fded],.nav-desktop .right[data-v-efa6fded]{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.nav-mobile-bar[data-v-efa6fded]{display:none;justify-content:flex-start;align-items:center;gap:.75rem;min-height:var(--nav-bar-height)}.brand[data-v-efa6fded]{font-weight:900;color:var(--ink);text-decoration:none;margin-right:.5rem;text-transform:uppercase;letter-spacing:.02em}.brand-mobile[data-v-efa6fded]{margin-right:0;flex:1;min-width:0}.link[data-v-efa6fded]{color:var(--ink-soft);text-decoration:none;font-size:.95rem;font-weight:700;padding:.35rem .15rem}.link[data-v-efa6fded]:hover{color:var(--ocean-deep)}.admin[data-v-efa6fded]{color:var(--ocean)}.login-btn[data-v-efa6fded]{border:1px solid rgba(8,36,73,.18);background:linear-gradient(180deg,#0b70c9,#064b98);color:#fff;border-radius:var(--radius);padding:.45rem .8rem;cursor:pointer;font-size:.95rem;font-weight:800;box-shadow:0 6px 14px #044b9833}.login-btn--drawer[data-v-efa6fded]{width:100%;padding:.75rem 1rem;font-weight:600}.hamburger[data-v-efa6fded]{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:2.5rem;height:2.5rem;padding:0;border:none;border-radius:var(--radius);background:#fff;cursor:pointer;color:var(--ink);flex-shrink:0;border:1px solid rgba(8,36,73,.16);box-shadow:0 6px 14px #042a521a}.hamburger[data-v-efa6fded]:hover{background:#075bb21a}.hamburger-line[data-v-efa6fded]{display:block;width:1.35rem;height:2px;background:currentColor;border-radius:1px;transition:transform .2s ease,opacity .2s ease;transform-origin:center}.hamburger--open .hamburger-line[data-v-efa6fded]:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger--open .hamburger-line[data-v-efa6fded]:nth-child(2){opacity:0}.hamburger--open .hamburger-line[data-v-efa6fded]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-menu[data-v-efa6fded]{display:none}@media(max-width:760px){.nav[data-v-efa6fded]{--nav-bar-height: 3rem}.nav-desktop[data-v-efa6fded]{display:none}.nav-mobile-bar[data-v-efa6fded]{display:flex;padding:.45rem .65rem}.mobile-menu[data-v-efa6fded]{display:grid;position:absolute;top:100%;left:0;width:min(19rem,72vw);z-index:240;gap:0;padding:.35rem .65rem .75rem;background:var(--foam);border-bottom:1px solid rgba(8,36,73,.14);box-shadow:0 18px 32px #042a5233}.drawer-link[data-v-efa6fded]{display:block;padding:.82rem .75rem;color:var(--ink);text-decoration:none;font-size:1rem;font-weight:800;border-bottom:1px solid rgba(8,36,73,.09);background:#fff}.drawer-link[data-v-efa6fded]:hover,.drawer-link.router-link-active[data-v-efa6fded]{background:#075bb217;color:var(--ocean-deep)}.drawer-link--admin[data-v-efa6fded]{color:var(--ocean);font-weight:500}.drawer-section-label[data-v-efa6fded]{margin:.75rem 1.25rem .35rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.mobile-drawer-footer[data-v-efa6fded]{display:none}.login-btn--drawer[data-v-efa6fded]{margin-top:.65rem}}.social-icon[data-v-ca877526]{display:block}.footer[data-v-aea1b42a]{margin-top:auto;background:linear-gradient(180deg,#ffffffeb,#e6f4fff0);border-top:1px solid rgba(8,36,73,.14);padding:1.4rem 1rem 1.6rem}.footer-inner[data-v-aea1b42a]{max-width:1100px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.social-label[data-v-aea1b42a]{margin:0 0 .5rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft)}.social-list[data-v-aea1b42a]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.65rem}.social-link[data-v-aea1b42a]{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius);color:var(--ocean-deep);background:#fff;border:1px solid rgba(8,36,73,.12);text-decoration:none;box-shadow:0 8px 18px #042a521a;transition:color .15s ease,background .15s ease,transform .15s ease}.social-link[data-v-aea1b42a]:hover{color:#fff;background:var(--ocean);transform:translateY(-1px)}.credit[data-v-aea1b42a]{margin:0;font-size:.8rem;color:var(--ink-soft);line-height:1.5}.credit-name[data-v-aea1b42a]{font-weight:600;color:var(--ink)}.credit-mail[data-v-aea1b42a]{color:var(--ocean-deep);text-decoration:none;word-break:break-all}.credit-mail[data-v-aea1b42a]:hover{text-decoration:underline}.wa-fab[data-v-dca4a0f0]{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:90;display:inline-flex;align-items:center;gap:8px;padding:.72rem .9rem;border-radius:var(--radius);background:linear-gradient(180deg,#0cae8d,#087b6e);color:#fff;text-decoration:none;box-shadow:0 12px 28px #042a5247;font-weight:900;border:1px solid rgba(255,255,255,.52)}.wa-fab[data-v-dca4a0f0]:hover{filter:brightness(1.03)}.wa-icon[data-v-dca4a0f0]{font-size:1rem;line-height:1}.wa-label[data-v-dca4a0f0]{font-size:.9rem;line-height:1}@media(min-width:900px){.wa-fab[data-v-dca4a0f0]{right:22px;bottom:22px}}:root{--ink: #082449;--ink-soft: #24415f;--ocean: #075bb2;--ocean-deep: #043f82;--ocean-bright: #0b80d7;--aqua: #13b8c9;--sun: #f3d56b;--sand: #f7f1e2;--foam: #f8fbff;--card: rgba(255, 255, 255, .94);--line: rgba(8, 36, 73, .16);--shadow: 0 16px 36px rgba(4, 42, 82, .16);--radius: 8px;--container: 1120px}*{box-sizing:border-box}html{min-height:100%;color:var(--ink);background:#f7f7f4}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:#f7f7f4}body:before{content:none}a{color:var(--ocean-deep)}button,input,textarea,select{font:inherit}button{letter-spacing:0}.app{min-height:100vh;display:flex;flex-direction:column}.content{flex:1}.error{color:#b42318}
