/* css/hwaon_military_1.css — html/military.php 인라인 <style> 블록 1 추출 (S64-A · 순서 보존) */
/* ═══════════════════════════════════════
   MILITARY — CSS TOKENS
═══════════════════════════════════════ */
:root {
    --mil-void:    var(--hw-navy-deep); /* [ζ-3 · 2026-07-06] SSOT 수렴 · hw-navy-deep 참조 (리터럴 제거) */
    --mil-navy:var(--hw-navy); /* [ζ-3] SSOT 수렴 · hw-navy 참조 (리터럴 제거) */
    --mil-steel:   #1B2D42;
    --mil-mid:     #243447;
    --mil-gold:    #C9A96E;
    --mil-gold-lt: rgba(201,169,110,.18);
    --mil-gold-ln: rgba(201,169,110,.35);
    --mil-orange:  #EA5514;
    --mil-cream:   #F5F0EB;
    --mil-bg:      #FAFAF7;
    --mil-text:    #2C2C2C;
    --mil-sub:     #6B7280;
    --mil-border:  #E8E2DA;
    --mil-white:   #F0EDE8;
    --mil-grid:    rgba(201,169,110,.04);
    --font-cmd:    'Cormorant Garamond', 'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;
    --font-serif:  'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;
    --font-body:   'Pretendard Variable','Pretendard',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Segoe UI',Roboto,sans-serif;
    --ease-mil:    cubic-bezier(0.19, 1, 0.22, 1);
    --ease-fast:   cubic-bezier(0.25, 0.8, 0.25, 1);
}



/* [세션 61 Phase 2-B] 법인 브랜드 Hero Eyebrow */
.hw-firm-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    margin: 0 auto 24px;
    background: linear-gradient(135deg, rgba(201,169,110,0.12), rgba(201,169,110,0.05));
    border: 1px solid rgba(201,169,110,0.35);
    border-radius: 999px;
    font-family: var(--font-body, 'Pretendard Variable','Pretendard',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Segoe UI',Roboto,sans-serif);
    font-size: 13px;
    letter-spacing: 0.02em;
    color: var(--hw-navy, var(--hw-navy,#1B2A4A));
    position: relative;
    z-index: 2;
}
.hw-firm-eyebrow-logo {
    font-family: var(--font-display, 'Cormorant Garamond','Noto Serif KR','Nanum Myeongjo','Playfair Display',Georgia,'Times New Roman',serif);
    font-weight: 700;
    font-size: 15px;
    letter-spacing: 0.15em;
    color: var(--hw-gold, #C9A96E);
}
.hw-firm-eyebrow-sep {
    width: 1px;
    height: 12px;
    background: rgba(27,42,74,0.3);
}
.hw-firm-eyebrow-text {
    font-weight: 500;
}
@media (max-width: 768px) {
    .hw-firm-eyebrow {
        font-size: 12px;
        padding: 6px 14px;
        gap: 10px;
        margin-bottom: 18px;
    }
    .hw-firm-eyebrow-logo {
        font-size: 14px;
    }
}


/* SESSION 142 Patch N-1: html selector 박탈 — head.sub.php Patch I-1 navy 정합 보전 */
body { background: var(--mil-bg); }
/* SESSION 142 Patch N-2: overflow-x:hidden 박탈 — .mil-hero margin-top:-90px 침범 차단 박탈 (sex_crime SSOT 정합 흡수) */
#sub-container { padding: 0 !important; max-width: 100% !important; }
.mo-br { display: none; } @media(max-width:768px){
    body{padding-bottom:72px;}

    
/* [세션 140 호흡3] hero-ornament — 골드 4 모서리 detail (Canon §6 punctuation) */
.mil-hero-ornament{position:absolute;inset:0;pointer-events:none;z-index:3}
.mil-hero-ornament span{position:absolute;width:42px;height:42px;border:1px solid rgba(201,169,110,.45);transition:opacity 0.8s ease 0.4s;opacity:0;animation:hero-orn-fade-in 1.4s ease-out 0.6s forwards}
.mil-orn-tl{top:28px;left:28px;border-right:none;border-bottom:none}
.mil-orn-tr{top:28px;right:28px;border-left:none;border-bottom:none}
.mil-orn-bl{bottom:28px;left:28px;border-right:none;border-top:none}
.mil-orn-br{bottom:28px;right:28px;border-left:none;border-top:none}
@keyframes hero-orn-fade-in{from{opacity:0;transform:scale(0.85)}to{opacity:1;transform:scale(1)}}
@media(max-width:768px){
    .mil-hero-ornament span{width:28px;height:28px;top:18px;left:18px;right:18px;bottom:18px}
}

    section[style*="padding:120px"],section[style*="padding: 120px"]{padding-top:60px !important;padding-bottom:60px !important;}
    section[style*="padding:100px"],section[style*="padding: 100px"]{padding-top:56px !important;padding-bottom:56px !important;}
    section[style*="padding:80px"],section[style*="padding: 80px"]{padding-top:48px !important;padding-bottom:48px !important;}
    section[style*="padding:72px"],section[style*="padding: 72px"]{padding-top:44px !important;padding-bottom:44px !important;}
.mo-br{display:block}.pc-br{display:none}}

/* ── INNER ── */
.mil-inner { max-width: 1280px; margin: 0 auto; padding: 0 48px; }
@media(max-width:768px){ .mil-inner { padding: 0 20px; } }

/* ══════════════════════════════════════
   HERO — Command Room
══════════════════════════════════════ */
.mil-hero {
    /* 147-α-2-B-cascade-2: dui+sc base 통일 (flex→grid + 1fr auto + row-gap + padding 통일) */
    /* [Part B 통합] L224·L1432 중복 3건 → 1건 통합 · min-height:100vh→auto · padding-top→clamp(96,8vw,104) */
    background: var(--mil-void);
    min-height: auto;
    display: grid;
    grid-template-rows: 1fr auto;
    row-gap: clamp(16px, 2vw, 24px);
    position: relative;
    overflow: hidden;
    padding-top: clamp(96px, 8vw, 104px);
    padding-bottom: 0;
    margin-top: 0;
}
/* 그리드 패턴 - 군사 지도 질감 */
.mil-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(201,169,110,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201,169,110,.03) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
    z-index: 0;
}
/* 빛줄기 */
.mil-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 80% 60% at 100% 0%, rgba(201,169,110,.06) 0%, transparent 55%),
        radial-gradient(ellipse 60% 80% at 0% 100%, rgba(13,27,42,.8) 0%, transparent 50%);
    pointer-events: none;
    z-index: 0;
}

