/* Audit fixes: keep the established grid and palette, improve legibility and access. */
:root{--sans:system-ui,-apple-system,'Segoe UI','Microsoft YaHei','PingFang SC','Malgun Gothic',sans-serif;--latin:var(--sans)}
body,html[lang='en'] body,html[lang='ko'] body{font-family:var(--sans);overflow-wrap:anywhere}
/* Rerendering translated sections must not move the user's viewport. */
html,body{overflow-anchor:none}
button,input{font-family:inherit}
:focus-visible{outline:2px solid #b88a3b;outline-offset:4px}
[hidden]{display:none!important}
.skip-link{position:fixed;left:16px;top:10px;z-index:200;background:#fff;color:#07182d;padding:14px;transform:translateY(-180%)}
.skip-link:focus{transform:none}
.hero,.scroll-scenes-v14 .hero{overflow:clip}
.hero-inner>*{min-width:0}
.wechat-card{overflow:clip;transform:none!important;scroll-margin-top:0}
.wechat-card:after{display:none}
.verification-note{font-size:12px;line-height:1.8;color:#d9c28f;max-width:850px;margin:28px 0 12px}
.trust-row{margin-top:12px;gap:32px;flex-wrap:wrap}
.unverified-label{font-size:11px;color:#e1c58d;margin-top:6px}
.hero-card>p,.wechat-card>.wechat-help{font-size:12px;color:#586572}
.wechat-copy{font-size:12px;min-height:44px;height:auto;padding:10px 12px}
.wechat-contact-details>strong{word-break:normal;overflow-wrap:normal}
.wechat-contact-details>strong>span{display:block;font-size:12px;margin-bottom:4px;font-weight:500}
.wechat-contact-details>strong>b{display:block;font-size:16px;white-space:nowrap}
.wechat-logo{font-size:8px;white-space:nowrap}
.utility-wechat-trigger,.utility-kakao-trigger{width:24px;height:24px}
.qa-search-clear{width:44px;height:44px}
.floating-consult span{white-space:nowrap;overflow-wrap:normal;font-size:10px}
.floating-consult i{display:none}
.motion-backtop.avoids-control{opacity:0;visibility:hidden;pointer-events:none}
.footer-backtop{display:inline-block;padding:12px 0;color:#e1c58d;font-size:12px}
.consult-meta span{font-size:11px;color:#596775}
.client-strip .container{height:auto;min-height:110px;gap:28px;padding-block:24px}
.client-strip p{font-family:var(--sans);font-size:11px;line-height:1.6;letter-spacing:.04em;flex:0 0 220px}
.logos{gap:20px;flex-wrap:wrap;filter:none;color:#5c6976}
.logos a{font-size:11px;padding-block:10px}
.footer-qr-grid{display:flex;flex-wrap:wrap;gap:20px;margin-top:24px}
.footer-qr-grid figure{margin:0;max-width:150px}
.footer-qr-grid img{display:block;width:140px;height:140px;object-fit:contain;padding:6px;background:#fff}
.footer-qr-grid figcaption{font-size:11px;margin-top:8px;overflow-wrap:anywhere}
.footer-main{grid-template-columns:1.5fr .8fr .8fr 1.4fr;gap:30px}
.footer-bottom div{flex-wrap:wrap;gap:16px}
.footer-bottom{font-size:11px}
.footer-brand>p,.contact p,.footer-main>div:not(.footer-brand)>a:not(.phone){font-size:12px}
.contact .phone{flex-wrap:wrap;font-size:17px}
.contact .phone small{font-size:10px}
.footer-main h3{font-size:14px}
.accordion article.open>div{max-height:none}
.accordion article:not(.open)>div{visibility:hidden}
.accordion article p{font-size:13px}
.qa-head,.qa-search,.qa-results,.qa-tabs{min-width:0}
.qa-title-main{white-space:normal}
.qa-search input{font-family:inherit;min-width:0}
.qa-source-note{letter-spacing:.03em;line-height:1.6}
.qa-item{scroll-margin-top:90px}
.qa-question{font-family:inherit}
.qa-question-copy small,.qa-answer-meta{font-size:11px}
.qa-tabs button,.qa-load-more{font-family:inherit;min-height:44px;line-height:1.4}
.qa-tabs button{flex:none}
.qa-disclaimer p{font-size:13px}
.service-grid.has-core-services{grid-template-columns:repeat(5,minmax(0,1fr))}
.service-card{padding-bottom:74px}
.service-card .tags{padding-right:0}
.service-card>a{pointer-events:auto;width:44px;height:44px}
.service-card>p:not(.ko),.service-explorer-facts p,.identity-benefits-grid p,.startup-case-grid p,.knowledge-card p,.process-detail p,.service-detail-section p,.service-detail-section li{font-size:12px;line-height:1.8}
.service-detail-note,.policy-source,.source-note,.article-warning,.article-source{font-size:11px;line-height:1.8}
.core-route,.guide-feature{height:auto;min-height:390px;display:flex;align-items:flex-end}
.core-route>div,.guide-feature>div{position:relative;inset:auto;width:100%;padding:30px}
.guide-feature{min-height:310px}
.guide-feature>div{padding:60px 20px 22px}
.guide-feature p{font-size:12px}
.guide-feature:hover:after,.service-explorer-detail:hover span{transform:none}
.core-route p,.policy-points li{font-size:12px}
.route-panel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding:36px}
.route-cta{max-width:100%;width:auto;align-self:flex-start}
.policy-view{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.policy-content{padding:32px;min-width:0}
.policy-actions a,.guide-dialog-copy a,.service-detail-cta{height:auto;min-height:48px;padding:12px 16px;gap:12px;font-size:12px}
.process-detail{grid-template-columns:90px minmax(0,1fr) 170px}
.process-detail a{height:auto;min-height:44px;padding:10px;text-align:center}
.knowledge-card button,.service-explorer-detail,.core-route button,.startup-case-grid button,.language-menu button,.mobile-languages button,.menu-toggle{min-height:44px}
.knowledge-card-visual{flex:none}
.knowledge-card-visual b{font-size:22px;display:block}
.knowledge-meta{flex-wrap:wrap;gap:8px}
.article-byline{flex-wrap:wrap;line-height:1.7}
.article-points li{font-size:13px}
.service-detail-dialog,.guide-dialog{overflow:auto;overscroll-behavior:contain}
.article-close,.guide-dialog-close,.service-detail-close{min-width:44px;min-height:44px;z-index:5}
.service-detail-shell{max-height:none;overflow:visible;min-height:0}
.service-detail-image{height:min(760px,92vh)}
.guide-dialog-close,.service-detail-close{position:sticky;float:right;top:12px;margin:-24px -8px 8px 8px}
.story-head{align-items:center;gap:24px;flex-wrap:wrap}
.story-controls{flex:none}
.story-content{min-width:0}
.case-data{gap:12px;margin-top:24px}
.nav-links{gap:22px;white-space:nowrap}
.nav-links a{font-size:13px}
.nav-cta{margin-left:24px;white-space:nowrap}
.policy-badge-new{display:none}
.nav-links.open{max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}
.hero-visual-pagination button{min-width:28px;min-height:28px}
.hero-visual-pagination .hero-pause{width:auto;padding-inline:8px;color:#e1c58d;border:1px solid #7a8896;font-size:11px}
.hero-visual-pagination .hero-pause:before{display:none}
.scroll-scenes-v14 .scene-stage-v14,.scroll-scenes-v14 .scene-item-v14,.scroll-scenes-v14 .scene-heading-v14{will-change:auto}
.scroll-scenes-v14 .scene-heading-v14{translate:0 0}
.scroll-scenes-v14 .scene-stage-v14:focus-within,.scroll-scenes-v14 .scene-item-v14:focus-within{opacity:1!important;filter:none!important}
html[lang='ko'] .scene-rail-label,html[lang='en'] .scene-rail-label{writing-mode:vertical-rl;letter-spacing:.02em}
.utility-wechat.is-open .utility-wechat-popover{opacity:1;visibility:visible;transform:translate(-50%,0);pointer-events:auto}
.utility-kakao.is-open .utility-kakao-popover{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.utility-wechat-popover,.utility-kakao-popover{pointer-events:auto}
@media(max-width:1200px){.nav-links{gap:13px}.navbar .brand-copy strong{font-size:16px}.nav-cta{margin-left:16px;padding:0 12px}.hero-inner{gap:40px;grid-template-columns:1fr 1fr}.hero h1{font-size:50px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand,.contact{grid-column:auto}}
@media(max-width:1100px){.service-grid.has-core-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:761px) and (max-width:1050px){.mobile-languages{display:flex;gap:8px;padding-top:12px}.mobile-languages button{min-width:40px;background:transparent;color:#fff;border:1px solid #8b9aa8}}
@media(max-width:1050px){.policy-view{grid-template-columns:1fr}.policy-image{min-height:260px}.route-panel{grid-template-columns:1fr}.process-detail{grid-template-columns:80px minmax(0,1fr)}.process-detail a{grid-column:2}.hero h1{font-size:43px}}
@media(max-width:760px){.hero-inner{display:block}.hero h1{font-size:38px}.client-strip .container{display:block;padding-block:20px}.client-strip p{display:block;width:auto;margin:0 0 12px}.logos{justify-content:flex-start;gap:12px 20px}.service-grid.has-core-services{grid-template-columns:1fr}.nav-links{white-space:normal;gap:10px}.nav-links>a{padding:8px 4px}.core-route>div{padding:25px}.policy-content{padding:28px 23px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand,.contact{grid-column:span 2}.process-detail{display:block}.process-detail a{margin-top:18px}.route-panel{padding:28px 23px}.service-detail-image{height:220px}.utility-bar{display:none}.hero-visual-pagination{top:85px}.hero-visual-pagination button{min-width:28px}.hero-visual-pagination .hero-pause{max-width:125px}.hero-core-tags.hero-service-ribbon a{grid-template-columns:1fr auto;min-height:64px;height:auto;padding:9px}.hero-core-tags.hero-service-ribbon b{grid-column:1/-1;grid-row:2;white-space:normal;overflow:visible;font-size:10px;line-height:1.5}.hero-core-tags.hero-service-ribbon i{grid-column:2;grid-row:1}}
@media(max-width:430px){.navbar .brand-copy{padding-right:44px}.navbar .brand-copy strong{font-size:16px}.navbar .brand-flag{height:24px}.brand{gap:9px}.brand-mark{flex:none;width:32px}.navbar .brand-copy em{font-size:8px}.menu-toggle{padding:4px}.menu-toggle span{margin:6px 2px}.hero h1,html[lang='en'] .hero h1{font-size:34px}.trust-row{gap:16px}.trust-row>div{flex:1;min-width:65px}.trust-row strong{font-size:22px}.footer-main{grid-template-columns:1fr}.footer-brand,.contact{grid-column:auto}.footer-bottom div{gap:14px}.story-head h2{font-size:28px}.case-data{grid-template-columns:1fr 1fr}.qa-head h2{font-size:30px;line-height:1.2}.hero-card{margin-top:34px}.hero-inner{padding-top:140px}.hero-visual-pagination{top:91px}.service-detail-copy>h2{margin-right:0;padding-top:20px}.identity-benefits-head span{max-width:100%}}
@media(prefers-reduced-motion:reduce){html,html.scroll-scenes-v14{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.hero-photo-slide{transform:none!important}}
@media(max-width:760px){
  .policy-tabs button{grid-template-columns:minmax(0,1fr) 20px;flex:0 0 200px;min-height:90px}
  .route-tabs button{grid-template-columns:minmax(0,1fr) 20px;flex:0 0 180px;min-height:72px;height:auto}
  .policy-tabs button>b,.route-tabs button>b{line-height:1.5;overflow-wrap:normal}
}
