/* === Kurzy: detail kurzu, ceník, doplňkové sekce ===
   Brand barvy: #e26091 / #d14d7a (sladěno s pruhem statistik na /reference) */

:root {
    --kurz-pink: #e26091;
    --kurz-pink-dark: #d14d7a;
    --kurz-ink: #333;
    --kurz-muted: #666;
}

/* ---------- HERO ---------- */
.kurz-hero {
    background: linear-gradient(135deg, #7a3a57 0%, #4d2136 100%);
    color: #fff;
    padding: 70px 0 60px;
    text-align: center;
}

.kurz-hero h1 {
    color: #fff;
    margin: 0 0 18px;
    font-size: 38px;
    line-height: 1.2;
}

/* Hero s fotopozadím (akreditovaný kurz) */
.kurz-hero--image {
    background-size: cover;
    background-position: center 42%;
    background-repeat: no-repeat;
    padding: 80px 0 70px;
    text-shadow: 0 2px 16px rgba(60, 15, 35, 0.65);
}

.kurz-hero .kurz-perex {
    max-width: 760px;
    margin: 0 auto;
    font-size: 18px;
    line-height: 1.6;
    opacity: 0.97;
}

/* meta chips (délka / formát / místo / cena) */
.kurz-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 28px;
}

.kurz-meta .chip {
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 999px;
    padding: 8px 18px;
    font-size: 15px;
}

.kurz-meta .chip i {
    margin-right: 7px;
    opacity: 0.9;
}

.kurz-meta .chip.chip-price {
    background: #fff;
    color: var(--kurz-pink-dark);
    border-color: #fff;
    font-weight: 700;
}

/* ---------- TĚLO ---------- */
.kurz-body {
    padding: 55px 0;
}

.kurz-body .lead-block p {
    font-size: 17px;
    line-height: 1.75;
    color: #444;
    margin-bottom: 18px;
}

.kurz-card {
    background: #fff;
    border: 1px solid #f0e3e9;
    border-radius: 14px;
    padding: 28px 30px;
    box-shadow: 0 2px 18px rgba(210, 77, 122, 0.08);
    margin-bottom: 26px;
}

.kurz-card h2 {
    margin-top: 0;
    font-size: 24px;
    color: var(--kurz-ink);
}

/* "Co se naučíte" checklist */
.kurz-naucite {
    list-style: none;
    padding: 0;
    margin: 0;
}

.kurz-naucite li {
    position: relative;
    padding: 9px 0 9px 34px;
    border-bottom: 1px solid #f5eef1;
    color: #444;
    font-size: 16px;
}

.kurz-naucite li:last-child {
    border-bottom: none;
}

.kurz-naucite li::before {
    content: "\f00c"; /* fa-check */
    font-family: FontAwesome;
    position: absolute;
    left: 0;
    top: 9px;
    color: var(--kurz-pink);
    font-size: 15px;
}

/* Osnova kurzu (akreditovaný) */
.osnova-note {
    color: var(--kurz-muted);
    font-size: 14px;
    margin: 0 0 12px;
}

.kurz-osnova {
    margin: 0;
    padding-left: 22px;
}

.kurz-osnova li {
    padding: 7px 0;
    border-bottom: 1px solid #f5eef1;
    color: #444;
    font-size: 15px;
}

.kurz-osnova li:last-child {
    border-bottom: none;
}

/* Harmonogram / termíny */
.kurz-harmonogram-card h2 i { color: var(--kurz-pink); margin-right: 8px; }
.kurz-harmonogram {
    list-style: none;
    padding: 0;
    margin: 0;
}
.kurz-harmonogram li {
    position: relative;
    padding: 9px 0 9px 26px;
    border-bottom: 1px solid #f5eef1;
    color: #444;
    font-size: 15px;
}
.kurz-harmonogram li:last-child { border-bottom: none; }

