/* vfio — 실내수직농장 IoT — 센서 네트워크 다이어그램 */
.vfio { background: #0f1220; color: #dfe3f5; overflow: hidden; }

.vfio-hero { background: linear-gradient(160deg, #171b30 0%, #0f1220 70%); padding: 84px 24px 54px; overflow: hidden; }
.vfio-hero-inner { max-width: var(--maxw); margin: 0 auto; text-align: center; }
.vfio-eyebrow { display: inline-block; font-family: monospace; font-size: .72rem; letter-spacing: .18em; font-weight: 800; color: #f2a93b; margin-bottom: 14px; }
.vfio-hero-inner h1 { font-size: clamp(2.2rem, 6.5vw, 3.8rem); font-weight: 800; color: #fff; }
.vfio-hero-lead { font-size: clamp(1.02rem, 2.1vw, 1.3rem); font-weight: 700; margin-top: 14px; color: #fdf1de; max-width: 720px; margin-left: auto; margin-right: auto; }
.vfio-hero-sub { margin-top: 10px; color: #9498b8; max-width: 600px; margin-left: auto; margin-right: auto; }

.vfio-cta-group { display: flex; gap: 14px; justify-content: center; margin-top: 28px; flex-wrap: wrap; }
.vfio-btn { padding: 14px 28px; min-height: 44px; display: inline-flex; align-items: center; border-radius: 8px; font-weight: 700; font-size: .92rem; }
.vfio-btn-primary { background: #f2a93b; color: #241704; }
.vfio-btn-outline { border: 1.5px solid rgba(242,169,59,.6); color: #f6cf94; }

.vfio-section { max-width: var(--maxw); margin: 0 auto; padding: 64px 24px; }
.vfio-section h2 { font-size: clamp(1.4rem, 3.2vw, 2.1rem); font-weight: 800; color: #fff; }
.vfio-answer { margin-top: 16px; padding: 18px 20px; background: #181c30; border-left: 4px solid #f2a93b; font-weight: 700; color: #fdf1de; border-radius: 4px; }
.vfio-body { margin-top: 14px; color: #a3a7c4; line-height: 1.75; }
.vfio-alt { background: #141728; overflow: hidden; }

/* Node flow diagram */
.vfio-flow { margin-top: 34px; display: flex; align-items: stretch; gap: 10px; flex-wrap: wrap; justify-content: center; }
.vfio-node { flex: 1 1 190px; background: #181c30; border: 1px solid #2a2f4a; border-radius: 12px; padding: 20px 16px; position: relative; }
.vfio-node::before { content: ''; position: absolute; top: -1px; left: 18px; right: 18px; height: 1px; background: linear-gradient(90deg, transparent, #f2a93b, transparent); }
.vfio-node b { display: inline-block; font-family: monospace; color: #f2a93b; font-size: .78rem; letter-spacing: .06em; margin-bottom: 8px; }
.vfio-node h3 { font-size: .98rem; font-weight: 800; color: #fff; }
.vfio-node p { margin-top: 6px; font-size: .84rem; color: #a3a7c4; line-height: 1.55; }
.vfio-arrow { display: flex; align-items: center; justify-content: center; color: #f2a93b; font-size: 1.4rem; font-weight: 800; flex: 0 0 auto; }
@media (max-width: 760px) { .vfio-flow { flex-direction: column; } .vfio-arrow { transform: rotate(90deg); } }

.vfio-figure { margin-top: 30px; border-radius: 14px; overflow: hidden; }
.vfio-figure img { width: 100%; display: block; }

.vfio-table { width: 100%; margin-top: 22px; border-collapse: collapse; background: #181c30; border-radius: 12px; overflow: hidden; }
.vfio-table th, .vfio-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid #2a2f4a; font-size: .92rem; }
.vfio-table th { background: #111427; color: #f2a93b; font-weight: 800; }
.vfio-table td { color: #c7cbe6; }
.vfio-table tr:last-child td { border-bottom: none; }

.vfio-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 24px; }
@media (max-width: 760px) { .vfio-related-grid { grid-template-columns: 1fr; } }
.vfio-related-card { display: block; padding: 20px; min-height: 44px; border: 1px solid #2a2f4a; border-radius: var(--radius); font-weight: 700; color: #fff; background: #181c30; }
.vfio-related-card span { display: block; font-size: .75rem; font-weight: 800; color: #f2a93b; margin-bottom: 6px; }

.vfio-cta { padding: 80px 24px; text-align: center; overflow: hidden; }
.vfio-cta-mid { background: #141728; }
.vfio-cta h2 { font-size: clamp(1.4rem, 3.4vw, 2rem); font-weight: 800; color: #fff; max-width: 640px; margin: 0 auto; }
.vfio-cta p { margin-top: 12px; color: #a3a7c4; }

.vfio-updated { text-align: center; padding: 0 24px 40px; color: #565a78; font-size: .82rem; }

.vfio .vf-faq-item { border-bottom-color: #2a2f4a; }
.vfio .vf-faq-item summary { color: #fdf1de; }
.vfio .vf-faq-item p { color: #a3a7c4; }
