:root{--ivory: #f3f1eb;--ink: #101b2a;--cobalt: #2457e6;--gray-light: #e5e4df;--gray-steel: #737980;--navy-deep: #081321;--border: rgb(16 27 42 / 18%);--border-strong: rgb(16 27 42 / 26%);--surface: #ffffff;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{min-width:320px;background:var(--ivory);scroll-behavior:smooth}body{min-height:100vh;margin:0;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit}::selection{color:var(--ivory);background:var(--cobalt)}h1,h2,h3,h4,p{word-break:keep-all}button{font:inherit;background:none;border:none;cursor:pointer}.content-width{width:min(1440px,100% - 96px);margin:0 auto}.br-desktop{display:inline}.site-header{position:sticky;top:0;z-index:30;background:transparent;border-bottom:1px solid transparent;transition:background-color .3s ease,border-color .3s ease}.site-header.scrolled{background:var(--ivory);border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;justify-content:space-between;width:min(1440px,100% - 96px);height:88px;margin:0 auto}.brand{font-family:"Noto Serif KR",Georgia,serif;font-size:1.02rem;font-weight:600;letter-spacing:-.01em;text-decoration:none}.nav-desktop{display:flex;align-items:center;gap:40px}.nav-desktop a{color:var(--gray-steel);font-size:.84rem;font-weight:600;text-decoration:none;transition:color .2s ease}.nav-desktop a:hover{color:var(--cobalt)}.nav-toggle{display:none;width:32px;height:22px;flex-direction:column;justify-content:space-between;padding:2px 0}.nav-toggle span{display:block;width:100%;height:1.5px;background:var(--ink);transition:transform .25s ease,opacity .25s ease}.nav-mobile{position:fixed;inset:88px 0 0;z-index:25;display:flex;flex-direction:column;gap:8px;padding:40px;background:var(--ivory);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.nav-mobile.open{opacity:1;transform:translateY(0);pointer-events:auto}.nav-mobile a{padding:18px 0;border-bottom:1px solid var(--border);color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:1.4rem;font-weight:600;text-decoration:none}.hero{position:relative;display:flex;min-height:90vh;flex-direction:column;justify-content:center;padding:64px 0 48px}.hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:clamp(32px,5vw,80px)}.hero-eyebrow{margin:0 0 28px;color:var(--cobalt);font-size:.78rem;font-weight:700;letter-spacing:.04em}h1{max-width:640px;margin:0;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:clamp(2.3rem,4.6vw,3.6rem);font-weight:600;letter-spacing:-.02em;line-height:1.28}.hero-lead{max-width:520px;margin:32px 0 0;color:var(--gray-steel);font-size:1.02rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:44px}.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:2px;font-size:.86rem;font-weight:650;text-decoration:none;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.btn-primary{background:var(--cobalt);color:#fff}.btn-primary:hover{background:color-mix(in srgb,var(--cobalt) 85%,black)}.btn-ghost{border:1px solid var(--border-strong);color:var(--ink)}.btn-ghost:hover{border-color:var(--cobalt);color:var(--cobalt)}.hero-diagram{position:relative;width:100%;max-width:400px;aspect-ratio:400 / 360;margin:0 auto}.diagram-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.diagram-grid-line{stroke:var(--border);stroke-width:1}.diagram-line{fill:none;stroke:var(--border-strong);stroke-width:1;stroke-dasharray:600;stroke-dashoffset:600;animation:draw-line 1.4s ease forwards}.diagram-line-1{animation-delay:.3s}.diagram-line-2{animation-delay:.55s;stroke:var(--cobalt);opacity:.55}.diagram-line-3{animation-delay:.8s}@keyframes draw-line{to{stroke-dashoffset:0}}.diagram-ref-mark{fill:var(--cobalt)}.diagram-ref-ring{fill:none;stroke:var(--cobalt);stroke-width:1;opacity:.35;animation:ring-expand 1.8s cubic-bezier(.16,1,.3,1) forwards}@keyframes ring-expand{0%{r:7;opacity:.6}to{r:26;opacity:0}}.diagram-ref-label{position:absolute;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:.78rem;font-weight:650}.diagram-node{position:absolute;display:flex;align-items:center;gap:10px;white-space:nowrap;transform:translateY(-50%)}.diagram-node:before{width:9px;height:9px;content:"";background:var(--surface);border:1px solid var(--ink);flex:none}.diagram-coord{color:var(--cobalt);font-size:.68rem;font-weight:650;letter-spacing:.03em}.diagram-node-label{color:var(--ink);font-size:.78rem;font-weight:650}.hero-footnote{margin:56px auto 0;color:var(--gray-steel);font-size:.78rem}.reveal{opacity:0;transform:translateY(24px);animation:reveal-up .7s cubic-bezier(.16,1,.3,1) forwards}.reveal-1{animation-delay:.05s}.reveal-2{animation-delay:.16s}.reveal-3{animation-delay:.3s}.reveal-4{animation-delay:.44s}@keyframes reveal-up{to{opacity:1;transform:translateY(0)}}.scroll-reveal{opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}.scroll-reveal.in-view{opacity:1;transform:translateY(0)}.section{padding:clamp(88px,11vw,140px) 0;border-top:1px solid var(--border)}.section-head{margin-bottom:56px}.section-rule{display:flex;align-items:center;gap:16px;margin-bottom:28px}.section-number,.section-rule .section-number{color:var(--cobalt);font-family:"Noto Serif KR",Georgia,serif;font-size:.82rem;font-weight:600}.section-rule-line{flex:1;height:1px;background:var(--border-strong);max-width:260px}.section-rule-label{color:var(--gray-steel);font-size:.78rem;font-weight:650;letter-spacing:.04em}.section-head h2{margin:0;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:clamp(1.9rem,3.6vw,2.9rem);font-weight:600;letter-spacing:-.02em;line-height:1.32}.about-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,6vw,100px)}.about-copy p{max-width:480px;margin:0 0 22px;color:var(--gray-steel);font-size:1.02rem;line-height:1.8}.about-points{display:flex;flex-direction:column;gap:0;margin:0;padding:0;list-style:none}.about-points li{padding:26px 0;border-top:1px solid var(--border)}.about-points li:last-child{border-bottom:1px solid var(--border)}.about-points h3{margin:0 0 8px;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:1.15rem;font-weight:600}.about-points p{margin:0;color:var(--gray-steel);font-size:.9rem;line-height:1.7}.business-rows{border-top:1px solid var(--border-strong)}.business-row{position:relative;display:grid;grid-template-columns:minmax(160px,.9fr) minmax(0,2fr) auto;align-items:center;gap:40px;padding:44px 0}.business-graphic{position:absolute;right:0;bottom:-1px;left:0;z-index:0;height:2px;background:var(--cobalt);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.16,1,.3,1)}.business-row:after{position:absolute;right:0;bottom:-1px;left:0;height:1px;content:"";background:var(--border-strong)}.business-row:hover .business-graphic{transform:scaleX(1)}.business-col{position:relative;z-index:1}.business-col-name{display:flex;align-items:baseline;gap:18px}.business-col-name .business-number{color:var(--cobalt);font-family:"Noto Serif KR",Georgia,serif;font-size:.82rem;font-weight:600}.business-col-name h3{margin:0;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:600}.business-title{margin:0 0 10px;color:var(--ink);font-size:1rem;font-weight:650}.business-desc{max-width:480px;margin:0 0 14px;color:var(--gray-steel);font-size:.9rem;line-height:1.8}.business-tags{display:block;color:var(--gray-steel);font-size:.74rem;font-weight:600}.business-btn{display:inline-flex;align-items:center;gap:12px;color:var(--ink);font-size:.8rem;font-weight:650;text-decoration:none;white-space:nowrap;transition:color .2s ease}.business-btn:hover{color:var(--cobalt)}.software-hero{padding-bottom:0}.back-link{display:inline-block;margin-bottom:40px;color:var(--gray-steel);font-size:.82rem;font-weight:650;text-decoration:none}.back-link:hover{color:var(--cobalt)}.software-title{max-width:720px;margin:0 0 24px;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:clamp(2rem,4vw,3.1rem);font-weight:600;letter-spacing:-.02em;line-height:1.3}.software-lead{max-width:620px;margin:0;color:var(--gray-steel);font-size:1rem;line-height:1.8}.software-grid-section{border-top:none;padding-top:56px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border)}.product-card{display:flex;min-height:220px;flex-direction:column;padding:26px;background:var(--surface)}.product-meta{display:flex;justify-content:space-between;margin-bottom:20px;color:var(--gray-steel);font-size:.68rem;font-weight:650}.product-meta span:first-child{color:var(--cobalt)}.product-copy{flex:1}.product-copy h2,.product-copy h4{margin:0 0 8px;color:var(--ink);font-size:1.02rem;font-weight:650}.product-copy p{margin:0;color:var(--gray-steel);font-size:.8rem;line-height:1.7}.product-actions{display:flex;flex-direction:column;gap:8px;margin-top:20px;padding-top:14px;border-top:1px solid var(--border)}.product-actions a{color:var(--ink);font-size:.76rem;font-weight:650;text-decoration:none}.product-actions a:hover{color:var(--cobalt)}.product-action-secondary{color:var(--gray-steel)!important;font-size:.7rem!important;font-weight:600!important}.principles-section{background:var(--navy-deep)}.principles-section .section-number{color:#7fa0ff}.principles-section h2{color:var(--ivory)}.principles-list{border-top:1px solid rgb(243 241 235 / 14%)}.principle-row{display:grid;grid-template-columns:90px minmax(200px,.8fr) minmax(0,1.4fr);gap:32px;padding:40px 0;border-bottom:1px solid rgb(243 241 235 / 14%)}.principle-number{color:#7fa0ff;font-family:"Noto Serif KR",Georgia,serif;font-size:1.5rem;font-weight:600}.principle-row h3{margin:0;color:var(--ivory);font-family:"Noto Serif KR",Georgia,serif;font-size:1.2rem;font-weight:600}.principle-row p{max-width:460px;margin:0;color:#f3f1ebad;font-size:.92rem;line-height:1.75}.org-chart{position:relative;padding-top:32px}.org-core{width:fit-content;margin:0 auto 8px;padding:22px 34px;border:1px solid var(--cobalt);border-radius:2px;background:var(--surface);text-align:center}.org-core span{display:block;margin-bottom:12px;color:var(--cobalt);font-family:"Noto Serif KR",Georgia,serif;font-size:1.1rem;font-weight:650}.org-core ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;margin:0;padding:0;list-style:none}.org-core li{color:var(--gray-steel);font-size:.72rem;font-weight:600}.org-lines{display:block;width:100%;height:90px}.org-lines line{stroke:var(--border-strong);stroke-width:1}.org-leaves{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:center}.org-leaf{padding:20px;border:1px solid var(--border-strong);border-radius:2px;background:var(--surface);color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:1rem;font-weight:600}.closing-section{padding:clamp(120px,16vw,180px) 0;text-align:center;background:var(--gray-light);border-top:1px solid var(--border)}.closing-inner h2{margin:0 0 24px;color:var(--ink);font-family:"Noto Serif KR",Georgia,serif;font-size:clamp(1.9rem,4vw,3rem);font-weight:600;line-height:1.4}.closing-inner h2 em{color:var(--cobalt);font-style:normal}.closing-inner>p{max-width:480px;margin:0 auto 40px;color:var(--gray-steel);font-size:.96rem;line-height:1.8}.closing-email{display:block;margin-top:20px;color:var(--gray-steel);font-size:.84rem;text-decoration:none}.closing-email:hover{color:var(--cobalt)}.site-footer{padding:56px 0 32px}.footer-inner{display:grid;grid-template-columns:1.3fr 1fr auto;align-items:start;gap:32px;padding-bottom:40px}.footer-brand .brand{display:block;margin-bottom:12px}.footer-brand p{max-width:340px;margin:0;color:var(--gray-steel);font-size:.82rem;line-height:1.7}.footer-nav{display:flex;flex-direction:column;gap:12px}.footer-nav a{color:var(--gray-steel);font-size:.86rem;text-decoration:none}.footer-nav a:hover{color:var(--cobalt)}.footer-contact{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right}.footer-contact a{color:var(--ink);font-size:.86rem;text-decoration:none}.footer-contact a:hover{color:var(--cobalt)}.footer-contact p{margin:0;color:var(--gray-steel);font-size:.82rem}.footer-bottom{padding-top:24px;border-top:1px solid var(--border)}.footer-bottom p{margin:0;color:var(--gray-steel);font-size:.76rem}a:focus-visible,button:focus-visible{border-radius:2px;outline:2px solid var(--cobalt);outline-offset:4px}@media(width<=980px){.hero-grid{grid-template-columns:1fr}.hero-diagram{max-width:320px;margin-top:40px}.about-grid{grid-template-columns:1fr}.business-row{grid-template-columns:1fr;row-gap:14px;padding:36px 24px;margin:0 -24px}.principle-row{grid-template-columns:56px 1fr}.principle-row p{grid-column:2}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-inner{grid-template-columns:1fr 1fr}.footer-contact{grid-column:1 / -1;align-items:flex-start;text-align:left}}@media(width<=640px){.content-width,.header-inner{width:calc(100% - 40px)}.header-inner{height:72px}.nav-desktop{display:none}.nav-toggle{display:flex}.nav-mobile{inset:72px 0 0}.hero{min-height:calc(100svh - 72px);padding:40px 0}h1{font-size:clamp(2rem,9vw,2.6rem)}.br-desktop{display:none}.section-head{grid-template-columns:1fr;gap:8px}.product-grid,.org-leaves{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;gap:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none;opacity:1;transform:none}.scroll-reveal{opacity:1;transform:none;transition:none}.diagram-line{animation:none;stroke-dasharray:none}*,*:before,*:after{transition-duration:.01ms!important}}
