:root{--text:#191919;--muted:#777;--bg:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,'Helvetica Neue','Noto Sans KR',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.top{height:100px;display:flex;justify-content:space-between;align-items:center;padding:0 max(5vw,30px);border-bottom:1px solid #eee;background:white;position:sticky;top:0;z-index:30}.logo{font-size:27px;letter-spacing:-1.2px;font-weight:800;white-space:nowrap}.logo span{font-weight:400}.logo i{font-style:normal;color:#939393}.nav{display:flex;gap:45px}.nav a{font-size:12px;letter-spacing:2px;font-weight:600;color:#777;transition:.2s}.nav a:hover,.nav a.active{color:#111}.menu-toggle{display:none;background:none;border:0;font-size:28px}.page{display:none;min-height:calc(100vh - 170px)}.page.active{display:block}.page-home{padding:26px max(5vw,30px) 70px}.hero{min-height:600px;height:min(68vw,760px);background:#222;position:relative;overflow:hidden}.hero-images,.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .75s ease}.hero-image.active{opacity:1}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.46),transparent 75%),linear-gradient(0deg,rgba(0,0,0,.28),transparent 50%)}.hero-copy{position:absolute;left:7%;top:35%;color:white}.eyebrow,.section-kicker{font-size:11px;letter-spacing:3px;font-weight:700}.hero h1{font-size:clamp(44px,6.2vw,105px);line-height:1.05;letter-spacing:-3px;font-weight:500;margin:22px 0 45px}.hero-link{font-size:12px;letter-spacing:2px;padding-bottom:10px;border-bottom:1px solid #fff}.hero-link span{margin-left:24px}.hero-controls{position:absolute;right:35px;bottom:25px;color:white;display:flex;align-items:center;gap:20px}.hero-controls button{background:none;border:1px solid #ffffff7a;color:#fff;width:38px;height:38px}.hero-controls span{font-size:11px;letter-spacing:2px}.home-caption{text-align:center;font-size:11px;letter-spacing:2px;color:#777;margin-top:50px}.page-about,.page-work,.page-contact{padding:85px max(5vw,30px) 100px}.section-kicker{color:#888;margin-bottom:26px}h2{font-size:clamp(40px,5.3vw,82px);font-weight:500;letter-spacing:-2px;line-height:1.08;margin:0 0 70px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.brand-tile{min-height:340px;background:#f4f4f4;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:clamp(24px,3.5vw,50px);letter-spacing:-2px}.brand-tile span{color:#aaa}.about-copy{max-width:520px;font-size:17px;line-height:1.9;color:#555}.about-copy p{margin:0 0 23px}.outline-link{display:inline-block;border-bottom:1px solid #111;color:#111;font-size:12px;letter-spacing:2px;margin-top:25px;padding-bottom:12px}.page-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.page-heading h2{margin:0}.page-heading p{font-size:12px;color:#777}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.work-item{border:0;padding:0;background:#eee;display:block;position:relative;overflow:hidden;aspect-ratio:1.4;width:100%;cursor:zoom-in}.work-item:nth-child(5n+1){grid-column:span 2;aspect-ratio:2.45}.work-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.work-item:hover img{transform:scale(1.04)}.work-item:after{content:'↗';color:white;position:absolute;right:17px;bottom:15px;font-size:25px;text-shadow:0 1px 10px #444;opacity:0}.work-item:hover:after{opacity:1}.work-note{font-size:11px;color:#aaa;line-height:1.7;margin-top:30px}.contact-intro{font-size:17px;color:#666;margin-top:-28px;margin-bottom:65px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.info-label{font-size:11px;color:#888;letter-spacing:2px;margin-top:32px;margin-bottom:12px}.big-link{font-size:clamp(16px,2.1vw,28px)}.contact-panel{background:#f5f5f5;padding:45px;min-height:280px}.contact-panel h3{font-size:25px;font-weight:500;margin:0 0 22px}.contact-panel p{font-size:14px;line-height:1.8;color:#666}.send-button{display:inline-block;margin-top:35px;font-size:12px;letter-spacing:2px;border-bottom:1px solid #111;padding-bottom:10px}footer{border-top:1px solid #eee;padding:28px 5vw;color:#888;text-align:center;font-size:10px;letter-spacing:.4px}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:100;display:none;align-items:center;justify-content:space-between;padding:4vw}.lightbox.open{display:flex}.lightbox img{max-width:calc(100% - 120px);max-height:86vh;object-fit:contain}.lightbox button{background:none;color:white;border:0;font-size:35px}.lightbox-close{position:absolute;top:15px;right:30px}.lightbox-count{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:white;font-size:12px;letter-spacing:2px}@media(max-width:760px){.top{height:75px;padding:0 22px}.logo{font-size:23px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:#fff;padding:26px;flex-direction:column;gap:25px;box-shadow:0 8px 16px #0001}.nav.open{display:flex}.page-home{padding:12px 12px 40px}.hero{height:72vh;min-height:480px}.hero-copy{left:8%;top:38%}.hero h1{font-size:46px;letter-spacing:-1px}.hero-controls{right:20px;bottom:16px}.page-about,.page-work,.page-contact{padding:55px 22px 70px}h2{margin-bottom:40px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.brand-tile{min-height:220px}.page-heading{display:block}.page-heading p{margin:10px 0 25px}.work-grid{grid-template-columns:repeat(2,1fr);gap:7px}.work-item:nth-child(5n+1){grid-column:span 2;aspect-ratio:1.7}.work-item{aspect-ratio:1.1}.contact-panel{padding:30px}.lightbox{padding:12px}.lightbox img{max-width:calc(100% - 65px)}.lightbox button{font-size:24px}}

/* Official studio logo */
.logo{display:flex;align-items:center;line-height:1}.site-logo{display:block;width:auto;height:77px;max-width:220px;object-fit:contain}.about-logo{width:min(78%,390px);height:auto;object-fit:contain;mix-blend-mode:multiply}@media(max-width:760px){.site-logo{height:60px;max-width:175px}}

/* HEADER: original ARCH VISUAL spaced lettering with symbol on the left. */
.top .logo{display:inline-flex;align-items:center;gap:16px;color:#111;white-space:nowrap;line-height:1}
.top .logo .logo-title{display:block;font-family:Arial,'Helvetica Neue',sans-serif;font-size:28px;font-weight:600;letter-spacing:6px;line-height:1.2;white-space:nowrap}
.top .logo .logo-symbol{display:block;width:38px;height:59px;object-fit:contain;object-position:center;flex:none}
@media(max-width:760px){
  .top .logo{gap:10px}
  .top .logo .logo-title{font-size:17px;font-weight:600;letter-spacing:3px}
  .top .logo .logo-symbol{width:27px;height:40px}
}
@media(max-width:370px){.top .logo .logo-title{font-size:15px;letter-spacing:2px}}

/* 2026-10-20 FINAL: header symbol plus equal-weight spaced lettering */
.top a.logo{display:inline-flex!important;align-items:center!important;gap:15px!important;font-weight:400!important;letter-spacing:normal!important}
.top a.logo .logo-title{font-family:Arial,Helvetica,sans-serif!important;font-weight:500!important;font-size:28px!important;letter-spacing:5px!important;line-height:1.2!important;white-space:nowrap!important}
.top a.logo .logo-symbol{display:block!important;width:36px!important;height:56px!important;object-fit:contain!important}
@media(max-width:760px){.top a.logo{gap:10px!important}.top a.logo .logo-title{font-size:17px!important;letter-spacing:2.5px!important}.top a.logo .logo-symbol{width:27px!important;height:40px!important}}

/* Header text restored exactly from the first ARCH VISUAL prototype. */
.top a.logo{display:inline-flex!important;align-items:center!important;gap:14px!important;white-space:nowrap!important;text-decoration:none!important;line-height:1!important}
.top a.logo .logo-symbol{display:block!important;flex:none!important;width:36px!important;height:56px!important;object-fit:contain!important}
.top a.logo .logo-wordmark{display:inline!important;font-family:Arial,Helvetica,sans-serif!important;font-size:27px!important;letter-spacing:-1.2px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important}
.top a.logo .logo-wordmark span{font-weight:400!important}
.top a.logo .logo-wordmark i{font-style:normal!important;color:#939393!important;font-weight:800!important}
@media(max-width:760px){.top a.logo{gap:10px!important}.top a.logo .logo-symbol{width:27px!important;height:40px!important}.top a.logo .logo-wordmark{font-size:23px!important}}

/* CONTACT: 문의 박스 제거 후 연락처를 왼쪽 열에 자연스럽게 표시 */
.contact-grid{display:block;max-width:720px}
.contact-grid > div{width:100%}


/* WORK: Pages CMS 작품명은 이미지에 마우스를 올리면 표시됩니다. */
.work-item:after{content:none!important;}
.work-item .work-hover-title{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:45px 22px 20px;box-sizing:border-box;
  background:linear-gradient(to top,rgba(0,0,0,.79),rgba(0,0,0,0));
  color:#fff;font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(13px,1.45vw,19px);font-weight:500;line-height:1.4;
  text-align:left;overflow-wrap:anywhere;
  opacity:0;transform:translateY(8px);
  transition:opacity .24s ease,transform .24s ease;pointer-events:none;
}
.work-item:hover .work-hover-title,
.work-item:focus-visible .work-hover-title{opacity:1;transform:translateY(0)}
@media(hover:none){.work-item .work-hover-title{opacity:1;transform:none;padding:38px 12px 12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.work-item .work-hover-title{transition:none}}
