body{font-family:"Malgun Gothic","Apple SD Gothic Neo",system-ui,sans-serif;color:var(--color-text);background:#fff;line-height:1.65;word-break:keep-all;overflow-wrap:anywhere}
body.menu-open{overflow:hidden}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:1000;padding:.75rem 1rem;background:var(--color-text);color:#fff;border-radius:.5rem;transform:translateY(-150%)}.skip-link:focus{transform:none}
:focus-visible{outline:.1875rem solid var(--color-focus);outline-offset:.1875rem}.container{width:min(100% - 2rem,var(--container));margin-inline:auto}.section{padding-block:var(--space-8)}
.site-header{position:sticky;top:0;z-index:100;height:var(--header-height);background:rgba(255,255,255,.97);border-bottom:1px solid #dcecf4;backdrop-filter:blur(.5rem)}.header-inner{height:100%;display:flex;align-items:center;gap:.65rem}.menu-toggle{display:grid;place-items:center;width:2.75rem;height:2.75rem;flex:0 0 auto;border-radius:.75rem;background:var(--color-soft-blue);cursor:pointer}.menu-icon,.menu-icon::before,.menu-icon::after{display:block;width:1.25rem;height:.125rem;background:var(--color-primary);border-radius:1rem;transition:.2s}.menu-icon{position:relative}.menu-icon::before,.menu-icon::after{content:"";position:absolute;left:0}.menu-icon::before{top:-.4rem}.menu-icon::after{top:.4rem}.menu-toggle[aria-expanded="true"] .menu-icon{background:transparent}.menu-toggle[aria-expanded="true"] .menu-icon::before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-icon::after{top:0;transform:rotate(-45deg)}
.brand{display:flex;align-items:center;gap:.35rem;min-width:0;margin-right:auto;font-size:.74rem;font-weight:800;line-height:1.25;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:1.35rem;height:1.35rem;flex:0 0 auto;background:transparent;color:var(--color-accent);font-size:1.35rem;line-height:1;font-weight:900;pointer-events:none}.brand-text{max-width:8.5rem}.desktop-nav{display:none}.registration-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding-inline:1rem;border-radius:.875rem;background:var(--color-cta);color:#fff;font-size:.8rem;font-weight:800;white-space:nowrap;cursor:pointer}.registration-link[aria-disabled="true"]{cursor:not-allowed}.registration-link[aria-disabled="true"]::after{content:""}.registration-link:hover{background:#d7154f}.registration-link:active{transform:translateY(1px)}
.mobile-nav{position:fixed;inset:var(--header-height) 0 0;z-index:90;visibility:hidden}.mobile-nav.is-open{visibility:visible}.mobile-nav-backdrop{position:absolute;inset:0;background:rgba(20,33,61,.35);opacity:0;transition:.2s}.is-open .mobile-nav-backdrop{opacity:1}.mobile-nav-panel{position:relative;width:min(84%,21rem);height:100%;padding:1.5rem 1.25rem;background:#fff;transform:translateX(-105%);transition:.25s ease;overflow:auto}.is-open .mobile-nav-panel{transform:none}.mobile-nav-title{margin-bottom:1rem;color:var(--color-primary);font-weight:800}.mobile-nav a:not(.registration-link){display:flex;align-items:center;justify-content:space-between;min-height:3.75rem;border-bottom:1px solid #ddeaf1;font-size:1.05rem;font-weight:700}.mobile-nav a:not(.registration-link)::after{content:"→";color:var(--color-primary)}.mobile-event{margin-top:2rem;padding:1rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);font-size:.84rem}.mobile-event strong{display:block;color:var(--color-primary);margin-bottom:.25rem}
.page-main{min-height:calc(100vh - var(--header-height))}.page-hero{position:relative;overflow:hidden;padding:1.6rem 0 1.75rem;background:var(--color-sky)}.page-hero::after{content:"+";position:absolute;top:1rem;right:1.15rem;display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:50%;background:#f9cfe1;color:var(--color-cta);font-size:2.15rem;line-height:1}.eyebrow{margin-bottom:.45rem;color:var(--color-primary);font-size:.72rem;font-weight:800;letter-spacing:.04em}.page-title{font-size:clamp(1.65rem,7vw,2.65rem);line-height:1.18;font-weight:900;letter-spacing:-.025em}.page-lead{max-width:38rem;margin-top:.5rem;color:#43556b;font-size:.84rem}.section-title{margin-bottom:1rem;font-size:clamp(1.2rem,4.5vw,1.7rem);line-height:1.3}.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-card);box-shadow:var(--shadow-card)}.placeholder{border:1px dashed #9ccfe5;background:var(--color-soft-blue);color:var(--color-text-2)}.notice{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid #f2c275;border-radius:var(--radius-md);background:var(--color-warning-bg);color:var(--color-warning);font-size:.85rem}.notice-mark{display:grid;place-items:center;width:1.8rem;height:1.8rem;flex:none;border-radius:50%;background:#ffe9be;font-weight:900}.text-muted{color:var(--color-text-2)}.caption{color:var(--color-muted);font-size:.72rem}.pill{display:inline-flex;align-items:center;min-height:1.6rem;padding-inline:.65rem;border-radius:var(--radius-pill);background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:800}.pill.pink{background:var(--color-accent)}
.fixed-register{position:fixed;z-index:80;right:0;bottom:0;left:0;padding:.75rem max(1rem,env(safe-area-inset-left)) calc(.75rem + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--color-border)}.fixed-register .registration-link{width:100%;min-height:3.375rem;font-size:1rem}.has-fixed-register{padding-bottom:6rem}
.site-footer{padding:2rem 0;background:#f4fbff;color:var(--color-text-2);font-size:.76rem}.footer-title{margin-bottom:.65rem;color:var(--color-text);font-weight:800}.footer-grid{display:grid;gap:.3rem}.footer-org{margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--color-border);line-height:1.7}.footer-note{margin-top:1rem;padding-top:.8rem;border-top:1px solid var(--color-border);color:var(--color-muted)}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(min-width:48rem){.container{width:min(100% - 3rem,var(--container))}.menu-toggle{display:none}.brand{font-size:.9rem}.brand-text{max-width:none}.desktop-nav{display:flex;align-items:center;gap:.25rem;margin-left:auto}.desktop-nav>a{display:inline-flex;align-items:center;min-height:2.75rem;padding:.5rem .7rem;border-radius:.75rem;font-size:.85rem;font-weight:700}.desktop-nav>a:not(.registration-link):hover,.desktop-nav>a[aria-current="page"]{background:var(--color-soft-blue);color:var(--color-primary)}.header-cta-mobile{display:none}.fixed-register{display:none}.has-fixed-register{padding-bottom:0}.page-hero{padding-block:2.5rem}.site-footer{padding-block:2.5rem}}
@media(min-width:64rem){.desktop-nav{gap:.5rem}.desktop-nav>a{padding-inline:1rem}.section{padding-block:3.5rem}}