.mil-hero-body {
    /* 147-α-2-B-cascade-2: flex:1 박탈 + align-self:center (grid 첫 row vertical center) */
    display: flex;
    align-items:flex-start;
    padding:clamp(20px,3vw,36px) clamp(20px,3vw,48px) clamp(30px,5vw,60px);
    position: relative;
    z-index: 2;
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
    gap: 64px;
    align-self: center;
;overflow:visible;flex-wrap:wrap}.mil-hero-body > .hw-firm-eyebrow{flex:0 0 100%;width:auto;align-self:center}
.mil-hero-left  { flex: 1; min-width: 0; }
.mil-hero-right { width:min(420px,35%); flex-shrink: 0; }
/* 147-α-2-B2ex-fix-B: mil-strength cluster — 군형사 대응 3 시점 (sex_crime 정합 base 통일) */
.mil-strength{padding:clamp(20px,3vw,28px);background:rgba(255,255,255,.03);border:1px solid rgba(201,169,110,.2);border-radius:8px;margin-bottom:clamp(20px,3vw,28px)}
.mil-strength-eyebrow{display:block;font-family:var(--font-display,'Cormorant Garamond',serif);font-size:11px;letter-spacing:3px;color:var(--mil-gold,#C9A96E);text-transform:uppercase;font-weight:600;padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid rgba(201,169,110,.15)} /* 147-α-2-cleanup-01b: --font-display var fallback cascade (sex_crime 정합) */
.mil-strength-list{display:flex;flex-direction:column;gap:14px;list-style:none;padding:0;margin:0}
.mil-strength-item{display:flex;gap:12px;align-items:flex-start}
.mil-strength-icon{color:var(--mil-gold,#C9A96E);font-size:10px;margin-top:6px;flex-shrink:0}
.mil-strength-body{flex:1;min-width:0}
.mil-strength-title{display:block;font-family:'Noto Serif KR','Nanum Myeongjo',serif;font-size:15px;font-weight:600;color:#fff;margin-bottom:4px;line-height:1.4;letter-spacing:-.01em}
.mil-strength-desc{font-family:'Pretendard',system-ui,sans-serif;font-size:13px;line-height:1.65;color:rgba(255,255,255,.7);margin:0;word-break:keep-all}
@media(max-width:1024px){.mil-strength{margin-bottom:24px}}

/* 태그라인 */
.mil-hero-tag {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: rgba(201,169,110,.06);
    border: 1px solid rgba(201,169,110,.22);
    border-radius:4px;
    padding: 8px 20px;
    margin-bottom: 36px;
    width: fit-content;
}
.mil-hero-tag-icon { color: var(--mil-gold); font-size: 12px; }
.mil-hero-tag-text { font-family: var(--font-body); font-size: 11px; font-weight: 700; color: var(--mil-gold); letter-spacing: 3px; text-transform: uppercase; }

/* H1 */
.mil-hero h1 {
    font-family: var(--font-cmd);
    font-size: clamp(40px, 5.5vw, 72px);
    font-weight: 700;
    color: #fff;
    line-height: 1.1;
    letter-spacing: -.04em;
    margin-bottom: 24px;
    word-break: keep-all;
}
.mil-hero h1 em { font-style: normal; color: var(--mil-gold); }

.mil-hero-divider {
    width: 48px;
    height: 2px;
    background: linear-gradient(90deg, var(--mil-gold), transparent);
    margin: 28px 0;
}

.mil-hero-sub {
    font-family: var(--font-body);
    font-size: 17px;
    color: rgba(255,255,255,0.78);
    line-height: 1.9;
    max-width: 580px;
    margin-bottom: 44px;
    word-break: keep-all;
}
.mil-hero-sub strong { color: rgba(255,255,255,.9); }

/* CTA 버튼 */
.mil-btns { display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 40px; }
.mil-btn-primary {
    display: inline-flex; align-items: center; gap: 10px;
    background: var(--mil-orange); color: #fff;
    padding: 16px 36px; border-radius: 4px;
    font-family: var(--font-body); font-size: 15px; font-weight: 700;
    text-decoration: none; letter-spacing: .3px;
    transition:background 0.4s, transform 0.4s var(--ease-mil), box-shadow 0.4s;
}
.mil-btn-primary:hover { background: #ff6b2b; transform: translateY(-2px); box-shadow: 0 12px 32px rgba(234,85,20,.35); }
.mil-btn-ghost {
    display: inline-flex; align-items: center; gap: 10px;
    background: transparent; color: rgba(255,255,255,.8);
    padding: 16px 36px; border-radius: 4px;
    border: 1px solid rgba(255,255,255,.2);
    font-family: var(--font-body); font-size: 15px; font-weight: 600;
    text-decoration: none;
    transition:border-color 0.4s, color 0.4s, transform 0.4s var(--ease-mil);
}
.mil-btn-ghost:hover { border-color: var(--mil-gold); color: var(--mil-gold); transform: translateY(-2px); }

/* 크레덴셜 배지 */
.mil-hero-creds { display: flex; flex-wrap: wrap; gap: 8px; }
.mil-hero-cred {
    display: inline-flex; align-items: center; gap: 7px;
    font-family: var(--font-body); font-size: 11px;
    color: rgba(201,169,110,.85); font-weight: 600; letter-spacing: .5px;
    border: 1px solid rgba(201,169,110,.18);
    border-radius: 20px; padding: 5px 14px;
    background: rgba(201,169,110,.05);
    transition:background 0.4s, border-color 0.4s;
    cursor: default;
}
.mil-hero-cred:hover { background: rgba(201,169,110,.12); border-color: rgba(201,169,110,.4); }
.mil-hero-cred i { font-size: 9px; opacity: .7; }

/* 우측 — Command Brief Card */
.mil-brief-card {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(201,169,110,.15);
    border-radius: 20px;
    padding: 32px;
    position: relative;
    overflow: hidden;
}
.mil-brief-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, var(--mil-gold), transparent);
}
.mil-brief-label {
    font-family: var(--font-cmd);
    font-size: 10px; font-weight: 700; letter-spacing: 4px;
    color: var(--mil-gold); text-transform: uppercase;
    margin-bottom: 24px; display: block;
}
.mil-brief-item {
    display: flex; align-items: flex-start; gap: 16px;
    padding: 20px 0;
    border-bottom: 1px solid rgba(255,255,255,.06);
    transition:background 0.4s;
    border-radius: 8px;
    cursor: default;
}
.mil-brief-item:last-child { border-bottom: none; }
.mil-brief-item:hover { background: rgba(255,255,255,.04); }
.mil-brief-icon {
    width: 40px; height: 40px; flex-shrink: 0;
    background: rgba(201,169,110,.08);
    border: 1px solid rgba(201,169,110,.2);
    border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    color: var(--mil-gold); font-size: 14px;
    transition:background 0.4s;
}
.mil-brief-item:hover .mil-brief-icon { background: rgba(201,169,110,.18); }
.mil-brief-title { font-family: var(--font-body); font-size: 14px; font-weight: 700; color: #fff; margin-bottom: 4px; }
.mil-brief-desc  { font-family: var(--font-body); font-size: 12px; color: rgba(255,255,255,0.72); line-height: 1.6; }

/* 아래 스탯 바 */
.mil-hero-stats {
    background: rgba(255,255,255,.025);
    border-top: 1px solid rgba(201,169,110,.1);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    position: relative;
    z-index: 2;
}
.mil-stat {
    padding: 28px 20px;
    text-align: center;
    border-right: 1px solid rgba(255,255,255,.05);
    transition:background 0.4s;
    cursor: default;
}
.mil-stat:last-child { border-right: none; }
.mil-stat:hover { background: rgba(255,255,255,.04); }
.mil-stat-num {
    display: block;
    font-family: var(--font-cmd);
    font-size: clamp(32px, 3.5vw, 52px);
    font-weight: 700; font-style: italic;
    color: var(--mil-gold);
    line-height: 1; margin-bottom: 6px;
    transition:color 0.4s;
}
.mil-stat:hover .mil-stat-num { color: #fff; }
.mil-stat-num small { font-size: .5em; opacity: .7; }
.mil-stat-label { font-family: var(--font-body); font-size: 11px; color: rgba(255,255,255,0.65); letter-spacing: .5px; }

/* ══════════════════════════════════════
   SECTION 공통
══════════════════════════════════════ */
.mil-section { padding: 100px 0; }
.mil-section-dark { background: var(--mil-navy); }
.mil-section-cream { background: var(--mil-cream); }
.mil-section-void  { background: var(--mil-void); }

.mil-head { margin-bottom: 56px; }
.mil-head-eyebrow {
    font-family: var(--font-cmd);
    font-size: 11px; font-weight: 700; letter-spacing: 4px;
    text-transform: uppercase; margin-bottom: 16px; display: block;
    color: var(--mil-orange);
}
.mil-head-eyebrow.gold { color: var(--mil-gold); }
.mil-head h2 {
    font-family: var(--font-serif);
    font-size: clamp(28px, 3.5vw, 44px);
    font-weight: 700;
    color: var(--mil-navy);
    line-height: 1.25;
    letter-spacing: -.03em;
    word-break: keep-all;
}
.mil-head h2 em { font-style: normal; color: var(--mil-orange); }
.mil-head h2.light { color: #fff; }
.mil-head h2 em.gold { color: var(--mil-gold); }
.mil-head-sub { font-family: var(--font-body); font-size: 17px; color: var(--mil-sub); line-height: 1.85; margin-top: 16px; word-break: keep-all; }
.mil-head-sub.light { color: rgba(255,255,255,0.78); }

/* ══════════════════════════════════════
   섹션 2 — 긴급성 / 공감 섹션
══════════════════════════════════════ */
.mil-urgency { padding: 100px 0; background: var(--mil-bg); }
.mil-urgency-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }

.mil-checklist { list-style: none; padding: 0; margin: 0; }
.mil-checklist li {
    display: flex; align-items: flex-start; gap: 14px;
    padding: 16px 0;
    border-bottom: 1px solid var(--mil-border);
    font-family: var(--font-body); font-size: 16px; color: var(--mil-text);
    line-height: 1.6; word-break: keep-all;
    transition:color 0.4s;
    cursor: default;
}
.mil-checklist li:hover { color: var(--mil-navy); }
.mil-checklist li:last-child { border-bottom: none; }
.mil-cl-icon {
    width: 28px; height: 28px; flex-shrink: 0;
    background: var(--mil-navy); color: #fff;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 11px; margin-top: 2px;
    transition:background 0.4s;
}
.mil-checklist li:hover .mil-cl-icon { background: var(--mil-orange); }

.mil-urgency-right { background: var(--mil-navy); border-radius: 16px; padding: 44px 40px; position: relative; overflow: hidden; }
.mil-urgency-right::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--mil-orange), var(--mil-gold));
}
.mil-urgency-right blockquote {
    font-family: var(--font-cmd);
    font-size: 20px; font-style: italic; color: rgba(255,255,255,.9);
    line-height: 1.75; margin: 0 0 28px; padding: 0;
    border: none;
}
.mil-urgency-right blockquote::before {
    content: '\201C';
    font-size: 64px; color: var(--mil-gold-lt);
    line-height: .5; display: block; margin-bottom: 12px;
}
.mil-insight-who { display: flex; align-items: center; gap: 14px; }
.mil-insight-avatar {
    width: 52px; height: 52px; border-radius: 50%;
    overflow: hidden; background: var(--mil-steel);
    border: 2px solid var(--mil-gold-ln); flex-shrink: 0;
}
.mil-insight-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: center 8%; }
.mil-insight-name { font-family: var(--font-body); font-size: 14px; font-weight: 700; color: #fff; }
.mil-insight-spec { font-family: var(--font-body); font-size: 11px; color: rgba(255,255,255,0.72); margin-top: 2px; }

/* ══════════════════════════════════════
   섹션 3 — 오정환 대표변호사 (핵심)
══════════════════════════════════════ */
.mil-ojh { padding: 120px 0; background: var(--hw-navy-deep); position: relative; overflow: hidden; } /* [ζ-3] 특전사 시그니처 · deep 유지 */
.mil-ojh::before {
    content: '';
    position: absolute; inset: 0;
    background-image:
        linear-gradient(rgba(201,169,110,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201,169,110,.025) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
}
.mil-ojh-grid { display: grid; grid-template-columns: 1fr 480px; gap: 80px; align-items: center; position: relative; z-index: 1; }

.mil-ojh-badge {
    display: inline-flex; align-items: center; gap: 10px;
    background: rgba(201,169,110,.06);
    border: 1px solid rgba(201,169,110,.22);
    border-radius: 4px;
    padding: 8px 20px; margin-bottom: 32px;
    font-family: var(--font-body); font-size: 11px; font-weight: 700;
    color: var(--mil-gold); letter-spacing: 3px; text-transform: uppercase;
    width: fit-content;
}

.mil-ojh h2 {
    font-family: var(--font-cmd);
    font-size: clamp(36px, 4.5vw, 62px);
    font-weight: 700; color: #fff;
    line-height: 1.1; letter-spacing: -.04em;
    margin-bottom: 28px; word-break: keep-all;
}
.mil-ojh h2 em { font-style: normal; color: var(--mil-gold); }

.mil-ojh-body { font-family: var(--font-body); font-size: 16px; color: rgba(255,255,255,.6); line-height: 1.95; margin-bottom: 40px; word-break: keep-all; }
.mil-ojh-body strong { color: rgba(255,255,255,.9); }

.mil-ojh-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.mil-ojh-fact {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 10px; padding: 20px;
    transition:background 0.4s, border-color 0.4s;
    cursor: default;
}
.mil-ojh-fact:hover { background: rgba(201,169,110,.06); border-color: rgba(201,169,110,.25); }
.mil-ojh-fact-label { font-family: var(--font-body); font-size: 10px; font-weight: 700; color: var(--mil-gold); letter-spacing: 2px; text-transform: uppercase; margin-bottom: 8px; display: block; }
.mil-ojh-fact-val   { font-family: var(--font-body); font-size: 14px; font-weight: 600; color: rgba(255,255,255,.85); line-height: 1.5; }

/* 우측 — 사진 카드 */
.mil-ojh-photo-wrap {
    position: relative;

    word-break:keep-all;}
.mil-ojh-photo-card {
    background: var(--mil-steel);
    border: 1px solid rgba(201,169,110,.2);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}
.mil-ojh-photo-card::before {
    content: '';
    position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--mil-gold), transparent);
    z-index: 2;
}
.mil-ojh-photo-card img {
    width: 100%; display: block;
    height: 480px; object-fit: cover; object-position: center 8%;
    filter: grayscale(8%) sepia(6%) saturate(.96) brightness(.97) contrast(1.03);
    transition:filter 0.3s, transform 0.68s var(--ease-mil);
}
.mil-ojh-photo-card:hover img { transform: scale(1.03); }
.mil-ojh-photo-overlay {
    position: absolute; bottom: 0; left: 0; right: 0;
    background: linear-gradient(transparent, rgba(5,13,24,.95));
    padding: 32px 28px;
    z-index: 1;
}
.mil-ojh-photo-name { font-family: var(--font-cmd); font-size: 22px; color: #fff; font-weight: 600; }
.mil-ojh-photo-title { font-family: var(--font-body); font-size: 12px; color: var(--mil-gold); letter-spacing: 1.5px; margin-top: 4px; font-weight: 700; }

/* 장식 박스 */
.mil-ojh-deco {
    position: absolute;
    bottom: -20px; right: -20px;
    background: var(--mil-gold);
    color: var(--mil-void);
    border-radius: 12px;
    padding: 16px 20px;
    text-align: center;
    box-shadow: 0 8px 32px rgba(201,169,110,.3);
    z-index: 2;
}
.mil-ojh-deco-num { font-family: var(--font-cmd); font-size: 28px; font-weight: 700; line-height: 1; display: block; }
.mil-ojh-deco-txt { font-family: var(--font-body); font-size: 10px; font-weight: 700; letter-spacing: 1px; margin-top: 4px; opacity: .8; }

/* ══════════════════════════════════════
   섹션 4 — 사건 유형
══════════════════════════════════════ */
.mil-cases-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.mil-case-card {
    background: var(--mil-bg);
    border: 1px solid var(--mil-border);
    border-radius: 14px; padding: 32px 28px;
    position: relative; overflow: hidden;
    transition:transform 0.68s var(--ease-mil), box-shadow 0.68s, border-color 0.58s, background 0.58s;
    cursor: default;
}
.mil-case-card::before {
    content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--mil-gold), rgba(201,169,110,.3));
    transform: scaleX(0); transform-origin: left;
    transition:transform 0.68s var(--ease-mil);
}
.mil-case-card:hover::before { transform: scaleX(1); }
.mil-case-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 24px 60px rgba(13,27,42,.12), 0 0 0 1px rgba(201,169,110,.15);
    border-color: rgba(201,169,110,.35);
    background: #fff;
}
.mil-case-card:hover .mil-case-title { color: var(--mil-navy); }
.mil-case-icon {
    width: 52px; height: 52px;
    background: var(--mil-navy); color: var(--mil-gold);
    border-radius: 12px;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px; margin-bottom: 20px;
    transition:background 0.58s, box-shadow 0.58s, transform 0.58s var(--ease-mil);
}
.mil-case-card:hover .mil-case-icon {
    background: var(--mil-orange); color: #fff;
    box-shadow: 0 8px 24px rgba(234,85,20,.3);
    transform: scale(1.05);
}
.mil-case-title { font-family: var(--font-serif); font-size: 19px; font-weight: 700; color: var(--mil-navy); margin-bottom: 10px; }
.mil-case-desc  { font-family: var(--font-body); font-size: 14px; color: var(--mil-sub); line-height: 1.75; word-break: keep-all; }
.mil-case-laws  { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--mil-border); }
.mil-case-law   { font-family: var(--font-body); font-size: 11px; color: var(--mil-orange); font-weight: 600; display: inline-block; margin: 2px 4px 2px 0; }

