@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');:root{--navy:#0b2036;--blue:#1778d3;--ink:#17283b;--muted:#637286;--bg:#f4f7fb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Noto Sans KR',sans-serif;color:var(--ink);line-height:1.7}a{text-decoration:none;color:inherit}.container{max-width:1160px;margin:auto;padding:0 24px}header{background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 18px #071c3112}.nav{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:20px}.brand{font-weight:800;font-size:26px;letter-spacing:-1px;color:#0b2847}.brand span{color:var(--blue)}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#64768a;line-height:1.2}.links{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}.links a:hover{color:var(--blue)}.menu-btn{display:none;border:0;background:transparent;font-size:25px}.hero{min-height:620px;color:#fff;display:flex;align-items:center;position:relative;overflow:hidden;background:linear-gradient(105deg,#071a2fea,#0b2949d8 54%,#153b59a6),radial-gradient(ellipse at 78% 38%,#4a8bc0 0%,#12395e 35%,#071d35 75%)}.hero:after{content:'';position:absolute;inset:0;opacity:.22;background:repeating-linear-gradient(110deg,transparent 0 74px,#b6d5ee 75px 76px,transparent 77px 130px)}.hero .container{position:relative;z-index:1;width:100%}.eyebrow{color:#5fc3ff;font-size:13px;letter-spacing:2.5px;font-weight:800}.hero h1{font-size:clamp(36px,5vw,65px);line-height:1.3;letter-spacing:-2px;margin:16px 0 22px;max-width:880px}.hero p{font-size:19px;color:#d3e2ee;max-width:720px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;padding:14px 24px;background:var(--blue);color:#fff;border-radius:4px;font-weight:700;align-items:center;justify-content:center;min-height:50px}.btn.outline{border:1px solid #ffffff85;background:transparent}.btn:hover{filter:brightness(1.1)}.section{padding:100px 0}.section.soft{background:var(--bg)}.section.dark{background:var(--navy);color:#fff}.kicker{color:var(--blue);font-size:13px;font-weight:800;letter-spacing:2px}.section.dark .kicker{color:#79c7ff}h2{font-size:clamp(29px,3vw,43px);line-height:1.35;letter-spacing:-1.3px;margin:12px 0 20px}h3{font-size:23px;line-height:1.4;margin:12px 0}.lead{color:var(--muted);font-size:17px;max-width:760px}.dark .lead{color:#c6d5e5}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.card{background:#fff;border:1px solid #e4ebf1;box-shadow:0 8px 32px #0a26430b;border-radius:8px;overflow:hidden}.card .body{padding:28px}.card p{color:var(--muted);font-size:15px}.visual{height:210px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;color:#cceaff;font-size:80px;background:linear-gradient(130deg,#0d365b,#217ab5)}.visual:before{content:'';position:absolute;width:70%;height:140%;border:25px solid #ffffff16;transform:rotate(32deg);right:-25%}.visual.factory{background:linear-gradient(125deg,#153650,#4a738b)}.visual.staff{background:linear-gradient(125deg,#09243e,#3e6b98)}.visual.build{background:linear-gradient(125deg,#2b455d,#687c89)}.card a.more{font-weight:800;color:var(--blue);font-size:14px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.metric{padding:30px;background:#ffffff10;border:1px solid #ffffff2c;border-radius:7px}.metric strong{display:block;font-size:23px;margin-bottom:8px}.metric span{color:#c9d7e6;font-size:14px}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:42px}.step{padding:22px 18px;background:#fff;border-top:4px solid var(--blue);box-shadow:0 6px 22px #1234560b}.step b{color:var(--blue);font-size:14px}.step h3{font-size:17px}.step p{font-size:13px;color:var(--muted)}.cta{background:linear-gradient(120deg,#08233e,#175c94);color:#fff;padding:70px 0}.pagehero{padding:100px 0;background:linear-gradient(115deg,#0b2036,#185581);color:#fff}.pagehero h1{font-size:clamp(36px,4vw,55px);margin:12px 0}.pagehero p{color:#d5e3ef;font-size:18px}.detail{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.detail .visual{height:340px;border-radius:7px}.bullets{padding-left:20px;color:#475c70}.bullets li{margin:10px 0}.formbox{background:#fff;padding:34px;border:1px solid #dfe8f1;border-radius:9px;max-width:760px;margin-top:30px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:15px}.field label{font-size:13px;font-weight:700}.field input,.field select,.field textarea{font:inherit;border:1px solid #ccd7e3;border-radius:4px;padding:12px;width:100%;background:#fff}.field textarea{min-height:130px;resize:vertical}.notice{font-size:13px;color:#65758a;background:#edf3f9;padding:15px;border-radius:4px;margin:18px 0}.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#4a5d72;margin:16px 0}.consent input{margin-top:6px}footer{background:#081a2c;color:#bac9d8;padding:52px 0;font-size:13px}footer strong{font-size:23px;color:#fff}.footerlinks{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px}.floating{position:fixed;right:20px;bottom:20px;background:var(--blue);color:#fff;padding:13px 20px;border-radius:30px;font-weight:800;box-shadow:0 5px 20px #082d5a44;z-index:20}.placeholder{font-size:12px;color:#d5e2f1}.desktop-only{}@media(max-width:850px){.menu-btn{display:block}.links{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;flex-direction:column;padding:24px;align-items:stretch;box-shadow:0 12px 25px #0b223322}.links.open{display:flex}.hero{min-height:570px}.grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.detail{grid-template-columns:1fr}.section{padding:70px 0}}@media(max-width:580px){.grid,.metrics,.formgrid{grid-template-columns:1fr}.hero{min-height:550px}.hero p{font-size:16px}.hero h1{font-size:36px}.section{padding:58px 0}.steps{grid-template-columns:1fr 1fr}.formbox{padding:22px}.floating{bottom:12px;right:12px;font-size:13px}.nav{min-height:70px}.links{top:70px}}
/* Contact numbers */
.phone-contact-panel{max-width:1100px;margin:32px auto;padding:28px;border:1px solid #d9e3ed;border-radius:16px;background:#f4f8fc;color:#152d45}.phone-contact-panel h2{margin:0 0 10px}.phone-contact-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.phone-contact-links a{display:inline-block;padding:12px 18px;border-radius:9px;background:#123a61;color:#fff;text-decoration:none;font-weight:700}footer a[href^="tel:"]{color:inherit;text-decoration:underline;text-underline-offset:3px}@media(max-width:640px){.phone-contact-panel{margin:20px 14px;padding:20px}.phone-contact-links{flex-direction:column}}

/* AS WORKS approved visual redesign */
:root{--navy:#071e38;--blue:#0d457b;--orange:#ff6225;--bg:#f5f7fa}
body{letter-spacing:-.025em}header{border-top:6px solid #0b315b}.container{max-width:1320px}.nav{min-height:94px;gap:14px}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{display:block;width:245px;height:auto;max-width:100%}.links{gap:17px;font-size:13px}.header-phones{display:flex;flex-direction:column;white-space:nowrap;font-weight:800;font-size:16px;line-height:1.5;color:#10355f}.header-phones a:last-child{color:var(--orange);font-size:13px}.links a:last-child{background:var(--orange);color:#fff;padding:12px 16px;border-radius:5px}.links a:last-child:hover{color:#fff;background:#e34d18}
.hero{min-height:540px;background:linear-gradient(90deg,#071e38 0%,#0a2948 48%,#0b2d4e 100%)}.hero:after{display:none}.hero .container{padding-top:55px;padding-bottom:55px}.hero-photo{position:absolute;right:0;top:0;bottom:0;width:49%;background:linear-gradient(90deg,#0a2948 0%,transparent 28%),url('assets/hero-workers.jpg') center/cover no-repeat;opacity:.96;pointer-events:none}.hero h1{max-width:760px;font-size:clamp(33px,4.5vw,60px);letter-spacing:-2.6px}.hero h1 em{font-style:normal;color:#32b9f6}.hero p{max-width:620px}.hero .eyebrow{color:#8cddff}.btn{background:var(--orange);border-radius:7px}.btn.outline{background:transparent}.section{padding:75px 0}.grid{grid-template-columns:repeat(4,1fr);gap:16px}.card .body{padding:21px}.card h3{font-size:19px}.card .visual{height:210px;background:#e7eef4}.card .visual:before{display:none}.visual img{width:100%;height:100%;object-fit:cover;display:block}.card a.more{color:#0d457b}.section.dark{background:#0a2746}.floating{background:var(--orange)}.cta{background:linear-gradient(115deg,#082644,#164975)}.pagehero{background:linear-gradient(115deg,#082644,#164975)}footer{background:#071e38}footer p{line-height:1.9}
@media(max-width:1200px){.header-phones{display:none}.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.nav{min-height:78px}.links{top:78px}.hero-photo{width:75%;opacity:.3}.hero{min-height:540px}.hero .container{padding-top:70px;padding-bottom:70px}.hero h1{max-width:680px}}
@media(max-width:580px){.brand img{width:196px}.nav{min-height:70px}.links{top:70px}.grid{grid-template-columns:1fr}.hero-photo{width:100%;opacity:.23}.hero h1{font-size:35px;letter-spacing:-1.8px}.hero p{font-size:16px}.card .visual{height:220px}}

/* Motion enhancement: original AS WORKS brand and content retained */
.hero{isolation:isolate;background:#071e38;min-height:600px}.hero-stage{position:absolute;inset:0;z-index:-1;overflow:hidden}.hero-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,21,39,.95) 0%,rgba(5,21,39,.83) 38%,rgba(5,21,39,.42) 75%,rgba(5,21,39,.36) 100%);pointer-events:none}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.3s ease;pointer-events:none}.hero-slide.is-active{opacity:1}.hero-slide-image{position:absolute;inset:0;background-position:center 42%;background-size:cover;transform:scale(1.09)}.hero-slide.is-active .hero-slide-image{animation:hero-zoom 8s ease-out both}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s}.hero-video.is-ready{opacity:1}@keyframes hero-zoom{from{transform:scale(1.09)}to{transform:scale(1)}}.hero .container{padding-top:105px;padding-bottom:85px}.hero h1{max-width:800px;color:#fff;font-size:clamp(37px,4.7vw,64px);text-shadow:0 2px 16px #0005}.hero p{color:#e1eaf2}.hero .eyebrow{color:#ff8b56}.hero-controls{display:flex;align-items:center;gap:12px;margin-top:65px}.hero-dot,.hero-pause{border:1px solid #ffffff72;color:#fff;background:#081e37a6;cursor:pointer;font:inherit;border-radius:4px;padding:8px 13px}.hero-dot.is-active{background:var(--orange);border-color:var(--orange)}.hero-pause{margin-left:8px;font-size:12px}.hero-dot:focus-visible,.hero-pause:focus-visible{outline:3px solid #fff;outline-offset:3px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .75s ease}.reveal.is-visible{opacity:1;transform:none}.card{transition:box-shadow .3s ease,transform .3s ease}.card:hover{box-shadow:0 16px 35px #08233e22;transform:translateY(-5px)}.card img{transition:transform .6s ease}.card:hover img{transform:scale(1.05)}@media(max-width:850px){.hero{min-height:580px}.hero .container{padding-top:95px;padding-bottom:55px}.hero-stage:after{background:linear-gradient(90deg,#061b33ed,#061b33a8)}.hero-controls{margin-top:44px}}@media(max-width:580px){.hero{min-height:630px}.hero .container{padding-top:80px;padding-bottom:42px}.hero h1{font-size:clamp(32px,8vw,43px);letter-spacing:-1.5px}.hero-stage:after{background:linear-gradient(90deg,#061b33ef,#061b33b8)}.hero-slide-image{background-position:62% center}.hero-controls{gap:7px;flex-wrap:wrap}.hero-dot{padding:8px 11px}}@media(prefers-reduced-motion:reduce){.hero-slide,.hero-video,.reveal,.card,.card img{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.hero-slide-image{animation:none!important;transform:none!important}}

/* FIX 2026-10-20: stage must paint ABOVE the hero background */
.hero{isolation:isolate}
.hero-stage{z-index:0!important}
.hero .container{position:relative;z-index:2!important}
.hero-stage:after{z-index:2}
.hero-slide{z-index:0}
.hero-slide.is-active{z-index:1}

/* V3: sharp, split composition, rapid transitions */
.hero{background:#071e38!important;isolation:isolate;min-height:570px}
.hero-stage{position:absolute;inset:0 0 0 auto;width:50%;z-index:0!important;overflow:hidden;background:#123653}
.hero-stage:before{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(90deg,#071e38 0%,rgba(7,30,56,.55) 17%,transparent 47%);pointer-events:none}
.hero-stage:after{display:none!important}
.hero-slide{transition:opacity .42s ease!important}
.hero-slide-image{background-size:cover;background-position:center center;transform:none!important;animation:none!important;filter:none!important}
.hero-slide:nth-child(2) .hero-slide-image,.hero-slide:nth-child(3) .hero-slide-image{background-size:cover}
.hero .container{z-index:4!important}.hero h1{max-width:750px;text-shadow:0 2px 9px #071e3866}
.hero-controls{margin-top:38px}
@media(max-width:850px){.hero-stage{width:66%}.hero-stage:before{background:linear-gradient(90deg,#071e38 0%,#071e38aa 38%,#071e381a 100%)}}
@media(max-width:580px){.hero{min-height:590px}.hero-stage{width:100%;opacity:.65}.hero-stage:before{background:linear-gradient(90deg,#071e38ed,#071e3899),linear-gradient(0deg,#071e38 0%,transparent 65%)}.hero .container{padding-top:68px;padding-bottom:42px}.hero-controls{margin-top:35px}}


/* V4: separate photography from text; never stretch low resolution photos */
.hero{background:#071e38!important;min-height:540px}
.hero-stage{right:2.5%!important;left:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%);width:min(43%,615px)!important;height:min(380px,68%)!important;border-radius:14px;box-shadow:0 20px 45px #0005;opacity:1!important;background:#123653}
.hero-stage:before,.hero-stage:after{display:none!important}
.hero-slide-image{background-size:contain!important;background-repeat:no-repeat!important;background-color:#123653;background-position:center!important;filter:none!important;transform:none!important;animation:none!important}
.hero .container{z-index:4!important}.hero h1{max-width:650px;font-size:clamp(34px,4.1vw,56px);text-shadow:none}.hero p{max-width:570px}
.hero .container>h1,.hero .container>p,.hero .container>.eyebrow,.hero .container>.actions{width:53%}
.hero-slide{transition:opacity .35s ease!important}
/* original low-resolution service images should not be enlarged */
.card .visual{background:#e9f0f6!important;height:220px;overflow:hidden}
.card .visual img{object-fit:contain!important;width:100%;height:100%;transform:none!important;filter:none!important}
.card .visual.low-res img{width:auto!important;height:auto!important;max-height:195px!important;max-width:150px!important}
.card:hover img{transform:none!important}
@media(max-width:850px){.hero-stage{width:43%!important;right:2%!important;height:300px!important}.hero .container>h1,.hero .container>p,.hero .container>.eyebrow,.hero .container>.actions{width:55%}.hero h1{font-size:clamp(30px,4.8vw,45px)}}
@media(max-width:580px){.hero{min-height:auto!important}.hero .container{padding-top:42px!important;padding-bottom:34px!important}.hero .container>h1,.hero .container>p,.hero .container>.eyebrow,.hero .container>.actions{width:100%}.hero-stage{position:relative!important;transform:none!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;width:calc(100% - 36px)!important;height:220px!important;margin:12px auto 0;z-index:2!important;opacity:1!important;order:2}.hero{display:flex;flex-direction:column-reverse!important}.hero h1{font-size:34px!important}.hero-controls{margin-top:24px!important}.card .visual{height:220px}}

/* V5: locally bundled higher-resolution image crops; no tiny images stretched. */
.hero-stage{width:min(48%,740px)!important;height:min(410px,75%)!important}
.hero-slide-image{background-size:cover!important;background-position:center!important}
.card .visual img,.card .visual.low-res img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important}
.card .visual{height:220px;background:#102c45!important}
@media(max-width:850px){.hero-stage{width:43%!important;height:310px!important}}
@media(max-width:580px){.hero-stage{width:calc(100% - 36px)!important;height:230px!important}}

/* V6: improved hero photo clarity, image-first layout */
.hero{background:#081e35!important;min-height:565px!important;isolation:isolate}
.hero-stage{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;transform:none!important;width:59%!important;height:100%!important;border-radius:0!important;box-shadow:none!important;opacity:1!important;z-index:0!important;margin:0!important}
.hero-stage:before{display:block!important;content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(90deg,#081e35 0%,rgba(8,30,53,.55) 19%,transparent 47%);pointer-events:none}
.hero-stage:after{display:none!important}
.hero-slide-image{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;filter:none!important;transform:none!important;animation:none!important}
.hero .container{position:relative!important;z-index:4!important;padding-top:100px!important;padding-bottom:70px!important}
.hero .container>h1,.hero .container>p,.hero .container>.eyebrow,.hero .container>.actions{width:55%!important;max-width:670px!important}
.hero h1{font-size:clamp(35px,4.4vw,62px)!important;text-shadow:0 2px 12px rgba(0,0,0,.16)!important}
.hero-controls{margin-top:42px!important}.hero-slide{transition:opacity .42s ease!important}
.card .visual img{width:100%;height:100%;object-fit:cover;filter:none!important}
@media(max-width:850px){.hero-stage{width:70%!important}.hero-stage:before{background:linear-gradient(90deg,#081e35 0%,rgba(8,30,53,.75) 45%,rgba(8,30,53,.14) 100%)}}
@media(max-width:580px){.hero{display:block!important;min-height:600px!important}.hero-stage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:1!important}.hero-stage:before{background:linear-gradient(90deg,rgba(8,30,53,.94),rgba(8,30,53,.56)),linear-gradient(0deg,#081e35,transparent 75%)}.hero .container{padding-top:88px!important;padding-bottom:50px!important}.hero .container>h1,.hero .container>p,.hero .container>.eyebrow,.hero .container>.actions{width:100%!important}.hero h1{font-size:clamp(33px,8.5vw,44px)!important}.hero-controls{margin-top:45px!important}}
