:root{--bg:#f8f8fa;--paper:#fff;--ink:#1e2230;--muted:#747782;--purple:#6948db;--pale:#f0ebff;--line:#e2e3e8;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Pretendard","Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;line-height:1.6;word-break:keep-all}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a688ff;outline-offset:4px}[hidden]{display:none!important}.wrap{width:min(1280px,calc(100% - 96px));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:15px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.purple{color:var(--purple)}.muted{color:var(--muted);font-size:12px;font-weight:400}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:750;color:var(--purple)}.header{background:rgba(248,248,250,.97);position:sticky;top:0;z-index:20;border-bottom:1px solid #e9e9ee}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand img{height:52px;width:52px;object-fit:contain;border-radius:8px}.brand strong{display:block;font-size:25px;line-height:1.1;letter-spacing:-1.2px}.brand small{display:block;font-size:8px;letter-spacing:.23em;margin-top:4px}.header nav{display:flex;align-items:center;gap:34px;font-size:13px;font-weight:650}.nav-cta{display:flex;align-items:center;gap:26px;background:var(--ink);color:white;padding:10px 19px;border-radius:7px}.header nav>a:hover{color:var(--purple)}.header nav>.nav-cta:hover{background:var(--purple);color:white}.opening{padding-top:28px}.hero{height:540px;position:relative;background:#191926;border-radius:var(--radius);overflow:hidden;color:white}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,14,26,.96) 0%,rgba(13,14,26,.8) 29%,rgba(13,14,26,.28) 70%,rgba(13,14,26,.22) 100%)}.hero-copy{position:absolute;inset:63px auto auto 58px;max-width:600px}.light{color:#ded8f7}.live-dot{display:inline-block;width:6px;height:6px;background:#bea5ff;border-radius:50%;margin:0 8px 2px 0}.hero h1{font-size:clamp(36px,4.3vw,58px);font-weight:750;line-height:1.3;letter-spacing:-2.3px;margin:25px 0 20px}.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.95;color:#d3d2de;margin-bottom:29px}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:white;border:1px solid var(--line);border-radius:7px;padding:13px 20px;font-size:13px;font-weight:650;min-height:48px;transition:background .2s,transform .2s}.button:hover{background:var(--pale)}.button.primary{background:var(--purple);color:white;border-color:var(--purple)}.button.primary:hover{background:#5535bb}.button.white{color:var(--ink);border-color:white}.button.wide{width:100%;justify-content:space-between}.hero-caption{position:absolute;bottom:24px;right:30px;display:flex;gap:20px;font-size:10px;color:#e3e1eb}.hero-caption>span:first-child{letter-spacing:.14em}.service-intro{display:flex;align-items:center;justify-content:space-between;margin:32px 0 15px}.service-intro>p:last-child{font-size:12px;color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.service-card{padding:24px;border-right:1px solid var(--line);transition:background .2s}.service-card:last-child{border:0}.service-card:hover{background:var(--pale)}.service-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.09em;color:var(--muted)}.service-icon{font-size:21px;color:var(--purple);line-height:1}.service-card h2{font-size:24px;letter-spacing:-.8px;margin:17px 0 8px}.service-card p{font-size:12px;line-height:1.85;color:#616470}.service-foot{display:block;font-size:10px;color:var(--muted);margin-top:20px}.portfolio-section{padding:100px 0 90px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px}.section-head h2{font-size:36px;letter-spacing:-1.5px;font-weight:750;margin-top:12px;line-height:1.3}.section-head>p{font-size:13px;color:var(--muted);line-height:1.9}.portfolio-tools{display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:20px 0}.filters{display:flex;flex-wrap:wrap;gap:7px}.filter{background:transparent;border:1px solid transparent;border-radius:6px;padding:8px 12px;font-size:12px;white-space:nowrap}.filter:hover{background:var(--pale)}.filter[aria-pressed=true]{background:var(--ink);color:white}.filter .count{font-size:9px;opacity:.65;margin-left:4px}.search{display:flex;align-items:center;gap:9px;background:white;border:1px solid var(--line);border-radius:7px;padding:5px 11px;min-width:190px}.search>span{font-size:24px;color:var(--muted);line-height:1}.search input{border:0!important;padding:5px 0!important;width:130px!important;background:transparent!important;font-size:12px!important;min-width:0}.result-line{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin:18px 0}.result-line>span:first-child{font-weight:650;color:#525561}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px 24px}.project-card{background:transparent;padding:0;border:0;text-align:left;display:block;min-width:0}.project-image{position:relative;aspect-ratio:1.5;overflow:hidden;border-radius:10px;background:#eeedf2}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.045)}.image-badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.94);padding:4px 9px;border-radius:4px;font-size:10px;font-weight:650;color:#3e3a50}.image-count{position:absolute;right:12px;bottom:12px;background:rgba(20,20,35,.6);border-radius:4px;color:white;font-size:10px;padding:3px 7px}.project-text{padding:16px 0 0}.project-text>p{font-size:10px;color:var(--purple);margin-bottom:6px}.project-text h3{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;font-size:17px;letter-spacing:-.6px;font-weight:700;line-height:1.55}.project-text h3>span{color:var(--muted);font-size:17px;line-height:1.5;flex-shrink:0}.project-text>small{display:block;font-size:11px;color:var(--muted);margin-top:6px}.blog-strip{display:flex;align-items:center;justify-content:space-between;padding:23px 26px;background:#efeff4;border-radius:10px;margin-top:48px}.blog-strip>span:first-child{display:flex;align-items:center;gap:24px}.blog-strip small{font-size:9px;letter-spacing:.1em;color:var(--muted)}.blog-strip strong{font-size:14px;font-weight:650}.blog-strip>span:last-child{font-size:11px}.blog-strip:hover{background:var(--pale)}.contact-section{background:#eeedf3;border-top:1px solid #e5e3ed;padding:78px 0}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-intro h2{font-size:42px;letter-spacing:-1.5px;line-height:1.35;margin:18px 0}.contact-intro>p:not(.eyebrow){font-size:13px;color:#73727e;line-height:1.9}.contact-links{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.contact-links a{font-size:12px;font-weight:650;color:var(--purple)}.contact-links a+a{border-left:1px solid #c9c6d6;padding-left:10px}.faq{margin-top:28px}.faq details{border-top:1px solid #d8d6e2;font-size:12px}.faq details:last-child{border-bottom:1px solid #d8d6e2}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;padding:18px 0;font-weight:650}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:18px;font-weight:400;line-height:1}.faq details[open] summary:after{content:'−'}.faq details p{color:#6c697a;line-height:1.9;padding:0 22px 20px 0}.inquiry-form{background:white;border:1px solid #e4e2eb;padding:30px;border-radius:14px}.form-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:10px}.form-heading h3{font-size:16px}.form-heading>span{font-size:10px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inquiry-form label,.editor-form label,.settings-form label,.login-panel label{display:block;font-size:11px;font-weight:650}.required{color:var(--purple)}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;padding:10px 12px;border:1px solid #dddde6;border-radius:6px;background:#fbfbfd;font-size:12px;color:var(--ink);margin-top:6px;line-height:1.6}textarea{resize:vertical;min-height:80px}input::placeholder,textarea::placeholder{color:#a2a1ad}.service-options{padding:0;margin:21px 0;border:0}.service-options legend{font-size:11px;font-weight:650;margin-bottom:10px}.service-options .muted{margin-left:8px;font-size:10px}.service-options label{display:inline-flex;align-items:center;margin:0 5px 7px 0;cursor:pointer;font-weight:500}.service-options input{position:absolute;opacity:0}.service-options label span{font-size:11px;padding:7px 13px;border:1px solid #e1dfe9;border-radius:6px}.service-options input:checked+span{background:var(--pale);color:var(--purple);border-color:var(--purple)}.service-options input:focus-visible+span{outline:3px solid #a688ff;outline-offset:3px}.form-note{font-size:10px;color:#81808c;margin:18px 0 14px;line-height:1.8}.footer{padding:33px 0;display:flex;justify-content:space-between;align-items:flex-start;font-size:10px}.footer strong{font-size:11px;letter-spacing:.08em}.footer p{margin-top:10px;color:var(--muted);line-height:1.9}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:25px;color:var(--muted)}.footer small{font-size:9px;letter-spacing:.04em}.empty-state{padding:70px 20px;text-align:center;border:1px dashed var(--line);border-radius:10px}.empty-state h3{font-size:18px}.empty-state p{font-size:13px;margin:8px 0 20px;color:var(--muted)}dialog{border:0;border-radius:14px;padding:0;max-height:90vh;box-shadow:0 25px 100px #10102544;color:var(--ink)}dialog::backdrop{background:#111322b8;backdrop-filter:blur(4px)}body:has(dialog[open]){overflow:hidden}.project-dialog{width:min(920px,calc(100% - 32px))}.dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:17px 26px;border-bottom:1px solid var(--line);gap:15px;position:sticky;top:0;background:white;z-index:2}.dialog-bar h2{font-size:19px}.icon-button{font-size:28px;line-height:1;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);background:white;border-radius:50%;flex-shrink:0}.dialog-content{padding:28px}.dialog-content h2{font-size:26px;line-height:1.45;letter-spacing:-1px}.dialog-content>p{color:var(--muted);font-size:13px;margin:10px 0 16px}.project-details{display:flex;gap:20px;flex-wrap:wrap;margin:18px 0;font-size:12px}.project-details div{display:flex;gap:9px}.project-details dt{color:var(--muted)}.project-details dd{margin:0}.gallery-stage{position:relative;background:#10111a;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden}.gallery-stage img{height:100%;width:100%;object-fit:contain}.gallery-arrow{position:absolute;top:calc(50% - 22px);width:42px;height:44px;border:1px solid #ffffff66;background:#16162399;color:white;font-size:32px;line-height:1;border-radius:5px}.gallery-arrow.prev{left:12px}.gallery-arrow.next{right:12px}.photo-count{position:absolute;bottom:14px;background:#151422aa;color:white;border-radius:6px;padding:3px 12px;font-size:11px}.gallery-thumbs{display:flex;gap:8px;margin:12px 0 24px;overflow-x:auto;padding:4px}.gallery-thumbs button{width:80px;flex-shrink:0;padding:0;border:2px solid transparent;border-radius:4px;overflow:hidden;background:transparent}.gallery-thumbs button[aria-pressed=true]{border-color:var(--purple)}.gallery-thumbs img{width:100%;height:58px;object-fit:cover}.inquiry-dialog{width:min(600px,calc(100% - 32px));padding-bottom:24px}.inquiry-dialog>p,.inquiry-dialog>textarea,.inquiry-dialog>.dialog-actions{margin:18px 26px 0;width:calc(100% - 52px)}.inquiry-dialog>p{font-size:12px;color:var(--muted)}.inquiry-dialog textarea{background:#f6f5f9;font-size:13px;line-height:1.9}.dialog-actions{display:flex;gap:8px}.inquiry-dialog #copy-status{color:var(--purple);min-height:20px}.no-photo{display:flex;align-items:center;justify-content:center;min-height:240px;color:var(--muted);font-size:13px}
@media(min-width:1600px){.hero{height:580px}.hero-copy{top:78px}}@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.service-card{padding:20px 15px}.contact-layout{gap:40px}.portfolio-tools{align-items:flex-start}.search{min-width:150px}.search input{width:105px!important}.filter{padding:8px}.contact-intro h2{font-size:36px}.hero-copy{left:40px}.project-grid{gap:28px 18px}.project-text h3{font-size:16px}.section-head h2{font-size:32px}}@media(max-width:760px){html{scroll-padding-top:82px}.wrap{width:calc(100% - 36px)}.header-inner{height:76px}.brand img{height:38px;width:38px}.brand{gap:5px}.brand strong{font-size:21px}.brand small{font-size:6px}.header nav{gap:18px;font-size:11px}.header nav a:first-child{display:none}.nav-cta{gap:15px;padding:8px 12px}.opening{padding-top:15px}.hero{height:520px;border-radius:12px}.hero-copy{top:45px;left:27px;right:22px}.hero h1{font-size:40px;letter-spacing:-1.8px;margin-top:27px}.hero-copy>p:not(.eyebrow){font-size:13px}.hero-photo{object-position:65% center}.hero-overlay{background:linear-gradient(90deg,#0d0e1ade,#0d0e1a78)}.hero-caption{right:22px;left:27px;bottom:20px;flex-direction:column;gap:4px;font-size:9px}.services-grid{grid-template-columns:1fr 1fr}.service-card{padding:22px 18px;border-bottom:1px solid var(--line)}.service-card:nth-child(2){border-right:0}.service-card:nth-child(3){border-bottom:0}.service-card h2{font-size:23px}.service-foot{font-size:9px;line-height:1.8}.service-card p{font-size:11px}.service-top{font-size:8px;letter-spacing:.03em}.service-intro{margin-top:24px}.service-intro>p:last-child{font-size:10px}.portfolio-section{padding:64px 0}.section-head{display:block;margin-bottom:20px}.section-head h2{font-size:29px}.section-head>p{margin-top:16px;font-size:12px}.portfolio-tools{display:block;padding:10px 0 15px}.filters{gap:4px;margin-bottom:14px}.filter{font-size:11px;padding:7px 9px}.search{width:100%}.search input{width:100%!important}.result-line{font-size:10px}.result-line>span:last-child{display:none}.project-grid{grid-template-columns:1fr 1fr;gap:27px 15px}.image-badge{top:9px;left:9px;font-size:9px;padding:3px 6px}.image-count{right:8px;bottom:8px;font-size:9px}.project-text h3{font-size:14px}.project-text>small{font-size:10px}.project-text>p{font-size:9px}.project-text{padding-top:12px}.blog-strip{margin-top:35px;padding:18px 16px;gap:10px}.blog-strip>span:first-child{display:block}.blog-strip small{display:block;font-size:8px;margin-bottom:5px}.blog-strip strong{font-size:12px}.blog-strip>span:last-child{font-size:10px}.contact-section{padding:50px 0}.contact-layout{grid-template-columns:1fr;gap:32px}.contact-intro h2{font-size:36px}.inquiry-form{padding:23px 20px}.footer{gap:25px}.dialog-content{padding:20px}.dialog-content h2{font-size:22px}.dialog-bar{padding:12px 18px}.dialog-bar h2{font-size:17px}.dialog-actions{flex-wrap:wrap}.inquiry-dialog>p,.inquiry-dialog>textarea,.inquiry-dialog>.dialog-actions{margin-left:20px;margin-right:20px;width:calc(100% - 40px)}.project-details{gap:10px}.gallery-stage{aspect-ratio:4/3}}@media(max-width:380px){.wrap{width:calc(100% - 28px)}.hero h1{font-size:35px}.hero-copy{left:23px}.header nav{gap:12px}.brand img{width:32px;height:32px}.brand strong{font-size:19px}.service-card{padding:20px 13px}.project-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-heading{display:block}.form-heading>span{display:block;margin-top:6px}.hero-caption{left:23px}.inquiry-form{padding:20px 16px}.service-foot{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* Institutional buyer information, preserving the existing visual system. */
.hero h1{font-size:clamp(30px,3.4vw,47px);letter-spacing:-1.6px}.hero-copy{max-width:760px}.service-card h2{font-size:21px}.delivery-overview{padding-top:55px}.delivery-overview .section-head h2{font-size:28px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.process-grid article{border-top:2px solid #dcd4f1;padding:20px 0}.process-grid small{font-size:10px;color:var(--purple);letter-spacing:.05em}.process-grid h3{font-size:17px;margin:9px 0}.process-grid p,.operations-note p{font-size:12px;color:var(--muted);line-height:1.9}.operations-note{padding:23px 26px;background:#f0eef5;border-radius:10px;margin-top:12px}.operations-note h3{font-size:15px;margin-bottom:8px}.project-details{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}.project-details div{display:block;border-bottom:1px solid var(--line);padding:13px 12px 13px 0}.project-details dt{font-size:10px;margin-bottom:5px}.project-details dd{font-size:13px;white-space:pre-line;overflow-wrap:anywhere}.project-program,.project-operation{background:#f6f5fa;padding:20px;border-radius:8px;margin:18px 0}.project-program h3,.project-operation h3{font-size:15px}.project-program ol{padding-left:20px;font-size:13px;line-height:1.9;margin-bottom:0}.project-operation p{font-size:13px;white-space:pre-line;margin-top:10px}.company-profile{padding:45px 0 15px}.company-profile h2{font-size:25px;margin:10px 0 20px}.company-profile dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:12px}.company-profile dt{color:var(--muted);font-size:11px}.company-profile dd{margin:5px 0;overflow-wrap:anywhere}.company-profile h3{font-size:15px;margin-top:25px}.company-profile ul{padding-left:20px;font-size:12px;line-height:2}.company-editor{border-top:1px solid var(--line);padding-top:22px;margin:25px 0}.company-editor h3{font-size:18px}@media(max-width:760px){.hero h1{font-size:clamp(25px,5.6vw,39px);letter-spacing:-1px}.hero-copy{right:20px}.service-card h2{font-size:19px}.service-options label span{padding:7px 10px}.process-grid{grid-template-columns:1fr;gap:8px}.delivery-overview{padding-top:35px}.delivery-overview .section-head h2{font-size:25px}.operations-note{padding:20px}.company-profile dl{grid-template-columns:1fr}.project-details{grid-template-columns:1fr}.project-details div{display:block}.project-details dd{overflow-wrap:anywhere}}
