/* JORMA – kiberbiztonsági képzés blokkok és űrlapok (2026-10) */
.jk-section { padding: 110px 0; }
.jk-section.jk-soft { background: #f7f5ff; }
.jk-section.jk-tight { padding: 70px 0; }
@media (max-width: 991px) { .jk-section { padding: 70px 0; } }

.jk-badge {
    display: inline-block; background: var(--color-primary); color: #fff;
    font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
    padding: 6px 14px; border-radius: 30px; margin-bottom: 18px;
}
.jk-lead { font-size: 18px; line-height: 1.7; color: var(--color-body); }
.jk-note {
    border-left: 4px solid var(--color-primary); background: #fff; padding: 18px 22px;
    border-radius: 0 10px 10px 0; margin: 26px 0; color: var(--color-heading-1);
}

/* tények (képzési idő, díj, ...) */
.jk-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 30px 0; }
.jk-facts.jk-facts-5 { grid-template-columns: repeat(5, 1fr); }
@media (max-width: 991px) { .jk-facts, .jk-facts.jk-facts-5 { grid-template-columns: repeat(2, 1fr); } }
.jk-fact { background: #fff; border-radius: 12px; padding: 18px; box-shadow: 0 8px 30px rgba(28,37,57,.06); }
.jk-fact .k { display: block; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--color-body); margin-bottom: 6px; }
.jk-fact .v { display: block; font-size: 20px; font-weight: 700; color: var(--color-heading-1); font-family: var(--font-secondary, inherit); }

