:root{--bg: #f6f7f9;--surface: #ffffff;--line: #e5e7eb;--ink: #111827;--muted: #6b7280;--primary: #111827}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,sans-serif}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}.page{width:min(960px,calc(100% - 2rem));margin:1rem auto 2rem;animation:fade-in .25s ease-out}.top-nav{position:sticky;top:.65rem;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .85rem;border:1px solid var(--line);border-radius:12px;background:#ffffffeb}.brand{display:flex;align-items:center;gap:.55rem}.brand-logo{width:2rem;height:2rem;border-radius:999px;object-fit:cover;border:1px solid var(--line)}.brand span{display:grid;font-size:.9rem;font-weight:700;line-height:1.1}.brand small{font-size:.68rem;color:var(--muted);font-weight:500}.top-nav nav{display:flex;gap:.85rem;font-size:.86rem;color:var(--muted);font-weight:600}main{display:grid;gap:.75rem;margin-top:.75rem}.panel{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:1rem}.kicker{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:.8rem}.hero-copy{display:grid;align-content:center;gap:.55rem}.hero h2,.section-head h3,.contact h3{font-family:Nanum Myeongjo,serif}.hero h2{font-size:clamp(1.5rem,3vw,2.2rem)}.hero h3{font-size:.95rem;color:var(--muted);font-weight:500}.hero-copy p{color:var(--muted);line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:.45rem}.btn{border-radius:10px;padding:.56rem .85rem;font-size:.88rem;font-weight:600;border:1px solid transparent;transition:opacity .16s ease}.btn:hover{opacity:.86}.btn-primary{background:var(--primary);color:#fff}.btn-ghost{border-color:var(--line);background:#fff;color:var(--ink)}.hero-photo{margin:0;border-radius:12px;overflow:hidden;min-height:260px}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.section-head{display:grid;gap:.3rem;margin-bottom:.7rem}.section-head h3,.contact h3{font-size:clamp(1.2rem,2.4vw,1.7rem)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.info-card,.story-card{border:1px solid var(--line);border-radius:10px;padding:.75rem}.info-list,.story-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}.info-list li{display:flex;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--line);padding-bottom:.45rem}.info-list li:last-child{border-bottom:0;padding-bottom:0}.info-list span,.story-card li{color:var(--muted);font-size:.9rem}.story-card h4{font-size:.95rem;margin-bottom:.5rem}.story-card li{line-height:1.5}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.photo-button{border:1px solid var(--line);border-radius:10px;padding:0;margin:0;overflow:hidden;background:#fff;cursor:zoom-in}.photo-button img{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;transition:transform .18s ease}.photo-button:hover img,.photo-button:focus-visible img{transform:scale(1.03)}.photo-button:focus-visible{outline:2px solid #111827;outline-offset:2px}.contact{text-align:center;display:grid;justify-items:center;gap:.5rem}.contact p{color:var(--muted)}.site-footer{margin-top:.25rem;padding:.75rem .3rem .2rem;text-align:center;color:var(--muted);font-size:.8rem;display:grid;justify-items:center;gap:.4rem}.company-logo-link{display:inline-flex}.company-logo{width:min(210px,62vw);height:auto;display:block}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#111827db;display:grid;place-items:center;padding:1rem;z-index:200}.lightbox-content{margin:0;width:min(860px,100%);background:#fff;border-radius:12px;padding:.75rem;position:relative}.lightbox-content img{width:100%;max-height:78vh;object-fit:contain;border-radius:8px}.lightbox-content figcaption{margin-top:.4rem;color:var(--muted);font-size:.88rem}.lightbox-close{position:absolute;top:.65rem;right:.65rem;border:1px solid var(--line);border-radius:999px;background:#fff;padding:.3rem .55rem;font-size:.82rem;cursor:pointer}.intro-screen{position:fixed;top:0;right:0;bottom:0;left:0;border:0;margin:0;padding:0;cursor:pointer;background:#000;color:#fff}.intro-image{width:100%;height:100%;object-fit:cover;display:block}.intro-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000b3,#0000004d)}.intro-content{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;gap:.45rem;animation:fade-in .4s ease-out}.intro-logo{width:82px;height:82px;border-radius:50%;margin:0 auto;border:2px solid rgba(255,255,255,.5)}.intro-kicker{font-size:.74rem;letter-spacing:.1em;opacity:.9}.intro-content h1{font-family:Nanum Myeongjo,serif;font-size:clamp(2.6rem,11vw,5rem);line-height:1}.intro-content p{color:#ffffffe6}.intro-screen.intro-hide{opacity:0;transition:opacity .35s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (max-width: 900px){.hero,.about-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.page{width:calc(100% - 1rem);margin-top:.55rem}.top-nav{border-radius:10px;padding:.52rem .62rem;flex-wrap:wrap}.top-nav nav{width:100%;justify-content:space-around;border-top:1px solid var(--line);padding-top:.4rem}.panel{border-radius:12px;padding:.9rem}.gallery{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
