@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Inter:wght@400;500;600&family=Noto+Serif+KR:wght@400;500;600;700&display=swap";
:root{--color-midnight:#1a1a2e;--color-midnight-soft:#2a2a42;--color-midnight-light:#3a3a56;--color-bg-primary:#fafaf8;--color-bg-warm:#f5f3ef;--color-bg-deep:#eceae4;--color-bg-overlay:#fafaf8eb;--color-text-primary:#1a1a2e;--color-text-secondary:#3d3d56;--color-text-muted:#7a7a8c;--color-text-light:#a0a0b0;--color-text-inverse:#fafaf8;--color-gold:#c9a96e;--color-gold-light:#dbc590;--color-gold-dark:#a28a52;--color-gold-glow:#c9a96e1f;--color-forest:#2d4a3e;--color-forest-light:#3d6a56;--color-success:#4a7c5e;--color-warning:#c9a96e;--color-error:#c04040;--color-info:#5a7a9e;--tone-surface-0:#fafaf8;--tone-surface-1:#f5f3ef;--tone-surface-2:#eceae4;--tone-surface-3:#e0ded8;--tone-border-ghost:#1a1a2e0a;--font-heading:"Manrope", sans-serif;--font-body:"Inter", sans-serif;--font-serif:"Noto Serif KR", serif;--font-ui:"Inter", sans-serif;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:32px;--text-4xl:40px;--text-5xl:56px;--text-6xl:72px;--text-base-a11y:20px;--text-lg-a11y:24px;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-tight:-.03em;--tracking-snug:-.02em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.08em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--space-5xl:128px;--space-page-x:clamp(24px, 6vw, 120px);--space-page-y:clamp(48px, 8vh, 96px);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 2px 8px #1a1a2e08;--shadow-md:0 4px 16px #1a1a2e0d;--shadow-lg:0 12px 40px #1a1a2e0f;--shadow-xl:0 20px 60px #1a1a2e14;--shadow-hover:0 24px 64px #1a1a2e1a;--shadow-gold:0 4px 24px #c9a96e26;--glass-bg:#fafaf8cc;--glass-blur:24px;--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--ease-out:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--touch-min:48px;--touch-comfortable:56px;--z-base:0;--z-elevated:10;--z-sticky:100;--z-overlay:500;--z-modal:1000;--z-toast:1500;--max-width:1280px;--max-width-narrow:960px;--mouse-x:50vw;--mouse-y:50vh}[data-theme=dark]{--color-bg-primary:#0f0f1a;--color-bg-warm:#16162a;--color-bg-deep:#1e1e36;--color-text-primary:#e8e8f0;--color-text-secondary:#b0b0c4;--color-text-muted:#6a6a80;--tone-surface-0:#0f0f1a;--tone-surface-1:#16162a;--tone-surface-2:#1e1e36;--tone-surface-3:#2a2a42;--glass-bg:#0f0f1ad9}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;overflow-x:hidden}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 20% 30%, #c9a96e08, transparent 50%), radial-gradient(ellipse at 80% 70%, #1a1a2e05, transparent 50%), radial-gradient(800px circle at var(--mouse-x) var(--mouse-y), #c9a96e0d, transparent 40%);transition:background .2s ease-out;position:fixed;inset:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-bold);line-height:var(--leading-tight);color:var(--color-text-primary);letter-spacing:var(--tracking-tight)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}a{color:var(--color-gold-dark);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--color-gold)}:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background-color:var(--color-gold-glow);color:var(--color-text-primary)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-text-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.label-uppercase{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-gold)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.animate-fade-in-up{animation:fadeInUp var(--duration-slow) var(--ease-out) both}.animate-fade-in{animation:fadeIn var(--duration-slow) var(--ease-out) both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.globalNav{z-index:var(--z-sticky);padding:var(--space-md) var(--space-page-x);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(150%);transition:background var(--duration-normal) var(--ease-out);border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.globalNav--transparent{-webkit-backdrop-filter:none;background:0 0}.navBrand{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:var(--tracking-snug);text-decoration:none}.navLinks{align-items:center;gap:var(--space-xl);list-style:none;display:flex}.navLink{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);padding:var(--space-sm) 0;transition:color var(--duration-fast) var(--ease-out);text-decoration:none;position:relative}.navLink:hover,.navLink--active{color:var(--color-text-primary)}.navLink--active:after{content:"";background:var(--color-gold);border-radius:1px;height:2px;position:absolute;bottom:0;left:0;right:0}