/* ══════════════════════════════════════
   섹션 5 — 군사법원 프로세스
══════════════════════════════════════ */
.mil-process { padding: 100px 0; background: var(--hw-navy-deep); } /* [ζ-3] 고립 다크 유지 · deep */
.mil-proc-steps { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; position: relative; }
.mil-proc-steps::before {
    content: '';
    position: absolute;
    top: 38px; left: 10%; right: 10%;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--mil-gold-ln), var(--mil-gold-ln), transparent);
}
.mil-proc-step {
    text-align: center; padding: 0 12px 24px;
    position: relative; z-index: 1;
    border-radius: 12px;
    transition:transform 0.68s var(--ease-mil), background 0.58s;

    word-break:keep-all;}
.mil-proc-step:hover { transform: translateY(-6px); background: rgba(201,169,110,.04); }
.mil-proc-step:hover .mil-proc-title { color: var(--mil-gold); }
.mil-proc-num {
    width: 76px; height: 76px;
    border-radius: 50%;
    background: var(--mil-steel);
    border: 2px solid rgba(201,169,110,.25);
    display: inline-flex; align-items: center; justify-content: center;
    margin: 0 auto 20px;
    font-family: var(--font-cmd); font-size: 22px; font-style: italic; color: var(--mil-gold);
    transition:background 0.58s, border-color 0.58s;
}
.mil-proc-step:hover .mil-proc-num { background: var(--mil-gold); color: var(--mil-void); border-color: var(--mil-gold); box-shadow: 0 0 28px rgba(201,169,110,.45); }
.mil-proc-title { font-family: var(--font-body); font-size: 14px; font-weight: 700; color: #fff; margin-bottom: 8px; line-height: 1.4; }
.mil-proc-sub   { font-family: var(--font-body); font-size: 12px; color: rgba(255,255,255,0.72); line-height: 1.6; word-break: keep-all; }
.mil-proc-tag {
    display: inline-block; margin-top: 10px;
    font-size: 10px; font-weight: 700;
    color: var(--mil-orange);
    border: 1px solid rgba(234,85,20,.3);
    border-radius: 20px; padding: 2px 10px;
    letter-spacing: .5px;
}

/* ══════════════════════════════════════
   섹션 6 — 화온이 다른 이유 (VS)
══════════════════════════════════════ */
.mil-vs { padding: 100px 0; background: var(--mil-bg); }
.mil-vs-grid { display: grid; grid-template-columns: 1fr 80px 1fr; gap: 0; align-items: stretch; }
.mil-vs-col {
    border-radius: 16px; padding: 40px 36px;
    border: 1px solid var(--mil-border);
}
.mil-vs-col.alone { background: var(--mil-cream); }
.mil-vs-col.hwaon { background: var(--mil-navy); border-color: transparent; }
.mil-vs-mid {
    display: flex; align-items: center; justify-content: center;
}
.mil-vs-badge {
    width: 42px; height: 42px;
    background: var(--mil-orange); color: #fff;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 12px; font-weight: 800;
}
.mil-vs-label { font-family: var(--font-body); font-size: 11px; font-weight: 800; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 24px; display: block; }
.mil-vs-col.alone .mil-vs-label { color: var(--mil-sub); }
.mil-vs-col.hwaon .mil-vs-label { color: var(--mil-gold); }
.mil-vs-list { list-style: none; padding: 0; margin: 0; }
.mil-vs-list li {
    font-family: var(--font-body); font-size: 15px;
    padding: 10px 12px 10px 36px;
    position: relative; border-radius: 6px;
    margin-bottom: 4px;
    transition:background 0.4s, transform 0.4s, color 0.4s;
    line-height: 1.7; word-break: keep-all;
}
.mil-vs-col.alone .mil-vs-list li { color: var(--mil-text); }
.mil-vs-col.alone .mil-vs-list li::before { content: '✕'; position: absolute; left: 10px; color: #bbb; font-size: 12px; top: 12px; font-weight: 700; }
.mil-vs-col.alone .mil-vs-list li:hover { background: rgba(27,42,74,.07); transform: translateX(6px); }
.mil-vs-col.hwaon .mil-vs-list li { color: rgba(255,255,255,.85); }
.mil-vs-col.hwaon .mil-vs-list li::before { content: '✓'; position: absolute; left: 10px; color: var(--mil-gold); font-size: 13px; top: 11px; font-weight: 800; }
.mil-vs-col.hwaon .mil-vs-list li:hover { background: rgba(255,255,255,.08); transform: translateX(6px); color: #fff; }

/* ══════════════════════════════════════
   섹션 8 — FAQ
══════════════════════════════════════ */
.mil-faq { padding: 100px 0; background: var(--mil-bg); }
/* [Wave 3 T5-a 20260713] dead CSS `.mil-faq-item*` 3규칙(base + first-of-type + hover) 제거 — HTML class 사용 0 · FAQ_REBUILD(2026-06-11) `<details>` 대체 사후 잔재 */
.mil-faq-q {
    font-family: var(--font-body); font-size: 17px; font-weight: 800;
    color: var(--mil-navy); margin-bottom: 12px;
    display: flex; gap: 12px; align-items: flex-start;
    transition:color 0.4s;
}
/* [Wave 3 T5-a 20260713] dead `.mil-faq-item:hover .mil-faq-q` 제거 */
.mil-faq-q::before {
    content: 'Q';
    flex-shrink: 0; width: 28px; height: 28px;
    background: var(--mil-navy); color: #fff;
    border-radius: 50%; font-size: 12px; font-weight: 800;
    display: flex; align-items: center; justify-content: center;
    margin-top: 1px;
    transition:background 0.58s, transform 0.58s var(--ease-mil), box-shadow 0.58s;
}
/* [Wave 3 T5-a 20260713] dead `.mil-faq-item:hover .mil-faq-q::before` 제거 */
.mil-faq-a { font-family: var(--font-body); font-size: 15px; color: #555; line-height: 1.9; padding-left: 40px; word-break: keep-all; }

/* ══════════════════════════════════════
   [GEO Patch MIL-3] 군 거점 핫스팟 매트릭스 — 군사법원 5곳 + 부대 주둔지
══════════════════════════════════════ */
.mil-region { padding: 90px 0; background: var(--mil-cream, var(--hw-cream, #F5F0EB)); border-top: 1px solid var(--mil-border, var(--hw-border, #E8E2DA)); }
.mil-region-inner { max-width: 1200px; margin: 0 auto; padding: 0 40px; }
.mil-region-head { text-align: center; margin-bottom: 48px; }
.mil-region-eyebrow { font-family: var(--font-cmd, 'Cormorant Garamond', serif); font-size: 11px; font-weight: 700; letter-spacing: 5px; text-transform: uppercase; color: var(--mil-gold, var(--hw-gold, #C9A96E)); display: block; margin-bottom: 10px; }
.mil-region-title { font-family: var(--font-display, 'Noto Serif KR', serif); font-size: clamp(26px, 3.2vw, 38px); font-weight: 700; line-height: 1.3; letter-spacing: -.03em; color: var(--mil-navy, var(--hw-navy, #1B2A4A)); margin-bottom: 14px; }
.mil-region-sub { font-size: 16px; color: var(--hw-text-sub, #6B6B6B); line-height: 1.75; max-width: 820px; margin: 0 auto; word-break: keep-all; }
.mil-hotspot-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; max-width: 1100px; margin: 0 auto 32px; }
.mil-hotspot { background: #fff; border: 1px solid var(--mil-border, var(--hw-border, #E8E2DA)); border-left: 3px solid var(--mil-gold, var(--hw-gold, #C9A96E)); border-radius: 10px; padding: 18px 16px; transition: 0.58s cubic-bezier(.19,1,.22,1); cursor: default; text-align: left; }
.mil-hotspot:hover { border-color: rgba(201,169,110,.5); border-left-color: var(--mil-navy, var(--hw-navy, #1B2A4A)); background: #fff; transform: translateY(-2px); box-shadow: 0 8px 28px rgba(27,42,74,.12); }
.mil-hotspot-area { display: block; font-family: var(--font-display, 'Noto Serif KR', serif); font-size: 15px; font-weight: 700; color: var(--mil-navy, var(--hw-navy, #1B2A4A)); margin-bottom: 6px; letter-spacing: -.01em; }
.mil-hotspot-court { display: block; font-family: var(--font-cmd, 'Cormorant Garamond', serif); font-size: 11px; font-weight: 600; color: var(--mil-gold, var(--hw-gold, #C9A96E)); letter-spacing: 1px; text-transform: uppercase; margin-bottom: 4px; }
.mil-hotspot-pattern { display: block; font-size: 12px; color: var(--hw-text-sub, #6B6B6B); line-height: 1.5; }
.mil-region-note { text-align: center; font-size: 13px; color: var(--hw-text-sub, #6B6B6B); margin-top: 8px; line-height: 1.7; }
@media (max-width: 1024px) { .mil-hotspot-grid { grid-template-columns: repeat(2, 1fr); } .mil-region { padding: 70px 0; } .mil-region-inner { padding: 0 20px; } }
@media (max-width: 480px) { .mil-hotspot-grid { grid-template-columns: 1fr; gap: 10px; } .mil-hotspot { padding: 14px 14px; } }

/* ══════════════════════════════════════
   섹션 9 — CTA
══════════════════════════════════════ */
.mil-cta { padding: 120px 0; background: var(--hw-navy); text-align: center; position: relative; overflow: hidden; } /* [ζ-3] 클로저 · navy */
.mil-cta::before {
    content: '';
    position: absolute; inset: 0;
    background-image:
        linear-gradient(rgba(201,169,110,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201,169,110,.03) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
}
.mil-cta::after {
    content: '';
    position: absolute; inset: 0;
    background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(201,169,110,.06) 0%, transparent 60%);
    pointer-events: none;
}
.mil-cta-inner { position: relative; z-index: 1; }
.mil-cta-eyebrow { font-family: var(--font-cmd); font-size: 11px; letter-spacing: 4px; color: var(--mil-gold); font-weight: 700; text-transform: uppercase; margin-bottom: 24px; display: block; }
.mil-cta h2 { font-family: var(--font-cmd); font-size: clamp(28px, 4vw, 52px); font-weight: 700; color: #fff; line-height: 1.2; margin-bottom: 20px; word-break: keep-all; }
.mil-cta h2 em { font-style: normal; color: var(--mil-gold); }
.mil-cta-sub { font-family: var(--font-body); font-size: 16px; color: rgba(255,255,255,0.78); margin-bottom: 48px; line-height: 1.85; }
.mil-cta-btns { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }
.mil-cta-btn-primary {
    display: inline-flex; align-items: center; gap: 10px;
    background: var(--mil-orange); color: #fff;
    padding: 18px 52px; border-radius: 4px;
    font-family: var(--font-body); font-size: 16px; font-weight: 700;
    text-decoration: none;
    transition:background 0.4s, transform 0.58s var(--ease-mil), box-shadow 0.4s;
}
.mil-cta-btn-primary:hover { background: #ff6b2b; transform: translateY(-3px); box-shadow: 0 16px 40px var(--hw-orange-a40); }
.mil-cta-btn-ghost {
    display: inline-flex; align-items: center; gap: 10px;
    background: transparent; color: rgba(255,255,255,.8);
    padding: 18px 52px; border-radius: 4px;
    border: 1px solid rgba(255,255,255,.2);
    font-family: var(--font-body); font-size: 16px; font-weight: 600;
    text-decoration: none;
    transition:border-color 0.4s, color 0.4s, transform 0.58s var(--ease-mil);
}
.mil-cta-btn-ghost:hover { border-color: var(--mil-gold); color: var(--mil-gold); transform: translateY(-3px); }
.mil-cta-note { font-family: var(--font-body); font-size: 13px; color: rgba(255,255,255,0.65); margin-top: 28px; }

/* ══════════════════════════════════════
   모바일 하단 고정 CTA
══════════════════════════════════════ */
.mil-mob-cta {
    display: none;
    position: fixed; bottom: 0; left: 0; right: 0;
    background: var(--mil-navy);
    border-top: 1px solid rgba(201,169,110,.2);
    padding: 12px 16px;
    z-index: 999;
    gap: 10px;
}
@media(max-width:768px){ .mil-mob-cta { display: flex; } }
.mil-mob-btn {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 8px;
    padding: 14px 0; border-radius: 4px;
    font-family: var(--font-body); font-size: 14px; font-weight: 700;
    text-decoration: none;
}
.mil-mob-btn.kakao { background: #FEE500; color: #3C1E1E; }
.mil-mob-btn.phone { background: var(--mil-orange); color: #fff; }

/* ══════════════════════════════════════
   모바일 반응형
══════════════════════════════════════ */
@media(max-width:1024px) {
    .mil-hero-body { flex-direction: column; padding: 48px 32px 48px; gap: 40px; }
    .mil-hero-right { width: 100%; }
    .mil-ojh-grid { grid-template-columns: 1fr; }
    .mil-ojh-photo-wrap { order: -1; }
    .mil-ojh-photo-card img { height: 320px; }
    .mil-ojh-deco { bottom: -10px; right: 16px; }
    .mil-vs-grid { grid-template-columns: 1fr; gap: 8px; }
    .mil-vs-mid { padding: 8px 0; }
    .mil-proc-steps { grid-template-columns: 1fr 1fr; gap: 32px; }
    .mil-proc-steps::before { display: none; }
    .mil-cases-grid { grid-template-columns: repeat(2,1fr); }
}
@media(max-width:768px) {
    .mil-hero { padding-top: 140px; min-height: 100vh; }
    .mil-hero-body { padding: 20px 20px 36px; align-items: flex-start; }
    .mil-hero h1 { font-size:clamp(24px,2.2vw,32px); }
    .mil-hero-sub { font-size: 15px; 
    word-break:keep-all;}
    .mil-btns { flex-direction: column; }
    .mil-btn-primary, .mil-btn-ghost { width: 100%; justify-content: center; }
    .mil-hero-stats { grid-template-columns: repeat(2,1fr); }
    .mil-stat:nth-child(2) { border-right: none; }
    .mil-stat:nth-child(3) { border-top: 1px solid rgba(255,255,255,.05); }
    .mil-stat:nth-child(4) { border-top: 1px solid rgba(255,255,255,.05); border-right: none; }
    .mil-urgency-grid { grid-template-columns: 1fr; }
    .mil-ojh-facts { grid-template-columns: 1fr; }
    .mil-cases-grid { grid-template-columns: 1fr; }
    .mil-proc-steps { grid-template-columns: 1fr; }
    .mil-cta-btns { flex-direction: column; align-items: center; }
    .mil-cta-btn-primary, .mil-cta-btn-ghost { width: 90%; max-width: 360px; justify-content: center; padding: 18px 0; }
    .mil-section { padding: 72px 0; }
    .mil-urgency { padding: 72px 0; }
    .mil-ojh { padding: 80px 0; }
    .mil-process { padding: 72px 0; }
    .mil-faq { padding: 72px 0; padding-bottom: 120px; }
    .mil-cta { padding: 80px 0; }
}

/* ══════════════════════════════════════
   직업군인 전담 섹션
══════════════════════════════════════ */
.mil-career{padding:100px 0;background:var(--hw-cream);position:relative;overflow:hidden;} /* [ζ-3] 크림 플립 · ojh→la→career 3연속 해체 */
.mil-career::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,169,110,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(201,169,110,.025) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;}
/* [ζ-3 애드온] mil-career 섹션 헤더 블록 플립 — 크림 배경 위 다크용 light 변형이 저대비 (아이브로/헤딩/em/리드) */
.mil-career .mil-head-eyebrow.gold{color:var(--hw-gold-ink);} /* CAREER MILITARY 아이브로 · 크림 위 gold-ink */
.mil-career .mil-head h2.light{color:var(--hw-navy);} /* "직업군인에게는" 헤딩 first · #fff → navy */
.mil-career .mil-head h2 em.gold{color:var(--hw-gold-deep);} /* "더 많은 것이" em 강조 · gold-deep 대형 3:1 통과 · 이원 원칙 첫 적용 */
.mil-career .mil-head-sub.light{color:var(--hw-text-sub);} /* 리드 · rgba(255,...) → text-sub */
.mil-career-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;position:relative;z-index:1;}
.mil-career-card{
    background:#fff; /* [ζ-3] 다크용 rgba(255,255,255,.02) → 크림 위 흰카드 */
    border:1px solid var(--hw-border); /* [ζ-3] 다크용 → hw-border */
    border-left:3px solid rgba(201,169,110,.35); /* [ζ-3] tint 상승 · 밝은 배경 정합 */
    border-radius:0 12px 12px 0;
    padding:36px 32px;
    transition:background 0.68s var(--ease-mil),border-color 0.68s,border-left-color 0.68s,transform 0.68s var(--ease-mil),box-shadow 0.68s;
    position:relative;overflow:hidden;
}
.mil-career-card::before{
    content:'';position:absolute;top:0;right:0;bottom:0;width:0;
    background:rgba(201,169,110,.04);
    transition:width 0.68s var(--ease-mil);
}
.mil-career-card:hover{
    background:var(--hw-bg); /* [ζ-3] hover 밝은 톤 */
    border-left-color:var(--mil-gold);
    transform:translateX(6px);
    box-shadow:-4px 0 24px rgba(201,169,110,.15); /* [ζ-3] shadow tint 상승 */
}
.mil-career-card:hover::before{width:100%;}
.mil-career-num{
    font-family:var(--font-cmd);font-size:52px;font-weight:700;font-style:italic;
    color:var(--hw-gold-deep);line-height:1;margin-bottom:16px;display:block; /* [η-1] 52px 대형 · gold-deep 정렬 (ζ-3 §6 이원 원칙 정합) */
    opacity:.7;transition:opacity 0.58s;
}
.mil-career-card:hover .mil-career-num{opacity:1;}
.mil-career-title{font-family:var(--font-serif);font-size:18px;font-weight:700;color:var(--hw-navy);margin-bottom:12px;transition:color 0.4s;} /* [ζ-3] #fff → navy · 크림 위 */
.mil-career-card:hover .mil-career-title{color:var(--mil-gold);}
.mil-career-desc{font-family:var(--font-body);font-size:14px;color:var(--hw-text-sub);line-height:1.8;word-break:keep-all;transition:color 0.58s;} /* [ζ-3] rgba(255,...) → text-sub · 크림 위 */
.mil-career-card:hover .mil-career-desc{color:var(--hw-text);} /* [ζ-3] hover 진해짐 · text */
.mil-career-tag{display:inline-block;font-size:10px;font-weight:700;color:var(--mil-orange);border:1px solid rgba(234,85,20,.25);border-radius:3px;padding:3px 10px;margin-top:14px;letter-spacing:.8px;text-transform:uppercase;}

/* ══════════════════════════════════════
   성공사례 섹션
══════════════════════════════════════ */
.mil-success{padding:100px 0;background:var(--mil-cream);}
.mil-sc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.mil-sc-grid:has(.mil-sc-card:only-child){grid-template-columns:minmax(0,480px);justify-content:center;}
.mil-sc-card{
    background:#fff;border:1px solid var(--mil-border);border-radius:16px;
    padding:0;text-decoration:none;display:flex;flex-direction:column;
    overflow:hidden;position:relative;
    transition:transform 0.68s var(--ease-mil),box-shadow 0.68s var(--ease-mil),border-color 0.58s;
    will-change:transform;
}
.mil-sc-card::before{
    content:'';position:absolute;top:0;left:0;right:0;height:2px;
    background:linear-gradient(90deg,var(--mil-gold),var(--mil-orange),transparent);
    opacity:0;transition:opacity 0.58s var(--ease-mil);
}
.mil-sc-card::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(201,169,110,.04) 0%,transparent 60%);
    opacity:0;transition:opacity 0.58s;pointer-events:none;
}
.mil-sc-card:hover{transform:translateY(-8px);box-shadow:0 4px 12px rgba(27,42,74,.04),0 32px 72px rgba(27,42,74,.14);border-color:rgba(201,169,110,.4);}
.mil-sc-card:hover::before{opacity:1;}
.mil-sc-card:hover::after{opacity:1;}
.mil-sc-inner{padding:28px 28px 0;flex:1;display:flex;flex-direction:column;}
.mil-sc-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;}
.mil-sc-cats{display:flex;flex-wrap:wrap;gap:6px;}
.mil-sc-badge{font-size:10px;font-weight:800;color:#fff;background:var(--mil-navy);padding:4px 10px;border-radius:3px;letter-spacing:.3px;transition:background 0.4s;}
.mil-sc-card:hover .mil-sc-badge{background:var(--mil-gold);}
.mil-sc-result{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;font-family:var(--font-body);font-size:12px;font-weight:700;border-radius:4px;white-space:nowrap;flex-shrink:0;}
.mil-sc-result.gold{background:rgba(201,169,110,.1);color:#7A5C0A;border:1px solid rgba(201,169,110,.3);}
.mil-sc-result.green{background:rgba(22,163,74,.07);color:#15803d;border:1px solid rgba(22,163,74,.2);}
.mil-sc-result.blue{background:rgba(59,130,246,.07);color:#1d4ed8;border:1px solid rgba(59,130,246,.18);}
.mil-sc-result.def{background:rgba(234,85,20,.07);color:#A33800;border:1px solid rgba(234,85,20,.18);}
.mil-sc-title{font-family:var(--font-serif);font-size:18px;font-weight:700;color:var(--mil-navy);line-height:1.4;word-break:keep-all;margin-bottom:10px;transition:color 0.58s;}
.mil-sc-card:hover .mil-sc-title{color:var(--mil-orange);}
.mil-sc-summary{font-family:var(--font-body);font-size:13px;color:var(--mil-sub);line-height:1.85;flex:1;}
.mil-sc-footer{padding:14px 28px 20px;display:flex;align-items:center;justify-content:flex-end;border-top:1px solid var(--mil-border);margin-top:16px;}
.mil-sc-more{font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:1px;color:var(--mil-navy);display:flex;align-items:center;gap:6px;text-transform:uppercase;transition:color 0.58s,gap 0.58s var(--ease-mil);}
.mil-sc-card:hover .mil-sc-more{color:var(--mil-gold);gap:12px;}

/* ══════════════════════════════════════
   칼럼 섹션
══════════════════════════════════════ */
.mil-columns{padding:100px 0;background:var(--mil-bg);}
.mil-col-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.mil-col-card{
    background:#fff;border:1px solid var(--mil-border);border-radius:10px;
    text-decoration:none;display:flex;flex-direction:column;
    position:relative;overflow:hidden;
    transition:transform 0.68s var(--ease-mil),box-shadow 0.68s,border-color 0.58s;
}
.mil-col-card::before{
    content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
    background:var(--mil-gold);transform:scaleY(0);transform-origin:bottom;
    transition:transform 0.58s var(--ease-mil);
}
.mil-col-card:hover::before{transform:scaleY(1);}
.mil-col-card:hover{
    transform:translateY(-5px);
    box-shadow:0 20px 50px rgba(27,42,74,.1);
    border-color:rgba(201,169,110,.3);
}
.mil-col-body{padding:26px 28px 28px;display:flex;flex-direction:column;gap:14px;flex:1;}
.mil-col-tag{
    font-size:10px;font-weight:800;letter-spacing:1.5px;
    padding:4px 11px;border-radius:3px;
    display:inline-block;width:fit-content;
}
.tag-guide{background:rgba(42,122,75,.08);color:#2A7A4B;}
.tag-column{background:rgba(234,85,20,.08);color:var(--mil-orange);}
.tag-press{background:rgba(13,27,42,.07);color:var(--mil-navy);}
.mil-col-title{
    font-family:var(--font-serif);font-size:16px;font-weight:700;
    color:var(--mil-navy);line-height:1.55;word-break:keep-all;
    transition:color 0.58s;flex:1;
}
.mil-col-card:hover .mil-col-title{color:var(--mil-orange);}
.mil-col-foot{
    padding:14px 28px;border-top:1px solid var(--mil-border);
    display:flex;align-items:center;justify-content:flex-end;
    transition:border-color 0.58s;
}
.mil-col-card:hover .mil-col-foot{border-color:rgba(201,169,110,.2);}
.mil-col-more{
    font-family:var(--font-body);font-size:11px;font-weight:700;
    letter-spacing:1.5px;text-transform:uppercase;
    color:var(--mil-sub);
    display:flex;align-items:center;gap:6px;
    transition:color 0.58s,gap 0.58s var(--ease-mil);
}
.mil-col-card:hover .mil-col-more{color:var(--mil-gold);gap:10px;}

/* ══════════════════════════════════════
   화온TV 섹션
══════════════════════════════════════ */
.mil-tv{padding:100px 0;background:var(--hw-cream);} /* [ζ-3] 크림 플립 · tv→region navy 연속 해체 */
/* [ζ-3 애드온] mil-tv 섹션 헤더 블록 플립 — 크림 배경 위 다크용 light 변형이 저대비 (아이브로/헤딩/em/View All) */
.mil-tv .mil-head-eyebrow.gold{color:var(--hw-gold-ink);} /* 화온 TV 아이브로 · gold-ink */
.mil-tv .mil-head h2.light{color:var(--hw-navy);} /* "영상으로" 헤딩 first · #fff → navy */
.mil-tv .mil-head h2 em.gold{color:var(--hw-gold-deep);} /* "직접 확인하세요" em 강조 · gold-deep 대형 3:1 통과 */
.mil-tv .mil-head a[href*="board.php"]{color:var(--hw-navy) !important;border-bottom-color:var(--hw-border) !important;} /* View All 링크 · 인라인 rgba(255,...) 제압 */
.mil-tv .mil-head a[href*="board.php"]:hover{color:var(--hw-orange) !important;border-bottom-color:var(--hw-orange) !important;} /* hover 기존 오렌지 문법 재사용 */
.mil-tv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.mil-tv-card{
    background:#fff; /* [ζ-3] 다크용 rgba(255,...) → 크림 위 흰카드 */
    border:1px solid var(--hw-border);
    border-radius:12px;overflow:hidden;text-decoration:none;
    transition:transform 0.68s var(--ease-mil),box-shadow 0.68s var(--ease-mil),border-color 0.58s;
    will-change:transform;
}
.mil-tv-card:hover{
    transform:translateY(-6px);
    box-shadow:0 0 0 1px rgba(201,169,110,.3),0 24px 60px rgba(27,42,74,.15); /* [ζ-3] shadow navy tint (다크 shadow 대체) */
    border-color:rgba(201,169,110,.35);
}
.mil-tv-thumb{position:relative;overflow:hidden;aspect-ratio:16/9;}
.mil-tv-thumb img{width:100%;height:100%;object-fit:cover;filter:brightness(.9);transition:transform 0.78s var(--ease-mil),filter 0.68s;}
.mil-tv-card:hover .mil-tv-thumb img{transform:scale(1.05);filter:brightness(1.05);}
.mil-tv-play{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    background:linear-gradient(to top,rgba(5,13,24,.6) 0%,rgba(5,13,24,.1) 100%);
    transition:background 0.58s;
}
.mil-tv-card:hover .mil-tv-play{background:linear-gradient(to top,rgba(5,13,24,.7) 0%,rgba(5,13,24,.15) 100%);}
.mil-tv-play-btn{
    width:56px;height:56px;
    background:rgba(255,255,255,.15);
    backdrop-filter:blur(8px);
    border:1.5px solid rgba(255,255,255,.3);
    border-radius:50%;display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:18px;padding-left:3px;
    transition:transform 0.58s var(--ease-mil),background 0.4s,border-color 0.4s;
}
.mil-tv-card:hover .mil-tv-play-btn{
    transform:scale(1.12);
    background:rgba(234,85,20,.85);
    border-color:transparent;
}
.mil-tv-info{padding:18px 22px 20px;}
.mil-tv-title{
    font-family:var(--font-serif);font-size:14px;font-weight:600;
    color:var(--hw-navy);line-height:1.55;word-break:keep-all; /* [ζ-3] rgba(255,...) → navy · 흰카드 위 */
    transition:color 0.4s;
}
.mil-tv-card:hover .mil-tv-title{color:var(--hw-orange);} /* [ζ-3] hover accent · #fff → orange */

/* ══════════════════════════════════════
   추가 모바일 반응형
══════════════════════════════════════ */
@media(max-width:1024px){
    .mil-career-grid,.mil-sc-grid,.mil-col-grid,.mil-tv-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
    .mil-career-grid,.mil-sc-grid,.mil-col-grid,.mil-tv-grid{grid-template-columns:1fr;}
    .mil-career{padding:72px 0;}
    .mil-success,.mil-columns,.mil-tv{padding:72px 0;}
}

/* ━━ Phase 3: 동적 콘텐츠 카드 모바일 그리드 ━━ */
@media(max-width:768px){
    div[style*="grid-template-columns:repeat(3"],
    div[style*="grid-template-columns: repeat(3"],
    div[style*="grid-template-columns:repeat(2"],
    div[style*="grid-template-columns: repeat(2"]{
        grid-template-columns:1fr !important;
    }
    div[style*="max-width:1100px"],
    div[style*="max-width: 1100px"],
    div[style*="max-width:720px"],
    div[style*="max-width: 720px"]{
        max-width:100% !important;
        padding-left:16px !important;
        padding-right:16px !important;
    }
    div[style*="gap:20px"],
    div[style*="gap: 20px"],
    div[style*="gap:24px"],
    div[style*="gap: 24px"],
    div[style*="gap:28px"],
    div[style*="gap: 28px"]{
        gap:14px !important;
    }
    div[style*="padding-top:56.25%"]{
        width:100% !important;
    }
    a[style*="flex-direction:column"],
    div[style*="flex-direction:column"]{
        width:100%;
        box-sizing:border-box;
    }
}
@media(max-width:480px){
    div[style*="grid-template-columns"]{
        grid-template-columns:1fr !important;
    }
    div[style*="padding:24px"],
    div[style*="padding: 24px"],
    div[style*="padding:28px"],
    div[style*="padding: 28px"]{
        padding:16px !important;
    }
}

/* ━━ Phase 3: 터치 hover 유틸 클래스 ━━ */
.hw-card-hover{
    transition:transform 0.4s cubic-bezier(0.19,1,0.22,1),
               box-shadow 0.4s cubic-bezier(0.19,1,0.22,1);
    cursor:pointer;
}
.hw-card-hover:hover,
.hw-card-hover.touch-active{
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(27,42,74,.12);
}
.hw-card-hover-light:hover,
.hw-card-hover-light.touch-active{
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(255,255,255,.08);
}
a[style*="border-top:2px solid"],
a[style*="border-top: 2px solid"]{
    transition:transform 0.4s,box-shadow 0.4s;
}
a[style*="border-top:2px solid"]:hover,
a[style*="border-top:2px solid"].touch-active{
    transform:translateY(-4px) !important;
    box-shadow:0 16px 40px rgba(27,42,74,.1) !important;
}
div[style*="border-top:3px solid #EA5514"]{
    transition:transform 0.4s,box-shadow 0.4s;
}
div[style*="border-top:3px solid #EA5514"]:hover,
div[style*="border-top:3px solid #EA5514"].touch-active{
    transform:translateY(-4px) !important;
    box-shadow:0 16px 40px rgba(27,42,74,.08) !important;
}
a[style*="border-radius:10px"]{
    transition:transform 0.4s,box-shadow 0.4s;
}
a[style*="border-radius:10px"]:hover,
a[style*="border-radius:10px"].touch-active{
    transform:translateY(-4px) !important;
    box-shadow:0 16px 40px rgba(27,42,74,.1) !important;
}
div[style*="padding-top:56.25%"]{
    transition:transform 0.58s,box-shadow 0.58s;
}
div[style*="padding-top:56.25%"]:hover,
div[style*="padding-top:56.25%"].touch-active{
    transform:scale(1.02) !important;
    box-shadow:0 18px 48px rgba(27,42,74,.2) !important;
}

/* ── Military FAQ toggle (밝은 배경) ── */
/* [Wave 3 T5-a 20260713] dead `.mil-faq-item{transition:...}` 제거 */
.mil-faq-q{
    width:100%;text-align:left;background:none;border:none;cursor:pointer;
    padding:0;display:flex;justify-content:space-between;align-items:flex-start;
    gap:16px;font-family:var(--font-body,Pretendard),sans-serif;transition:color 0.4s;
}
.mil-faq-icon{
    width:22px;height:22px;border-radius:50%;
    background:var(--mil-navy);color:#fff; /* [ζ-3] fallback 리터럴 제거 */
    display:flex;align-items:center;justify-content:center;
    font-size:11px;flex-shrink:0;margin-top:2px;
    transition:background 0.4s,transform 0.4s;
}
/* [Wave 3 T5-a 20260713] dead `.mil-faq-item.open .mil-faq-icon` + `.mil-faq-item.open .mil-faq-q` 2규칙 제거 */



/* ── mil-faq-a 아코디언 (CSS 방식) ── */
.mil-faq-a{
    max-height:0;
    overflow:hidden;
    transition:max-height 0.68s cubic-bezier(0.4,0,0.2,1);
}
/* [Wave 3 T5-a 20260713] dead `.mil-faq-item.open .mil-faq-a` 제거 */

/* ── 변호사 슬라이더 ── */
/* [세션 105c Phase 6.5] padding 0 — SPECIALIST 파셜 자체 padding 활용 */
.mil-lawyers-section{padding:0;background:var(--hw-navy);} /* [ζ-3] 권위 악센트 · navy · sex_crime 정합 */
/* [Phase 4.5-B] dark 섹션 내 파셜 헤드 대비 — 세션 104b 표준 복제 */
.mil-lawyers-section .hw-lslider-head-light h2{color:#fff;}
.mil-lawyers-section .hw-lslider-head-light .hw-lslider-sub{color:rgba(255,255,255,0.78);}
.mil-lawyers-section .hw-lslider-head-light .hw-lslider-en{color:var(--mil-gold,#C9A96E);}
/* [세션 106b hot-fix-1] mil-lslider-* → hw-lslider-* 네이밍 교정 — 세션 105c/d 작성 시 prefix 오기입 → 약 40 세션 dead code */
.mil-lawyers-section .hw-lslider-head{text-align:center;margin-bottom:56px;}
.mil-lawyers-section .hw-lslider-en{font-family:var(--font-cmd);font-size:11px;letter-spacing:5px;text-transform:uppercase;color:var(--mil-gold);display:block;margin-bottom:12px;font-weight:600;}
.mil-lawyers-section .hw-lslider-head h2{font-family:var(--font-serif);font-size:clamp(26px,3vw,38px);font-weight:700;color:#fff;letter-spacing:-.03em;line-height:1.25;margin-top:0;}
.mil-lawyers-section .hw-lslider-sub{font-size:15px;color:rgba(255,255,255,0.78);margin-top:12px;line-height:1.75;}
.mil-rep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1160px;margin:0 auto 60px;padding:0 40px;}
.mil-rep-grid .hw-lslider-card{width:100%!important;min-width:0!important;}
.mil-rep-grid .hw-lslider-photo{aspect-ratio:4/5;height:auto;}
.mil-rep-div{max-width:1160px;margin:0 auto 40px;padding:0 40px;text-align:center;}
.mil-rep-div span{font-family:var(--font-cmd);font-size:11px;letter-spacing:4px;color:rgba(201,169,110,.35);text-transform:uppercase;}
.hw-lslider-outer{position:relative;display:flex;align-items:center;max-width:1160px;margin:0 auto;padding:0 40px;}
.hw-lslider-wrap{flex:1;min-width:0;overflow:hidden;padding-top:12px;margin-top:-12px;}
.hw-lslider-track{display:flex;gap:24px;transition:transform 0.78s cubic-bezier(.19,1,.22,1);will-change:transform;}
.hw-lslider-card{flex:0 0 calc(25% - 18px);min-width:0;background:rgba(255,255,255,.055);border:1px solid rgba(201,169,110,.12);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;position:relative;box-shadow:0 2px 20px rgba(0,0,0,.2);transition:transform 0.68s cubic-bezier(.19,1,.22,1),box-shadow 0.68s cubic-bezier(.19,1,.22,1),background 0.58s,border-color 0.58s;}
.hw-lslider-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--mil-orange);transform:scaleX(0);transform-origin:left;transition:transform 0.78s cubic-bezier(.19,1,.22,1);z-index:3;border-radius:1px;}
.hw-lslider-card:hover::before{transform:scaleX(1);}
.hw-lslider-card:hover{transform:translateY(-8px);background:rgba(255,255,255,.09);box-shadow:0 24px 60px rgba(0,0,0,.35);border-color:rgba(201,169,110,.28);}
.hw-lslider-photo{position:relative;aspect-ratio:4/5;height:auto;overflow:hidden;border-radius:16px 16px 0 0;background:var(--mil-navy);}
.hw-lslider-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,13,24,.6) 0%,transparent 55%);pointer-events:none;z-index:1;}
.hw-lslider-photo img{width:100%;height:100%;object-fit:cover;object-position:center 8%;filter:grayscale(8%) sepia(6%) saturate(.96) brightness(.97) contrast(1.03);transition:filter 0.3s,transform 0.78s cubic-bezier(.19,1,.22,1);}
.hw-lslider-card:hover .hw-lslider-photo img{transform:scale(1.03);}
.hw-lslider-badge{position:absolute;bottom:12px;left:12px;background:rgba(5,13,24,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--mil-gold);font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:4px 12px;border-radius:6px;border:1px solid rgba(201,169,110,.25);z-index:2;}
.hw-lslider-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:0;flex:1;border:1px solid rgba(201,169,110,.1);border-top:none;border-radius:0 0 16px 16px;}
.hw-lslider-name{font-family:var(--font-serif);font-size:20px;font-weight:700;color:#fff;display:flex;align-items:baseline;gap:10px;margin-bottom:6px;transition:color 0.4s;letter-spacing:-.02em;}
.hw-lslider-card:hover .hw-lslider-name{color:var(--mil-orange);}
.hw-lslider-name span{font-size:11px;font-weight:500;color:rgba(255,255,255,0.72);font-family:var(--font-body);letter-spacing:.3px;}
.hw-lslider-cred{font-size:11px;color:var(--mil-gold);font-weight:700;line-height:1.5;margin-bottom:12px;}
.hw-lslider-div{width:28px;height:1px;background:rgba(255,255,255,.12);margin-bottom:12px;}
.hw-lslider-spec{font-size:13px;color:rgba(255,255,255,0.72);line-height:1.7;flex:1;word-break:keep-all;}
.hw-lslider-link{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);font-size:11px;font-weight:700;color:rgba(255,255,255,0.78);letter-spacing:1.5px;text-transform:uppercase;display:flex;align-items:center;gap:8px;transition:color 0.4s,gap 0.58s cubic-bezier(.19,1,.22,1);}
.hw-lslider-card:hover .hw-lslider-link{color:var(--mil-orange);gap:14px;}
.hw-lslider-btn{flex-shrink:0;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;cursor:pointer;color:rgba(255,255,255,.7);font-size:14px;margin:0 12px;transition:background 0.58s,border-color 0.58s,transform 0.58s cubic-bezier(.19,1,.22,1);}
.hw-lslider-btn:hover{background:var(--mil-orange);border-color:var(--mil-orange);color:#fff;transform:scale(1.08);}
.hw-lslider-btn:disabled{opacity:.2;cursor:default;transform:none;}
.hw-lslider-nav{display:flex;justify-content:center;margin-top:32px;}
.hw-lslider-dots{display:flex;gap:8px;align-items:center;}
.hw-lslider-dot{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.25);cursor:pointer;transition:background 0.4s,width 0.58s cubic-bezier(.19,1,.22,1);border:none;}
.hw-lslider-dot.active{background:var(--mil-orange);width:24px;border-radius:2.5px;}
@media(max-width:1024px){.hw-lslider-card{flex:0 0 calc(50% - 12px);}.mil-rep-grid{grid-template-columns:1fr;}.hw-lslider-outer,.mil-rep-grid,.mil-rep-div{padding:0 20px;}}
@media(max-width:768px){.hw-lslider-card{flex:0 0 88%;}.mil-lawyers-section{padding:60px 0;}.mil-rep-grid{display:none;}.mil-rep-div{display:none;}}


.hw-lslider-rep-grid .hw-lslider-photo{height:320px;}
@media(max-width:768px){.hw-lslider-rep-grid .hw-lslider-photo{height:200px!important;}}

/* ── 접근성: 모션 감소 ── */
@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important;
    }
    #mil-mobile-cta,#mil-sticky{transition:none!important;}
}
/* ── 터치 hover 잔상 방지 ── */
@media(hover:none){
    a:hover,button:hover{
        transform:none!important;
        box-shadow:none!important;
    }
}
/* ── 인쇄 최적화 ── */
@media print{
    #mil-mobile-cta,#mil-sticky{display:none!important;}
    .mil-hero{background:var(--hw-navy)!important;-webkit-print-color-adjust:exact;}
}
/* ── 모바일 최소 폰트 보장 (WCAG AA) ── */
@media(max-width:768px){
    [class*="-eyebrow"],[class*="-en"],[class*="-phase"],
    [class*="-tag"],[class*="-label"],[class*="-badge"]{
        font-size:max(10px,0.625em)!important;
    }
}

/* ── 페이지 진입 애니메이션 ── */
@keyframes gnFadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:768px){
    .gn-sys-grid{grid-template-columns:1fr !important;}
    .gn-sys-card{padding:26px 20px !important;}
}
/* ── 성공사례 섹션 ── */
.gn-pf-sec{padding:100px 0;background:var(--hw-bg,#FAFAF7)}
.gn-pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.gn-pf-card{background:#fff;border:1px solid var(--hw-border,#E8E2DA);border-radius:14px;padding:28px;text-decoration:none;display:block;transition:all 0.58s cubic-bezier(0.19,1,0.22,1);}
.gn-pf-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(27,42,74,.1);border-color:var(--hw-orange,#EA5514);}
.gn-pf-badge{font-size:10px;font-weight:800;color:var(--hw-orange,#EA5514);letter-spacing:1.5px;text-transform:uppercase;display:block;margin-bottom:12px;}
.gn-pf-title{font-family:'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;font-size:16px;font-weight:700;color:var(--hw-navy,#1B2A4A);line-height:1.4;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:0.4s;}
.gn-pf-card:hover .gn-pf-title{color:var(--hw-orange,#EA5514);}
.gn-pf-summary{font-size:13px;color:var(--hw-text-sub,#6B6B6B);line-height:1.6;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.gn-pf-result{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:4px 12px;border-radius:4px;}
.gn-rc-gold{background:rgba(201,169,110,.15);color:#8B6914}
.gn-rc-blue{background:rgba(74,144,196,.12);color:#1a5a8a}
.gn-rc-green{background:rgba(42,122,75,.12);color:#1a5a33}
.gn-news-sec{padding:100px 0;background:var(--hw-cream,#F5F0EB);}
.gn-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 48px;}
.gn-news-item{display:block;text-decoration:none;padding:20px 0;border-bottom:1px solid var(--hw-border,#E8E2DA);transition:all 0.58s cubic-bezier(0.19,1,0.22,1);}
.gn-news-item:first-of-type,.gn-news-item:nth-of-type(2){border-top:2px solid var(--hw-navy,#1B2A4A);}
.gn-news-item:hover{transform:translateX(5px)}
.gn-news-badge{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;display:block;margin-bottom:6px;}
.gn-nb-guide{color:#2A7A4B}
.gn-nb-col{color:var(--hw-orange,#EA5514)}
.gn-nb-press{color:var(--hw-text-sub,#6B6B6B)}
.gn-news-title{font-size:15px;font-weight:600;color:var(--hw-navy,#1B2A4A);line-height:1.5;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:0.4s;}
.gn-news-item:hover .gn-news-title{color:var(--hw-orange,#EA5514);}
.gn-news-date{font-size:12px;color:var(--hw-text-sub,#6B6B6B);}
@media(max-width:768px){
  .gn-pf-grid{grid-template-columns:1fr}
  .gn-news-grid{grid-template-columns:1fr}
  .gn-news-item:nth-of-type(2){border-top:none}
  .gn-pf-sec,.gn-news-sec{padding:60px 0}
}

/* ════════════════════════════════
   화온 공통 카드 시스템 v2
   ════════════════════════════════ */
.gn-head{text-align:center;margin-bottom:52px}
.gn-head-en{font-family:'Cormorant Garamond','Noto Serif KR','Nanum Myeongjo','Playfair Display',Georgia,'Times New Roman',serif;font-size:11px;letter-spacing:5px;text-transform:uppercase;display:block;margin-bottom:14px}
.gn-head-en.gold{color:var(--hw-gold-ink)}
.gn-head-en.orange{color:#EA5514}
.gn-head.dark{font-family:'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;font-size:clamp(24px,3vw,34px);font-weight:700;color:var(--hw-navy,#1B2A4A);letter-spacing:-.03em;line-height:1.3}
.gn-head.dark + p{font-size:15px;color:#6B6B6B;margin-top:14px;line-height:1.75}
.gn-pf-sec{padding:100px 0;background:#FAFAF7}
.gn-pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gn-pf-card{background:#fff;border:1px solid #E8E2DA;border-radius:14px;padding:28px;text-decoration:none;display:flex;flex-direction:column;gap:12px;transition:all 0.58s cubic-bezier(0.19,1,0.22,1);position:relative;overflow:hidden}
.gn-pf-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:#E8E2DA;transition:background 0.58s}
.gn-pf-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(27,42,74,.1);border-color:rgba(234,85,20,.2)}
.gn-pf-card:hover::before{background:#EA5514}
.gn-pf-badge{font-size:10px;font-weight:800;color:#EA5514;letter-spacing:1.5px;text-transform:uppercase}
.gn-pf-title{font-family:'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;font-size:16px;font-weight:700;color:var(--hw-navy,#1B2A4A);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color 0.4s}
.gn-pf-card:hover .gn-pf-title{color:#EA5514}
.gn-pf-summary{font-size:13px;color:#6B6B6B;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.gn-pf-result{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;padding:5px 14px;border-radius:4px;width:fit-content;margin-top:auto}
.gn-rc-gold{background:rgba(201,169,110,.15);color:#8B6914}
.gn-rc-blue{background:rgba(74,144,196,.12);color:#1a5a8a}
.gn-rc-green{background:rgba(42,122,75,.12);color:#1a5a33}
.gn-news-sec{padding:100px 0;background:#F5F0EB}
.gn-news-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.gn-news-item{display:block;text-decoration:none;padding:22px 0;border-bottom:1px solid #E8E2DA;transition:all 0.58s cubic-bezier(0.19,1,0.22,1)}
.gn-news-item:first-of-type,.gn-news-item:nth-of-type(2){border-top:2px solid var(--hw-navy,#1B2A4A)}
.gn-news-item:hover{transform:translateX(6px)}
.gn-news-badge{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;display:block;margin-bottom:7px}
.gn-nb-guide{color:#2A7A4B}
.gn-nb-col{color:#EA5514}
.gn-nb-press{color:#6B6B6B}
.gn-news-title{font-size:15px;font-weight:600;color:var(--hw-navy,#1B2A4A);line-height:1.55;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color 0.4s}
.gn-news-item:hover .gn-news-title{color:#EA5514}
.gn-news-date{font-size:12px;color:#6B6B6B}
@media(max-width:768px){
  .gn-pf-sec,.gn-news-sec{padding:60px 0}
  .gn-pf-grid{grid-template-columns:1fr}
  .gn-news-grid{grid-template-columns:1fr}
  .gn-news-item:nth-of-type(2){border-top:none}
  .gn-pf-card{padding:22px}
}


/* sub-visual 완전 제거 (custom hero 페이지) */
#sub-visual-wrap,.sub-visual-wrap,#visual,.sub-visual{display:none !important;height:0 !important;margin:0 !important;padding:0 !important;overflow:hidden !important;}
#sub-container{padding-top:0 !important;margin-top:0 !important;}


/* hero banner padding unified */
@media(min-width:1280px){
  body.hw-banner-on .mil-hero{padding-top:clamp(100px,14vw,160px);}
}
@media(max-width:1279px){
  body.hw-banner-on .mil-hero{padding-top:clamp(80px,12vw,120px);}
}

.mil-page{overflow:visible!important}

/* ═══════════════════════════════════════════════════════════════════
   [세션 122 단계 2] gn-system CSS 복제 (gangnam 검증 패턴 · 단계 1 동일)
   ─ 카드 영역: gangnam 검증 패턴 그대로
   ─ quote 영역: military 고유 스타일 (시각 동일성 보장 · 단계 1 동일)
   ─ 정책 A·B 유틸 클래스 (gn-bg-default · gn-bg-cream)
   ═══════════════════════════════════════════════════════════════════ */

/* ── 카드 영역 (gangnam 검증 패턴) ── */
.gn-system .gn-head{text-align:center;margin-bottom:56px}
.gn-system .gn-head-en{font-family:'Cormorant Garamond','Noto Serif KR','Nanum Myeongjo','Playfair Display',Georgia,'Times New Roman',serif;font-size:11px;letter-spacing:5px;text-transform:uppercase;color:var(--hw-orange);display:block;margin-bottom:14px}
.gn-system .gn-head h2,
.gn-system h2.gn-head{font-family:'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;font-size:clamp(26px,3.2vw,38px);font-weight:700;color:var(--hw-navy);letter-spacing:-.03em}
.gn-system .gn-head p,
.gn-system .gn-head + p{font-size:16px;color:var(--hw-text-sub);margin-top:14px;line-height:1.75}
.gn-system .gn-sub{font-size:16px;color:var(--hw-text-sub);margin-top:14px;line-height:1.75}
.gn-sys-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.gn-sys-card{background:var(--hw-bg);border:1px solid var(--hw-border);border-radius:16px;padding:36px 28px;position:relative}
.gn-sys-num{font-family:'Cormorant Garamond','Noto Serif KR','Nanum Myeongjo','Playfair Display',Georgia,'Times New Roman',serif;font-size:44px;font-weight:700;color:rgba(201,169,110,.15);position:absolute;top:18px;right:22px}
.gn-sys-icon{font-size:22px;color:var(--hw-orange);margin-bottom:16px}
.gn-sys-phase{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--hw-orange);text-transform:uppercase;display:block;margin-bottom:10px}
.gn-sys-title{font-family:'Noto Serif KR','Nanum Myeongjo','나눔명조','Apple SD Gothic Neo',serif;font-size:17px;font-weight:700;color:var(--hw-navy);margin-bottom:8px}
.gn-sys-atty{font-size:12px;font-weight:700;color:var(--hw-gold);margin-bottom:12px}
.gn-sys-desc{font-size:13px;color:var(--hw-text-sub);line-height:1.7;word-break:keep-all}

/* ── quote 영역 (military 고유 스타일 · 시각 동일성 보장) ── */
.gn-sys-quote{background:var(--hw-navy);border-radius:14px;padding:40px 48px;text-align:center;border-left:4px solid var(--hw-gold);margin-top:40px}
.gn-sys-quote-text{font-size:17px;font-weight:600;color:rgba(255,255,255,.9);line-height:1.8;font-style:italic}
.gn-sys-quote-text em{color:var(--hw-gold);font-style:normal}
.gn-sys-quote-sub{font-size:12px;color:rgba(255,255,255,0.65);margin-top:14px;letter-spacing:1px}

/* ── 정책 A·B 유틸 클래스 (세션 119 표준) ── */
.gn-system.gn-bg-default{background:var(--hw-bg)}
.gn-system.gn-bg-cream{background:var(--hw-cream)}
.gn-em-orange{color:var(--hw-orange);font-style:normal}
.gn-em-gold{color:var(--hw-gold);font-style:normal}

/* ── 모바일 반응형 ── */
@media(max-width:1024px){.gn-sys-grid{grid-template-columns:1fr}}
@media(max-width:768px){.gn-sys-grid{grid-template-columns:1fr}.gn-sys-quote{padding:32px 24px}}
/* ═══════════════════════════════════════════════════════════════════ */

/* ===== S66-A merged from css/hwaon_military_2.css — 순서 보존(_1 뒤) · 규칙 무변 ===== */
/* css/hwaon_military_2.css — html/military.php 인라인 <style> 블록 2 추출 (S64-A · 순서 보존) */
.mil-page .hw-pmx-table thead th:last-child,
.mil-page .hw-pmx-table tbody td:last-child{display:none}
