.header-tools{display:flex;align-items:center;gap:15px;flex-shrink:0}
.language-control{display:block;position:relative;flex-shrink:0;margin:0}
.language-select{display:block;width:111px;min-height:42px;margin:0;padding:8px 8px 8px 12px;font:inherit;font-size:.875rem;font-weight:500;line-height:1.5;border:1px solid #becbdd;border-radius:3px;background:#fff;color:#254565;cursor:pointer}
.language-select:focus-visible{outline:3px solid #488aff;outline-offset:3px}
.header-inner{gap:22px}.site-nav{gap:20px;font-size:.875rem}
.source-language-note{font-size:.8125rem;line-height:1.8;color:#6b7d92;margin-top:14px}
.solution-tabs button strong,.solution-tabs button>span{min-width:0;max-width:100%;overflow-wrap:anywhere}
.hero-actions,.hero-discipline{flex-wrap:wrap}
.hero-discipline{row-gap:10px}
.button{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
.directory-inner a>span:last-child{min-width:0}
.directory-inner strong{overflow-wrap:anywhere}
.process-legend span{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
.systems-scope a,.lockdown-scope a,.data-section-foot>a{white-space:normal;overflow-wrap:anywhere}
.capability-list{min-width:0;grid-template-columns:minmax(0,1fr)}
.capability-list li,.delivery-steps li>div{min-width:0;overflow-wrap:anywhere}
.project-noimage strong{max-width:90%;text-align:center;overflow-wrap:anywhere}
.admin-row button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
html:not([lang=ko]) body{word-break:normal}
html:not([lang=ko]) .hero h1{white-space:normal;font-size:clamp(2.2rem,3.5vw,3.25rem);line-height:1.24;letter-spacing:-.035em}
html:not([lang=ko]) .hero .eyebrow{letter-spacing:.09em}
html:not([lang=ko]) .section h2{letter-spacing:-.035em}
html:not([lang=ko]) .solution-tabs button strong{font-size:.9375rem;line-height:1.5}
html:not([lang=ko]) .directory-inner strong{font-size:.9375rem}
html:not([lang=ko]) .section-kicker{max-width:46%;text-align:right}
html:not([lang=ko]) .control-caption{flex-wrap:wrap}
html:not([lang=ko]) .visual-toggle{min-width:0}
.admin-header .language-control{margin-left:auto}
.admin-header .language-select{font-size:.875rem;width:111px;min-height:42px;margin:0}
.admin-header .home-link{font-size:.875rem;color:#315f99}
@media(max-width:1280px){
 .site-header{height:82px}.header-inner{position:relative;gap:18px}.header-tools{margin-left:auto}
 .menu-toggle{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#153456;min-width:44px;min-height:44px;padding:8px 0;justify-content:center;font-size:.875rem}
 .menu-lines{display:block;width:23px;height:15px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}.menu-lines:before{content:"";position:absolute;left:0;right:0;top:5px;border-top:1.5px solid currentColor}
 .site-nav{display:none;position:absolute;top:82px;left:-28px;right:-28px;background:#fff;border-bottom:1px solid #d7e2ef;padding:20px 28px;box-shadow:0 12px 20px #12294a0c;z-index:31}
 .site-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0;font-size:1rem}.site-nav a{padding:12px 8px}.site-nav .nav-contact{margin:9px 0 0;text-align:center;padding:13px}
}
@media(max-width:600px){
 .site-header{height:75px}.header-inner{gap:12px}.header-tools{gap:13px}.brand{width:169px}.language-select{width:105px;padding-left:9px}
 .menu-toggle{min-width:26px;padding:8px 0}.menu-toggle>span:first-child{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .site-nav{top:75px;left:-20px;right:-20px;padding:15px 20px}
 html:not([lang=ko]) .hero h1{font-size:2.45rem;line-height:1.22}.hero .eyebrow{max-width:100%;overflow-wrap:anywhere}
 html:not([lang=ko]) .solution-tabs button strong{font-size:.875rem}.directory-inner small{overflow-wrap:anywhere}
 .admin-header{flex-wrap:wrap;padding-block:17px;gap:15px}.admin-header .brand{width:164px}.admin-header .language-control{margin-left:auto}.admin-header .home-link{order:3;width:100%;font-size:.875rem}
 .admin-row{grid-template-columns:54px minmax(0,1fr)}.admin-row img,.admin-row .no-photo{width:54px;height:50px}.admin-row button{grid-column:2;justify-self:start}.editor{padding-inline:16px}
}
@media(max-width:360px){.brand{width:131px}.header-tools{gap:9px}.language-select{width:104px}.header-inner{gap:10px}html:not([lang=ko]) .hero h1{font-size:2.15rem}.admin-header .brand{width:135px}}
@media(prefers-reduced-motion:reduce){.language-select{scroll-behavior:auto}}

/* Let enlarged language controls wrap without clipping the selected language. */
.site-header{height:auto;min-height:93px}
.header-inner{min-height:93px;flex-wrap:wrap;padding-block:10px}
.language-select,.admin-header .language-select{width:7.8em;max-width:100%;min-height:44px}
.site-nav{flex-wrap:wrap;min-width:0;max-width:100%}
@media(max-width:1280px){.site-header{min-height:82px}.header-inner{min-height:82px}.site-nav{top:100%;max-width:none}.site-nav.is-open{max-height:calc(100dvh - 160px);overflow-y:auto;flex-wrap:nowrap}}
@media(max-width:600px){.site-header{min-height:75px}.header-inner{min-height:75px}.site-nav{top:100%}}

.hero h1>.hero-heading-lead{color:inherit;display:block}.hero-heading-lead+br{display:none}.hero-heading-lead>span{display:block}
@media(max-width:600px){html[lang=ko] .hero-heading-lead{font-size:clamp(1.125rem,5.8vw,1.75rem);line-height:1.6;letter-spacing:-.045em;white-space:normal}html[lang=ko] .hero-heading-lead>span{display:inline}html[lang=ko] .hero-description{font-size:1rem;letter-spacing:-.025em;line-height:1.85}html[lang=ko] .hero-description-break{display:none}html[lang=ko] .hero-description-break:after{content:" "}}

/* Readable secondary information, with the original heading composition intact. */
.control-note,.source-language-note,.systems-scope p,.lockdown-scope p{font-size:.875rem;color:#53677f;line-height:1.85}
.feature-tags,.data-section-foot p,.brochure-copy>small{font-size:.875rem;line-height:1.8}
.feature-tags{color:#a8c5e8}.data-section-foot p{color:#a9bfd9}.brochure-copy>small{color:#b0c8e4}
.brochure-light .brochure-copy>small{color:#53677f}
.control-caption p{font-size:.875rem;color:#b4c9df;line-height:1.8}
.control-detail>p,.control-detail dt,.capability-list li>span{font-size:.875rem;line-height:1.85;color:#52677f}
/* Both existing Korean PDFs are available directly from the navigation. */
.brochure-nav{position:relative;flex-shrink:0}
.brochure-nav summary{cursor:pointer;padding:10px 0;list-style:none;display:flex;align-items:center;gap:7px;min-height:44px}
.brochure-nav summary::-webkit-details-marker{display:none}
.brochure-nav summary:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.brochure-nav[open] summary:after{transform:rotate(225deg);margin-top:3px}
.brochure-menu{position:absolute;right:0;top:calc(100% + 8px);width:288px;padding:8px;background:white;border:1px solid #c7d7e8;box-shadow:0 12px 30px #102b4424;color:#183956;z-index:35}
.site-nav .brochure-menu a{display:block;padding:13px 15px;line-height:1.6;border-radius:2px;white-space:normal}
.brochure-menu a:hover,.brochure-menu a:focus-visible{background:#edf3fb}
.brochure-menu a+a{border-top:1px solid #dbe5f1}
.brochure-menu small{display:block;font-size:.875rem;font-weight:400;color:#566e87;margin-top:4px}
@media(min-width:1281px){.site-nav{gap:16px}.header-inner{gap:18px}.site-nav .nav-contact{margin-left:0;padding-inline:16px}}
@media(max-width:1280px){.brochure-nav summary{padding:12px 8px}.brochure-menu{position:static;width:100%;max-width:100%;box-shadow:none;margin:0 0 8px;background:#f6f9fd}.site-nav .brochure-menu a{padding:12px 15px}}
@media(max-width:600px){.control-note,.data-section-foot p,.feature-tags,.control-caption p,.brochure-copy>small{font-size:.875rem}.brochure-copy h3{overflow-wrap:normal}.hero-control .control-caption{align-items:flex-start}}
@media(max-width:360px){.site-nav{left:-16px;right:-16px}}

/* Decorative globe inside the existing native language control. */
.language-globe{position:absolute;z-index:1;left:.5em;top:50%;width:1em;height:1em;transform:translateY(-50%);color:#45698c;pointer-events:none}
.language-control .language-select{width:8em;padding-inline-start:2.2em}
