@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--ink:#20352f;--muted:#66756e;--green:#286456;--lime:#d9e889;--paper:#f5f4ef;--white:#fff;--line:#dfe4dc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans KR',sans-serif;font-size:17px}header{height:82px;max-width:1180px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-weight:800}.brand small,footer small{display:block;font-size:12px;color:var(--muted);font-weight:500;margin-top:3px}.mark{width:42px;height:42px;background:var(--green);color:white;border-radius:50%;display:grid;place-items:center;font-size:19px}nav{display:flex;align-items:center;gap:34px}nav a,.navbtn{border:0;background:none;color:var(--ink);text-decoration:none;font:inherit;font-size:15px;cursor:pointer}.hero{max-width:1180px;margin:auto;padding:66px 28px 88px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:50px}.eyebrow{text-transform:uppercase;letter-spacing:.11em;color:var(--green);font-size:13px;font-weight:700;margin:0 0 20px}.hero h1{font-size:clamp(44px,6vw,76px);line-height:1.2;letter-spacing:-.06em;margin:0 0 22px}.lead{font-size:18px;line-height:1.9;color:var(--muted);margin-bottom:30px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:28px;border:0;border-radius:9px;background:var(--green);color:white;padding:17px 22px;text-decoration:none;font:inherit;font-size:16px;font-weight:700;cursor:pointer}.primary:hover,.secondary:hover{background:#1d4e43}.primary span{font-size:20px}.tiny{font-size:13px;color:var(--muted);margin-top:15px}.hero-art{height:390px;background:#dce8d7;border-radius:48% 48% 12px 12px;position:relative;overflow:hidden}.sun{position:absolute;width:190px;height:190px;right:15%;top:44px;background:#f6d985;border-radius:50%}.person{position:absolute;left:39%;top:76px;width:130px;height:290px}.person i{position:absolute;width:85px;height:85px;border-radius:50%;background:#b87853;left:26px;top:4px;z-index:2}.person b{position:absolute;width:120px;height:155px;left:7px;top:79px;background:#3e7461;border-radius:55px 55px 24px 24px;transform:rotate(-8deg)}.person em,.person strong{position:absolute;top:205px;width:26px;height:115px;background:#394a41;border-radius:16px;transform-origin:top}.person em{left:36px;transform:rotate(24deg)}.person strong{left:75px;transform:rotate(-18deg)}.art-note{position:absolute;left:24px;bottom:24px;background:#fff;padding:13px 18px;border-radius:30px;font-size:14px}.plant{position:absolute;right:32px;bottom:20px;font-size:72px;color:#809c68}.story,.finder,.request{max-width:1124px;margin:0 auto 92px;padding:64px 70px}.story{display:grid;grid-template-columns:.6fr 1.4fr;gap:60px;background:#e8ece3;border-radius:16px}.story-label{font-size:14px;color:var(--green);font-weight:700}.story h2,.section-head h2,.request h2,dialog h2{font-size:40px;letter-spacing:-.05em;line-height:1.3;margin:0 0 22px}.story p,.request p,.section-head>div>p:last-child{color:#52635b;line-height:1.9}.quote{border-left:3px solid #87a678;padding:8px 18px;margin-top:24px;font-weight:600}.finder{padding-top:0}.section-head{display:flex;justify-content:space-between;align-items:end}.pill{background:#e4ebd5;padding:10px 16px;border-radius:30px;font-size:14px}.search{display:flex;gap:12px;margin:30px 0 22px}.search input{flex:1;min-width:0;padding:20px;border:1px solid #cfd8cd;border-radius:9px;background:white;font:inherit}.areas{display:flex;gap:11px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:14px}.areas button{background:#fff;border:1px solid var(--line);padding:10px 18px;border-radius:30px;color:var(--ink);font:inherit;cursor:pointer}.areas button:hover{background:#e8f0df}.results{margin-top:32px}.empty{text-align:center;padding:45px;color:var(--muted);background:#eeeee8;border-radius:12px}.empty span{font-size:30px;color:#88a273}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.card{background:white;border:1px solid var(--line);border-radius:13px;padding:24px}.card h3{font-size:22px;margin:8px 0}.tag{font-size:13px;color:var(--green);font-weight:700}.card p{line-height:1.75;color:var(--muted)}.steps{padding-left:22px;line-height:1.8}.warning{background:#fff4dc;padding:12px 14px;border-radius:8px;font-size:14px!important;color:#6a5324!important}.request{background:#dbe9dd;border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.request form,.request label{display:grid;gap:12px}.request textarea{height:115px;resize:vertical;padding:15px;border:1px solid #c7d4c8;border-radius:8px;font:inherit}.secondary{background:#fff;color:var(--green);border:1px solid #bfd0c0;gap:8px}#requestStatus{font-size:14px}footer{border-top:1px solid var(--line);padding:28px max(28px,calc((100vw - 1124px)/2));display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:13px}dialog{border:0;border-radius:16px;width:min(650px,calc(100% - 30px));padding:32px;box-shadow:0 24px 90px #18241e55}dialog::backdrop{background:#14231dcc}.dialog-head{display:flex;justify-content:space-between}.close{font-size:28px;background:none;border:0;cursor:pointer}.sr{position:absolute;clip:rect(0,0,0,0)}#loginForm{display:grid;gap:14px}#loginForm label{display:grid;gap:8px}#loginForm input{padding:13px;border:1px solid var(--line);border-radius:8px;font:inherit}#loginForm small{color:var(--muted)}.admin-actions{display:flex;justify-content:space-between;margin:20px 0}.request-item{padding:16px 0;border-bottom:1px solid var(--line)}.request-item time{font-size:12px;color:var(--muted)}.request-item button{float:right}
@media(max-width:720px){body{font-size:16px}header{height:70px;padding:0 18px}nav{gap:14px}nav a{display:none}.hero{padding:35px 20px 60px;grid-template-columns:1fr;gap:25px}.hero h1{font-size:48px}.hero-art{height:310px}.story,.finder,.request{margin:0 16px 55px;padding:30px 23px}.story,.request{grid-template-columns:1fr;gap:24px}.story h2,.section-head h2,.request h2{font-size:33px}.section-head{align-items:start}.search{flex-direction:column}.search .primary{width:100%}.cards{grid-template-columns:1fr}footer{padding:24px 18px;flex-direction:column}.pill{font-size:12px}.finder{padding-top:0}}

