@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@300;400;500;600;700&display=swap');
:root{--ink:#232821;--olive:#52614a;--gold:#a08a69;--paper:#f7f6f2;--line:#e5e5dd;--muted:#777b73}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans','Noto Sans KR','Malgun Gothic',sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}.container{width:min(1260px,calc(100% - 72px));margin:auto}.eyebrow{font-size:11px;letter-spacing:.25em;font-weight:700;color:var(--gold)}.topline{background:#263127;color:#e7e8df;font-size:11px;letter-spacing:.08em}.topline .container{height:32px;display:flex;align-items:center;justify-content:space-between}.header{background:#fff;position:sticky;top:0;z-index:100;border-bottom:1px solid #ecece8}.header .container{min-height:88px;display:flex;align-items:center;gap:25px}.brand{display:flex;align-items:center;gap:13px;margin-right:auto;flex-shrink:0}.brandmark{height:48px;width:48px;display:grid;place-items:center;background:#273529;color:#fff;font-weight:700;font-size:20px;letter-spacing:-.08em;position:relative}.brandmark:after{content:'';position:absolute;inset:5px;border:1px solid #ffffff55}.brandtext b{display:block;font-size:18px;letter-spacing:-.05em}.brandtext small{font-size:9px;letter-spacing:.22em;color:#92988d}.nav{display:flex;align-items:center;gap:27px}.nav a{font-size:13px;font-weight:600;white-space:nowrap;transition:color .2s}.nav a:hover,.nav a.active{color:#a58a63}.header-cta{background:#354333;color:#fff;padding:13px 18px;font-size:12px;white-space:nowrap}.menu-toggle{display:none;border:1px solid #ddd;background:#fff;padding:9px 12px}.hero{height:min(770px,calc(100vh - 120px));min-height:590px;position:relative;overflow:hidden;background:#1b241c}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}.hero-slide.active{opacity:1}.hero-slide img{height:100%;object-position:center 52%;filter:brightness(.58)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#10191075 0%,transparent 70%);pointer-events:none}.hero-copy{position:relative;z-index:2;color:#fff;padding-top:clamp(125px,15vw,195px)}.hero-copy .eyebrow{color:#e2d5bb}.hero h1{font-size:clamp(40px,5vw,73px);letter-spacing:-.065em;line-height:1.3;font-weight:500;margin:22px 0 24px}.hero p{font-size:17px;line-height:2;color:#f2f2ed}.btn{display:inline-flex;align-items:center;justify-content:center;gap:32px;background:#394937;color:#fff;padding:17px 26px;font-size:13px;font-weight:600;border:1px solid #394937;transition:.2s}.btn:hover{background:#253223}.btn.light{background:#fff;color:#263127;border-color:#fff}.btn.outline{background:transparent;color:#263127;border-color:#aab1a6}.btn.outline:hover{background:#eef0e9}.hero .btn{margin-top:26px}.hero-dots{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:10px}.hero-dots button{border:0;width:44px;height:3px;background:#ffffff70;padding:0}.hero-dots button.active{background:#fff}.hero-side{position:absolute;z-index:3;right:4%;bottom:35px;color:#fff;font-size:11px;letter-spacing:.16em}.section{padding:110px 0}.section.soft{background:var(--paper)}.section-title{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:42px}.section-title h2,.copy h2{font-size:clamp(32px,3.6vw,49px);font-weight:500;letter-spacing:-.065em;line-height:1.4;margin:15px 0 0}.desc{color:#737a71;font-size:15px;line-height:2.05}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:85px;align-items:center}.two-col img{height:490px}.copy .desc{margin:25px 0 30px}.mini-stat{display:flex;gap:30px;border-top:1px solid var(--line);padding-top:23px;margin-top:27px;color:#666;font-size:12px}.mini-stat strong{display:block;color:#374331;font-size:17px;margin-bottom:4px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-card{position:relative;height:430px;overflow:hidden;background:#ddd}.service-card img{height:100%;transition:transform .5s;filter:brightness(.76)}.service-card:hover img{transform:scale(1.045)}.service-card .overlay{position:absolute;inset:0;background:linear-gradient(transparent 40%,#0b140bbf);display:flex;flex-direction:column;justify-content:end;padding:38px;color:#fff}.service-card small{font-size:11px;letter-spacing:.2em;color:#e7d8c0}.service-card h3{font-size:30px;font-weight:500;margin:9px 0}.service-card p{font-size:13px;color:#eceee9;margin:0}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.portfolio-card{display:block}.portfolio-card .photo{overflow:hidden;background:#e8e9e2}.portfolio-card img{height:280px;transition:transform .4s}.portfolio-card:hover img{transform:scale(1.04)}.portfolio-card .meta{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.portfolio-card .meta b{font-size:15px;font-weight:500}.portfolio-card .meta span{font-size:12px;color:#90958c}.band{background:#283729;color:#fff;padding:72px 0}.band .container{display:flex;align-items:center;justify-content:space-between;gap:35px}.band h2{font-size:34px;font-weight:500;letter-spacing:-.05em;margin:12px 0}.band p{color:#c7cfc5;font-size:14px}.pagehero{background:#e9ebe4;position:relative;min-height:340px;display:flex;align-items:center;overflow:hidden}.pagehero>img{position:absolute;inset:0;height:100%;filter:brightness(.43)}.pagehero .container{position:relative;color:#fff;padding:75px 0}.pagehero .eyebrow{color:#e4d8be}.pagehero h1{font-size:clamp(36px,4.2vw,58px);font-weight:500;letter-spacing:-.065em;margin:15px 0}.pagehero p{font-size:14px;line-height:1.9;color:#efefec}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.feature{padding:34px 27px;border:1px solid var(--line);background:#fff}.feature span{font-size:12px;color:var(--gold);font-weight:700}.feature h3{font-size:21px;font-weight:500;margin:16px 0}.feature p{color:#73796f;font-size:13px;line-height:1.9}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gallery a{display:block}.gallery img{height:245px;transition:filter .2s}.gallery a:hover img{filter:brightness(.8)}.gallery .cap{padding:12px 2px;display:flex;justify-content:space-between;font-size:13px;color:#5b6259}.detail-photo{max-height:750px;object-fit:contain;background:#eff0ec}.detail-controls{display:flex;justify-content:space-between;gap:12px;margin-top:25px}.info-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px}.info-block{border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:115px 1fr;gap:12px;font-size:14px}.info-block span{color:#8c9389}.info-block strong{font-weight:500;line-height:1.8}.map-panel{min-height:410px;background:#edf0e9;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;border:1px solid var(--line)}.map-panel .map-icon{font-size:38px;color:#60735c}.map-panel p{font-size:13px;color:#737b70;line-height:1.9}.contact-panel{padding:45px;background:#f7f7f3;border:1px solid var(--line)}.contact-panel h2{font-size:32px;letter-spacing:-.05em;font-weight:500;margin:10px 0}.contact-panel .btn{width:100%;margin-top:12px}.contact-panel .note{font-size:12px;color:#81877d;line-height:1.8;margin-top:18px}.foot{background:#202b22;color:#d4dbd0;padding:65px 0 30px}.foot-grid{display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:45px}.foot .brandtext b{color:#fff}.foot h4{font-size:12px;color:#fff;letter-spacing:.1em;margin:0 0 20px}.foot p,.foot a{font-size:12px;line-height:2.1;color:#b8c1b6}.foot-links{display:flex;gap:15px;flex-wrap:wrap}.copyright{border-top:1px solid #ffffff25;margin-top:40px;padding-top:20px;color:#8f9b90;font-size:11px}.sticky-call{display:none}.sr-only{position:absolute;left:-9999px}.notice{background:#f2f3ec;padding:22px 26px;color:#6e756a;font-size:13px;line-height:1.9;margin:20px 0}.small-links{display:flex;gap:12px;flex-wrap:wrap}.small-links a{border:1px solid #c9cfc5;padding:11px 17px;font-size:12px}.list-images{display:grid;grid-template-columns:1fr 1fr;gap:20px}.list-images img{height:330px}
@media(max-width:1100px){.nav{gap:15px}.nav a{font-size:12px}.header-cta{display:none}.two-col{gap:45px}.service-card{height:350px}}
@media(max-width:880px){.topline{display:none}.header .container{min-height:72px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:18px 30px 25px;box-shadow:0 20px 30px #00000016;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.hero{height:670px;min-height:570px}.hero-copy{padding-top:150px}.two-col,.info-layout{grid-template-columns:1fr}.two-col img{height:420px}.portfolio-grid,.gallery{grid-template-columns:repeat(2,1fr)}.section{padding:75px 0}.foot-grid{grid-template-columns:1fr 1fr}.band .container{align-items:start;flex-direction:column}}
@media(max-width:600px){.container{width:calc(100% - 36px)}.brandmark{height:41px;width:41px;font-size:17px}.brandtext b{font-size:15px}.brandtext small{font-size:8px}.hero{height:620px;min-height:570px}.hero-copy{padding-top:130px}.hero h1{font-size:38px}.hero p{font-size:14px}.hero-side{display:none}.hero-slide img{object-position:center}.section{padding:62px 0}.section-title{display:block}.section-title .btn{margin-top:20px}.section-title h2,.copy h2{font-size:32px}.two-col img{height:290px}.service-grid,.portfolio-grid,.gallery,.feature-list,.list-images{grid-template-columns:1fr}.service-card{height:340px}.portfolio-card img,.gallery img{height:265px}.band h2{font-size:27px}.foot-grid{grid-template-columns:1fr;gap:22px}.foot{padding-bottom:85px}.sticky-call{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:120;background:#fff;box-shadow:0 -3px 15px #0002}.sticky-call a{width:50%;padding:14px 8px;text-align:center;font-size:13px;font-weight:600}.sticky-call a:first-child{background:#354333;color:#fff}.sticky-call a:last-child{background:#e9ece5;color:#263127}.pagehero{min-height:280px}.pagehero .container{padding:45px 0}.info-block{grid-template-columns:95px 1fr}.contact-panel{padding:28px}.detail-controls{flex-wrap:wrap}}
