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