.intro{height:100svh;min-height:650px;position:relative;overflow:hidden;background:#101d35;color:#fff;padding:34px max(7vw,28px);display:flex;align-items:center}.intro-top,.intro-bottom{position:absolute;left:max(7vw,28px);right:max(7vw,28px);display:flex;justify-content:space-between;color:#c3cede;font-size:13px;letter-spacing:.08em}.intro-top{top:35px}.intro-bottom{bottom:35px}.intro-content{position:relative;z-index:3;max-width:810px;animation:intro-rise 1s .15s both}.intro-kicker{color:#bdc9dc;font-size:14px;margin-bottom:26px;display:flex;align-items:center;gap:12px}.intro-line{width:38px;height:1px;background:#b9c9e2}.intro-content h1{font-size:clamp(43px,7vw,84px);line-height:1.23;letter-spacing:-.065em;margin:0 0 25px}.intro-content h1 span{color:#c7d7f1}.intro-content>p{color:#d0d7e2;line-height:1.9;font-size:18px}.intro-content .intro-more{font-size:15px;color:#aab8cb;margin:14px 0 27px}.intro-cta{display:inline-flex;gap:35px;align-items:center;color:#12203a;background:white;padding:16px 21px;border-radius:5px;text-decoration:none;font-weight:700;transition:transform .25s}.intro-cta:hover{transform:translateY(-3px)}.motion-orb{position:absolute;border-radius:50%}.orb-one{width:min(44vw,570px);aspect-ratio:1;background:radial-gradient(circle at 35% 32%,#3c5277,#1a2b49 68%);right:8%;top:13%;animation:orb-float 8s ease-in-out infinite}.orb-two{width:25vw;aspect-ratio:1;border:1px solid #7586a044;right:21%;top:29%;animation:ring-turn 24s linear infinite}.motion-ring{position:absolute;width:min(50vw,640px);aspect-ratio:1;border:1px solid #d2dced24;border-radius:50%;right:3%;top:8%;animation:ring-turn 36s linear infinite}.motion-figure{position:absolute;width:150px;height:345px;right:24%;top:29%;z-index:2;animation:figure-sway 5s ease-in-out infinite;transform-origin:50% 90%}.motion-figure i{position:absolute;width:76px;height:76px;background:#d4b39d;border-radius:50%;left:39px;top:2px}.motion-figure b{position:absolute;width:104px;height:145px;background:#a7b8d1;left:25px;top:73px;border-radius:48px 48px 23px 23px}.motion-figure em,.motion-figure strong{position:absolute;top:203px;width:24px;height:130px;background:#c1ccda;border-radius:20px;transform-origin:top}.motion-figure em{left:51px;animation:leg-one 5s ease-in-out infinite}.motion-figure strong{left:81px;animation:leg-two 5s ease-in-out infinite}@keyframes intro-rise{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes orb-float{50%{transform:translateY(-18px) scale(1.025)}}@keyframes ring-turn{to{transform:rotate(360deg)}}@keyframes figure-sway{50%{transform:rotate(3deg) translateY(-5px)}}@keyframes leg-one{50%{transform:rotate(7deg)}}@keyframes leg-two{50%{transform:rotate(-5deg)}}:root{--ink:#17243c;--muted:#626e80;--green:#233a61;--paper:#f7f8fa;--line:#dfe4ec}.mark,.primary{background:#20395f}.eyebrow,.story-label,.tag{color:#304e7b}.story{background:#e9edf4}.quote{border-color:#486b9a}.request{background:#e6ebf3}.areas button:hover{background:#e8edf6}.warning{background:#f1f3f7;color:#414b5d!important}header{background:#fff}nav a,.navbtn{color:#1b2b48}.hero-art{background:#e2e8f0}.sun{background:#d4deed}.person b{background:#344d73}.plant{color:#667f9f}.art-note{color:#243754}.card{box-shadow:0 4px 18px #1d2e4910}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #7995c2;outline-offset:3px}@media(max-width:720px){.intro{min-height:700px;padding:30px 24px}.intro-top,.intro-bottom{left:24px;right:24px}.intro-content{max-width:100%}.intro-content h1{font-size:43px}.intro-content>p{font-size:16px}.motion-orb{width:80vw;right:-22%;top:45%;opacity:.7}.motion-ring{width:90vw;right:-29%;top:40%}.motion-figure{right:12%;top:58%;transform:scale(.67);transform-origin:bottom right;opacity:.6}.scroll-cue{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

.intro-content h1 span{display:inline-block;position:relative;color:transparent;background:linear-gradient(90deg,#eef3fb 0%,#eef3fb 50%,#92a9c9 50%,#92a9c9 100%);background-size:220% 100%;background-position:100% 0;-webkit-background-clip:text;background-clip:text;animation:tech-reveal 2.2s .7s cubic-bezier(.2,.8,.2,1) forwards;filter:drop-shadow(0 0 14px #9ab5df18)}.intro-content h1 span:after{content:'_';display:inline-block;color:#d4e1f5;margin-left:.08em;animation:terminal-cursor .9s steps(2,start) infinite}@keyframes tech-reveal{to{background-position:0 0}}@keyframes terminal-cursor{50%{opacity:0}}.intro-leave{animation:intro-exit .7s cubic-bezier(.76,0,.24,1) forwards;pointer-events:none}@keyframes intro-exit{to{opacity:0;transform:scale(1.025);visibility:hidden}}.intro-content h1{font-family:ui-monospace,'Noto Sans KR',monospace;text-shadow:0 0 28px #7f9cc522}@media(prefers-reduced-motion:reduce){.intro-content h1 span,.intro-content h1 span:after,.intro-leave{animation:none!important}.intro-content h1 span{color:#c7d7f1;background:none;-webkit-text-fill-color:currentColor}}

.intro-content{max-width:900px}.intro-content h1{position:relative;z-index:2}.intro{background:radial-gradient(ellipse at 92% 88%,#1a2c49 0%,#101d35 48%)}.intro:after{content:'';position:absolute;width:1px;height:68%;right:12%;top:16%;background:linear-gradient(transparent,#dce7f51c,transparent)}