/* Týdenní mřížka */
.kurz-tyden {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
    margin: 8px 0 16px;
}
.kurz-den {
    border-radius: 10px;
    padding: 12px 5px;
    text-align: center;
    border: 1px solid #f0e3e9;
    background: #fff;
}
.kurz-den .kd-dow { display: block; font-weight: 700; color: #b89aa6; text-transform: uppercase; font-size: 11px; letter-spacing: 1px; }
.kurz-den .kd-cas { display: block; font-weight: 800; font-size: 13px; margin: 5px 0; color: var(--kurz-pink-dark); }
.kurz-den .kd-co { display: block; font-size: 11px; color: #777; line-height: 1.3; }
.kurz-den--off { background: #f4eef1; }
.kurz-den--off .kd-cas, .kurz-den--off .kd-co, .kurz-den--off .kd-dow { color: #b29aa6; }
.kurz-den--am { border: 2px solid #f3c9da; }
.kurz-den--pm { border: 2px solid #e98fb4; }
.kurz-akr-info {
    margin-top: 14px;
    background: linear-gradient(135deg, #7a3a57 0%, #4d2136 100%);
    color: #fff;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 13px;
}
.kurz-akr-info i { margin-right: 7px; }
@@media (max-width: 600px) {
    .kurz-tyden { grid-template-columns: repeat(2, 1fr); }
}
.kurz-harmonogram li::before {
    content: "\f105"; /* fa-angle-right */
    font-family: FontAwesome;
    position: absolute;
    left: 6px;
    top: 9px;
    color: var(--kurz-pink);
}

/* info box (pro koho / parametry) */
.kurz-info dl {
    margin: 0;
}

.kurz-info dt {
    color: var(--kurz-muted);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 12px;
    margin-top: 14px;
}

.kurz-info dt:first-child {
    margin-top: 0;
}

.kurz-info dd {
    margin: 3px 0 0;
    font-size: 16px;
    color: var(--kurz-ink);
}

.kurz-price-note {
    font-size: 14px;
    color: var(--kurz-muted);
    margin-top: 6px;
}

/* ---------- CTA pruh ---------- */
.kurz-cta-band {
    background: linear-gradient(135deg, #7a3a57 0%, #4d2136 100%);
    color: #fff;
    text-align: center;
    padding: 50px 0;
}

.kurz-cta-band h2 {
    color: #fff;
    margin-top: 0;
}

.kurz-cta-band .btn {
    margin: 8px;
}

/* scope na .kurz-cta-band/.kurz-hero → vyšší specificita, přebije webový .btn */
.kurz-cta-band .btn-light, .kurz-hero .btn-light {
    background: #fff !important;
    color: var(--kurz-pink-dark) !important;
    border: 2px solid #fff !important;
    font-weight: 600;
}

.kurz-cta-band .btn-light:hover, .kurz-cta-band .btn-light:focus,
.kurz-hero .btn-light:hover, .kurz-hero .btn-light:focus {
    background: #fff !important;
    color: var(--kurz-pink) !important;
}

.kurz-cta-band .btn-outline-light, .kurz-hero .btn-outline-light {
    background: transparent !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

.kurz-cta-band .btn-outline-light:hover, .kurz-cta-band .btn-outline-light:focus,
.kurz-hero .btn-outline-light:hover, .kurz-hero .btn-outline-light:focus {
    background: #fff !important;
    color: var(--kurz-pink-dark) !important;
}

/* ---------- Související kurzy ---------- */
.related-courses {
    padding: 50px 0;
    background: #faf6f8;
}

.related-courses h2 {
    text-align: center;
    margin-bottom: 30px;
}

.related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.related-grid a {
    display: block;
    background: #fff;
    border: 1px solid #f0e3e9;
    border-radius: 12px;
    padding: 18px 20px;
    color: var(--kurz-ink);
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.related-grid a:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 22px rgba(210, 77, 122, 0.14);
    color: var(--kurz-pink-dark);
}

.related-grid h3 {
    font-size: 17px;
    margin: 0 0 6px;
}

.related-grid p {
    font-size: 14px;
    color: var(--kurz-muted);
    margin: 0;
}

/* ---------- Ceník ---------- */
.cenik-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
    align-items: start;
}

.cenik-card {
    background: #fff;
    border: 1px solid #f0e3e9;
    border-radius: 14px;
    padding: 26px 28px;
    box-shadow: 0 2px 14px rgba(210, 77, 122, 0.07);
    display: flex;
    flex-direction: column;
}

.cenik-card.is-highlight {
    border: 2px solid var(--kurz-pink);
    box-shadow: 0 6px 24px rgba(210, 77, 122, 0.16);
}

.cenik-card h3 {
    margin: 0 0 6px;
    font-size: 21px;
}

.cenik-card .cenik-perex {
    color: var(--kurz-muted);
    font-size: 15px;
    flex-grow: 1;
}

.cenik-card .cenik-price {
    font-size: 28px;
    font-weight: 700;
    color: var(--kurz-pink-dark);
    margin: 14px 0 2px;
}

.cenik-card .cenik-params {
    font-size: 14px;
    color: var(--kurz-muted);
    margin-bottom: 16px;
}

.cenik-card .btn {
    align-self: flex-start;
}

.cenik-note {
    text-align: center;
    color: var(--kurz-muted);
    font-size: 14px;
    margin-top: 26px;
}

/* ---------- O mně: certifikáty ---------- */
.cert-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 16px;
}

.cert-grid .cert {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.cert-grid .cert img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.cert-grid .cert:hover img {
    transform: scale(1.05);
}

/* ---------- Responsive ---------- */
@media (max-width: 991px) {
    .related-grid,
    .cert-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .kurz-hero {
        padding: 50px 0 44px;
    }

    .kurz-hero h1 {
        font-size: 28px;
    }

    .kurz-hero .kurz-perex {
        font-size: 16px;
    }

    .cenik-grid,
    .related-grid,
    .cert-grid {
        grid-template-columns: 1fr;
    }
}

/* Kurzové karty (sdílené s homepage – styl jako služby marieskabova) */
.courses-active { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 10px; }
.kurz-card-tile { background:#fff; border-radius:15px; overflow:hidden; display:flex; flex-direction:column; box-shadow:0 10px 30px rgba(0,0,0,.10); transition:transform .3s ease, box-shadow .3s ease; }
.kurz-card-tile:hover { transform:translateY(-8px); box-shadow:0 20px 45px rgba(0,0,0,.16); }
.kurz-card-tile--featured { border:2px solid var(--accent); }
.kurz-card-img { display:block; height:210px; background-size:cover; background-position:center; position:relative; }
.kurz-card-badge { position:absolute; top:16px; left:16px; background:var(--accent); color:#fff; padding:6px 14px; border-radius:30px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.kurz-card-content { padding:22px 24px 6px; flex-grow:1; display:flex; flex-direction:column; }
.kurz-card-content h3 { margin:0 0 8px; font-size:21px; color:#333; }
.kurz-card-content > p { font-size:14.5px; line-height:1.55; color:#666; margin:0 0 14px; }
.kurz-card-features { list-style:none; padding:0; margin:0; }
.kurz-card-features li { padding:5px 0; font-size:14px; color:#555; }
.kurz-card-features i { color:var(--accent); margin-right:9px; }
.kurz-card-footer { padding:10px 24px 24px; margin-top:auto; }
.kurz-card-btn { display:inline-block; width:100%; box-sizing:border-box; padding:13px 24px; text-align:center; background:var(--accent); color:#fff; border-radius:30px; font-weight:600; text-decoration:none; transition:filter .2s ease, transform .2s ease; }
.kurz-card-btn:hover { filter:brightness(.92); color:#fff; transform:scale(1.03); }
.kurz-card-price { text-align:center; font-size:15px; font-weight:700; color:var(--accent); margin:12px 0 0; }
@media (max-width: 991px){ .courses-active { grid-template-columns:1fr 1fr; } }
@media (max-width: 767px){ .courses-active { grid-template-columns:1fr; } }

/* Rezervační poplatek — info box na stránce kurzu (jen akreditovaný kurz) */
.kurz-rezervace-note{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:14px 16px;
  background:#faf2f6;border:1px solid #e7c9d8;border-left:4px solid #b03a63;border-radius:10px;}
.kurz-rezervace-note > i{color:#b03a63;font-size:18px;margin-top:2px;flex-shrink:0;}
.kurz-rezervace-note strong{display:block;color:#4d2136;font-size:14px;margin-bottom:3px;}
.kurz-rezervace-note p{margin:0;font-size:13px;line-height:1.5;color:#6b5560;}

/* ÚP teaser — úhrada Úřadem práce + podpora při rekvalifikaci (novinka 2026) */
.up-teaser{background:linear-gradient(135deg,#faf2f6 0%,#f3e9ef 100%);border:1px solid #e7c9d8;
  border-left:5px solid #7a3a57;border-radius:12px;padding:20px 22px;margin:22px 0;}
.up-teaser-badge{display:inline-block;background:#7a3a57;color:#fff;font-size:11px;font-weight:700;
  letter-spacing:.5px;text-transform:uppercase;padding:4px 12px;border-radius:999px;margin-bottom:10px;}
.up-teaser-badge i{margin-right:6px;}
.up-teaser h3{margin:0 0 8px;font-size:20px;color:#4d2136;}
.up-teaser p{margin:0 0 8px;font-size:14.5px;line-height:1.55;color:#4a3a40;}
.up-teaser-note{font-size:12.5px;color:#8a7681;font-style:italic;}
.up-teaser-cta{display:inline-block;margin-top:8px;background:#7a3a57;color:#fff;padding:11px 22px;
  border-radius:30px;font-weight:600;text-decoration:none;transition:background .2s ease,transform .2s ease;}
.up-teaser-cta:hover{background:#b03a63;color:#fff;transform:scale(1.02);}
.up-teaser-cta i{margin-left:7px;}

/* ===== Redesign 2026-07: přehledová tabulka kurzů (Home + Ceník) ===== */
.prehled-wrap{overflow-x:auto;border:1px solid #eee3e9;border-radius:14px;background:#fff;box-shadow:0 2px 14px rgba(77,33,54,.06);}
.prehled-table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px;}
.prehled-table th{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:#7a3a57;padding:12px 16px;text-align:left;}
.prehled-table td{padding:13px 16px;border-top:1px solid #f3eaef;vertical-align:middle;}
.pt-group td{background:#faf2f6;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#7a3a57;padding:9px 16px;}
.pt-group--hobby td{background:#faf6ec;color:#a97a2f;}
.pt-name{font-weight:700;color:#4d2136;text-decoration:none;display:block;}
.pt-name:hover{color:#b03a63;}
.pt-sub{font-size:12px;color:#7d6d76;display:block;}
.pt-price{font-weight:800;color:#4d2136;white-space:nowrap;}
.pt-yes{color:#2c6e3f;font-weight:700;}.pt-no{color:#b9a8b1;}
.ta-r{text-align:right;}
.prehled-table tbody tr:hover td{background:#fdf9fb;}
.cenik-note-splatky{font-size:12.5px;color:#7d6d76;margin-top:10px;}
.cenik-group-head{margin:34px 0 6px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#7a3a57;}
.cenik-group-head--hobby{color:#a97a2f;}

/* ===== Redesign: keyfacts pruh + srovnání + sticky (detail kurzu) ===== */
.kurz-keyfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));background:#fff;border:1px solid #eee3e9;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px rgba(77,33,54,.09);margin:-34px auto 26px;position:relative;z-index:5;}
.kurz-kf{padding:14px 18px;border-left:1px solid #f3eaef;}
.kurz-kf:first-child{border-left:0;}
.kurz-kf span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7d6d76;}
.kurz-kf b{font-size:14.5px;color:#4d2136;}
.kurz-kf b.kf-up{color:#2c6e3f;}
.kurz-osnova--cols{columns:2;column-gap:26px;}
.kurz-osnova--cols li{break-inside:avoid;}
.kurz-srovnani table{width:100%;border-collapse:collapse;font-size:13.5px;}
.kurz-srovnani th{background:#7a3a57;color:#fff;padding:9px 13px;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;}
.kurz-srovnani td{padding:10px 13px;border-top:1px solid #f3eaef;}
.kurz-srovnani td:first-child{font-weight:700;color:#4d2136;}
.kurz-info--sticky{position:sticky;top:88px;}
@media(max-width:840px){.kurz-osnova--cols{columns:1;}.kurz-keyfacts{margin-top:-16px;}}
.cenik-bullets{list-style:none;margin:0 0 12px;padding:0;text-align:left;}
.cenik-bullets li{font-size:13.5px;padding:5px 0 5px 22px;position:relative;border-bottom:1px dashed #f1e6ec;}
.cenik-bullets li:before{content:"\2713";position:absolute;left:0;color:#b03a63;font-weight:700;}
.up-teaser--compact{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.up-teaser--compact div{font-size:14px;}
.up-teaser--compact .up-teaser-badge{margin-right:10px;}
.up-teaser--compact .up-teaser-cta{margin-top:0;white-space:nowrap;}
.kurz-srovnani-link{display:inline-block;margin-top:12px;font-weight:700;font-size:13.5px;color:#b03a63;text-decoration:none;}
.kurz-srovnani-link:hover{text-decoration:underline;color:#b03a63;}
