:root{--navy:#032e4e;--deep:#021c31;--blue:#0c5f8f;--sky:#eaf4f8;--line:#d8e1e6;--text:#10202b;--muted:#697881;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Pretendard,"Noto Sans KR",Arial,sans-serif;background:#fff}button,input{font:inherit}.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.logo-row{height:104px;max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:center;position:relative;padding:14px 28px}.logo-row img{display:block;width:210px;height:auto}.call{position:absolute;right:28px;text-decoration:none;color:var(--navy);font-size:1.2rem;font-weight:800}.call span{display:block;font-size:.72rem;letter-spacing:.14em;color:var(--muted)}.menu-toggle{display:none}.nav{height:56px;display:flex;align-items:center;justify-content:center;gap:64px;border-top:1px solid #edf1f3}.nav a{color:#172733;text-decoration:none;font-weight:700}.nav a:hover{color:var(--blue)}.hero{height:calc(100vh - 160px);min-height:580px;position:relative;overflow:hidden;background:#051d2c}.hero>img{width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,25,44,.75),rgba(0,28,49,.05) 65%)}.hero-copy{position:absolute;z-index:1;left:max(6vw,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%);color:#fff}.hero-copy p{margin:0 0 18px;letter-spacing:.22em;font-size:1rem}.hero-copy h1{font-size:clamp(3rem,6vw,5.5rem);margin:0 0 22px;letter-spacing:-.06em}.hero-copy span{font-size:1.2rem}.section{padding:110px max(24px,calc((100vw - 1180px)/2))}.tone{background:#f2f7f9}.heading{text-align:center;margin-bottom:56px}.heading small,.contact-copy small{color:var(--blue);font-weight:800;letter-spacing:.28em}.heading h2,.contact h2{font-size:clamp(2.3rem,5vw,4rem);letter-spacing:-.055em;margin:12px 0 14px}.heading p,.contact-copy p{font-size:1.05rem;color:var(--muted);margin:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.project-copy h3{font-size:2.2rem;line-height:1.35;letter-spacing:-.045em;margin:0 0 22px}.project-copy>p{line-height:1.85;color:var(--muted)}dl{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--navy);margin-top:34px}dl div{padding:18px 12px;border-bottom:1px solid var(--line)}dt{font-size:.8rem;color:var(--muted);margin-bottom:7px}dd{margin:0;font-weight:700;line-height:1.5}.visual-card,.full-image{border:0;padding:0;background:#fff;cursor:zoom-in;display:block;width:100%;overflow:hidden}.visual-card{border-radius:4px;box-shadow:0 18px 50px rgba(4,44,72,.14);position:relative}.visual-card img,.full-image img{display:block;width:100%;height:auto}.visual-card span{position:absolute;right:15px;bottom:15px;padding:9px 14px;background:rgba(1,29,50,.85);color:#fff;font-size:.75rem}.full-image{max-width:1200px;margin:auto;box-shadow:0 12px 36px rgba(2,35,56,.08)}.tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:28px}.tab{min-width:120px;border:1px solid #ccd7dc;background:#fff;color:#44545e;padding:15px 18px;font-weight:700;cursor:pointer}.tab.active,.tab:hover{background:var(--navy);border-color:var(--navy);color:#fff}.contact{background:var(--deep);color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.contact-copy p{color:#b7c7d2;line-height:1.7}.contact-copy a{display:inline-block;color:#fff;text-decoration:none;margin-top:32px;font-size:1rem}.contact-copy strong{display:block;font-size:2rem;margin-top:6px}.form{background:#fff;color:var(--text);padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.form label{font-size:.83rem;font-weight:700}.form input:not([type=checkbox]){width:100%;margin-top:8px;padding:15px;border:1px solid #cad5db}.form .agree{grid-column:1/-1;font-weight:500}.form button{grid-column:1/-1;border:0;background:var(--blue);color:#fff;padding:17px;font-weight:800;cursor:pointer}.form button:disabled{opacity:.55}.form #form-status{grid-column:1/-1;margin:0;color:var(--blue);min-height:1.2em;font-size:.85rem}footer{padding:50px 24px 90px;text-align:center;background:#011522;color:#8fa4b1}footer img{width:150px;filter:brightness(0) invert(1);opacity:.88}footer p{font-size:.78rem;line-height:1.7}footer strong{color:#fff;font-size:1.4rem}.mobile-call{display:none}.lightbox{position:fixed;z-index:100;inset:0;background:rgba(0,12,21,.93);display:none;align-items:center;justify-content:center;padding:45px}.lightbox.open{display:flex}.lightbox img{max-width:95vw;max-height:90vh;object-fit:contain}.lightbox-close{position:absolute;right:20px;top:12px;border:0;background:none;color:#fff;font-size:3rem;cursor:pointer}.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:760px){body{padding-bottom:58px}.logo-row{height:76px;padding:10px 18px}.logo-row img{width:154px}.call{display:none}.menu-toggle{display:block;position:absolute;right:18px;border:0;background:none;color:var(--navy);font-size:1.5rem}.nav{display:none;position:absolute;top:76px;width:100%;height:auto;background:#fff;padding:10px 20px 20px;flex-direction:column;gap:0;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a{width:100%;padding:14px;border-bottom:1px solid #edf1f3}.hero{height:70vh;min-height:520px}.hero>img{object-position:62% center}.hero-copy{left:24px;right:24px;top:auto;bottom:48px;transform:none}.hero-copy h1{font-size:2.75rem}.hero-copy span{font-size:1rem}.section{padding:78px 20px}.heading{margin-bottom:38px}.heading h2,.contact h2{font-size:2.55rem}.project-grid,.contact{grid-template-columns:1fr;gap:36px}.project-copy h3{font-size:1.75rem}dl{grid-template-columns:1fr}.tabs{display:grid;grid-template-columns:repeat(3,1fr)}.tab{min-width:0;padding:13px 5px;font-size:.83rem}.form{padding:24px;grid-template-columns:1fr}.form label,.form button,.form .agree,.form #form-status{grid-column:1}.mobile-call{display:block;position:fixed;z-index:60;left:0;bottom:0;width:100%;height:58px;line-height:58px;background:var(--blue);color:#fff;text-align:center;text-decoration:none;font-weight:800}.lightbox{padding:18px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
