/* ═══════════════════════════════════════════════════════════
   직불금, 총액보다 설계다 — .fnc-dp (scoped)
   /insights/direct-payment/ 큐레이션 허브
   디자인 규격: korea-food-security.css (.kfs-page) 응용
   도메인 컬러: 농업 정책 = Indigo (docs/brand-color-system.md)
   ═══════════════════════════════════════════════════════════ */
.fnc-dp{
    /* 도메인: 농업 정책 = Indigo — docs/brand-color-system.md §2
       Sequential 램프 5단(밝음→어두움)만 사용하고 임의 중간색을 만들지 않는다:
       #E1E4F0 → #A9B0CF → #6C77A5 → #3D4A7A → #262E4D */
    --primary:#3d4a7a; --primary-deep:#262e4d;
    --primary-tint:#e1e4f0; --primary-2:#a9b0cf; --primary-container:#6c77a5;
    /* 뉴트럴 — 동 문서 §3 */
    --bg:#f8f7f3; --surface-lowest:#ffffff; --surface-low:#f4f3ef;
    --surface:#edece7; --band:#f0ece3;
    --on-surface:#171b19; --on-variant:#4a524d;
    /* Outline(#747c75)은 흰 배경 CR 4.3 으로 12px 이하 텍스트가 AA 미달이라
       이 페이지의 메타 텍스트는 모두 Ink 2 를 쓴다. 경계선은 Line 만 사용. */
    --outline-variant:#d9d5cc;
    --headline:Manrope,"Pretendard Variable",Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;
    --body:Inter,"Pretendard Variable",Pretendard,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;
    background:var(--bg);color:var(--on-surface);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased;
}
.fnc-dp *{box-sizing:border-box;margin:0;padding:0}
.fnc-dp .wrap{max-width:1120px;margin:0 auto;padding:0 32px}
.fnc-dp .num{font-family:var(--headline);font-variant-numeric:tabular-nums}
.fnc-dp svg.i{width:1em;height:1em;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round;display:block}
.fnc-dp a{color:inherit;text-decoration:none}
.fnc-dp :focus-visible{outline:3px solid var(--primary-container);outline-offset:2px;border-radius:4px}
/* 아이콘 스프라이트 — 렌더 영역 밖으로 (인라인 style 대체) */
.fnc-dp .fnc-dp-sprite{position:absolute;width:0;height:0;overflow:hidden}

/* ---- section header component ---- */
.fnc-dp .kicker{font-family:var(--headline);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--primary-deep);display:inline-flex;align-items:center;gap:9px}
.fnc-dp .kicker::before{content:"";width:22px;height:2px;background:var(--primary-deep)}
.fnc-dp h2.sec{font-family:var(--headline);font-weight:800;font-size:31px;letter-spacing:-.025em;color:var(--on-surface);margin:14px 0 10px;line-height:1.22}
.fnc-dp .dek{font-size:16.5px;color:var(--on-variant);max-width:62ch}
.fnc-dp section{padding:66px 0;border-top:1px solid var(--outline-variant);scroll-margin-top:70px}
.fnc-dp #overview{scroll-margin-top:0}
/* 교차 배경 밴드 — Paper ↔ Stone */
.fnc-dp .band{background:var(--band)}

/* ---- HERO (deep-indigo brand band) ---- */
/* 사진 위 오버레이는 램프 Main→Deep 을 알파로만 조절한다. */
.fnc-dp .hero{position:relative;overflow:hidden;padding:64px 0 40px;border-top:none;color:var(--primary-tint);
    background:
      radial-gradient(1100px 420px at 82% -8%, rgba(108,119,165,.32), transparent 60%),
      linear-gradient(135deg, rgba(61,74,122,.88) 0%, rgba(38,46,77,.94) 100%),
      url('/wp-content/uploads/2026/04/modern-tractor-farm.jpg') center/cover no-repeat;}