/* időpontok */
.jk-dates { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0 28px; padding: 0; list-style: none; }
.jk-dates li { background: #fff; border: 1px solid #e4defd; border-radius: 30px; padding: 8px 16px; font-weight: 600; color: var(--color-heading-1); margin: 0; }
.jk-date-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; margin-top: 30px; }
.jk-date-card { background: #fff; border-radius: 12px; padding: 22px; box-shadow: 0 8px 30px rgba(28,37,57,.06); display: flex; flex-direction: column; gap: 4px; }
.jk-date-card .d { font-size: 20px; font-weight: 700; color: var(--color-heading-1); }
.jk-date-card .m { color: var(--color-body); font-size: 15px; }
.jk-date-card .rts-btn { margin-top: 14px; align-self: flex-start; }
.jk-empty { display: none; }

.jk-buttons { display: flex; flex-wrap: wrap; gap: 14px; }
.jk-btn-outline { background: transparent !important; color: var(--color-primary) !important; border: 2px solid var(--color-primary) !important; }
.jk-btn-outline:hover { background: var(--color-primary) !important; color: #fff !important; }

/* főoldali kiemelő kártya */
.jk-card { background: #fff; border-radius: 16px; padding: 44px; box-shadow: 0 12px 40px rgba(28,37,57,.08); }
@media (max-width: 767px) { .jk-card { padding: 26px; } }
.jk-card .title { margin-bottom: 8px; }
.jk-card .sub { font-size: 18px; color: var(--color-primary); font-weight: 600; margin-bottom: 18px; }
.jk-checks { list-style: none; padding: 0; margin: 20px 0; }
.jk-checks li { position: relative; padding-left: 30px; margin-bottom: 10px; color: var(--color-heading-1); }
.jk-checks li::before { content: "\f00c"; font-family: "Font Awesome 5 Pro"; font-weight: 400; position: absolute; left: 0; top: 0; color: var(--color-primary); }
.jk-side-img { border-radius: 16px; width: 100%; height: 100%; object-fit: cover; min-height: 320px; }

/* tematika */
.jk-topics { counter-reset: t; display: grid; gap: 18px; margin-top: 30px; }
.jk-topic { background: #fff; border-radius: 12px; padding: 26px 26px 26px 92px; position: relative; box-shadow: 0 8px 30px rgba(28,37,57,.06); }
.jk-topic::before { counter-increment: t; content: "0" counter(t); position: absolute; left: 26px; top: 22px; font-size: 32px; font-weight: 800; color: var(--color-primary); }
.jk-topic h5 { margin-bottom: 8px; }
.jk-topic p { margin: 0; }

/* ágazatok */
.jk-sectors { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; margin-top: 26px; }
.jk-sector { background: #fff; border: 1px solid #ece8fb; border-radius: 10px; padding: 16px 18px; }
.jk-sector strong { display: block; color: var(--color-heading-1); margin-bottom: 4px; }
.jk-sector span { font-size: 14px; color: var(--color-body); }

/* táblázat */
.jk-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 8px 30px rgba(28,37,57,.06); }
.jk-table th, .jk-table td { text-align: left; padding: 14px 20px; border-bottom: 1px solid #f0edf9; font-size: 16px; }
.jk-table th { width: 45%; color: var(--color-body); font-weight: 500; }
.jk-table td { color: var(--color-heading-1); font-weight: 600; }

/* oktatók */
.jk-trainer { display: flex; gap: 18px; align-items: flex-start; background: #fff; border-radius: 12px; padding: 24px; box-shadow: 0 8px 30px rgba(28,37,57,.06); height: 100%; }
.jk-trainer .ini { flex: 0 0 64px; height: 64px; border-radius: 50%; background: var(--color-primary); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 20px; }
.jk-trainer h5 { margin-bottom: 6px; }
.jk-trainer p { margin: 0; font-size: 15px; line-height: 1.6; }

/* GYIK */
.jk-faq details { background: #fff; border-radius: 10px; margin-bottom: 12px; box-shadow: 0 6px 24px rgba(28,37,57,.05); }
.jk-faq summary { cursor: pointer; padding: 18px 22px; font-weight: 600; color: var(--color-heading-1); list-style: none; position: relative; padding-right: 50px; }
.jk-faq summary::-webkit-details-marker { display: none; }
.jk-faq summary::after { content: "+"; position: absolute; right: 22px; top: 14px; font-size: 24px; color: var(--color-primary); }
.jk-faq details[open] summary::after { content: "–"; }
.jk-faq details p { padding: 0 22px 18px; margin: 0; }

/* aloldal fejléc */
.jk-hero { background: linear-gradient(120deg, #1C2539 0%, #2d2463 60%, #8466f3 130%); color: #fff; padding: 110px 0 90px; }
.jk-hero .crumb { font-size: 14px; opacity: .8; margin-bottom: 18px; }
.jk-hero .crumb a { color: #fff; }
.jk-hero h1 { color: #fff; font-size: 54px; line-height: 1.15; margin-bottom: 10px; }
.jk-hero .sub { font-size: 22px; color: #d9d0ff; margin-bottom: 20px; }
.jk-hero p { color: #e8e4f7; max-width: 820px; font-size: 17px; line-height: 1.7; }
@media (max-width: 767px) { .jk-hero { padding: 70px 0 60px; } .jk-hero h1 { font-size: 36px; } }
.jk-hero .jk-btn-outline { color: #fff !important; border-color: #fff !important; }

/* űrlapok */
.jk-form { background: #fff; border-radius: 16px; padding: 40px; box-shadow: 0 12px 40px rgba(28,37,57,.08); }
@media (max-width: 767px) { .jk-form { padding: 24px; } }
.jk-form .row > div { margin-bottom: 16px; }
.jk-form label { display: block; font-size: 14px; font-weight: 600; color: var(--color-heading-1); margin-bottom: 6px; }
.jk-form input[type=text], .jk-form input[type=email], .jk-form input[type=tel], .jk-form input[type=number], .jk-form select, .jk-form textarea {
    width: 100%; border: 1px solid #e3e0ee; border-radius: 8px; padding: 12px 14px; font-size: 16px; background: #fbfaff; color: var(--color-heading-1); height: auto;
}
.jk-form textarea { min-height: 120px; }
.jk-form .chk { display: flex; gap: 10px; align-items: flex-start; font-weight: 400; font-size: 14px; }
.jk-form .chk input { width: auto; margin-top: 4px; }
.jk-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.form-uzenet { margin-top: 14px; font-weight: 600; }
.form-uzenet.ok { color: #1a7f37; }
.form-uzenet.hiba { color: #b00f0f; }

/* a sablon "About Us" háttérfelirata ne jelenjen meg az új blokkokban */
.jk-section .rts-title-area::after { display: none; }
