:root{color-scheme:light;--theme-color-light: #f0ece4;--theme-color-dark: #1e1a14;--hanoon-easing-entrance: cubic-bezier(0, 0, .2, 1);--hanoon-easing-exit: cubic-bezier(.4, 0, 1, 1);--hanoon-easing-standard: cubic-bezier(.2, 0, 0, 1);--hanoon-easing-spring: cubic-bezier(.34, 1.56, .64, 1);--hanoon-duration-instant: 80ms;--hanoon-duration-fast: .15s;--hanoon-duration-normal: .25s;--hanoon-duration-slow: .4s;--hanoon-duration-entrance: .5s;--hanoon-duration-route: .22s;--hanoon-duration-loading: 1.2s;--hanoon-stagger-step: 50ms;--surface-base: oklch(.98 .004 70);--surface-raised: oklch(.99 .003 70);--surface-muted: oklch(.95 .006 66);--surface-emphasis: oklch(.92 .01 65);--surface-inverse: oklch(.28 .02 60);--border-subtle: oklch(.9 .007 65);--border-strong: oklch(.8 .012 62);--border-focus: oklch(.55 .11 55);--text-primary: oklch(.3 .02 60);--text-secondary: oklch(.45 .012 60);--text-muted: oklch(.58 .012 62);--text-inverse: oklch(.95 .005 70);--state-info: oklch(.56 .09 250);--state-success: oklch(.62 .115 152);--state-warning: oklch(.72 .13 82);--state-danger: oklch(.6 .145 22);--feedback-info-bg: oklch(.96 .02 250);--feedback-info-text: oklch(.42 .09 250);--feedback-info-border: oklch(.88 .04 250);--feedback-success-bg: oklch(.96 .02 152);--feedback-success-text: oklch(.44 .11 152);--feedback-success-border: oklch(.88 .045 152);--feedback-warning-bg: oklch(.97 .025 82);--feedback-warning-text: oklch(.45 .1 82);--feedback-warning-border: oklch(.9 .05 82);--feedback-danger-bg: oklch(.96 .025 22);--feedback-danger-text: oklch(.43 .105 22);--feedback-danger-border: oklch(.88 .05 22);--liturgical-violet-bg: oklch(.95 .035 300);--liturgical-violet-border: oklch(.86 .06 300);--liturgical-violet-text: oklch(.42 .08 300);--liturgical-white-bg: oklch(.97 .012 96);--liturgical-white-border: oklch(.88 .03 96);--liturgical-white-text: oklch(.46 .06 96);--liturgical-green-bg: oklch(.96 .02 155);--liturgical-green-border: oklch(.88 .045 155);--liturgical-green-text: oklch(.45 .09 155);--liturgical-red-bg: oklch(.95 .03 24);--liturgical-red-border: oklch(.87 .055 24);--liturgical-red-text: oklch(.45 .095 24)}.dark{color-scheme:dark;--surface-base: oklch(.15 .01 60);--surface-raised: oklch(.2 .01 60);--surface-muted: oklch(.24 .012 60);--surface-emphasis: oklch(.3 .015 60);--surface-inverse: oklch(.93 .006 70);--border-subtle: oklch(.3 .01 60);--border-strong: oklch(.38 .014 60);--border-focus: oklch(.7 .08 55);--text-primary: oklch(.93 .006 70);--text-secondary: oklch(.82 .01 66);--text-muted: oklch(.66 .012 64);--text-inverse: oklch(.2 .01 60);--state-info: oklch(.74 .095 250);--state-success: oklch(.78 .1 152);--state-warning: oklch(.82 .105 82);--state-danger: oklch(.76 .11 22);--feedback-info-bg: oklch(.27 .03 250);--feedback-info-text: oklch(.83 .07 250);--feedback-info-border: oklch(.44 .055 250);--feedback-success-bg: oklch(.26 .028 152);--feedback-success-text: oklch(.84 .075 152);--feedback-success-border: oklch(.44 .055 152);--feedback-warning-bg: oklch(.29 .03 82);--feedback-warning-text: oklch(.86 .075 82);--feedback-warning-border: oklch(.47 .058 82);--feedback-danger-bg: oklch(.26 .03 22);--feedback-danger-text: oklch(.84 .08 22);--feedback-danger-border: oklch(.44 .06 22);--liturgical-violet-bg: oklch(.26 .045 300);--liturgical-violet-border: oklch(.44 .07 300);--liturgical-violet-text: oklch(.82 .055 300);--liturgical-white-bg: oklch(.3 .02 96);--liturgical-white-border: oklch(.48 .04 96);--liturgical-white-text: oklch(.86 .045 96);--liturgical-green-bg: oklch(.25 .03 155);--liturgical-green-border: oklch(.44 .06 155);--liturgical-green-text: oklch(.83 .07 155);--liturgical-red-bg: oklch(.25 .035 24);--liturgical-red-border: oklch(.44 .065 24);--liturgical-red-text: oklch(.83 .075 24)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.hidden{display:none}.focus\:not-sr-only:focus{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}html{scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid oklch(.55 .11 55);outline-offset:2px;border-radius:2px}.dark :focus-visible{outline-color:#c6916e}html.large-text{font-size:125%}.skeleton{background:linear-gradient(90deg,#efeae6,#f4f1ee 40%,#efeae6);background-size:200% 100%;animation:hanoon-shimmer 1.5s ease-in-out infinite;border-radius:6px}.dark .skeleton{background:linear-gradient(90deg,#1d1a17,#262322 40%,#1d1a17);background-size:200% 100%}.hanoon-toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);padding:.75rem 1.25rem;border-radius:12px;font-size:.875rem;z-index:9999;background:#362c24;color:#f1eeeb;box-shadow:0 4px 16px #38382e26;animation:hanoon-fade-up .3s cubic-bezier(0,0,.2,1) both}.dark .hanoon-toast{background:#e7e4e0;color:#1a1512}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}@keyframes hanoon-fade-in{0%{opacity:0}to{opacity:1}}@keyframes hanoon-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes hanoon-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes hanoon-slide-left{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes hanoon-route-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes hanoon-route-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes hanoon-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-2px)}40%,80%{transform:translate(2px)}}@keyframes hanoon-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes hanoon-spin{to{transform:rotate(360deg)}}@keyframes hanoon-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes hanoon-loading-breathe{0%,to{opacity:.5}50%{opacity:1}}.animate-fade-in{animation:hanoon-fade-in var(--hanoon-duration-normal, .25s) var(--hanoon-easing-entrance, cubic-bezier(0, 0, .2, 1)) both}.animate-fade-up{animation:hanoon-fade-up var(--hanoon-duration-entrance, .5s) var(--hanoon-easing-entrance, cubic-bezier(0, 0, .2, 1)) both}.animate-scale-in{animation:hanoon-scale-in var(--hanoon-duration-normal, .25s) var(--hanoon-easing-spring, cubic-bezier(.34, 1.56, .64, 1)) both}.animate-shake{animation:hanoon-shake var(--hanoon-duration-fast, .15s) ease-in-out}.animate-pulse{animation:hanoon-pulse 2s ease-in-out infinite}.animate-spin{animation:hanoon-spin 1s linear infinite}.motion-route-enter{animation:hanoon-route-enter var(--hanoon-duration-route, .22s) var(--hanoon-easing-entrance, cubic-bezier(0, 0, .2, 1)) both}.motion-route-exit{animation:hanoon-route-exit var(--hanoon-duration-route, .22s) var(--hanoon-easing-exit, cubic-bezier(.4, 0, 1, 1)) both}.motion-loading{animation:hanoon-loading-breathe var(--hanoon-duration-loading, 1.2s) ease-in-out infinite}.loading-skeleton,.skeleton{background:linear-gradient(90deg,#efeae6,#f4f1ee 40%,#efeae6);background-size:200% 100%;animation:hanoon-shimmer 1.5s ease-in-out infinite;border-radius:6px}.dark .loading-skeleton,.dark .skeleton{background:linear-gradient(90deg,#1d1a17,#262322 40%,#1d1a17);background-size:200% 100%}.stagger-children>*{opacity:0;animation:hanoon-fade-up var(--hanoon-duration-entrance, .5s) var(--hanoon-easing-entrance, cubic-bezier(0, 0, .2, 1)) both}.stagger-children>*:nth-child(1){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 0)}.stagger-children>*:nth-child(2){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 1)}.stagger-children>*:nth-child(3){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 2)}.stagger-children>*:nth-child(4){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 3)}.stagger-children>*:nth-child(5){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 4)}.stagger-children>*:nth-child(6){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 5)}.stagger-children>*:nth-child(7){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 6)}.stagger-children>*:nth-child(8){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 7)}.stagger-children>*:nth-child(9){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 8)}.stagger-children>*:nth-child(10){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 9)}.stagger-children>*:nth-child(11){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 10)}.stagger-children>*:nth-child(12){animation-delay:calc(var(--hanoon-stagger-step, 50ms) * 11)}::view-transition-old(root){animation:hanoon-route-exit var(--hanoon-duration-route, .22s) var(--hanoon-easing-exit, cubic-bezier(.4, 0, 1, 1))}::view-transition-new(root){animation:hanoon-route-enter var(--hanoon-duration-route, .22s) var(--hanoon-easing-entrance, cubic-bezier(0, 0, .2, 1))}@media(prefers-reduced-motion:reduce){.animate-fade-in,.animate-fade-up,.animate-scale-in,.animate-shake,.animate-pulse,.animate-spin,.motion-route-enter,.motion-route-exit,.motion-loading,.loading-skeleton,.skeleton,.stagger-children>*{animation:none!important;opacity:1!important;transform:none!important}::view-transition-old(root),::view-transition-new(root){animation:none}}:root{--landing-shadow: 0 8px 24px hsl(35 16% 20% / .08);--landing-shadow-hover: 0 16px 38px hsl(35 20% 20% / .15);--landing-radius: 12px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:"Noto Serif KR",Georgia,serif;color:var(--text-primary);background:var(--surface-base);line-height:1.8;-webkit-font-smoothing:antialiased;transition:background-color var(--hanoon-duration-normal) var(--hanoon-easing-standard),color var(--hanoon-duration-normal) var(--hanoon-easing-standard)}a{color:inherit}.theme-toggle{position:fixed;top:1rem;right:1rem;z-index:50;padding:.5rem;border-radius:9999px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--hanoon-duration-fast)}.theme-toggle:hover{background:var(--surface-muted)}.theme-toggle svg{width:1.25rem;height:1.25rem}.hero{min-height:100svh;display:grid;place-items:center;text-align:center;padding:2rem 1.25rem;background:linear-gradient(180deg,var(--surface-base) 0%,var(--surface-muted) 100%)}.hero-title{font-size:clamp(2.6rem,8vw,3.9rem);font-weight:700;letter-spacing:.16em;margin-bottom:.3rem;color:var(--text-primary)}.hero-sub{font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.94rem;color:var(--text-muted);letter-spacing:.3em;text-transform:uppercase;margin-bottom:1.5rem}.hero-slogan{font-size:1.1rem;font-style:italic;color:var(--text-secondary);margin-bottom:2.2rem}.scroll-hint{font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.82rem;color:var(--text-muted);animation:hanoon-pulse 2s ease-in-out infinite}.section{max-width:700px;margin:0 auto;padding:4rem 1.5rem}.section-divider{text-align:center}.section-divider span{display:inline-block;width:44px;height:1px;background:var(--border-strong);opacity:.7}h2{font-size:1.48rem;margin:0 0 1.5rem;text-align:center}.name-origin{text-align:center}.name-breakdown{display:flex;justify-content:center;gap:.25rem;font-size:2rem;font-weight:700;margin-bottom:.75rem}.name-breakdown .annotation{display:block;font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.7rem;font-weight:500;color:var(--text-muted)}.name-origin p{margin:0;color:var(--text-secondary)}.verse{background:var(--surface-muted);border-left:3px solid var(--border-strong);border-radius:0 var(--landing-radius) var(--landing-radius) 0;padding:1.25rem 1.5rem;margin-bottom:1rem}.verse p{margin:0 0 .4rem;color:var(--text-secondary);font-size:.95rem}.verse .ref{text-align:right;font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.8rem;color:var(--text-muted)}.verse-note{margin:.75rem 0 0;text-align:center;color:var(--text-secondary);font-size:.92rem}.meaning-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.meaning-card{border:1px solid var(--border-subtle);border-radius:var(--landing-radius);background:var(--surface-raised);padding:1.2rem;text-align:center;transition:border-color var(--hanoon-duration-fast),box-shadow var(--hanoon-duration-fast),transform var(--hanoon-duration-fast)}.meaning-card:hover{border-color:var(--border-strong);box-shadow:var(--landing-shadow);transform:translateY(-2px)}.meaning-card .lang{font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.meaning-card .word{font-size:1.24rem;font-weight:700;margin:.25rem 0}.meaning-card .def{font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.86rem;color:var(--text-secondary)}.wordplay{text-align:center}.wordplay-sub{margin:0;color:var(--text-secondary);font-size:.9rem}.wordplay-list{margin-top:1rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem}.wordplay-list span{display:inline-block;padding:.4rem .9rem;border-radius:999px;border:1px solid var(--border-subtle);background:var(--surface-muted);font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.9rem;color:var(--text-secondary);transition:transform var(--hanoon-duration-fast),border-color var(--hanoon-duration-fast)}.wordplay-list span:hover{transform:translateY(-2px);border-color:var(--border-strong)}.wordplay-note{font-size:.85rem;color:var(--text-muted);margin-top:1rem}.services{text-align:center}.service-card{display:inline-block;text-decoration:none;border-radius:var(--landing-radius);border:1px solid color-mix(in oklab,var(--color-service-hymn) 32%,transparent);background:linear-gradient(140deg,color-mix(in oklab,var(--color-service-hymn-soft) 80%,white),color-mix(in oklab,var(--color-service-hymn) 14%,var(--surface-raised)));padding:1rem 2rem;transition:transform var(--hanoon-duration-normal) var(--hanoon-easing-standard),box-shadow var(--hanoon-duration-normal)}.service-card:hover{transform:translateY(-3px);box-shadow:var(--landing-shadow-hover)}.service-name{font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.service-desc{font-family:Asta Sans,Noto Sans KR,system-ui,sans-serif;font-size:.82rem;color:var(--text-secondary)}footer{border-top:1px solid var(--border-subtle);text-align:center;padding:3rem 1.5rem;font-size:.8rem;color:var(--text-muted)}.footer-acronym{margin-top:.5rem;letter-spacing:.08em}.reveal{opacity:0;transform:translateY(14px);transition:opacity var(--hanoon-duration-entrance) var(--hanoon-easing-entrance),transform var(--hanoon-duration-entrance) var(--hanoon-easing-entrance)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transform:translate(-14px);transition:opacity var(--hanoon-duration-entrance) var(--hanoon-easing-entrance),transform var(--hanoon-duration-entrance) var(--hanoon-easing-entrance)}.reveal-left.visible{opacity:1;transform:translate(0)}.stagger-item{opacity:0;transform:translateY(10px);transition:opacity var(--hanoon-duration-normal) var(--hanoon-easing-entrance),transform var(--hanoon-duration-normal) var(--hanoon-easing-entrance)}.stagger-item.visible{opacity:1;transform:translateY(0)}.stagger-item:nth-child(1){transition-delay:calc(var(--hanoon-stagger-step) * 0)}.stagger-item:nth-child(2){transition-delay:calc(var(--hanoon-stagger-step) * 1)}.stagger-item:nth-child(3){transition-delay:calc(var(--hanoon-stagger-step) * 2)}.stagger-item:nth-child(4){transition-delay:calc(var(--hanoon-stagger-step) * 3)}.stagger-item:nth-child(5){transition-delay:calc(var(--hanoon-stagger-step) * 4)}.stagger-item:nth-child(6){transition-delay:calc(var(--hanoon-stagger-step) * 5)}@media(max-width:640px){.section{padding:3rem 1.2rem}.meaning-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.reveal,.reveal-left,.stagger-item{opacity:1!important;transform:none!important;transition:none!important}.scroll-hint{animation:none!important}.service-card:hover,.meaning-card:hover,.wordplay-list span:hover{transform:none!important}}
