*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Noto Sans KR",sans-serif;color:#0b1b32;background:#fafafa url("assets/paper.jpg") center/cover}a{color:inherit;text-decoration:none}button{font:inherit}.header{height:88px;position:fixed;z-index:50;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5.3vw,96px);color:#fff;transition:background .25s,color .25s,box-shadow .25s;--logo-cut:#08172b}.header.is-light,.header.menu-open{color:#101e34;background:rgba(255,255,255,.96);box-shadow:0 2px 18px #09213a0d;--logo-cut:#fff}.logo{display:flex;align-items:center;gap:15px;font-weight:800;letter-spacing:-.045em;font-size:clamp(16px,1.7vw,26px);white-space:nowrap}.logo svg{width:37px;height:37px;flex-shrink:0}.nav{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:clamp(20px,3.2vw,54px)}.nav a{font-size:14px;letter-spacing:.02em;position:relative;padding:12px 0;white-space:nowrap}.nav a.active{font-weight:800}.nav a.active:after{content:"";position:absolute;bottom:1px;left:50%;height:6px;width:6px;border-radius:50%;background:#2482d5;transform:translateX(-50%)}.hero .nav a.active:after{background:#fff}.menu-btn{border:0;background:none;color:inherit;width:40px;height:38px;display:grid;place-content:center;gap:5px;cursor:pointer}.menu-btn span{height:2px;width:29px;background:currentColor;display:block}.mobile-menu{position:absolute;top:88px;left:0;right:0;background:#fff;color:#09172c;padding:22px 8%;box-shadow:0 15px 25px #0a1b3226;display:flex;flex-direction:column;gap:17px}.mobile-menu[hidden]{display:none}.hero{min-height:720px;height:100svh;background:#071029 url("assets/hero.jpg") center/cover no-repeat;position:relative;display:flex;align-items:center;justify-content:center;color:white;overflow:hidden}.hero-center{text-align:center;padding:0 20px;transform:translateY(-2%)}.hero h1{font-size:clamp(49px,7vw,116px);line-height:1.1;letter-spacing:-.047em;margin:0;font-weight:900;text-shadow:0 6px 5px #06122b78,0 14px 32px #020a2070}.hero-center p{font-size:clamp(15px,1.6vw,24px);letter-spacing:.13em;margin:22px 0 0;text-shadow:0 2px 12px #021027aa;font-weight:400}.scroll-indicator{position:absolute;bottom:6.8%;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:13px;font-size:11px;letter-spacing:.33em}.mouse{width:24px;height:41px;border:1.5px solid white;border-radius:15px;position:relative}.mouse:after{content:"";width:3px;height:6px;background:#fff;border-radius:3px;position:absolute;left:9px;top:8px;animation:scroll 1.8s infinite}@keyframes scroll{to{top:18px;opacity:0}}.section{min-height:900px;background:#fdfdfc url("assets/paper.jpg") center/cover;scroll-margin-top:0}.section-container{max-width:1440px;margin:auto;padding:145px 65px 110px;text-align:center}.eyebrow{letter-spacing:.3em;font-size:14px;color:#536076;margin:0 0 34px}.about-title,.portfolio h2,.contact h2{font-size:clamp(38px,5vw,74px);letter-spacing:-.065em;line-height:1.35;color:#06162b;margin:0;font-weight:800}.about-intro,.section-description{color:#596475;font-size:clamp(16px,1.5vw,23px);line-height:1.85;margin:36px auto 0;letter-spacing:-.035em}.services{display:grid;grid-template-columns:repeat(3,1fr);margin:90px auto 0}.service{min-width:0;padding:0 24px;border-right:1px solid #dde2e8}.service:last-child{border:0}.service-icon{height:76px;width:76px;display:grid;place-items:center;margin:0 auto 18px;border:1px solid #e4e8ed;background:#f6f7f9;border-radius:5px;color:#102a4b;transition:color .25s,border-color .25s,background .25s}.service-icon svg{height:43px;width:43px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service h3{font-size:clamp(17px,1.45vw,25px);letter-spacing:-.05em;margin:0;font-weight:750}.service-line{display:block;width:28px;height:2px;background:#b9c7d5;margin:20px auto 25px;transition:width .25s,background .25s}.service:hover .service-icon{color:#287cb7;background:#ecf5fc;border-color:#c9dfed}.service:hover .service-line{width:61px;background:#287cb7}.service p{color:#636e7d;font-size:clamp(13px,1.1vw,17px);line-height:1.9;letter-spacing:-.05em;margin:0}.portfolio .section-container{max-width:1600px}.portfolio h2{font-size:clamp(36px,4.3vw,63px)}.portfolio .section-description{margin-top:12px}.carousel{display:flex;gap:15px;align-items:center;margin-top:55px}.arrow{width:49px;height:49px;flex:none;border:1px solid #cbd3db;border-radius:50%;background:#fff8;color:#153055;display:grid;place-items:center;cursor:pointer;transition:background .2s}.arrow:hover{background:#e8f2fc}.arrow svg{height:23px;width:23px;fill:none;stroke:currentColor;stroke-width:1.8}.carousel-viewport{width:100%;overflow:hidden;min-width:0}.carousel-track{display:flex;gap:clamp(14px,2vw,32px);transition:transform .65s cubic-bezier(.22,.68,0,1)}.portfolio-item{flex:0 0 calc((100% - 2 * clamp(14px,2vw,32px))/3);min-width:0;text-align:left}.portfolio-item img{display:block;width:100%;aspect-ratio:0.87;object-fit:cover;border-radius:4px;box-shadow:0 15px 23px #071e3415}.item-year{display:block;font-size:15px;color:#287cb7;margin-top:22px}.portfolio-item h3{font-size:clamp(17px,1.3vw,24px);line-height:1.45;margin:7px 0;letter-spacing:-.055em}.portfolio-item p{font-size:clamp(12px,1vw,15px);color:#697588;line-height:1.6;margin:0}.carousel-bottom{display:flex;align-items:center;justify-content:space-between;margin:36px 60px 0;gap:20px}.counter,.poster-note{font-size:12px;color:#7a8797}.dots{display:flex;gap:9px}.dot{border:0;border-radius:50%;width:9px;height:9px;padding:0;background:#c6cbd1;cursor:pointer}.dot.active{background:#287cb7}.contact .section-container{max-width:1320px;padding-top:125px}.contact h2{font-size:clamp(40px,4.8vw,70px)}.contact .section-description{margin-top:25px}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:55px}.contact-card{border:1px solid #dfe5eb;background:#fff9;min-height:143px;padding:24px 20px;display:flex;gap:18px;align-items:center;text-align:left;border-radius:7px;transition:border-color .2s,transform .2s}.contact-card:hover{transform:translateY(-3px);border-color:#287cb7}.contact-icon{display:grid;place-items:center;flex:none;width:60px;height:60px;border-radius:50%;background:#e8f1fa;color:#287cb7}.contact-icon svg,.direction-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.contact-card small{color:#68778b;display:block;font-size:13px;margin-bottom:9px}.contact-card strong{font-size:clamp(12px,1.1vw,17px);line-height:1.5;word-break:break-word;letter-spacing:-.045em}.directions{border-top:1px solid #cad4de;margin-top:60px;padding-top:27px}.directions h3{font-size:27px;letter-spacing:-.05em;margin:0 0 8px}.directions-sub{color:#6d7a8b;font-size:15px}.directions-details{display:flex;justify-content:center;gap:60px;margin:35px 0}.direction-item{display:flex;align-items:center;gap:12px;text-align:left}.direction-icon{color:#287cb7}.direction-icon svg{width:30px;height:30px}.direction-item strong{font-size:16px}.direction-item p{font-size:14px;color:#647184;margin:5px 0 0}.map-link{display:inline-flex;align-items:center;gap:15px;border:1px solid #287cb7;background:#fff;color:#287cb7;padding:13px 24px;font-size:14px;border-radius:4px;transition:background .2s}.map-link:hover{background:#ebf5ff}.footer{background:#0c1b32;color:#fff;min-height:94px;padding:25px 6%;display:flex;justify-content:space-between;align-items:center;gap:12px}.footer span{font-weight:800}.footer small{opacity:.6}.footer a{font-size:12px;letter-spacing:.06em}@media(max-width:1000px){.nav{gap:22px}.nav a{font-size:12px}.logo{font-size:19px}.section-container{padding-left:30px;padding-right:30px}.carousel{gap:7px}.arrow{width:35px;height:35px}.contact-card{padding:20px 12px;gap:9px}.contact-icon{width:43px;height:43px}.contact-icon svg{width:24px;height:24px}}@media(max-width:700px){.header{height:70px;padding:0 20px}.logo{font-size:18px}.logo svg{width:30px;height:30px}.nav{display:none}.mobile-menu{top:70px}.hero{min-height:590px}.hero h1{font-size:clamp(39px,10vw,70px);letter-spacing:-.07em}.hero-center p{letter-spacing:.05em}.section{min-height:auto}.section-container{padding:105px 20px 90px}.eyebrow{font-size:11px;margin-bottom:28px}.about-title,.contact h2{font-size:clamp(35px,8vw,52px)}.about-intro,.section-description{font-size:15px;margin-top:25px}.services{grid-template-columns:1fr;gap:42px;margin-top:75px}.service{border-right:0;border-bottom:1px solid #dee4ea;padding:0 0 36px}.service:last-child{border:0}.service p{font-size:14px}.portfolio-item{flex-basis:100%}.portfolio .section-container{padding-left:12px;padding-right:12px}.carousel{gap:5px}.carousel-bottom{margin:28px 40px 0}.poster-note{display:none}.portfolio-item img{aspect-ratio:.82}.contact-cards{grid-template-columns:1fr;margin-top:35px}.contact-card{min-height:100px;padding:16px 20px}.contact-card strong{font-size:16px}.directions-details{flex-direction:column;align-items:flex-start;gap:25px;margin-left:12px}.directions-sub{font-size:13px}.footer{flex-wrap:wrap}.footer small{order:3;width:100%}}@media(min-width:701px) and (max-width:950px){.portfolio-item{flex-basis:calc((100% - clamp(14px,2vw,32px))/2)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
