/* Shared layout for Korean and English. Load after page styles. */
:root{--rw-navy:#0b2a5b;--rw-blue:#1769d2;--rw-line:#dce4ee}
img{height:auto}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #1688e8;outline-offset:5px}
#header .sitelogo{flex:0 0 150px;margin-right:28px}
#header .sitelogo img{display:block;width:150px;height:auto;max-height:calc(var(--header-height) - 14px);object-fit:contain;filter:none;transition:none}
#gnb{max-width:1080px;margin:auto}
#gnb>ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
#gnb>ul>li,html[lang="en"] #gnb>ul>li{padding:0;min-width:0}
#gnb .submenu>ul{padding:24px 16px 36px;border-top:1px solid #e4e8ee}
#gnb .submenu>ul>li>a{padding:10px 0;font-size:16px;line-height:1.5;overflow-wrap:break-word}
#gnb .submenu>ul>li.active>a{color:var(--rw-blue);font-weight:700}
#header .language{margin-left:22px;margin-right:24px;flex:none}
#header.active #gnb>ul>li.active>a{color:var(--rw-blue)}
.submenu-bg:before{display:none}
.mobile-navigation{width:min(360px,92vw)}
.mobile-navigation .sitelogo img{width:125px;height:auto}
.mobile-navigation .submenu li.active>a{color:var(--rw-blue);font-weight:700}
.mobile-navigation .submenu a{overflow-wrap:break-word}
.mobile-navigation .nav-menu>ul>li>a{font-size:18px}
.lnb ul li{min-width:0}
.lnb ul li a{min-height:var(--lnb-height);height:auto;padding:18px 20px;line-height:1.5;overflow-wrap:break-word}
.sub-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,39,.58),rgba(4,20,39,.12));pointer-events:none}
.sub-visual .inner{z-index:1}
.sub-visual p{max-width:860px;line-height:1.7}
.sub-title h1{font-size:clamp(28px,3.2vw,42px);overflow-wrap:break-word}
.sub-title{padding-bottom:0;margin-bottom:32px}
.sub-title+.real-cont>section:first-child,.sub-title+section{padding-top:40px}
#container p,#container h2,#container h3,#container h4{overflow-wrap:break-word}
#container [class$="-grid"]>*{min-width:0}
.main-visual .image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,22,43,.72),rgba(5,22,43,.2))}
.main-visual .caption{top:46%}
.main-visual .caption h2{max-width:1150px;font-size:clamp(36px,6.2vw,88px);line-height:1.15}
.main-visual .caption p{font-size:clamp(14px,1.5vw,22px);letter-spacing:.03em;line-height:1.65}
.main-visual .controls{top:auto;bottom:100px;transform:translateX(-50%)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 24px;border:1px solid rgba(255,255,255,.7);border-radius:8px;background:rgba(8,26,50,.45);color:#fff;font-size:16px;font-weight:700}
.hero-actions a:first-child{background:#fff;border-color:#fff;color:var(--rw-navy)}
.main-service .main-txt{gap:50px;align-items:flex-start}
.main-service .ms-left{width:38%;padding:0}
.main-service .ms-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:0}
.main-service .ms-items .item{padding:0;width:auto}
.main-service .ms-items .item .wrap{border-radius:22px;border:1px solid var(--rw-line);background:#fff;height:100%}
.main-service .ms-items .item .img img{width:100%;aspect-ratio:606/420;height:auto;display:block}
.main-service .ms-items .item .txt{position:static;width:auto;padding:28px 32px;color:#475467}
.service-index,.research-index{display:block;color:var(--rw-blue);font-size:14px;font-weight:800;margin-bottom:15px}
.main-service .ms-items .item h3,.main-service .ms-items .item:hover h3{margin:0 0 14px;font-size:clamp(23px,2.1vw,30px);line-height:1.35;color:var(--rw-navy)}
.main-service .ms-items .item p{line-height:1.8;font-size:17px;margin-bottom:22px}
.service-more{display:block;margin-top:auto;color:var(--rw-blue);font-size:15px;font-weight:700}
.main-research{background:#f4f7fb}
.main-research .main-tit{margin-bottom:44px}
.research-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.research-links a{display:flex;flex-direction:column;padding:34px;background:#fff;border:1px solid var(--rw-line);border-radius:18px;transition:box-shadow .2s,border-color .2s}
.research-links a:hover{border-color:var(--rw-blue);box-shadow:0 12px 32px rgba(11,42,91,.08)}
.research-links h3{margin-bottom:14px;color:var(--rw-navy);font-size:26px;line-height:1.4}
.research-links p{color:#667085;font-size:17px;line-height:1.75;margin-bottom:24px}
.about-items h3{line-height:1.45}
.main-support .news-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.main-support .news-items .item{min-width:0}
.main-support .news-items h3,.main-support .news-items p{display:block;overflow:visible;-webkit-line-clamp:unset;line-height:1.75}
.main-support .news-items .date{font-weight:700;color:var(--rw-blue)}
/* Numbered flows wrap into roomy rows instead of narrow five-to-seven columns. */
.pipeline,.research-flow,.temporal-flow,.stack-grid,.sync-grid,.control-flow,.consult-process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pipeline .step,.research-flow .step,.temporal-flow .step,.stack-grid>*,.sync-grid>*,.control-flow>*,.consult-process>*{padding:28px 24px;min-width:0}
.pipeline .step:after,.research-flow .step:after,.temporal-flow .step:after,.stack-grid>*:after,.sync-grid>*:after,.control-flow>*:after,.consult-process .process-card:after{display:none}
.pipeline h3,.research-flow h3,.temporal-flow h3,.stack-grid h3,.sync-grid h3,.control-flow h3,.consult-process h3{font-size:20px;line-height:1.5}
.pipeline p,.research-flow p,.temporal-flow p,.stack-grid p,.sync-grid p,.control-flow p,.consult-process p{font-size:16px;line-height:1.8}
.amr-cap-grid,.amr-delivery,.repr-grid,.sensor-grid,.dataset-grid,.focus-grid,.encoding-grid,.intel-grid,.eval-grid,.sparse-grid,.codesign-grid,.state-grid,.middleware-grid,.connection,.core-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.fusion-visual .core-grid{gap:10px}
.amr-overview .visual img,.safety-overview .visual img,.risk-visual img,.dvs-overview .visual img,.sensor-visual img{width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}
.safety-overview .visual,.risk-visual,.dvs-overview .visual,.sensor-visual{height:auto;min-height:0}
.safety-overview,.dvs-overview,.amr-overview{gap:44px}
/* Dense architecture diagrams get a full-width surface. */
.snn-overview,.edge-overview,.fusion-overview{grid-template-columns:1fr;gap:36px}
.snn-overview .copy,.edge-overview .copy,.fusion-overview .copy{max-width:940px}
.spike-visual,.edge-visual,.fusion-visual{width:100%}
.spike-network,.io-row,.sensor-hub{gap:14px}
.process-flow,.poc-process,.scenario-grid,.poc-eval-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.process-flow>*:after,.poc-process>*:after{display:none}
.process-flow h3,.poc-process h3,.scenario-grid h3,.poc-eval-grid h3{font-size:20px;line-height:1.5}
.process-flow p,.poc-process p,.scenario-grid p,.poc-eval-grid p{font-size:16px;line-height:1.8}
.safety-wrap{grid-template-columns:1fr;gap:36px}
.safety-flow{gap:12px}
.contact-panel a,.contact-panel span{overflow-wrap:anywhere}
.form-wrap{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr)}
.form-grid input,.form-block textarea{min-width:0;max-width:100%}
@media(max-width:1100px){
 #gnb{display:none}#header .language{margin-left:auto}
 .safety-overview,.dvs-overview,.amr-overview,.event-principle,.risk-layout,.neuron-layout,.acc-layout,.cal-layout{grid-template-columns:1fr}
 .pipeline,.research-flow,.temporal-flow,.stack-grid,.sync-grid,.control-flow,.consult-process{grid-template-columns:repeat(2,minmax(0,1fr))}
 .process-flow,.poc-process,.scenario-grid,.poc-eval-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .form-wrap{grid-template-columns:1fr}
}
@media(max-width:768px){
 .lnb-wrap{padding:0 20px}.lnb{border-radius:18px}.lnb ul li{flex:none;width:auto;max-width:260px}
 .lnb ul li a{font-size:15px;min-height:62px;padding:15px 20px}
 .sub-visual{min-height:340px}.sub-visual p{font-size:16px;margin-top:18px}
 .main-service .main-txt{display:block}.main-service .ms-left{width:100%;margin-bottom:26px}
 .main-service .ms-items,.research-links,.main-support .news-items{grid-template-columns:1fr}
 .main-service .ms-items .item .txt,.research-links a{padding:25px}
 .main-service .ms-items .item p,.research-links p{font-size:16px}.research-links h3{font-size:24px}
 .pipeline,.research-flow,.temporal-flow,.stack-grid,.sync-grid,.control-flow,.consult-process,.amr-cap-grid,.amr-delivery,.repr-grid,.sensor-grid,.dataset-grid,.focus-grid,.encoding-grid,.intel-grid,.eval-grid,.sparse-grid,.codesign-grid,.state-grid,.middleware-grid,.connection,.core-grid{grid-template-columns:1fr}
 .spike-network,.io-row,.sensor-hub{grid-template-columns:1fr;gap:18px}
 .spike-network .arrow,.io-row .arrow,.sensor-hub .arrow{transform:rotate(90deg);margin:auto}
 .spike-network .link-arrow,.io-row .io-arrow,.sensor-hub .hub-arrow{transform:rotate(90deg);margin:auto}
 .process-flow,.poc-process,.scenario-grid,.poc-eval-grid,.safety-flow{grid-template-columns:1fr}
 .safety-flow .arrow{transform:rotate(90deg);margin:auto}
 .snn-overview .copy h2,.edge-overview .copy h2,.fusion-overview .copy h2{font-size:32px}
}
@media(max-width:640px){
 #header .sitelogo{flex-basis:96px;margin-right:8px}#header .sitelogo img{width:96px;max-height:54px;object-fit:contain}
 .contain,#contArea,#contArea.wide .sub-title{padding-left:20px;padding-right:20px}
 .main-visual .item{min-height:620px;height:100svh}.main-visual .caption{padding:0 24px;top:45%}
 .main-visual .caption h2{font-size:36px}.main-visual .controls{padding:0 24px;bottom:85px}
 .main-visual .scroll{display:none}.main-visual .sns-link{right:20px;bottom:24px}
 .hero-actions{gap:10px}.hero-actions a{padding:12px 18px;font-size:15px}
 .about-items{flex-direction:column}.about-items .item{padding:30px}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}
 [data-aos]{opacity:1!important;transform:none!important}
}
