@font-face{font-family:Pretendard;src:url('assets/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--bg:var(--white);--surface:var(--grey-50);--soft:var(--grey-100);--text:var(--grey-900);--secondary:var(--grey-700);--muted:var(--grey-600);--line:var(--grey-200);--brand:#087ea4;--brand-pressed:#066481;--focus:#087ea4;--motion-fast:120ms;--motion-base:200ms;--motion-slow:320ms;--ease:cubic-bezier(.22,.61,.36,1);color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;background:var(--bg);color:var(--text);font-family:Pretendard,'Malgun Gothic',sans-serif;font-size:var(--body-1-size);line-height:var(--body-1-line-height);font-weight:400;letter-spacing:var(--body-1-tracking);word-break:keep-all;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}button{cursor:pointer}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:4px}button{border:0}svg{display:block}img{display:block;max-width:100%}h1,h2,h3,p,dl,dd{margin:0}button:disabled{opacity:.3;cursor:default}.container,.header-inner{width:min(100% - 48px,1120px);margin:0 auto}.skip{position:fixed;top:-100px;left:24px;background:var(--text);color:var(--bg);padding:12px 20px;z-index:100}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header{height:80px;position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;gap:32px}.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}.brand img{width:104px;height:auto}.brand-name{font-size:17px;font-weight:600;letter-spacing:-.01em}.header nav{display:flex;align-items:center;gap:28px;margin-left:auto}.header nav a{font-size:15px;line-height:24px;min-height:44px;display:flex;align-items:center;position:relative;font-weight:500;color:var(--secondary);white-space:nowrap}.header nav a:hover,.header nav a[aria-current="location"]{color:var(--text)}.header nav a[aria-current="location"]:after{content:'';height:2px;position:absolute;left:0;right:0;bottom:0;background:var(--brand)}.header-tools{display:flex;align-items:center;gap:4px}.icon-button{background:transparent;display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:12px;transition:background var(--motion-fast) var(--ease)}.icon-button:hover{background:var(--soft)}.icon-button svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.menu-button{display:none}
.hero{padding:64px 0 0}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}.company-name{font-size:18px;font-weight:600;line-height:1.45;color:var(--secondary)}h1{font-size:var(--display-1-size);line-height:var(--display-1-line-height);font-weight:var(--display-1-weight);letter-spacing:var(--display-1-tracking);margin:20px 0 24px}.hero-description{font-size:var(--body-1-size);line-height:1.75;color:var(--secondary);max-width:480px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.button{height:56px;display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:var(--radius-xl);padding:0 24px;font-size:17px;line-height:1.25;font-weight:600;letter-spacing:-.005em;transition:background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease);white-space:nowrap}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-pressed)}.primary:active{background:var(--brand-pressed)}.secondary{background:var(--soft);color:var(--text)}.secondary:hover{background:var(--line)}.button span{font-size:20px;font-weight:400}.company-overview{background:var(--surface);border-radius:var(--radius-3xl);padding:32px}.company-overview h2{font-size:20px;line-height:1.35;font-weight:700;letter-spacing:-.015em;margin-bottom:8px}.company-overview dl>div{padding:20px 0;border-bottom:1px solid var(--line)}.company-overview dt{font-size:17px;line-height:1.45;font-weight:600;letter-spacing:-.01em}.company-overview dd{font-size:15px;line-height:1.65;color:var(--secondary);margin-top:8px}.institute-link{padding-top:20px}.institute-link>span{font-size:13px;color:var(--muted);display:block;margin-bottom:8px}.institute-link a{min-height:44px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:15px;font-weight:500}.institute-link a:hover{color:var(--brand)}.company-purpose{margin-top:64px;padding:32px 0;display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid var(--line)}.company-purpose p:first-child{font-size:20px;font-weight:600;line-height:1.35;letter-spacing:-.015em}.company-purpose p:last-child{font-size:15px;line-height:1.65;color:var(--secondary);text-align:right}
.business-section{padding:80px 0;background:var(--surface)}.section-heading{margin-bottom:48px;max-width:760px}.section-label{font-size:15px;line-height:1.5;font-weight:600;color:var(--secondary);margin-bottom:16px}.section-heading h2,.contact-copy h2{font-size:var(--display-2-size);line-height:1.25;letter-spacing:var(--display-2-tracking);font-weight:var(--display-2-weight)}.section-heading>p:last-child:not(.section-label){font-size:17px;line-height:1.7;color:var(--secondary);margin-top:24px}.business-group{display:grid;grid-template-columns:240px 1fr;gap:48px;padding:32px 0;border-top:1px solid var(--line)}.business-group:last-child{padding-bottom:0}.group-heading{padding-top:16px}.group-heading h3{font-size:22px;font-weight:700;line-height:1.4;letter-spacing:-.015em;margin-bottom:12px}.group-heading p{font-size:15px;line-height:1.7;color:var(--secondary)}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;align-content:start}.service-row{padding:16px 12px 16px 0;min-height:108px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:0;background:transparent;transition:background var(--motion-fast) var(--ease);border-bottom:1px solid var(--line)}.service-row:hover{background:var(--soft)}.service-row>span:first-child{display:block}.service-row strong{font-size:18px;line-height:1.45;font-weight:600;letter-spacing:-.01em;display:block}.service-row small{font-size:15px;font-weight:400;line-height:1.65;color:var(--secondary);display:block;margin-top:8px}.row-arrow{font-size:20px;font-weight:400;color:var(--muted);flex-shrink:0}.service-row:hover .row-arrow{color:var(--brand)}
.approach-section{padding:80px 0}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;border-top:1px solid var(--line);padding-top:32px}.process-list h3{font-size:20px;font-weight:600;line-height:1.35;letter-spacing:-.015em;position:relative;margin-bottom:16px}.process-list article:not(:last-child) h3:after{content:'→';position:absolute;right:0;font-weight:400;color:var(--muted)}.process-list p{font-size:15px;line-height:1.75;color:var(--secondary)}.approach-note{margin-top:40px;padding:24px 32px;border-radius:var(--radius-xl);background:var(--surface)}.approach-note strong{font-size:17px;line-height:1.45;font-weight:600}.approach-note p{font-size:15px;line-height:1.7;color:var(--secondary);margin-top:8px}
.research-section{background:var(--surface);padding:64px 0}.research-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.research-layout h2{font-size:28px;line-height:1.3;font-weight:700;letter-spacing:-.02em}.research-description{font-size:17px;line-height:1.75;color:var(--secondary);margin-top:20px;max-width:420px}.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:15px;font-weight:600;margin-top:20px}.text-link:hover{color:var(--brand)}.text-link span{font-size:20px;font-weight:400}.research-activities>div{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);align-items:baseline}.research-activities>div:last-child{border:0}.research-activities dt{font-size:17px;font-weight:600;line-height:1.45}.research-activities dd{font-size:15px;line-height:1.65;color:var(--secondary)}
.contact-section{padding:80px 0}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start}.contact-copy>p:not(.section-label){font-size:17px;line-height:1.75;color:var(--secondary);margin-top:24px}.contact-button{margin-top:32px}.contact-details>div{padding:24px 0;border-bottom:1px solid var(--line)}.contact-details>div:first-child{padding-top:0}.contact-details>div:last-child{border:0;padding-bottom:0}.contact-details dt{font-size:15px;color:var(--muted);line-height:1.5;margin-bottom:8px}.contact-details dd{font-size:18px;font-weight:500;line-height:1.65;letter-spacing:-.01em}.contact-details a{min-height:44px;position:relative;display:block;padding-right:32px}.contact-details a>span{position:absolute;right:0;top:0;font-size:20px;color:var(--muted)}.contact-details a:hover{color:var(--brand)}
footer{background:var(--surface);padding:40px 0;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.footer-top>strong{font-size:17px;font-weight:600}.back-top{min-height:44px;display:inline-flex;align-items:center;gap:20px;font-size:15px;color:var(--secondary)}.back-top span{font-size:20px}.footer-bottom{display:flex;justify-content:space-between;gap:32px}.footer-bottom p{font-size:13px;line-height:1.7;color:var(--secondary)}.footer-bottom .copyright{font-size:12px;color:var(--muted);margin-top:16px}.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;align-self:flex-start}.footer-links a{display:flex;align-items:center;min-height:44px;font-size:13px;color:var(--secondary)}.footer-links a:hover{color:var(--brand)}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.dialog-heading h2{font-size:24px;line-height:1.3;font-weight:700;letter-spacing:-.02em}.dialog-heading .section-label{margin:0}dialog{padding:32px;border:0;border-radius:var(--radius-2xl);width:min(560px,calc(100% - 48px));background:var(--bg);color:var(--text);max-height:85dvh;overflow-y:auto;box-shadow:0 12px 32px #1521371a,0 2px 6px #1521370f}dialog::backdrop{background:#0008}#dialog-search{background:var(--surface);height:56px;border:1px solid var(--line);border-radius:var(--radius-m);display:flex;align-items:center;padding:0 8px 0 16px;gap:4px}#dialog-search:focus-within{border-color:var(--brand)}#dialog-query{width:100%;min-width:0;border:0;background:transparent;outline:0;font-size:17px;line-height:1.5}#dialog-query::placeholder{color:var(--muted)}#search-results{margin-top:16px}.result-button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:16px 8px;border-bottom:1px solid var(--line);background:transparent;text-align:left;font-size:17px;font-weight:500;border-radius:var(--radius-s)}.result-button:hover{background:var(--surface)}.result-button small{display:none}.result-button>span:last-child{font-size:20px;color:var(--muted)}.search-help{font-size:13px;line-height:1.65;color:var(--secondary);margin-top:24px}.search-help a{color:var(--brand);display:inline-flex;align-items:center;min-height:44px}.no-results{padding:24px 0;font-size:15px;line-height:1.75;color:var(--secondary)}#detail-title{font-size:28px;line-height:1.3;font-weight:700;letter-spacing:-.02em;margin-bottom:20px}#detail-desc{font-size:17px;line-height:1.75;color:var(--secondary)}.detail-subheading{font-size:17px;font-weight:600;margin:32px 0 12px}#detail-list{padding:0;list-style:none;margin:0 0 32px}#detail-list li{padding:16px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.65}.detail-cta{width:100%}
body.dark{--bg:#171b22;--surface:#20262f;--soft:#2b333e;--text:#f2f4f6;--secondary:#bcc4cf;--muted:#a0adbd;--line:#3a4450;--brand:#087ea4;--brand-pressed:#066481;--focus:#79cee8;color-scheme:dark}.dark .brand img{background:white;padding:4px;border-radius:8px}
@media(max-width:1100px){.brand-name{display:none}.header-inner{gap:20px}.header nav{gap:24px}.hero-grid{gap:40px;grid-template-columns:1.1fr 1fr}.hero-actions{gap:12px}.button{padding:0 20px}.business-group{grid-template-columns:200px 1fr;gap:32px}.research-layout,.contact-layout{gap:48px}.contact-details dd{font-size:17px}}
@media(max-width:900px){.header nav{gap:16px}.header-inner{gap:16px}.hero-grid{grid-template-columns:1fr 1fr;gap:32px}h1{font-size:40px;line-height:1.3;letter-spacing:-.02em}.company-overview{padding:24px}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-actions .button{width:100%;max-width:320px}.company-purpose{margin-top:48px}.business-group{grid-template-columns:1fr;gap:16px}.group-heading{padding-top:0}.group-heading p br{display:none}.process-list{gap:24px}.process-list h3{font-size:18px}.process-list p{font-size:15px}.process-list p br{display:none}.research-layout{gap:40px}.research-activities>div{grid-template-columns:90px 1fr;gap:12px}.contact-layout{gap:40px}}
@media(max-width:760px){html{scroll-padding-top:88px}.header{height:72px}.container,.header-inner{width:calc(100% - 48px)}.brand img{width:96px}.header-tools{margin-left:auto}.menu-button{display:grid}.header nav{display:none;position:absolute;left:0;right:0;top:71px;padding:16px 24px 24px;background:var(--bg);border-bottom:1px solid var(--line);margin:0}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav a{font-size:17px;min-height:56px}.header nav a[aria-current="location"]:after{display:none}.hero{padding-top:40px}.hero-grid{grid-template-columns:1fr;gap:32px}.company-name{font-size:17px}.hero h1{font-size:40px;line-height:1.2;letter-spacing:-.02em;margin-top:16px;margin-bottom:24px}.hero-description{font-size:17px;line-height:1.7;max-width:none}.hero-actions{flex-direction:row;align-items:stretch;gap:12px;margin-top:24px}.hero-actions .button{width:auto;max-width:none;font-size:15px;height:48px;border-radius:14px;padding:0 16px}.button{height:56px}.company-overview{padding:24px;border-radius:20px}.company-overview h2{font-size:20px;margin-bottom:4px}.company-overview dl>div{padding:16px 0}.company-overview dd{font-size:15px;line-height:1.65;margin-top:8px}.institute-link{padding-top:16px}.company-purpose{display:block;margin-top:32px;padding:24px 0 32px}.company-purpose p:first-child{font-size:20px}.company-purpose p:last-child{text-align:left;margin-top:12px;font-size:15px;line-height:1.7}.desktop-break{display:none}.business-section,.approach-section,.contact-section{padding:64px 0}.section-heading{margin-bottom:32px}.section-label{font-size:15px;margin-bottom:12px}.section-heading h2,.contact-copy h2{font-size:28px;line-height:1.3;letter-spacing:-.02em}.section-heading>p:last-child:not(.section-label){font-size:17px;line-height:1.7;margin-top:20px}.business-group{padding:24px 0;gap:16px}.group-heading h3{font-size:22px;margin-bottom:8px}.group-heading p{font-size:15px;line-height:1.7}.service-list{grid-template-columns:1fr;gap:0}.service-row{min-height:96px;padding:20px 4px 20px 0;gap:16px}.service-row strong{font-size:17px}.service-row small{font-size:15px;line-height:1.65;margin-top:8px}.process-list{grid-template-columns:1fr;gap:0;padding-top:0}.process-list article{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.process-list h3{font-size:18px;line-height:1.45;margin:0}.process-list article:not(:last-child) h3:after{display:none}.process-list p{font-size:15px;line-height:1.7}.process-list article:last-child{border:0;padding-bottom:0}.approach-note{padding:24px;margin-top:32px}.approach-note strong{font-size:17px;line-height:1.6;display:block}.approach-note p{font-size:15px;line-height:1.7}.research-section{padding:48px 0}.research-layout{grid-template-columns:1fr;gap:24px}.research-layout h2{font-size:24px;line-height:1.3;letter-spacing:-.02em}.research-description{font-size:17px;line-height:1.7;margin-top:16px}.text-link{margin-top:16px}.research-activities>div{grid-template-columns:88px 1fr;gap:16px;padding:20px 0}.research-activities dt{font-size:17px}.research-activities dd{font-size:15px;line-height:1.65}.contact-layout{grid-template-columns:1fr;gap:40px}.contact-copy>p:not(.section-label){font-size:17px;line-height:1.7;margin-top:20px}.contact-button{margin-top:24px;width:100%}.contact-details>div{padding:20px 0}.contact-details dd{font-size:17px}.contact-details dt{font-size:15px}.footer-top{margin-bottom:20px}.footer-bottom{display:block}.footer-links{margin-top:20px;gap:4px 24px}.footer-bottom p{font-size:13px;line-height:1.75}.footer-top>strong{font-size:17px}.back-top{font-size:13px;gap:12px}footer{padding:32px 0}.footer-bottom .copyright{font-size:12px}.footer-links a{font-size:13px}dialog{position:fixed;left:0;right:0;top:auto;bottom:0;margin:0;width:100%;max-width:none;max-height:90dvh;border-radius:20px 20px 0 0;padding:24px 24px max(24px,env(safe-area-inset-bottom));box-shadow:0 -2px 12px #1521370f}.dialog-heading{margin-bottom:20px}.dialog-heading h2{font-size:22px}.dialog-heading .icon-button{margin-right:-8px}#detail-title{font-size:24px}#detail-desc{font-size:17px;line-height:1.7}.detail-subheading{margin-top:24px}.result-button{font-size:17px;min-height:56px}.search-help{font-size:13px}}
@media(max-width:360px){.hero h1{font-size:36px}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.header-inner{gap:8px}.header-tools{gap:0}.brand img{width:88px}.process-list article{grid-template-columns:80px 1fr;gap:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.contact-inline{border:0;background:none;color:var(--brand);font:inherit;text-decoration:underline;padding:10px 0;cursor:pointer;min-height:44px}.text-link[data-contact-open]{border:0;background:none;padding:0;font-family:inherit;cursor:pointer}.contact-button{cursor:pointer}#contact-dialog{width:min(560px,calc(100% - 48px))}.inquiry-description{color:var(--muted);margin:-4px 0 24px;line-height:1.6}.form-field{display:block;margin-bottom:20px}.form-field>span{display:block;font-weight:600;margin-bottom:8px}.form-field input,.form-field textarea{display:block;width:100%;font:inherit;line-height:1.5;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px;min-height:48px}.form-field textarea{resize:vertical;min-height:140px;max-height:340px}.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--brand);outline-offset:2px}.inquiry-consent{display:flex;align-items:flex-start;gap:12px;min-height:44px;cursor:pointer;font-size:15px;line-height:1.6;color:var(--muted)}.inquiry-consent input{width:20px;height:20px;flex-shrink:0;margin:3px 0;accent-color:var(--brand)}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.inquiry-status{color:var(--text);font-size:15px;line-height:1.6;margin:12px 0}.inquiry-status:empty{display:none}.inquiry-submit{width:100%;margin-top:16px;cursor:pointer}.inquiry-submit:disabled{opacity:.65;cursor:wait}.inquiry-success-message{font-size:24px;font-weight:700;margin-bottom:12px}#inquiry-success>.button{margin-top:24px;width:100%;cursor:pointer}[hidden]{display:none!important}
@media(max-width:600px){#contact-dialog{width:100%;max-height:94dvh}.form-field{margin-bottom:16px}.form-field textarea{min-height:120px}.inquiry-description{font-size:15px;margin-bottom:20px}}