.fnc-dp .hero::before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
    background-image:
      repeating-linear-gradient(115deg, rgba(255,255,255,.045) 0 1px, transparent 1px 46px),
      radial-gradient(circle at 90% 20%, rgba(255,255,255,.05), transparent 42%);
    mask-image:linear-gradient(90deg,transparent,#000 30%);}
.fnc-dp .hero .wrap{position:relative}
.fnc-dp .hero-grid{display:grid;grid-template-columns:1fr 306px;gap:48px;align-items:start}
.fnc-dp .hero .kicker{color:var(--primary-tint)}
.fnc-dp .hero .kicker::before{background:var(--primary-2)}
.fnc-dp .hero h1{font-family:var(--headline);font-weight:800;font-size:54px;line-height:1.06;letter-spacing:-.035em;margin:18px 0 20px;color:#ffffff}
.fnc-dp .hero .dek{font-size:18px;max-width:52ch;color:var(--primary-tint)}
.fnc-dp .statuscard{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:8px 20px;backdrop-filter:blur(6px)}
.fnc-dp .statuscard .row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.fnc-dp .statuscard .row:last-child{border-bottom:none}
/* 라벨/값 구분은 색 대비가 아니라 자중(weight)으로 — 램프 2단은 13px 본문 AA 미달 */
.fnc-dp .statuscard .lab{font-size:13px;color:var(--primary-tint);white-space:nowrap}
.fnc-dp .statuscard .val{font-size:13.5px;font-weight:700;font-family:var(--headline);color:#ffffff;text-align:right}
.fnc-dp .live{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:800;letter-spacing:.06em;color:var(--primary-tint);text-transform:uppercase}
.fnc-dp .live .dot{width:8px;height:8px;border-radius:50%;background:var(--primary-2);box-shadow:0 0 0 0 rgba(169,176,207,.55);animation:fnc-dp-pulse 2.4s infinite}
@keyframes fnc-dp-pulse{0%{box-shadow:0 0 0 0 rgba(169,176,207,.55)}70%{box-shadow:0 0 0 7px rgba(169,176,207,0)}100%{box-shadow:0 0 0 0 rgba(169,176,207,0)}}

/* ---- INDICATOR TILES ---- */
.fnc-dp .tiles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:38px;border:1px solid rgba(255,255,255,.14);border-radius:16px;overflow:hidden;background:var(--surface-lowest);box-shadow:0 18px 40px -12px rgba(38,46,77,.5)}
.fnc-dp .tile{padding:22px;border-right:1px solid var(--outline-variant);transition:background .18s}
.fnc-dp .tile:last-child{border-right:none}
.fnc-dp .tile:hover{background:var(--surface-low)}
.fnc-dp .tile .tl-num{font-family:var(--headline);font-variant-numeric:tabular-nums;font-size:41px;font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--primary)}
.fnc-dp .tile .tl-num small{font-size:17px;font-weight:700;color:var(--primary-deep)}
.fnc-dp .tile .tl-lab{font-size:13.5px;color:var(--on-surface);margin-top:10px;font-weight:600}
.fnc-dp .tile .tl-meta{font-size:12px;color:var(--on-variant);margin-top:3px}
.fnc-dp .chip{display:inline-flex;align-items:center;gap:5px;font-family:var(--headline);font-size:11.5px;font-weight:800;padding:3px 9px;border-radius:999px;margin-top:13px}
.fnc-dp .chip svg.i{width:12px;height:12px;stroke-width:2.4}
.fnc-dp .chip.up{background:var(--primary-tint);color:var(--primary-deep)}
.fnc-dp .chip.flat{background:var(--surface);color:var(--on-variant)}

/* ---- anchor rail ---- */
.fnc-dp .rail{position:sticky;top:0;z-index:5;background:rgba(248,247,243,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--outline-variant)}
.fnc-dp .rail .wrap{display:flex;gap:4px;height:54px;align-items:center;overflow-x:auto;scrollbar-width:none}
.fnc-dp .rail .wrap::-webkit-scrollbar{display:none}
.fnc-dp .rail a{font-size:13.5px;color:var(--on-variant);padding:8px 14px;border-radius:999px;white-space:nowrap;font-weight:600;transition:.18s}
.fnc-dp .rail a:hover{background:var(--surface)}
.fnc-dp .rail a.on{background:var(--primary-deep);color:#ffffff}

/* ---- concept cards (.cases) ---- */
.fnc-dp .cases{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.fnc-dp .case{background:var(--surface-lowest);border:1px solid var(--outline-variant);border-top:3px solid var(--primary);border-radius:16px;padding:22px;display:flex;flex-direction:column;transition:.18s}
.fnc-dp .case:hover{box-shadow:0 8px 24px rgba(23,27,25,.08);transform:translateY(-2px);border-color:var(--primary-container)}
.fnc-dp .case .ch{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.fnc-dp .case .cico{width:38px;height:38px;border-radius:10px;background:var(--primary);color:#ffffff;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}
.fnc-dp .case .corg{font-family:var(--headline);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--on-variant)}
.fnc-dp .case h4{font-family:var(--headline);font-size:17px;font-weight:800;margin-bottom:9px;letter-spacing:-.015em;line-height:1.3}
.fnc-dp .case .cd{font-size:13px;color:var(--on-variant);flex:1}

/* ---- article cards (.reads) ---- */
.fnc-dp .reads{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.fnc-dp .readcard{background:var(--surface-lowest);border:1px solid var(--outline-variant);border-radius:16px;padding:24px;transition:.18s;display:flex;flex-direction:column}
.fnc-dp .readcard:hover{box-shadow:0 10px 28px rgba(23,27,25,.08);transform:translateY(-3px);border-color:var(--primary-container)}
.fnc-dp .readcard.hi{border-left:3px solid var(--primary);background:linear-gradient(180deg,var(--primary-tint),var(--surface-lowest))}
.fnc-dp .re{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px}
.fnc-dp .rt{font-family:var(--headline);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--primary-deep)}
.fnc-dp .rdate{font-size:12px;color:var(--on-variant);font-variant-numeric:tabular-nums;white-space:nowrap}
.fnc-dp .readcard h4{font-family:var(--headline);font-size:17.5px;font-weight:800;margin-bottom:10px;letter-spacing:-.015em;line-height:1.32}
.fnc-dp .readcard p{font-size:13.5px;color:var(--on-variant);flex:1}
.fnc-dp .more{margin-top:17px;font-family:var(--headline);font-size:13px;font-weight:800;color:var(--primary-deep);display:inline-flex;align-items:center;gap:6px}
.fnc-dp .more svg.i{width:15px;height:15px;stroke-width:2.2}

/* ---- breather (박스 없이 텍스트만) ---- */
.fnc-dp .pqk{font-family:var(--headline);font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--primary)}
.fnc-dp .breather{border-top:none;background:var(--bg);padding:78px 0;text-align:center}
.fnc-dp .breather p{font-family:var(--headline);font-weight:800;font-size:27px;line-height:1.5;letter-spacing:-.025em;max-width:32ch;margin:15px auto 0;color:var(--primary)}
.fnc-dp .breather p b{color:var(--primary-deep)}

/* ---- feature block (일본 편) ---- */
.fnc-dp .feature{display:grid;grid-template-columns:300px 1fr;gap:0;margin-top:30px;border:1px solid var(--outline-variant);border-radius:18px;overflow:hidden;background:var(--surface-lowest)}
.fnc-dp .feature__media{position:relative;display:flex;align-items:flex-end;padding:24px;min-height:230px;color:#ffffff;
    background:linear-gradient(150deg,var(--primary),var(--primary-deep))}
.fnc-dp .feature__media::before{content:"";position:absolute;inset:0;opacity:.4;pointer-events:none;
    background-image:repeating-linear-gradient(115deg, rgba(255,255,255,.05) 0 1px, transparent 1px 34px)}
.fnc-dp .feature__media .flag{position:relative;display:inline-flex;align-items:center;gap:8px;font-family:var(--headline);font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
    background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:8px 15px}
.fnc-dp .feature__media .flag svg.i{width:15px;height:15px;stroke-width:2}
.fnc-dp .feature__body{padding:28px 30px}
.fnc-dp .feature__body h3{font-family:var(--headline);font-size:23px;font-weight:800;letter-spacing:-.02em;line-height:1.28;margin-bottom:11px}
.fnc-dp .feature__body p{font-size:14.5px;color:var(--on-variant);max-width:68ch}
.fnc-dp .flist{list-style:none;margin:18px 0 22px;border-top:1px solid var(--surface)}
.fnc-dp .flist li{font-size:13.5px;color:var(--on-surface);padding:9px 0 9px 17px;position:relative;border-bottom:1px solid var(--surface)}
.fnc-dp .flist li::before{content:"";position:absolute;left:0;top:17px;width:7px;height:7px;border-radius:2px;background:var(--primary)}

/* ---- upcoming index list (.domlist) ---- */
.fnc-dp .domlist{display:grid;grid-template-columns:1fr 1fr;column-gap:48px;margin-top:28px}
.fnc-dp .domrow{display:grid;grid-template-columns:34px 38px 1fr;gap:14px;align-items:start;padding:16px 6px;border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant)}
.fnc-dp .domrow .idx{font-family:var(--headline);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800;color:var(--outline-variant);padding-top:8px}
.fnc-dp .domrow .dico{width:38px;height:38px;border-radius:10px;background:var(--primary-tint);color:var(--primary-deep);display:flex;align-items:center;justify-content:center;font-size:18px;margin-top:2px}
.fnc-dp .domrow .dtx h3{font-family:var(--headline);font-size:16px;font-weight:800;letter-spacing:-.01em;margin-bottom:3px}
.fnc-dp .domrow .dtx p{font-size:12.5px;color:var(--on-variant);margin-bottom:7px}
.fnc-dp .domrow .dstate{font-family:var(--headline);font-size:10.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;display:inline-flex;align-items:center;gap:5px;color:var(--on-variant)}
.fnc-dp .domrow .dstate svg.i{width:12px;height:12px;stroke-width:2}

/* ---- principles (방향) ---- */
.fnc-dp .principles{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}
.fnc-dp .principle{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;background:var(--surface-lowest);border:1px solid var(--outline-variant);border-radius:16px;padding:24px}
.fnc-dp .principle .n{font-family:var(--headline);font-variant-numeric:tabular-nums;font-size:15px;font-weight:800;color:#ffffff;background:var(--primary);width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex:none}
.fnc-dp .principle h4{font-family:var(--headline);font-size:16.5px;font-weight:800;letter-spacing:-.015em;margin-bottom:6px}
.fnc-dp .principle p{font-size:13.5px;color:var(--on-variant)}

/* ---- CTA band ---- */
.fnc-dp .cta-sec{border-top:1px solid var(--outline-variant)}
.fnc-dp .ctaband{position:relative;overflow:hidden;background:radial-gradient(900px 300px at 80% -20%,rgba(108,119,165,.42),transparent 60%),linear-gradient(135deg,var(--primary),var(--primary-deep));color:var(--primary-tint);border-radius:20px;padding:44px 40px;text-align:center}
.fnc-dp .ctaband .kicker{color:var(--primary-tint);justify-content:center}
.fnc-dp .ctaband .kicker::before{background:var(--primary-2)}
.fnc-dp .ctaband h3{font-family:var(--headline);font-size:24px;font-weight:800;color:#ffffff;margin:14px 0 10px;letter-spacing:-.025em}
.fnc-dp .ctaband p{font-size:15px;color:var(--primary-tint);max-width:60ch;margin:0 auto 24px}
.fnc-dp .btnrow{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.fnc-dp .btn{font-family:var(--headline);font-weight:800;font-size:14px;padding:12px 22px;border-radius:999px;border:1.5px solid transparent;transition:.18s;display:inline-flex;align-items:center;gap:8px}
.fnc-dp .btn svg.i{width:16px;height:16px;stroke-width:2}
.fnc-dp .btn.primary{background:var(--primary);color:#ffffff}
.fnc-dp .btn.primary:hover{background:var(--primary-deep)}
.fnc-dp .ctaband .btn.primary{background:#ffffff;color:var(--primary-deep)}
.fnc-dp .ctaband .btn.primary:hover{background:var(--primary-tint)}
.fnc-dp .btn.ghost{background:transparent;color:var(--primary-tint);border-color:rgba(255,255,255,.4)}
.fnc-dp .btn.ghost:hover{background:rgba(255,255,255,.1)}

@media(prefers-reduced-motion:reduce){.fnc-dp *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:1020px){
    .fnc-dp .reads{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
    .fnc-dp .wrap{padding:0 20px}
    .fnc-dp h2.sec{font-size:26px}
    .fnc-dp .hero-grid{grid-template-columns:1fr}
    .fnc-dp .hero h1{font-size:38px}
    .fnc-dp .tiles{grid-template-columns:1fr}
    .fnc-dp .tile{border-right:none;border-bottom:1px solid var(--outline-variant)}
    .fnc-dp .tile:last-child{border-bottom:none}
    .fnc-dp .cases,.fnc-dp .reads,.fnc-dp .principles{grid-template-columns:1fr}
    .fnc-dp .feature{grid-template-columns:1fr}
    .fnc-dp .feature__media{min-height:130px}
    .fnc-dp .feature__body{padding:24px 22px}
    .fnc-dp .feature__body h3{font-size:20px}
    .fnc-dp .domlist{grid-template-columns:1fr;column-gap:0}
    .fnc-dp .domrow{grid-template-columns:28px 1fr;gap:12px;border-top:none}
    .fnc-dp .domrow:first-child{border-top:1px solid var(--outline-variant)}
    .fnc-dp .domrow .dico{display:none}
    .fnc-dp .breather{padding:52px 0}
    .fnc-dp .breather p{font-size:20px}
    .fnc-dp .ctaband{padding:32px 22px}
}
