:root{--navy:#091421;--white:#f6f7f9;--line:#d6dce3;--silver:#9ca9b8;--ink:#13202d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--navy);color:var(--white);font-family:Arial,'Noto Sans KR','Malgun Gothic',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #98acbe;outline-offset:5px}h1,h2,p,figure{margin:0}header{height:88px;position:fixed;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:0 5.5%;border-bottom:1px solid #ffffff1a;background:#09142155;backdrop-filter:blur(16px);transition:background .3s}header.scrolled{background:#091421ed}.brand{font-family:Georgia,'Times New Roman',serif;font-size:35px;letter-spacing:.06em}nav{display:flex;align-items:center;gap:35px;font-size:14px}nav a{padding:12px 0}nav a:hover{color:#c5d3df}.nav-contact{border:1px solid #ffffff4a;padding:11px 22px}.hero{height:100svh;min-height:640px;max-height:1200px;position:relative;overflow:hidden;display:grid;place-items:center}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;animation:drift 22s ease-in-out infinite alternate}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#09142133,transparent 45%,#09142177)}.hero-type{text-align:center;position:relative;z-index:1;margin-top:-10px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(135px,22vw,330px);font-weight:400;line-height:1;letter-spacing:.03em;padding-left:.03em}.hero-type p{font-size:16px;letter-spacing:.4em;margin-top:28px;padding-left:.4em}.hero-type p span{margin:0 16px;color:#a5b3c1}.hero-base{position:absolute;bottom:35px;left:5.5%;right:5.5%;display:flex;align-items:flex-end;justify-content:space-between;font-size:11px;letter-spacing:.15em;color:#bdc8d2}.hero-base a{display:flex;gap:22px;align-items:center}.scroll-line{display:inline-block;width:1px;height:45px;background:#bcc8d3}.possibilities{background:var(--white);color:var(--ink);padding:76px 5.5% 0}.section-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.section-no,.region{font-size:11px;letter-spacing:.17em;line-height:1.7}.region{color:#728191;letter-spacing:.1em}.possibilities h2{font-size:clamp(45px,7.3vw,110px);font-weight:400;line-height:1.08;letter-spacing:-.06em;margin:60px 0 56px}.possibilities h2 span{color:#7c8a99}.city-photo{position:relative;margin:0 -6.18%;height:clamp(330px,42vw,650px);overflow:hidden}.city-photo img{width:100%;height:100%;object-fit:cover;display:block}.city-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 60%,#09142199)}.city-captions{position:absolute;bottom:27px;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:1;color:white;font-size:14px;letter-spacing:.08em}.city-captions span{padding-left:11%}.approach{padding:76px 5.5% 105px}.approach .region{color:#9baaba}.work-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center;margin-top:70px}.work-row.reverse{grid-template-columns:1.2fr .8fr;margin-top:90px}.work-number{display:block;font-size:12px;color:#a0afbd;letter-spacing:.13em;margin-bottom:24px}.work-title h2{font-size:clamp(36px,4.7vw,74px);font-weight:400;letter-spacing:-.045em;line-height:1.13}.work-title p{font-size:19px;letter-spacing:-.02em;margin-top:30px;color:#b8c5d1}.work-row figure{height:380px;overflow:hidden}.work-row img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s}.work-row figure:hover img{transform:scale(1.025)}.contact{background:var(--white);color:var(--ink);padding:95px 5.5% 105px;display:grid;grid-template-columns:.8fr 1.2fr;gap:7%}.contact h2{font-size:clamp(60px,7vw,105px);font-weight:400;letter-spacing:-.06em;margin-top:42px}.contact-intro>p{margin-top:27px;font-size:14px;color:#637181;line-height:1.9;word-break:keep-all}form{max-width:730px;width:100%}.form-field{margin-bottom:28px}label,legend{font-size:14px;line-height:1.7}label>span,legend>span{font-size:12px;color:#7f8b98;margin-left:10px}.form-field>label{display:block;margin-bottom:9px}.form-field input{width:100%;border:0;border-bottom:1px solid #bdc7d0;background:transparent;border-radius:0;padding:13px 0;color:var(--ink);font-size:16px}.form-field input::placeholder,textarea::placeholder{color:#8995a1}fieldset{border:0;margin:0 0 25px;padding:0}legend{padding:0;margin-bottom:12px}.channels{display:flex;gap:10px;flex-wrap:wrap}.channels label{position:relative;cursor:pointer}.channels input{position:absolute;opacity:0;width:1px;height:1px}.channels span{display:block;padding:10px 20px;border:1px solid #cbd3db;margin:0;font-size:14px;color:#637181}.channels input:checked+span{background:var(--navy);border-color:var(--navy);color:white}.channels input:focus-visible+span{outline:2px solid #98acbe;outline-offset:3px}textarea{display:block;width:100%;background:transparent;border:1px solid #bdc7d0;border-radius:0;padding:17px;resize:vertical;color:var(--ink);font-size:16px;line-height:1.6;min-height:190px}.consent{display:flex;align-items:flex-start;gap:9px;cursor:pointer}.consent input{accent-color:var(--navy);width:16px;height:16px;margin:3px 0 0;flex-shrink:0}.consent span{margin:0;font-size:13px;color:#596878}.privacy{margin:13px 0 26px;color:#647281;font-size:12px;line-height:1.8}.privacy summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.privacy p{margin-top:12px;line-height:1.8;word-break:keep-all}.submit-row{display:flex;align-items:center;gap:23px}button{border:1px solid var(--navy);background:var(--navy);color:white;padding:17px 34px;font-size:14px;cursor:pointer;white-space:nowrap;transition:background .2s}button:hover{background:#203347}button:disabled{opacity:.6;cursor:wait}#form-status{font-size:13px;line-height:1.6;color:#596878}.trap{position:absolute;width:0;height:0;overflow:hidden;opacity:0}footer{padding:35px 5.5%;display:flex;align-items:center;gap:35px;color:#b4c0cc}footer .brand{color:white;font-size:30px}footer>span{font-size:12px;letter-spacing:.12em}footer small{margin-left:auto;font-size:11px;color:#8293a3}.reveal{transition:opacity .8s,transform .8s}.js-reveal{opacity:0;transform:translateY(20px)}.js-reveal.visible{opacity:1;transform:none}@keyframes drift{from{transform:scale(1.015)}to{transform:scale(1.075)}}@media(min-width:1600px){.work-row figure{height:450px}}@media(max-width:900px){header{padding:0 5%;height:78px}nav{gap:22px}.hero h1{font-size:25vw}.work-row,.work-row.reverse{gap:5%}.work-row figure{height:300px}.contact{gap:5%;grid-template-columns:.75fr 1.25fr}.contact-intro>p{font-size:13px}.channels span{padding:10px 15px}}@media(max-width:600px){html{scroll-padding-top:73px}header{height:73px;padding:0 22px}.brand{font-size:29px}nav{gap:15px;font-size:11px}.nav-contact{padding:9px 12px}.hero{min-height:590px;max-height:950px}.hero h1{font-size:35vw}.hero-type p{font-size:13px;margin-top:24px}.hero-base{left:24px;right:24px;font-size:9px;bottom:25px}.hero-base a{gap:14px}.scroll-line{height:30px}.possibilities{padding:46px 24px 0}.section-no,.region{font-size:9px;letter-spacing:.11em}.possibilities h2{font-size:51px;margin:44px 0 39px}.city-photo{margin:0 -24px;height:400px}.city-photo img{object-fit:cover}.city-captions{font-size:12px;bottom:21px}.approach{padding:48px 24px 65px}.approach .region{font-size:8px}.work-row,.work-row.reverse{grid-template-columns:1fr;gap:25px;margin-top:42px}.work-row.reverse{margin-top:47px}.work-row.reverse figure{order:2}.work-row.reverse .work-title{order:1}.work-title h2{font-size:44px}.work-number{margin-bottom:17px}.work-title p{font-size:17px;margin-top:20px}.work-row figure{height:260px}.contact{padding:55px 24px 60px;grid-template-columns:1fr;gap:38px}.contact h2{font-size:66px;margin-top:24px}.contact-intro>p{margin-top:19px;font-size:14px}.submit-row{display:block}#form-status{margin-top:15px}.consent span{font-size:12px}.channels span{font-size:13px;padding:10px 18px}footer{padding:28px 24px;gap:22px}footer .brand{font-size:27px}footer>span{font-size:10px}footer small{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-image{animation:none}.reveal{transition:none}.js-reveal{opacity:1;transform:none}}

.city-photo{display:grid;grid-template-columns:1fr 1fr;gap:2px}.city-photo:after{display:none}.city-photo figure{position:relative;height:100%;overflow:hidden}.city-photo figure:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 65%,#09142199)}.city-photo figcaption{position:absolute;z-index:1;bottom:27px;left:11%;color:white;font-size:14px;letter-spacing:.08em}@media(max-width:600px){.city-photo{height:auto;grid-template-columns:1fr;gap:2px}.city-photo figure{height:330px}.city-photo figcaption{left:24px;bottom:23px;font-size:13px}}

/* Approved final brand and imagery. */
header{background:#09142135;color:var(--white);border-color:#ffffff20;transition:background .3s,color .3s}
header.scrolled{background:#f6f7f9ed;color:var(--navy);border-color:#0914211c}
nav a:hover{color:#8fa7bd}.nav-contact{border-color:currentColor}
.brand-mark{display:block;width:112px;line-height:0;flex-shrink:0}
.brand-mark img{display:block;width:100%;height:auto}
.brand-mark .logo-dark{display:none}
header.scrolled .logo-light{display:none}header.scrolled .logo-dark{display:block}
.hero{color:var(--white);background:var(--navy)}
.hero-image{animation:none;object-position:center}
.hero-shade{background:linear-gradient(180deg,#09142120,transparent 50%,#09142115)}
.hero-type{width:90%;max-width:1100px;margin-top:0}
.hero h1{width:min(46vw,720px);margin:0 auto;font-size:0;line-height:0;padding:0}
.hero h1 img{display:block;width:100%;height:auto}
.hero-type .hero-tagline{font-size:clamp(12px,1.12vw,18px);font-weight:400;letter-spacing:.27em;line-height:1.7;margin:24px 0 0;padding:0;white-space:nowrap}
.hero-type .hero-regions{font-size:clamp(13px,1.25vw,18px);letter-spacing:.35em;margin:32px 0 0;padding-left:.35em;line-height:1.5}
.hero-type .hero-regions span{color:#c2ccd7;margin:0 18px}
.hero-base{color:#d1dbe4}.scroll-line{background:#d1dbe4}
.city-photo figure:after{background:#0914211a}
.city-photo figcaption{top:50%;left:50%;bottom:auto;transform:translate(-50%,-50%);font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:clamp(80px,12.8vw,200px);font-weight:300;letter-spacing:.015em;line-height:1;color:rgba(255,255,255,.8);text-shadow:none;pointer-events:none}
.work-row figure{height:auto;aspect-ratio:1.5;min-width:0}
.work-row.reverse figure{aspect-ratio:16/9}
.work-row img{object-position:center}
.work-title .value-copy{font-size:clamp(18px,1.5vw,23px);line-height:1.7;word-break:keep-all;color:#c5d0db}
footer .brand-mark{width:92px}
@media(max-width:900px){.hero h1{width:65vw}.hero-type .hero-tagline{font-size:12px;letter-spacing:.2em}}
@media(max-width:600px){
 header{padding:0 20px}.brand-mark{width:76px}nav{gap:14px;font-size:12px}.nav-contact{padding:9px 12px}
 .hero{min-height:580px}.hero-image{object-position:30% center}.hero h1{width:82vw}
 .hero-type{width:calc(100% - 32px)}
 .hero-type .hero-tagline{font-size:clamp(10px,2.68vw,12px);letter-spacing:.12em;line-height:1.8;margin-top:20px;white-space:normal}
 .hero-type .hero-regions{font-size:13px;margin-top:25px}
 .city-photo figure{height:clamp(350px,105vw,470px)}
 .city-photo figcaption{font-size:clamp(108px,32.8vw,184px)}
 .work-title .value-copy{font-size:18px;margin-top:22px;line-height:1.7}
 .work-row figure,.work-row.reverse figure{height:auto}
 footer .brand-mark{width:75px}
}
@media(max-width:360px){header{padding:0 16px}.brand-mark{width:58px}nav{gap:10px;font-size:12px}.nav-contact{padding:8px 9px}.hero-type .hero-tagline{letter-spacing:.08em}}
