:root {
  --navy:#12243d; --night:#0c1b2f; --navy-2:#203857; --ink:#19283b; --mute:#69778a; --gold:#bc9e72;
  --line:#e2e7ed; --wash:#f4f6f8; --paper:#fff; --max:1180px;
}
*, *::before,*::after {box-sizing:border-box}
html { scroll-behavior:smooth;scroll-padding-top:88px }
body {margin:0;background:var(--paper);color:var(--ink);font-family:Inter, -apple-system, BlinkMacSystemFont, 'Noto Sans KR','Noto Sans SC','Malgun Gothic','Microsoft YaHei',Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.65}
body.nav-open {overflow:hidden}
a {color:inherit;text-decoration:none} button {font:inherit} img {display:block;max-width:100%}
a:focus-visible,button:focus-visible {outline:3px solid var(--gold);outline-offset:4px}
::selection{background:#bca070;color:#0d2037}
.container{width:min(var(--max),calc(100% - 80px));margin-inline:auto}
.site-header{height:88px;background:rgba(255,255,255,.98);border-bottom:1px solid #e9edf1;display:flex;align-items:center;position:relative;z-index:100}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:flex;align-items:center;gap:12px;flex-shrink:0}
.monogram{width:48px;height:48px;background:var(--navy);color:#f6f8fa;display:grid;place-items:center;font-weight:700;letter-spacing:-.13em;padding-right:4px;font-size:21px;font-family:Georgia,serif;position:relative}
.monogram::after{content:"";position:absolute;right:0;bottom:0;width:12px;height:2px;background:var(--gold)}
.wordmark{display:flex;flex-direction:column;line-height:1.12;gap:5px}
.wordmark strong{font-size:14px;letter-spacing:.13em;font-weight:750}
.wordmark small{font-size:9px;letter-spacing:.18em;color:#8893a0;font-weight:650}
.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:auto}
.desktop-nav a{font-size:12px;letter-spacing:.04em;font-weight:700;color:#526073;transition:color .2s}
.desktop-nav a:hover,.desktop-nav a[aria-current='page']{color:var(--navy)}
.lang-group{display:flex;align-items:center;border-left:1px solid var(--line);padding-left:22px;gap:10px;font-size:11px;letter-spacing:.04em;font-weight:700;color:#98a3b2}
.lang-group a{padding:6px 0;transition:color .2s}
.lang-group a.active,.lang-group a:hover{color:var(--navy)}
.lang-group .sep{font-weight:400;color:#cad1d9}
.menu-button{display:none;width:43px;height:43px;border:1px solid var(--line);background:#fff;align-items:center;justify-content:center;color:var(--navy);cursor:pointer}
.menu-button svg{width:22px;height:22px}
.mobile-panel{display:none}
.hero{background:var(--night);color:#fff;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 78% 18%,rgba(72,103,141,.25),transparent 44%),linear-gradient(135deg,rgba(21,53,82,.7),transparent 65%);pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(90deg,transparent 99%,#fff 99%),linear-gradient(transparent 99%,#fff 99%);background-size:84px 84px;mask-image:linear-gradient(90deg,transparent 18%,#000 100%);pointer-events:none}
.hero .container{position:relative;z-index:1}
.hero-grid{min-height:660px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:15px}
.hero-copy{padding:85px 0 102px;position:relative;z-index:2}
.eyebrow{display:flex;align-items:center;gap:13px;text-transform:uppercase;letter-spacing:.24em;font-size:11px;font-weight:800}
.eyebrow::before{content:"";display:block;width:25px;height:1px;background:currentColor}
.eyebrow.gold{color:#d5b785}.eyebrow.dark{color:#94764f}
.hero h1{font-size:clamp(36px,4.25vw,65px);line-height:1.22;letter-spacing:-.065em;font-weight:660;margin:34px 0 25px;max-width:680px;word-break:keep-all}
.hero h1 em{display:block;font-style:normal;color:#e1c59c}
.hero p{max-width:520px;font-size:15px;line-height:1.95;color:#c4d0df;word-break:keep-all;margin:0 0 38px}
.hero-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;padding:15px 23px;min-height:50px;background:#c8ac80;color:var(--night);font-size:12px;font-weight:800;letter-spacing:.02em;transition:transform .2s,background .2s;white-space:nowrap}
.btn:hover{background:#e1c59e;transform:translateY(-2px)}
.btn svg,.text-link svg{height:17px;width:17px;flex-shrink:0}
.text-link{display:inline-flex;align-items:center;gap:12px;color:#f1f5f9;font-size:12px;font-weight:750;transition:gap .2s}
.text-link:hover{gap:18px}
.hero-art-wrap{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center;min-width:0}
.hero-art{width:100%;max-width:595px;min-width:530px;position:relative;filter:drop-shadow(0 30px 30px rgba(0,0,0,.15))}
.hero-sideword{position:absolute;right:-25px;top:50%;transform:rotate(90deg) translateX(50%);transform-origin:right center;font-size:10px;letter-spacing:.35em;color:rgba(237,245,250,.3);white-space:nowrap}
.hero-bottom{border-top:1px solid rgba(255,255,255,.1);position:relative;z-index:1}
.hero-bottom .container{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:95px}
.hero-fact{display:flex;align-items:center;gap:15px;color:#c2cad7;font-size:12px;font-weight:620;letter-spacing:.02em}
.hero-fact b{color:#bca279;font:400 13px Georgia,serif}
.hero-fact + .hero-fact{border-left:1px solid rgba(255,255,255,.13);padding-left:50px}
.section{padding:118px 0}
.section-head{max-width:760px;margin-bottom:50px}
.section-head h2,.about-title,.contact h2{font-size:clamp(31px,3.3vw,48px);font-weight:650;line-height:1.29;letter-spacing:-.045em;margin:23px 0 18px;word-break:keep-all}
.section-head p{color:#67768a;font-size:15px;line-height:1.95;max-width:660px;margin:0;word-break:keep-all}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.about-title{margin:24px 0 23px}
.about-copy{font-size:15px;line-height:2;color:#657386;max-width:545px;word-break:keep-all}
.about-copy p{margin:0 0 16px}
.about-seal{position:relative;background:#f1f4f7;min-height:430px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #e7ebef}
.about-seal::before{content:"";position:absolute;width:610px;height:610px;border:1px solid #dce2e9;transform:rotate(35deg);left:35%;top:-45%}
.about-seal::after{content:"";position:absolute;width:420px;height:420px;border:1px solid #dce2e9;transform:rotate(35deg);left:48%;top:-18%}
.about-seal .pk-bg{font-family:Georgia,serif;font-size:clamp(115px,12vw,205px);line-height:1;color:#192f4b;letter-spacing:-.18em;margin-right:37px;font-weight:400;z-index:1}
.about-seal .caption{position:absolute;bottom:28px;left:32px;z-index:2;font-size:10px;letter-spacing:.23em;color:#697a90;text-transform:uppercase}
.value-row{display:flex;gap:25px;flex-wrap:wrap;margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.value-row span{font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.13em;color:#4e6279}
.value-row span::before{content:"/";color:var(--gold);margin-right:8px}
.business-section{background:#f5f7f9}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card{background:white;border:1px solid #e9edf1;padding:37px 30px 35px;min-height:315px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(24,46,73,.07)}
.service-no{font-family:Georgia,serif;font-size:28px;color:#b9a181;letter-spacing:-.03em}
.service-card .icon-wrap{margin:22px 0 15px;width:39px;height:39px;color:#274561}
.service-card .icon-wrap svg{width:39px;height:39px;stroke:currentColor;stroke-width:1.35;fill:none;stroke-linecap:round;stroke-linejoin:round}
.service-card h3{font-size:18px;margin:8px 0 10px;line-height:1.5;letter-spacing:-.03em}
.service-card p{font-size:13px;line-height:1.85;color:#6f7d8d;margin:0;word-break:keep-all}
.process{margin-top:45px;border-top:1px solid #dce2e8;padding-top:29px;display:flex;gap:20px;align-items:flex-start;justify-content:space-between}
.process-label{color:#8b7657;font-size:12px;letter-spacing:.13em;font-weight:800;flex-shrink:0;text-transform:uppercase}
.process-steps{display:flex;gap:13px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.process-steps span{color:#526478;font-size:12px;font-weight:650}
.process-steps i{font-style:normal;color:#b69a74;font-size:16px}
.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.product-card{min-width:0}
.product-visual{aspect-ratio:1/.98;background:#f0f2f4;overflow:hidden;position:relative;border:1px solid #eaedf0}
.product-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.product-card:hover .product-visual img{transform:scale(1.05)}
.product-no{position:absolute;top:18px;left:20px;z-index:2;letter-spacing:.18em;color:#667688;font-size:10px;font-weight:800}
.product-line{display:flex;align-items:center;justify-content:space-between;padding:21px 1px 5px}
.product-line h3{font-size:19px;font-weight:660;margin:0;letter-spacing:-.035em}
.product-line span{font-size:21px;font-weight:300;color:#b5a081}
.product-card p{font-size:13px;color:#8190a0;margin:0}
.products-note{font-size:12px;color:#8390a0;margin-top:34px;letter-spacing:.01em}
.contact{background:var(--night);color:#fff;overflow:hidden;position:relative;padding:112px 0 90px}
.contact::before{content:"";position:absolute;width:740px;height:740px;border-radius:50%;border:1px solid rgba(255,255,255,.06);right:-210px;top:-230px;box-shadow:0 0 0 100px rgba(255,255,255,.012),0 0 0 210px rgba(255,255,255,.012)}
.contact-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:100px}
.contact h2{font-size:clamp(36px,4vw,56px);margin:25px 0 24px}
.contact-copy{font-size:14px;color:#b5c1d0;line-height:1.9;max-width:490px;margin:0 0 37px;word-break:keep-all}
.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:32px 26px;border-top:1px solid rgba(255,255,255,.15);padding-top:29px;margin-top:14px}
.contact-item label{display:block;color:#b5a283;font-size:10px;text-transform:uppercase;letter-spacing:.2em;font-weight:800;margin-bottom:10px}
.contact-item a,.contact-item p{font-size:13px;color:#edf2f8;line-height:1.8;margin:0;word-break:break-word}
.contact-item a:hover{color:#e4c598}
.contact-item.wide{grid-column:1/-1}
.map-link{display:inline-flex;align-items:center;gap:9px;margin-top:10px;color:#cbb08a!important;font-size:11px!important;font-weight:700}
.footer{background:#0a182a;color:#8798ad;border-top:1px solid rgba(255,255,255,.08);padding:24px 0}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
.footer-brand{display:flex;flex-direction:column;gap:3px}
.footer-brand strong{color:#f2f4f7;font-size:12px;letter-spacing:.16em}
.footer-brand span{font-size:11px}
.footer-copy{font-size:11px;text-align:right;line-height:1.65}
@media(max-width:1100px){.desktop-nav{gap:18px}.hero-art{min-width:440px}.hero h1{font-size:48px}.hero-fact+.hero-fact{padding-left:20px}.contact-inner{gap:60px}}
@media(max-width:850px){.container{width:min(100% - 42px,640px)}.site-header{height:72px}.desktop-nav{display:none}.header-lang{margin-left:auto}.menu-button{display:flex}.mobile-panel{display:none;position:absolute;top:72px;left:0;right:0;background:white;box-shadow:0 16px 30px rgba(0,0,0,.12);padding:18px 21px 25px;flex-direction:column;gap:2px}.mobile-panel.show{display:flex}.mobile-panel a{padding:13px 10px;border-bottom:1px solid #e8edf1;font-size:14px;font-weight:650}.mobile-panel .mobile-langs{display:flex;gap:25px;margin-top:10px}.mobile-panel .mobile-langs a{border:0;padding:8px 0;font-size:12px}.hero-grid{display:flex;flex-direction:column;gap:0;min-height:0}.hero-copy{padding:80px 0 0;align-self:stretch}.hero h1{font-size:clamp(36px,7vw,54px);max-width:650px}.hero-art-wrap{height:370px;align-self:stretch}.hero-art{max-width:530px;min-width:0;width:min(100%,550px)}.hero-sideword{display:none}.hero-bottom .container{min-height:80px}.hero-fact{font-size:11px}.hero-fact+.hero-fact{padding-left:15px}.section{padding:80px 0}.about-grid{grid-template-columns:1fr;gap:38px}.about-seal{min-height:300px}.service-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:0;padding:26px}.service-card .icon-wrap{margin:5px 0}.process{flex-direction:column;gap:16px}.process-steps{justify-content:flex-start}.products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.product-line h3{font-size:15px}.contact{padding:80px 0 70px}.contact-inner{grid-template-columns:1fr;gap:30px}.contact-details{margin-top:8px}}
@media(max-width:560px){.container{width:calc(100% - 36px)}.site-header{height:67px}.monogram{width:43px;height:43px}.wordmark strong{font-size:12px}.wordmark small{font-size:8px}.header-lang{gap:7px;padding-left:10px;font-size:10px}.mobile-panel{top:67px}.hero-copy{padding-top:67px}.eyebrow{font-size:9px;letter-spacing:.18em}.hero h1{font-size:clamp(34px,9.2vw,47px);margin:25px 0 20px}.hero p{font-size:13px;line-height:1.85}.hero-actions{gap:17px}.btn{font-size:11px;padding:12px 16px;min-height:46px}.text-link{font-size:11px}.hero-art-wrap{height:290px}.hero-bottom .container{gap:9px;min-height:86px}.hero-fact{display:block;font-size:9px;line-height:1.6;flex:1}.hero-fact b{display:block}.hero-fact+.hero-fact{padding-left:10px}.section-head{margin-bottom:32px}.section-head h2,.about-title{font-size:31px}.section-head p,.about-copy{font-size:13px}.about-seal{min-height:255px}.about-seal .pk-bg{font-size:132px}.service-card{padding:23px}.service-card h3{font-size:17px}.products-grid{grid-template-columns:1fr;gap:29px}.product-visual{aspect-ratio:1.2}.product-line{padding:14px 1px 5px}.product-line h3{font-size:17px}.products-note{line-height:1.8}.contact-details{grid-template-columns:1fr;gap:22px}.contact-item.wide{grid-column:auto}.footer-inner{align-items:flex-start;flex-direction:column;gap:18px}.footer-copy{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
