    * { box-sizing:border-box; }
    html, body {
        margin:0;
        padding:0;
    }
    body {
        font-size:14px;
        color:#111827;
        background:#ffffff;
    }
    html, body {
        font-family: 'S-Core', "Nanum Gothic", sans-serif !important;
        text-align:left;
    }
    .gnb, .gnb * {
        font-family: 'S-Core', "Nanum Gothic", sans-serif !important;
    }
    a {
        text-decoration:none;
        color:inherit;
    }
    img {
        max-width:100%;
        display:block;
    }
    .container {
        width:100%;
        max-width:1200px;
        margin:0 auto;
        padding:0 16px;
    }

    /* HEADER */
    .site-header {
        position: sticky;
        top: 0;
        z-index: 50;
        background: rgba(255,255,255,0.95);
        backdrop-filter: blur(6px);
        border-bottom: 1px solid #e5e7eb;
    }

    .header-inner {
        display:flex;
        align-items:center;
        justify-content:space-between;
        height:72px;
    }

    /* 로고 영역 */
    .logo {
        display:flex;
        align-items:center;
        min-width:150px;
    }
    .logo img {
        display:block;
        height:40px;
        width:auto;
    }
    @media (max-width: 960px) {
        .logo img { height:34px; }
    }
    @media (max-width: 640px) {
        .logo img { height:30px; }
    }

    /* 상단 GNB (PC) */
    .global-nav {
        flex:1 1 auto;
    }
    .gnb {
        list-style:none;
        margin:0;
        padding:0;
        display:grid;
        grid-template-columns:repeat(4,1fr);
        text-align:center;
    }
    .gnb > li > a {
    font-weight: 500;
        display:inline-block;
        padding:10px 8px;
        font-size:18px;
        color:#111827;
    }
    .gnb > li.active > a {
        color:#c40000;
    }

    .header-right {
        display:flex;
        align-items:center;
        gap:12px;
        margin-left:24px;
    }
    .lang-switch a {
        font-size:12px;
        padding:2px 6px;
        border-radius:3px;
        border:1px solid transparent;
    }
    .lang-switch a.active {
        border-color:#2563eb;
        color:#2563eb;
        font-weight:600;
    }

    .nav-toggle {
        display:none;
        width:32px;
        height:32px;
        border-radius:4px;
        border:1px solid #e5e7eb;
        background:#ffffff;
        padding:0;
    }
    .nav-toggle span {
        display:block;
        width:16px;
        height:2px;
        margin:4px auto;
        background:#111827;
    }

    /* 메가메뉴 패널 */
    .gnb-panel {
        position:absolute;
        left:0;
        right:0;
        top:72px;
        background:#ffffff;
        border-top:1px solid #eeeeee;
        border-bottom:1px solid #eeeeee;
        box-shadow:0 8px 20px rgba(15,23,42,0.08);
        overflow:hidden;
        max-height:0;
        opacity:0;
        pointer-events:none;
        transition:max-height .25s ease, opacity .2s ease;
    }
    .site-header.mega-open .gnb-panel {
        max-height:260px;
        opacity:1;
        pointer-events:auto;
    }

    .gnb-columns {
        max-width:1200px;
        margin:0 auto;
        display:grid;
        grid-template-columns:repeat(4, 1fr);
        padding-right:140px;
    }

    .gnb-col {
        padding:0 32px;
        border-left:1px solid #f2f2f2;
        min-height:160px;
        padding-bottom:10px;
    }
    .gnb-col:last-child {
        border-right:1px solid #f2f2f2;
    }

    .gnb-col-title {
        font-size:14px;
        margin-bottom:10px;
        color:#444444;
        text-align:center;
    }
    .gnb-col ul {
        list-style:none;
        margin:0;
        padding:0;
        text-align:center;
    }
    .gnb-col ul li a {
        display:inline-block;
        padding:4px 0;
        font-size:14px;
        color:#777777;
    }
    .gnb-col ul li.depth3 a {
        font-size:13px;
        color:#999999;
    }
    .gnb-col ul li a:hover { color:#111111; }

    .gnb-col.active {
        background:#fafafa;
    }
    .gnb-col.active .gnb-col-title {
        color:#c40000;
        font-weight:700;
    }

    /* HERO */
    .hero {
        position:relative;
        min-height:480px;
        color:#ffffff;
        display:flex;
        align-items:center;
        justify-content:center;
        overflow:hidden;
    }
    .hero-bg {
        position:absolute;
        inset:0;
        background:url('/images/main_hero_sample.jpg') center/cover no-repeat;
        transform:scale(1.03);
        filter:brightness(0.55);
    }
    .hero-overlay {
        position:absolute;
        inset:0;
        background:linear-gradient(
            120deg,
            rgba(15,23,42,0.65),
            rgba(15,23,42,0.25)
        );
    }
    .hero-inner {
        position:relative;
        z-index:1;
        max-width:1200px;
        padding:80px 16px 96px;
    }
    .hero-label {
        display:inline-block;
        font-size:12px;
        letter-spacing:0.18em;
        text-transform:uppercase;
        padding:4px 10px;
        border-radius:999px;
        border:1px solid rgba(255,255,255,0.4);
        margin-bottom:14px;
    }
    .hero-title {
        font-size:32px;
        line-height:1.3;
        font-weight:700;
        margin:0 0 12px;
    }
    .hero-subtitle {
        font-size:15px;
        max-width:540px;
        color:#e5e7eb;
        margin:0 0 20px;
    }
    .hero-actions {
        display:flex;
        flex-wrap:wrap;
        gap:10px;
    }
    .btn-primary {
        display:inline-block;
        padding:10px 18px;
        border-radius:999px;
        font-size:14px;
        border:1px solid #2563eb;
        background:#2563eb;
        color:#ffffff;
    }
    .btn-primary:hover { background:#1d4ed8; }
    .btn-ghost {
        display:inline-block;
        padding:9px 16px;
        border-radius:999px;
        font-size:13px;
        border:1px solid rgba(255,255,255,0.55);
        color:#e5e7eb;
        background:transparent;
    }
    .btn-ghost:hover {
        border-color:#ffffff;
        color:#ffffff;
    }

    /* SECTIONS 공통 */
    .section { padding:56px 0; }
    .section-header {
        text-align:center;
        margin-bottom:28px;
    }
    .section-title {
        font-size:22px;
        margin:0 0 6px;
    }
    .section-sub {
        font-size:13px;
        color:#6b7280;
    }

    /* ABOUT */
    .about { background:#f9fafb; }
    .about-grid {
        display:grid;
        grid-template-columns:minmax(0,2.2fr) minmax(0,2fr);
        gap:32px;
        align-items:center;
    }
    .about-text p {
        margin:0 0 10px;
        font-size:14px;
        color:#4b5563;
    }
    .about-tags {
        margin-top:12px;
        display:flex;
        flex-wrap:wrap;
        gap:8px;
    }
    .tag-chip {
        font-size:11px;
        padding:4px 8px;
        border-radius:999px;
        border:1px solid #d1d5db;
        background:#ffffff;
        color:#4b5563;
    }
    .about-figure {
        position:relative;
        border-radius:16px;
        overflow:hidden;
        box-shadow:0 12px 35px rgba(15,23,42,0.12);
    }

    /* BUSINESS 영역 */
    .business-grid {
        display:grid;
        grid-template-columns:repeat(3, minmax(0,1fr));
        gap:18px;
    }
    .biz-card {
        border-radius:12px;
        border:1px solid #e5e7eb;
        padding:16px;
        background:#ffffff;
    }
    .biz-card h3 {
        margin:0 0 6px;
        font-size:15px;
    }
    .biz-card p {
        margin:0;
        font-size:13px;
        color:#6b7280;
    }

    /* PROJECT */
    .project-grid {
        display:grid;
        grid-template-columns:repeat(3, minmax(0,1fr));
        gap:18px;
    }
    .project-card {
        border-radius:10px;
        border:1px solid #e5e7eb;
        overflow:hidden;
        background:#ffffff;
    }
    .project-card img {
        width:100%;
        height:140px;
        object-fit:cover;
    }
    .project-card-body {
        padding:10px 12px 12px;
    }
    .project-card-body h3 {
        margin:0 0 4px;
        font-size:14px;
    }
    .project-card-body p {
        margin:0;
        font-size:12px;
        color:#6b7280;
    }

    /* R&D / 품질 */
    .rnd-grid {
        display:grid;
        grid-template-columns:repeat(3, minmax(0,1fr));
        gap:18px;
    }
    .rnd-card {
        padding:14px;
        border-radius:10px;
        border:1px solid #e5e7eb;
        background:#f9fafb;
    }
    .rnd-card h3 {
        margin:0 0 4px;
        font-size:14px;
    }
    .rnd-card p {
        margin:0;
        font-size:12px;
        color:#6b7280;
    }

    /* CTA / 고객지원 */
    .cta { background:#0f172a; color:#e5e7eb; }
    .cta-inner {
        display:flex;
        flex-wrap:wrap;
        align-items:center;
        justify-content:space-between;
        gap:16px;
    }
    .cta-title {
        font-size:18px;
        margin:0 0 4px;
    }
    .cta-text {
        font-size:13px;
        color:#9ca3af;
        margin:0;
    }

    /* RESPONSIVE */
    @media (max-width: 960px) {
        .header-inner { height:60px; }
        .gnb {
            display:none;
            position:absolute;
            top:60px;
            left:0;
            right:0;
            background:#ffffff;
            border-bottom:1px solid #e5e7eb;
            padding:10px 16px 12px;
            grid-template-columns:1fr;
            row-gap:8px;
            text-align:left;
            z-index:60;
        }
        .gnb.open { display:block; }
        .nav-toggle { display:inline-block; }
        .gnb-panel { display:none !important; }

        .about-grid {
            grid-template-columns:minmax(0,1fr);
        }
        .business-grid,
        .project-grid,
        .rnd-grid {
            grid-template-columns:repeat(2, minmax(0,1fr));
        }
    }
    @media (max-width: 640px) {
        .hero-title { font-size:24px; }
        .business-grid,
        .project-grid,
        .rnd-grid {
            grid-template-columns:minmax(0,1fr);
        }
    }

    /* 언어 스위치 (모바일용 셀렉트) */
    .lang-switch-inline { display:flex; align-items:center; gap:6px; }
    .lang-select-mobile { display:none; font-size:12px; padding:4px 6px; border-radius:3px; border:1px solid #d1d5db; }

    @media (max-width: 640px) {
        .lang-switch-inline { display:none; }
        .lang-select-mobile { display:inline-block; }
    }

    .lang-switch-select { display:none; }
    .lang-switch-select select {
        font-family: inherit;
        font-size: 12px;
        padding: 4px 26px 4px 10px;
        border-radius: 16px;
        border: 1px solid #d1d5db;
        background-color: #ffffff;
        color: #374151;
        cursor: pointer;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%239CA3AF' stroke-width='1.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: right 8px center;
        background-size: 10px 6px;
    }
    .lang-switch-select select:hover { border-color:#9ca3af; }
    .lang-switch-select select:focus {
        outline:none;
        border-color:#2563eb;
        box-shadow:0 0 0 1px rgba(37,99,235,0.2);
    }
    @media (max-width: 640px) {
        .lang-switch { display:flex; align-items:center; gap:8px; }
        .lang-switch a { display:none; }
        .lang-switch-select { display:block; }
    }
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	