@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap";body{margin:0;font-family:Inter,Pretendard,Noto Sans KR,Arial,sans-serif;background:#f8fafc;color:#23272f;min-height:100vh}.nav{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 2px 8px #1e293b0a;display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:64px;transition:box-shadow .3s}.nav.scrolled{box-shadow:0 6px 24px #1e293b1a}.nav-logo{font-size:1.5rem;font-weight:700;color:#6366f1;letter-spacing:1px;opacity:0;animation:fadeIn 1s .2s forwards}.nav-links{list-style:none;display:flex;gap:32px;margin:0;padding:0}.nav-links li a{color:#23272f;text-decoration:none;font-weight:600;font-size:1.08rem;transition:color .2s;opacity:0;animation:fadeIn 1s .4s forwards}.nav-links li a:hover{color:#6366f1}.container{max-width:1000px;margin:0 auto;padding:40px 16px 24px}.hero{text-align:center;padding:80px 0 48px;background:#fff;border-radius:24px;box-shadow:0 8px 32px #1e293b14;margin-bottom:48px;overflow:hidden}.hero h1{font-size:2.6rem;font-weight:700;color:#23272f;margin-bottom:1.2rem;line-height:1.2;opacity:0;transform:translateY(40px);animation:slideUpFade 1.1s .2s cubic-bezier(.6,1.5,.6,1) forwards}.hero-sub{font-size:1.18rem;color:#6366f1;font-weight:500;opacity:0;transform:translateY(30px);animation:slideUpFade 1.1s .5s cubic-bezier(.6,1.5,.6,1) forwards}section{background:#fff;border-radius:18px;box-shadow:0 2px 16px #6366f10a;margin-bottom:36px;padding:40px 32px;opacity:0;transform:translateY(40px);animation:sectionFadeUp 1.1s cubic-bezier(.6,1.5,.6,1) forwards;animation-delay:.7s}section h2{font-size:1.45rem;color:#3730a3;margin-bottom:1.2rem;font-weight:700}.about-cards,.service-cards{display:flex;gap:24px;margin-top:24px;flex-wrap:wrap}.about-card,.service-card{background:#f3f4f6;border-radius:12px;padding:20px 18px;flex:1 1 180px;min-width:160px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 1px 4px #6366f10a;font-size:1rem;gap:8px;transition:transform .25s cubic-bezier(.6,1.5,.6,1),box-shadow .25s;opacity:0;transform:translateY(30px);animation:cardFadeUp 1.1s cubic-bezier(.6,1.5,.6,1) forwards;animation-delay:1.1s}.about-card:hover,.service-card:hover{transform:translateY(-6px) scale(1.03);box-shadow:0 8px 32px #6366f11a}.about-card strong,.service-card strong{color:#6366f1;font-weight:700;margin-bottom:2px}.service-icon{font-size:2rem;margin-bottom:8px;animation:iconPop 1.2s cubic-bezier(.6,1.5,.6,1)}.gallery-images{display:flex;gap:20px;margin-top:18px;flex-wrap:wrap;justify-content:flex-start}.gallery-image{width:160px;height:110px;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#6366f1;font-size:1.05rem;font-weight:600;box-shadow:0 1px 6px #6366f114;border:1.5px solid #a5b4fc;opacity:0;transform:scale(.95) translateY(30px);animation:galleryFadeIn 1.1s cubic-bezier(.6,1.5,.6,1) forwards;animation-delay:1.3s;transition:transform .25s,box-shadow .25s}.gallery-image:hover{transform:scale(1.04) translateY(-4px);box-shadow:0 8px 32px #6366f11a}form{display:flex;flex-direction:column;gap:14px;margin-top:10px}input,textarea{padding:12px;border:1.5px solid #c7d2fe;border-radius:8px;font-size:1.05rem;background:#f1f5f9;transition:border .2s,box-shadow .2s;outline:none}input:focus,textarea:focus{border:1.5px solid #6366f1;box-shadow:0 0 0 2px #a5b4fc33}button[type=submit]{background:linear-gradient(90deg,#6366f1,#60a5fa);color:#fff;border:none;border-radius:8px;padding:12px 0;font-size:1.08rem;font-weight:700;cursor:pointer;transition:background .2s,transform .2s;box-shadow:0 2px 8px #6366f11a;opacity:0;animation:fadeIn 1s 1.5s forwards}button[type=submit]:hover{background:linear-gradient(90deg,#4338ca,#2563eb);transform:translateY(-2px) scale(1.03)}.footer{text-align:center;color:#a5b4fc;margin-top:40px;font-size:1.05rem;background:none;box-shadow:none;font-weight:600;letter-spacing:.5px;padding:32px 0 16px;opacity:0;animation:fadeIn 1s 1.7s forwards}@keyframes fadeIn{to{opacity:1}}@keyframes slideUpFade{to{opacity:1;transform:translateY(0)}}@keyframes sectionFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes cardFadeUp{to{opacity:1;transform:translateY(0)}}@keyframes galleryFadeIn{to{opacity:1;transform:scale(1) translateY(0)}}@keyframes iconPop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}@media (max-width: 900px){.about-cards,.service-cards,.gallery-images{flex-direction:column;gap:16px}.container{padding:16px 4px}section{padding:24px 8px}.hero{padding:48px 0 24px}.gallery-image{width:100%;min-width:0;height:80px;font-size:.95rem}}
