:root {
      --navy: #1a3158;
    --navy-mid: #1e3d6e;
	--tyrkys: #1391b5;
  --blue: #1d5fa8;
    --blue-light: #4a8fd4;
    --blue-pale: #eaf2fb;
    --accent: #c8820a;
    --accent-bg: #fef6e8;
    --accent-light: #f5c050;
    --bg: #f4f6f9;
    --bg-white: #ffffff;
    --text: #1a2535;
    --text-mid: #4a5568;
    --text-light: #8a9ab0;
    --border: #dde4ef;
    --tag-online: #e0f5eb;
    --tag-online-text: #1a7a40;
    --tag-prezen: #e4eefb;
    --tag-prezen-text: #1d5fa8;
    --tag-dvou: #fef1d6;
    --tag-dvou-text: #9a5c00;
    --shadow: 0 1px 4px rgba(26,49,88,0.07), 0 4px 16px rgba(26,49,88,0.06);
    --shadow-hover: 0 4px 8px rgba(26,49,88,0.10), 0 10px 32px rgba(26,49,88,0.12);
    --radius: 10px;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body  {

    scroll-behavior: smooth;
    font-family: "DM Sans", sans-serif;
    color:black;
}

button,
input,
select,
textarea {
    font-family: "DM Sans", sans-serif;
}

html {
    box-sizing: border-box;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: transparent;

}

html,
body {
    overflow-x: clip;
}


 

/* pisma */
/* Centralizované nastavení velikosti a tloušťky písma. */

/* 1. Identifikované části webu. */
body {
    font-size: 16px;
    font-weight: 400;
}

header nav.open ul li a,
.nav-links a,
.menu a,
.nav-cta,
.mobile-menu a,
.mobile-menu a.mobile-cta {
    font-size: 16px;
    font-weight: 500;
}

.section-title {
    font-size: 36px;
    font-weight: 700;
}

.seminar-date-box .sday {
    font-size: 22px;
    font-weight: 700;
}

.seminar-date-box .smon {
    font-size: 13px;
    font-weight: 400;
}

.seminar-id {
    font-size: 0.82em;
    font-weight: 500;
}

.seminar-price .price {
    font-size: 20px;
    font-weight: 700;
}

.meta-lektor {
    font-size: 16px;
    font-weight: 600;
}

.tag {
    font-size: 11px;
    font-weight: 600;
}

.aktuality-card h3 {
    font-size: 18px;
    font-weight: 600;
}

.aktuality-card p {
    font-size: 16px;
    font-weight: 400;
}

.rc-title {
    font-size: 16px;
    font-weight: 700;
}

.rc-desc {
    font-size: 14px;
    font-weight: 400;
}

.lektor-name,
.lektor-row-name {
    font-size: 18px;
    font-weight: 700;
}

.lektor-spec,
.lektor-row-spec {
    font-size: 13px;
    font-weight: 600;
}

.lektor-bio,
.lektor-detail-bio p {
    font-size: 13px;
    font-weight: 400;
}

.dvou-card-title {
    font-size: 17px;
    font-weight: 600;
}

.dvou-card-price {
    font-size: 16px;
    font-weight: 700;
}

.dvou-card-date,
.dvou-detail-day {
    font-size: 22px;
    font-weight: 700;
}

.date-year,
.dvou-detail-month {
    font-size: 13px;
    font-weight: 400;
}

.ref-text-new {
    font-size: 16px;
    font-weight: 400;
}

.extra-page-h2 {
    font-size: 22px;
    font-weight: 700;
}

.extra-page-text {
    font-size: 16px;
    font-weight: 400;
}

.kontakt-radek-label {
    font-size: 11px;
    font-weight: 700;
}

footer {
    font-size: 13px;
    font-weight: 400;
}

.newsletter-note,
.newsletter-blok p.newsletter-note {
    font-size: 12px;
    font-weight: 400;
}

/* dodane */

.logo-icon {
    font-size: 18px;
    font-weight: 700;
}

.logo-text {
    font-size: 19px;
    font-weight: 700;
}

.logo-sub {
    font-size: 10px;
    font-weight: 400;
}

.hero-eyebrow {
    font-size: 12px;
    font-weight: 700;
}

.hero h1 {
    font-size: 36px;
    font-weight: 700;
}

.hero p {
    font-size: 15.5px;
}
.accred-strip {
    font-size: 12.5px;
}

.accred-badge {
    font-weight: 700;
    font-size: 11px;
}

.tab-btn {
    font-size: 13.5px;
    font-weight: 600;
}


.btn-outline,
.hero-btns li a {
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
}

button.btn-primary,
a.btn-primary,
input.btn-primary,
.hero-btns .btn-primary a,
.em-booking-form-details input[type=submit] {
    font-weight: 600;
    font-size: 14px;
}

.stat-num {
    font-size: 32px;
    font-weight: 700;
}

.stat-label {
    font-size: 12.5px;
}

.see-all {
    font-size: 13px;
    font-weight: 600;
}



/* 2. Ostatní typografické deklarace. */



.aktuality-date .day {
    font-size: 16px;
    font-weight: 700;
}

.aktuality-date .mon {
    font-size: 10px;
}

.aktuality-tag {
    font-size: 11px;
    font-weight: 700;
}

.promo-badge {
    font-size: 10px;
    font-weight: 700;
}

.seminar-info h3, .seminar-info h3 a {
    font-size: 22px;
    font-weight: 600;
}

.meta-item {
    font-size: 12.5px;
}

.meta-item i {
    font-size: 13px;
}

.meta-lektor i {
    font-size: 13px;
}

.seminar-price .price-note {
    font-size: 11px;
}

.btn-small {
    font-size: 12.5px;
    font-weight: 600;
}

.sidebar-card h4 {
    font-size: 15.5px;
}

.accred-card p {
    font-size: 13px;
}

.accred-num {
    font-size: 12.5px;
    font-weight: 500;
}

.accred-num strong {
    font-size: 13.5px;
}

.dvou-sidebar-item h5 {
    font-size: 13px;
    font-weight: 600;
}

.dvou-meta {
    font-size: 11.5px;
}

.filter-group label {
    font-size: 11.5px;
    font-weight: 600;
}

.filter-group select, .filter-group input {
    font-size: 14px;
}

.filter-reset {
    font-size: 13px;
}

.result-count {
    font-size: 13px;
}

.rc-icon {
    font-size: 22px;
}

.rc-arrow {
    font-size: 18px;
}

.section-divider-label {
    font-size: 11px;
    font-weight: 700;
}

.accred-block-icon {
    font-size: 20px;
    font-weight: 700;
}

.accred-block-body p {
    font-size: 13.5px;
}

.accred-block-num {
    font-size: 11.5px;
}

.dvou-card-meta {
    font-size: 12.5px;
}

.el-hero h1 {
    font-size: 36px;
    font-weight: 700;
}

.el-hero p {
    font-size: 15.5px;
}

.el-info-icon {
    font-size: 28px;
}

.el-info-icon i {
    font-size: 28px;
}

.el-info-title {
    font-size: 13.5px;
    font-weight: 700;
}

.el-info-text {
    font-size: 16px;
}

.el-video-play {
    font-size: 18px;
}

.el-video-label {
    font-size: 10px;
}

.el-video-title {
    font-size: 13.5px;
    font-weight: 600;
}

.el-video-meta {
    font-size: 12px;
}

.el-kurz-icon {
    font-size: 24px;
}

.el-kurz-title {
    font-size: 14.5px;
    font-weight: 600;
}

.el-kurz-meta {
    font-size: 12.5px;
}

.review-stars {
    font-size: 16px;
}

.review-text {
    font-size: 14.5px;
}

.review-avatar {
    font-size: 12px;
    font-weight: 700;
}

.review-name {
    font-size: 13.5px;
    font-weight: 600;
}

.review-seminar {
    font-size: 12px;
}

.namir-icon {
    font-size: 20px;
}

.namir-title {
    font-size: 13px;
    font-weight: 700;
}

.namir-text {
    font-size: 12px;
}

.cf-label {
    font-size: 11.5px;
    font-weight: 600;
}

.cf-input,
.em-booking-form-details input {
    font-size: 13.5px;
}

.el-preview-badge {
    font-size: 11px;
    font-weight: 700;
}

.el-preview-heading {
    font-size: 24px;
    font-weight: 700;
}

.el-preview-subtext {
    font-size: 16px;
}

.el-preview-stat strong {
    font-size: 14px;
}

.el-preview-stat span {
    font-size: 11.5px;
}

.el-pill {
    font-size: 12px;
    font-weight: 500;
}

.contact-info-row {
    font-size: 13.5px;
}

.contact-info-ico {
    font-size: 14px;
}

.contact-info-link {
    font-weight: 500;
}

.contact-info-text {
    font-weight: 500;
}

.contact-info-row {
    font-size: 13.5px;
}

.contact-info-ico {
    font-size: 14px;
}

.contact-info-link {
    font-weight: 500;
}

.contact-info-text {
    font-weight: 500;
}

.el-kurz-featured-badge {
    font-size: 11px;
    font-weight: 700;
}

.el-kurz-featured-title {
    font-size: 24px;
    font-weight: 700;
}

.el-kurz-featured-desc {
    font-size: 14px;
}

.el-kurz-featured-price-label {
    font-size: 11.5px;
}

.el-kurz-featured-price {
    font-size: 32px;
    font-weight: 700;
}

.el-kurz-featured-price-note {
    font-size: 11.5px;
}

@media (max-width: 768px) {
    .accred-strip {
        font-size: 11px;
    }
}

@media (max-width: 768px) {
    .tab-btn {
        font-size: 12px;
    }
}

@media (max-width: 768px) {
    .hero h1 {
        font-size: 24px;
    }
}

@media (max-width: 768px) {
    .hero p {
        font-size: 14px;
    }
}

@media (max-width: 768px) {
    .stat-num {
        font-size: 20px;
    }
}

@media (max-width: 768px) {
    .el-preview-heading {
        font-size: 18px;
    }
}

@media (max-width: 768px) {
    .accred-block-icon {
        font-size: 16px;
    }
}

.seminar-detail-auto-info {
    font-size: 14.5px;
}

.seminar-detail-auto-info i {
    font-size: 22px;
}

.ref-expand-btn {
    font-size: 12px;
    font-weight: 600;
}

.seminar-info h3.title-bold {
    font-size: 26px;
}

.seminar-info h3.title-bold.title-blue {
    font-size: 26px;
}

.seminar-info h3.title-bold.title-red {
    font-size: 26px;
}

.seminar-info h3.title-bold.title-green {
    font-size: 26px;
}

.detail-back {
    font-size: 13px;
    font-weight: 600;
}

.seminar-detail-title {
    font-size: 28px;
    font-weight: 700;
}

.seminar-detail-meta-item {
    font-size: 13.5px;
    font-weight: 500;
}

.seminar-detail-meta-item i {
    font-size: 15px;
}

.seminar-detail-section-title {
    font-size: 12px;
    font-weight: 700;
}

.seminar-detail-popis {
    font-size: 16px;
}

.seminar-program-item {
    font-size: 13.5px;
}

.seminar-detail-price-label {
    font-size: 11px;
    font-weight: 700;
}

.seminar-detail-price {
    font-size: 32px;
    font-weight: 700;
}

.seminar-detail-price-note {
    font-size: 11.5px;
}

.seminar-detail-contact {
    font-size: 13px;
}

.kontakt-osoba-foto {
    font-size: 18px;
    font-weight: 700;
}

.kontakt-osoba-name {
    font-size: 18px;
    font-weight: 700;
}

.kontakt-osoba-role {
    font-size: 12.5px;
    font-weight: 600;
}

.op-icon {
    font-size: 20px;
}

.op-title {
    font-size: 15px;
    font-weight: 700;
}

.op-text {
    font-size: 13px;
}

.kontakt-hlavni-nadpis {
    font-size: 28px;
    font-weight: 700;
}

.kontakt-hlavni-text {
    font-size: 14px;
}

.kontakt-radek-icon {
    font-size: 16px;
}

.kontakt-radek-hodnota {
    font-size: 14.5px;
}

.kontakt-radek-hodnota a {
    font-weight: 500;
}

.kontakt-key {
    font-size: 12px;
}

.kontakt-udaj-icon {
    font-size: 17px;
}

.kontakt-udaj-label {
    font-size: 13px;
    font-weight: 700;
}

.kontakt-udaj-row {
    font-size: 14.5px;
}

.kontakt-udaj-row span {
    font-size: 12px;
}

.kontakt-udaj-row a {
    font-weight: 500;
}

.kontakt-udaj-row strong {
    font-weight: 600;
}

.kontakt-tema-icon {
    font-size: 22px;
}

.kontakt-tema-title {
    font-size: 18px;
    font-weight: 700;
}

.kontakt-tema-text {
    font-size: 13px;
}

.kontakt-tema-kontakt {
    font-size: 13px;
}

.kontakt-tema-kontakt a {
    font-weight: 500;
}

.kontakt-tym-foto {
    font-size: 20px;
    font-weight: 700;
}

.kontakt-tym-name {
    font-size: 18px;
    font-weight: 700;
}

.kontakt-tym-bio {
    font-size: 16px;
}

.kontakt-tym-kontakty {
    font-size: 13px;
}

.kontakt-tym-kontakty a {
    font-weight: 500;
}

.kontakt-tym-kontakty i {
    font-size: 14px;
}

.spoluprace-role {
    font-size: 11px;
    font-weight: 700;
}

.spoluprace-name {
    font-size: 14px;
    font-weight: 600;
}

.dvou-detail-tag {
    font-size: 11px;
    font-weight: 700;
}

.dvou-detail-title {
    font-size: 22px;
    font-weight: 700;
}

.dvou-detail-desc {
    font-size: 16px;
}

.dvou-detail-lektor {
    font-size: 15px;
    font-weight: 700;
}

.dvou-detail-lektor i {
    font-size: 16px;
}

.dvou-detail-meta-row {
    font-size: 12.5px;
}

.dvou-detail-meta-row i {
    font-size: 14px;
}

.dvou-price-row {
    font-size: 11.5px;
}

.dvou-price-row .dvou-price-amount {
    font-weight: 700;
}

.dvou-detail-price {
    font-size: 26px;
    font-weight: 700;
}

.dvou-detail-price-note {
    font-size: 11px;
}

.dvou-program-day-label {
    font-size: 11.5px;
    font-weight: 700;
}

.dvou-program-item {
    font-size: 13.5px;
}

.dvou-info-icon {
    font-size: 22px;
}

.dvou-info-item strong {
    font-size: 13.5px;
}

.dvou-info-item p {
    font-size: 12px;
}

.lektor-photo {
    font-size: 16px;
    font-weight: 700;
}

.lektor-seminare-label {
    font-size: 11px;
    font-weight: 700;
}

.lektor-card-link {
    font-size: 12.5px;
    font-weight: 600;
}

.lektor-card-link i {
    font-size: 11px;
}

.lektor-avatar {
    font-size: 28px;
    font-weight: 700;
}

.lektor-detail-section-title {
    font-size: 11px;
    font-weight: 700;
}

.lektor-seminar-tag {
    font-size: 15px;
}

@media (max-width: 768px) {
    .lektor-avatar {
        font-size: 18px;
    }
}

.ref-filter-help {
    font-size: 13px;
}

.ref-filter-help strong {
    font-weight: 700;
}

.ref-card-nazev {
    font-size: 20px;
    font-weight: 700;
}

.ref-card-nazev .ref-nazev-arrow {
    font-size: 12px;
}

.ref-stars-new {
    font-size: 16px;
}

.ref-show-all-btn {
    font-size: 14px;
    font-weight: 600;
}

.ref-tag-seminar {
    font-size: 11.5px;
    font-weight: 600;
}

.ref-tag-lektor {
    font-size: 11.5px;
    font-weight: 600;
}

.ref-avatar-new {
    font-size: 11px;
    font-weight: 700;
}

.ref-name-new {
    font-size: 13px;
    font-weight: 600;
}

.ref-urad-new {
    font-size: 12px;
    font-weight: 400;
}

.ki-icon {
    font-size: 18px;
}

.ki-label {
    font-size: 10.5px;
    font-weight: 600;
}

.ki-value {
    font-size: 17px;
    font-weight: 600;
}

.el-yt-play {
    font-size: 20px;
}

.online-info-bar {
    font-size: 13.5px;
}

.mesic-label {
    font-size: 32px;
    font-weight: 700;
}

.seminar-note-icon {
    font-size: 13px;
}

.seminar-note-text {
    font-size: 12.5px;
}

.dvou-info-block-icon {
    font-size: 20px;
}

.dvou-info-block-icon i {
    font-size: 20px;
}

.dvou-info-block-title {
    font-size: 17px;
    font-weight: 700;
}

.dvou-info-block-text {
    font-size: 16px;
}

.dvou-info-link {
    font-size: 13px;
    font-weight: 600;
}

@media (max-width: 768px) {
    .dvou-info-block-icon {
        font-size: 18px;
    }
}

.dvou-warning-icon {
    font-size: 18px;
}

.dvou-warning-text {
    font-size: 13px;
}

.dvou-option-icon {
    font-size: 20px;
}

.dvou-option-icon i {
    font-size: 20px;
}

.dvou-option-label {
    font-size: 13.5px;
    font-weight: 700;
}

.dvou-option-text {
    font-size: 12px;
}

.dvou-list li {
    font-size: 13.5px;
}

.aktuality-wide-title {
    font-size: 22px;
    font-weight: 700;
}

.aktuality-wide-text {
    font-size: 16px;
}

.aktuality-featured-tag {
    font-size: 11px;
    font-weight: 700;
}

.aktuality-featured-title {
    font-size: 28px;
    font-weight: 700;
}

.aktuality-featured-text {
    font-size: 16px;
}

.aktuality-cist-vice {
    font-size: 13px;
    font-weight: 600;
}

.extra-page-info-box {
    font-size: 14px;
}

.extra-page-info-box i {
    font-size: 18px;
}

.extra-page-download-icon {
    font-size: 24px;
}

.extra-page-download-title {
    font-size: 16px;
    font-weight: 700;
}

.extra-page-download-meta {
    font-size: 13px;
}

.the_content p {
    font-size: 16px;
}

.the_content ul li {
    font-size: inherit;
}

.footer_bot {
    font-size: 12px;
}

span.red_color {
    font-size: 11px;
}


@media only screen and (min-width: 520px) {
    .aktuality-wide-card_ul {
        font-size: 16px;
    }
}

.wpcf7-form.sent .wpcf7-response-output {
    font-weight: bold;
}

.newsletter-blok h3 {
    font-size: 20px;
    font-weight: 700;
}

.newsletter-blok p {
    font-size: 14px;
}

.newsletter-form .mailpoet_form input {
    font-size: 14px;
}

.newsletter-form  .mailpoet_form input[type=submit] {
    font-size: 14px;
    font-weight: 600;
}

.e-learn_link {
    font-size: 15px;
    font-weight: 600;
}

.sekce_link {
    font-size: 14px;
    font-weight: 500;
}

.dowload_butt {
    font-size: 15px;
}

.ref-filter-help {
    font-size: 14px;
}


/* Typografie prvků převedených z inline stylů. */


.frontend-link-emphasis {
    font-weight: 600;
}

.aktuality-extra-text,
.aktuality-extra-list {
    font-size: 12.5px;
}

.el-access-link {
    font-size: 13px;
    font-weight: 500;
}

.el-video-intro,
.el-cta-text {
    font-size: 14px;
}

.el-cta-title {
    font-size: 20px;
    font-weight: 700;
}

.el-preview-emoji {
    font-size: 64px;
}

.el-preview-primary-action {
    font-size: 15px;
}

.header-tax-note {
    font-size: 11px;
}

.kontakt-billing-value {
    font-size: 13px;
}

.kontakt-tym-foto-large {
    font-size: 40px;
}

.kontakt-phone-link {
    font-weight: 500;
}

.ref-filter-help-icon {
    font-size: 18px;
}

.online-info-icon {
    font-size: 16px;
}

.procedure-email-label,
.procedure-step-number {
    font-size: 13px;
    font-weight: 700;
}

.procedure-check-icon {
    font-size: 18px;
}

.procedure-contact-link--email {
    font-size: 15px;
    font-weight: 600;
}

.procedure-contact-link--phone {
    font-size: 16px;
    font-weight: 700;
}

.offer-legend-item,
.offer-updated {
    font-size: 13px;
}

.offer-card-title {
    font-size: 20px;
    font-weight: 700;
}

.offer-card-subtitle,
.offer-admin-status {
    font-size: 12px;
}

.offer-card-contact-text,
.offer-card-footer,
.offer-table th {
    font-size: 11px;
}

.offer-group-label,
.offer-table th,
.offer-download-title,
.offer-admin-title {
    font-weight: 700;
}

.offer-group-label,
.offer-cell-id,
.offer-cell-data,
.offer-download-status,
.offer-admin-title {
    font-size: 13px;
}

.offer-cell-id {
    font-weight: 600;
}

.offer-cell-title {
    font-size: 14px;
    font-weight: 700;
}

.offer-cell-price {
    font-weight: 700;
}

.offer-download-title {
    font-size: 15px;
}

.offer-admin-lock {
    font-size: 12px;
}

.offer-admin-button {
    font-size: 14px;
}
/* pisma */



.flexy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.flex-col,
.flexy-col {

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.flex-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

}

@media (min-width: 720px) {
    .flex-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

}


.header-inner {
    min-width: 100%;
    align-items: center;
    justify-content: space-between;
}
header, section {
    padding: 0 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}




  section  > div {
    width: 100%;
    max-width: 1140px;
    position: relative;
    padding: 0;
    margin: auto;

}
  header nav.flexy {
      display: none;
  }
@media (min-width: 960px) {

    header nav.flexy {
        display: flex;
    }

    header, section {
        padding: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }


    section {
        max-width: 1426px;
        margin: auto;
    }

    section  > div {
        max-width: 1120px;
        padding: 0;
    }

}


@media (min-width: 960px) and (max-width: 1260px){

    section  > div {
        max-width: 920px;
        padding: 0;
    }


}




.relativni {
    position: relative
}


body { font-family: 'DM Sans', sans-serif; background: var(--bg); color: var(--text);  }

/* ID semináře — zobrazuje se před názvem všude na webu.
   Propojuje seminář s přihlašovacím formulářem, fakturou a osvědčením. */
.seminar-id {
    color: var(--text-light);
    margin-right: 5px;
    letter-spacing: 0.03em;
    font-family: 'DM Sans', sans-serif;
}

/* JEDNOTNÁ BARVA IKON — pravidlo platí pro VŠECHNY Bootstrap Icons (<i class="bi bi-...">)
   na celém webu, bez ohledu na to, v jakém kontejneru se nacházejí. Tím se zamezí situaci,
   kdy stejná ikona (např. telefon) vychází jednou modře a jinde černě podle zděděné barvy textu.
   Pokud je potřeba ikona v jiné barvě (např. bílá ikona v tmavém bloku), nastavte barvu
   inline stylem přímo na <i> — ten má vyšší specificitu a globální pravidlo přebije. */
i[class*="bi-"] { color: var(--blue);
    margin-right: 4px;
}

/* BÍLÉ IKONY NA TMAVÉM POZADÍ — automatické výjimky pro navy/tmavé kontejnery */
.accred-strip i,

.el-cta-block i,
.seminar-detail-auto-info i,
.accred-card i { color: #fff; }

/* NAVIGATION */
header {
    background: #fff;
    padding: 0 20px;
    display: flex;
    align-items: center;

    height: 66px;
    position: sticky;
    top: 0;
    z-index: 100;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 1px 6px rgba(26,49,88,0.07);
}


header nav.open {
    display: flex;
    flex-direction: column;
    background: #fff;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 4px 12px rgba(26, 49, 88, 0.1);
    position: absolute;
    top: 66px;
    z-index: 99;
    min-width: 100%;
    align-items: flex-start;
    padding: 0;
    left: 0;

}

header nav.open ul {
    flex-direction: column;
    min-width: 100%;

}

header nav.open ul li {
    text-align: left;
    flex: 1;
    min-width: 100%;
    display: inline-block;
    border-bottom: 1px solid var(--border);
}
.open .nav-links {
    min-width: 100%;
    margin-top: -10px;
}

.open .nav-links a {
    display: inline-flex;
    min-width: 100%;
    border-radius: 0 !important;
     margin-left: 0;
    text-align: center;
}
header nav.open ul li a {
    padding: 14px 20px;
    color: var(--text);
    text-decoration: none;
    min-width: 100%;
    transition: background 0.15s;
    display: inline-block;
}

header nav.open .nav-cta {
    padding: 14px 20px;
    text-align: center;
    justify-content: center;
}


@media (min-width: 960px) {
    header {
        padding: 0 48px;

    }
}


.logo {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}
.logo-icon {
    width: 38px; height: 38px;
    background: #0091b6;
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    font-family: 'DM Sans', sans-serif;
    color: #fff;
}
.logo-text {
    font-family: 'DM Sans', sans-serif;
    color: var(--tyrkys);
    line-height: 1.1;
}
.logo-sub {  color: var(--tyrkys); letter-spacing: 0.07em; font-family: 'DM Sans', sans-serif; }
.menu { display: flex; align-items: center; gap: 2px; }

ul.menu {
    display: flex;
}
.menu li {
    list-style-type: none;
}
.nav-links a,
.menu a {
    color: var(--text-mid);
    text-decoration: none;
    padding: 8px 14px;
    border-radius: 6px;
    transition: all 0.15s;
    display: inline-block;

}
.menu a:hover { background: var(--blue-pale); color: var(--blue); }
.menu .current_page_item a { color: var(--blue); background: var(--blue-pale); }
.nav-cta {
    background: var(--blue) ;
    color: #fff !important;
    padding: 9px 20px ;
    border-radius: 7px ;
    margin-left: 8px;
}
.nav-cta:hover { background: var(--navy) ; }

/* ACCREDITATION STRIP */
.accred-strip {
    background: #0091b6;
    padding: 10px 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #b0c4de;
}
.accred-badge {
    background: var(--accent-light);
    color: var(--navy);
    padding: 3px 11px;
    border-radius: 20px;
    letter-spacing: 0.04em;
    white-space: nowrap;
}
.accred-badge i { color: var(--navy); }

/* PAGE TABS */
.page-tabs {
    background: var(--bg-white);
    border-bottom: 1px solid var(--border);
    display: flex;
    padding: 0 48px;
    gap: 0;
}
.tab-btn {
    background: none;
    border: none;
    cursor: pointer;
    padding: 14px 22px;
    color: var(--text-mid);
    border-bottom: 2.5px solid transparent;
    margin-bottom: -1px;
    transition: all 0.15s;
    font-family: 'DM Sans', sans-serif;
}
.tab-btn:hover { color: var(--blue); }
.tab-btn.active { color: var(--blue); border-bottom-color: var(--blue); }

/* PAGES */

.page.active { display: block; }

/* HERO */
.hero {
    background: linear-gradient(105deg, var(--blue-pale) 0%, #ddeaf8 50%, #eef4fc 100%);
    padding: 56px 48px 64px;
    position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
    text-align: center;
}
.hero::after {
    content: '';
    position: absolute;
    right: calc(50% - 280px);
    top: 50%;
    transform: translateY(-50%);
    width: 300px; height: 300px;
    border-radius: 50%;
    background: rgba(29,95,168,0.08);
    pointer-events: none;
    z-index: 0;
}
.hero-inner { max-width: 760px; margin: 0 auto; position: relative; z-index: 1; }
.hero-eyebrow {
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
}
.hero-eyebrow::before {
    content: '';
    display: inline-block;
    width: 28px; height: 2px;
    background: var(--blue);
    border-radius: 2px;
}
.hero-eyebrow::after {
    content: '';
    display: inline-block;
    width: 28px; height: 2px;
    background: var(--blue);
    border-radius: 2px;
}
.hero h1 {
    font-family: 'DM Sans', sans-serif;
    color: #0091b6;
    line-height: 1.25;
    margin-bottom: 16px;
}


.hero h1 em { font-style: normal; 
	color: #0fabd2; }
.hero p {
    color: var(--text-mid);
    line-height: 1.7;
    max-width: 580px;
    margin: 0 auto 28px;
}
.hero-btns {
    display: flex; gap: 12px; flex-wrap: wrap; justify-content: center;align-items: center; }
.hero-btns li {
    list-style-type: none;
}



.btn-outline,
.hero-btns li a
{
    background: #fff;
    color: var(--navy);
    padding: 12px 24px;
    border-radius: 8px;
    border: 1.5px solid var(--border);
    cursor: pointer;
    transition: all 0.18s;
    font-family: 'DM Sans', sans-serif;
    text-decoration: none;
}

.hero-btns li a  {
	color: #4d9ebe;
}


.hero-btns li a:hover { border-color: var(--blue); color: var(--blue); }


button.btn-primary,
a.btn-primary,
input.btn-primary,
.hero-btns .btn-primary a,
.em-booking-form-details input[type=submit]
{
    background: var(--blue);
    color: #fff;
    padding: 12px 24px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    transition: all 0.18s;
    font-family: 'DM Sans', sans-serif;
    text-decoration: none;
    display: inline-block;
    box-shadow: 0 2px 8px rgba(29,95,168,0.25);
}
.hero-btns .btn-primary a {
	  background:  var(--tyrkys);
}
 
 
.hidden-fields-container {
    display: none;
}
.em-booking-form-details input[type=submit] {
    margin: 20px 0;
    width: auto!important;
}
.btn-primary a:hover,
input[type=submit]:hover
{ background: var(--navy); transform: translateY(-1px); box-shadow: 0 4px 14px rgba(29,95,168,0.3); }
.contact-form form > p {
    display: flex;
}
.contact-form input[type=submit] {
    flex:1;
}

.contact-form p {
    margin: 0;
    padding: 0;
}
/* STATS ROW */
.stats-row {
    background: var(--bg-white);
    border-bottom: 1px solid var(--border);
    padding: 18px 48px;
    display: flex;
    gap: 0;
    align-items: stretch;
}
.stat-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 4px;
    padding: 16px 28px;
    border-right: 1px solid var(--border);
}
.stat-item:first-child { padding-left: 28px; }
.stat-item:last-child { border-right: none; }
.stat-num { color: var(--tyrkys); font-family: 'DM Sans', sans-serif; }
.stat-label { color: var(--text-mid); line-height: 1.35; }

/* MAIN CONTENT */
.main-grid {
    max-width: 1100px;
    margin: 0 auto;
    padding: 40px 48px;
    display: block;
    box-sizing: border-box;
    overflow-x: hidden;
}

/* SECTION HEADINGS */



.section-title {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    display: flex;
    align-items: center;
    gap: 10px;
}
.section-title::before {
    content: '';
    display: inline-block;
    width: 5px; height: 28px;
    background: var(--accent);
    border-radius: 3px;
    flex-shrink: 0;
    align-self: center;
}
.see-all {
    color: var(--blue);
    text-decoration: none;
    cursor: pointer;
}
.see-all:hover { text-decoration: underline; }

/* AKTUALITY */

.aktuality-grid {
    display: flex;
   flex-direction: column;
    margin-bottom: 36px;
}
.page-template-aktuality .section-head  {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
}




@media (min-width: 960px) {
    .aktuality-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 14px;
        margin-bottom: 36px;
    }

    .section-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 18px;
    }

}

.aktuality-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 18px 20px;
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: all 0.18s;
    cursor: pointer;
    border: 1px solid var(--border);
}

@media (max-width: 960px) {
    .aktuality-card {
        margin-bottom: 20px;
    }


}
.aktuality-card:hover { box-shadow: var(--shadow-hover); border-color: var(--blue-light); }
.aktuality-card.promo { border-color: var(--accent); background: linear-gradient(to bottom, var(--accent-bg), #fff); }
.aktuality-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.aktuality-date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--navy);
    border-radius: 6px;
    padding: 5px 10px;
    color: #fff;
}
.aktuality-date .day { line-height: 1; }
.aktuality-date .mon { letter-spacing: 0.04em; color: #94aec8; }
.aktuality-tag { text-transform: uppercase; letter-spacing: 0.07em; color: var(--accent); margin-bottom: 6px; }
.aktuality-card h3 { color: var(--text); line-height: 1.38; margin-bottom: 6px; }
.aktuality-card p {
    color: var(--text-mid);
    line-height: 1.6;
    flex: 1;
}
.promo-badge {
    background: var(--accent);
    color: #fff;
    padding: 3px 9px;
    border-radius: 20px;
    letter-spacing: 0.05em;
    align-self: center;
    white-space: nowrap;
}

/* SEMINÁŘE CARDS */
.seminar-list { display: flex; flex-direction: column; gap: 12px; }
.seminar-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 18px 20px;
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: row;
    gap: 18px;
    align-items: flex-start;
    transition: all 0.18s;
    cursor: pointer;
    border: 1px solid var(--border);
}

@media only screen and (max-width: 600px) {
    .seminar-card {
        flex-direction: column;
    }
}
.seminar-info { flex: 1; min-width: 0; }
.seminar-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    white-space: nowrap;
    flex-shrink: 0;
}
.seminar-date-box {
    background: var(--blue-pale);
    border-radius: 8px;
    min-width: 68px;
    text-align: center;
    padding: 11px 10px;
    color: var(--blue);
    border: 1px solid #c8dcf0;
    flex-shrink: 0;
}
.seminar-card.dvoudenni .seminar-date-box {
    background: var(--accent-bg);
    color: var(--accent);
    border-color: #f0d090;
}
.seminar-date-box .sday { line-height: 1.2; white-space: nowrap; font-family: 'DM Sans', sans-serif; }
.seminar-date-box .smon { letter-spacing: 0.02em; opacity: 0.75; margin-top: 2px; white-space: nowrap; font-family: 'DM Sans', sans-serif; }
.seminar-meta {
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: flex-start;
    min-width: 0;
    max-width: 100%;
}
.seminar-meta-row + .seminar-meta-row { margin-top: 6px; }
.seminar-info { min-width: 0; overflow: hidden; }
.seminar-info h3, .seminar-info h3 a { color: var(--text); line-height: 1.35; margin-bottom: 10px; }
.seminar-info h3 { overflow-wrap: break-word; word-break: break-word; }
.seminar-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    max-width: 100%;
}
.tag {
    padding: 3px 9px;
    border-radius: 20px;
}
.tag-online { background: var(--tag-online); color: var(--tag-online-text); }
.tag-prezen { background: var(--tag-prezen); color: var(--tag-prezen-text); }
.tag-dvou { background: var(--tag-dvou); color: var(--tag-dvou-text); }
.meta-item {
    color: var(--text-mid);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
.meta-item svg { opacity: 0.5; width: 12px; height: 12px; flex-shrink: 0; }
.meta-item i {
    width: 14px; height: 14px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.meta-lektor i {
    width: 14px; height: 14px;
    flex-shrink: 0;
    line-height: 1;
}
.seminar-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    max-width: 100%;
}
.seminar-price .price { color: var(--navy); }
.seminar-price .price-note { color: var(--text-light); }
.btn-small {
    background: var(--blue);
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 8px 15px;
    cursor: pointer;
    font-family: 'DM Sans', sans-serif;
    margin-top: 8px;
    white-space: nowrap;
    display: block;
    transition: background 0.15s;
    text-decoration: none;
}
.btn-small:hover { background: var(--navy); }

/* SIDEBAR */
.sidebar { display: flex; flex-direction: column; gap: 20px; }
.sidebar-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 22px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border);
}
.sidebar-card h4 {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}
.accred-card {
    background: var(--navy);
    color: #fff;
    border-radius: var(--radius);
    padding: 22px;
    border: none;
}
.accred-card h4 { color: #fff; border-bottom-color: rgba(255,255,255,0.12); }
.accred-card p { color: #a0bcd8; line-height: 1.65; }
.accred-num {
    margin-top: 14px;
    background: rgba(255,255,255,0.07);
    border-radius: 7px;
    padding: 10px 14px;
    color: #b0c8e0;
    border: 1px solid rgba(255,255,255,0.1);
}
.accred-num strong { color: var(--accent-light); }
.dvou-sidebar-item {
    padding: 11px 0;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
}
.dvou-sidebar-item:last-child { border-bottom: none; padding-bottom: 0; }
.dvou-sidebar-item:first-child { padding-top: 0; }
.dvou-sidebar-item h5 { color: var(--text); margin-bottom: 4px; line-height: 1.38; }
.dvou-sidebar-item:hover h5 { color: var(--blue); }
.dvou-meta { color: var(--text-light); display: flex; gap: 10px; flex-wrap: wrap; }
.dvou-meta span { display: flex; align-items: center; gap: 3px; }

/* ---- SEMINARE PAGE ---- */
.seminare-page { max-width: 1200px; margin: 0 auto; padding: 36px 40px; }
.filter-bar {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 20px 24px;
    box-shadow: var(--shadow);
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: flex-end;
    margin-bottom: 28px;
}
.filter-group { display: flex; flex-direction: column; gap: 5px; min-width: 160px; }
.filter-group label { color: var(--text-mid); text-transform: uppercase; letter-spacing: 0.05em; }
.filter-group select, .filter-group input {
    border: 1.5px solid var(--border);
    border-radius: 8px;
    padding: 9px 13px;
    color: var(--text);
    background: var(--bg);
    font-family: 'DM Sans', sans-serif;
    outline: none;
    transition: border-color 0.15s;
}
.filter-group select:focus, .filter-group input:focus { border-color: var(--blue); }
.filter-group.search { flex: 1; min-width: 200px; }
.filter-group.search input { background: var(--bg-white); }
.filter-reset {
    background: none;
    border: 1.5px solid var(--border);
    border-radius: 8px;
    padding: 9px 16px;
    color: var(--text-mid);
    cursor: pointer;
    font-family: 'DM Sans', sans-serif;
    align-self: flex-end;
}
.filter-reset:hover { border-color: var(--blue); color: var(--blue); }

.seminare-grid { display: flex; flex-direction: column; gap: 14px; }

.seminare-grid .seminar-card {
    grid-template-columns:  1fr ;
}
.page-template-default .seminare-grid .seminar-card,
.page-template-default .seminar-price
{
    flex-direction: column;
}


@media only screen and (min-width: 520px) {
    .seminare-grid .seminar-card {
        grid-template-columns: auto 1fr auto;
    }
    .page-template-default .seminare-grid .seminar-card

    {
        flex-direction: row;
    }

}


.result-count {
    color: var(--text-mid);
    margin-bottom: 16px;
}
.result-count strong { color: var(--text); }

/* FOOTER */
footer {
    background: var(--navy);
    color: #94a8c4;
    padding: 18px 48px;
    margin-top: 40px;
    display: flex;
     justify-content: center;
    align-items: center;
}
footer a { color: #c8d8ee; text-decoration: none; }
footer a:hover { color: #fff; }

/* Responsive */
@media (max-width: 900px) {
    .main-grid { grid-template-columns: 1fr; }
    .stats-row { flex-wrap: wrap; }
}
/* ROZCESTNÍK */
.rozcestnik-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin-bottom: 8px;
}
.rozcestnik-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 22px 24px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border);
    display: flex;
    align-items: flex-start;
    gap: 18px;
    text-decoration: none;
    transition: all 0.18s;
    cursor: pointer;
}
.rozcestnik-card:hover {
    border-color: var(--blue-light);
    box-shadow: var(--shadow-hover);
    transform: translateY(-1px);
}
.rc-icon {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    background: var(--blue-pale);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--blue);
}
.rc-body { flex: 1; min-width: 0; }
.rc-title { color: var(--navy); margin-bottom: 4px; }
.rc-desc {
    color: var(--text-mid);
    line-height: 1.55; }
.rc-arrow {
    color: var(--blue-light);
    flex-shrink: 0;
    opacity: 0.6;
    margin-top: 2px;
}
.rozcestnik-card:hover .rc-arrow { opacity: 1; color: var(--blue); }
/* SECTION DIVIDER */
.section-divider {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 36px 0 22px;
}
.section-divider-line {
    flex: 1;
    height: 1px;
    background: var(--border);
}
.section-divider-label {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--text-light);
    white-space: nowrap;
    padding: 0 4px;
}
/* ACCRED BLOCK (inline v hlavním sloupci) */
.accred-block {
    background: var(--navy);
    border-radius: var(--radius);
    padding: 20px 24px;
    display: flex;
    gap: 18px;
    align-items: flex-start;
}
.accred-block-icon {
    width: 40px; height: 40px;
    background: rgba(255,255,255,0.12);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center; color: var(--accent-light);
    flex-shrink: 0;
}
.accred-block-icon i { color: #fff; }
.accred-block-body p {
    color: #b0c8e0;
    line-height: 1.65;
    margin-bottom: 10px;
}
.accred-block-body p strong { color: #fff; }
.accred-block-num {
    color: #7a9ab8;
    background: rgba(255,255,255,0.06);
    border-radius: 6px;
    padding: 7px 12px;
    border: 1px solid rgba(255,255,255,0.08);
}
.accred-block-num strong { color: var(--accent-light); }

/* DVOUDENNÍ GRID */
.dvou-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.dvou-card {
    background: var(--bg-white);
    border: 1.5px solid #e5c076;
    border-radius: var(--radius);
    padding: 16px 18px;
    display: flex;
    gap: 14px;
    align-items: flex-start;
    background: linear-gradient(to bottom right, var(--accent-bg), #fff);
    box-shadow: var(--shadow);
    transition: all 0.18s;
    cursor: pointer;
}
.dvou-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-1px); }
.dvou-card-date {
    font-family: 'DM Sans', sans-serif;
    color: var(--bg-white);
    background: var(--accent);
    border-radius: 8px;
    padding: 8px 12px;
    white-space: nowrap;
    flex-shrink: 0;
    text-align: center;
    min-width: 72px;
    line-height: 1.2;
}
.dvou-card-body { flex: 1; min-width: 0; }
.dvou-card-title { color: var(--navy); line-height: 1.35; margin-bottom: 6px; }
.dvou-card-meta { color: var(--text-mid); display: flex; flex-direction: column; gap: 4px; }
.meta-lektor {
    color: var(--navy);
}
.dvou-card-price {
    color: var(--navy);
    text-align: right;
    white-space: nowrap;
    flex-shrink: 0;
}
/* E-LEARNING PAGE */
.el-hero {
    background: linear-gradient(105deg, var(--blue-pale) 0%, #ddeaf8 50%, #eef4fc 100%);
    padding: 56px 48px 64px;
    border-bottom: 1px solid var(--border);
    text-align: center;
    position: relative;
    overflow: hidden;
}
.el-hero-inner { max-width: 760px; margin: 0 auto; position: relative; z-index: 1; }





    @media only screen and (min-width: 520px) {
        .el-main { max-width: 1100px;
            margin: 0 auto;
            padding: 40px 48px 60px;
        }
    }

.el-hero h1 { font-family:'DM Sans', sans-serif; color:var(--navy); line-height:1.25; margin-bottom:28px; }
.el-hero p { color:var(--text-mid); line-height:1.7; max-width:580px; margin:0 auto 28px; }


.el-info-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}
.el-info-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 20px 18px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border);
    text-align: center;
}
.el-info-icon { margin-bottom: 10px; display: flex; justify-content: center; align-items: center; }
.el-info-title { color: var(--navy); margin-bottom: 6px; }
.el-info-text { color: var(--text-mid); line-height: 1.6; }

.el-video-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
    max-width: 860px;
    margin: 0 auto;
}
.el-video-card {
    display: block;
    background: var(--bg-white);
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: var(--shadow);
    border: 1px solid var(--border);
    cursor: pointer;
    text-decoration: none;
    transition: all 0.18s;
}
.el-video-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-2px); }
.el-video-card:focus-visible { outline: 3px solid var(--blue); outline-offset: 3px; }
.el-video-thumb {
    height: 140px;
    background: linear-gradient(135deg, #1a3158 0%, #2563a8 100%);
    display: flex; align-items: center; justify-content: center;
    position: relative;
    flex-direction: column;
    gap: 8px;
}
.el-video-thumb-2 { background: linear-gradient(135deg, #1a4a38 0%, #2a8a60 100%); }
.el-video-thumb-3 { background: linear-gradient(135deg, #4a2010 0%, #a84020 100%); }
.el-video-play {
    width: 48px; height: 48px;
    background: rgba(255,255,255,0.2);
    border: 2px solid rgba(255,255,255,0.5);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center; color: #fff;
    padding-left: 4px;
    transition: background 0.15s;
}
.el-video-card:hover .el-video-play { background: rgba(255,255,255,0.35); }
.el-video-label { color: rgba(255,255,255,0.6); text-transform: uppercase; letter-spacing: 0.08em; }
.el-video-body { padding: 14px 16px; }
.el-video-title { color: var(--navy); margin-bottom: 4px; line-height: 1.38; }
.el-video-meta { color: var(--text-mid); }

.el-kurz-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    padding: 18px 20px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border);
    display: flex;
    gap: 16px;
    align-items: flex-start;
    transition: all 0.18s;
    cursor: pointer;
}
.el-kurz-card:hover { box-shadow: var(--shadow-hover); border-color: var(--blue-light); }
.el-kurz-icon {
    width: 46px; height: 46px;
    background: var(--blue-pale);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.el-kurz-body { flex: 1; }
.el-kurz-title { color: var(--navy); margin-bottom: 4px; }
.el-kurz-meta { color: var(--text-mid); margin-bottom: 8px; }
.el-kurz-tags { display: flex; gap: 6px; flex-wrap: wrap; }

.el-cta-block {
    background: var(--navy);
    border-radius: var(--radius);
    padding: 28px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
}
/* HODNOCENÍ CAROUSEL */
.reviews-carousel {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 24px 28px 20px;
    position: relative;
    overflow: hidden;
    min-height: 160px;
}
.reviews-track { position: relative; }
.review-card {
    display: none;
    animation: fadeInReview 0.4s ease;
}
.review-card.active { display: block; }
@keyframes fadeInReview {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}
.review-stars { color: var(--accent); letter-spacing: 2px; margin-bottom: 10px; }
.review-text {
    color: var(--text);
    line-height: 1.65;
    font-style: italic;
    margin-bottom: 16px;
}
.review-author { display: flex; align-items: center; gap: 12px; }
.review-avatar {
    width: 36px; height: 36px;
    background: var(--navy);
    color: #fff;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.review-name { color: var(--navy); }
.review-seminar { color: var(--text-mid); }
.reviews-dots {
    display: flex;
    gap: 6px;
    justify-content: center;
    margin-top: 18px;
}
.dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--border);
    cursor: pointer;
    transition: background 0.2s;
    border: none;
}
.dot.active { background: var(--blue); }
/* SEMINÁŘ NA MÍRU BOX */
.namir-box {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 18px;
}
.namir-icon { flex-shrink: 0; margin-top: 1px; }
.namir-title { color: var(--navy); margin-bottom: 3px; }
.namir-text { color: var(--text-mid); line-height: 1.5; }

/* KONTAKTNÍ FORMULÁŘ */
.contact-form { display: flex; flex-direction: column; gap: 10px; margin-bottom: 16px; }
.cf-field { display: flex; flex-direction: column; gap: 4px; }
.cf-label { color: var(--text-mid); text-transform: uppercase; letter-spacing: 0.05em; }
.cf-input,
.em-booking-form-details input{
    border: 1.5px solid var(--border);
    border-radius: 7px;
    padding: 8px 11px;
    font-family: 'DM Sans', sans-serif;
    color: var(--text);
    background: var(--bg);
    outline: none;
    transition: border-color 0.15s;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
}
.fields_wrap > div {
    flex: 1;
}
.cf-input:focus { border-color: var(--blue); background: #fff; }
.cf-textarea { min-height: 80px; resize: vertical; }
.cf-divider { border: none; border-top: 1px solid var(--border); margin: 16px 0 12px; }


/* E-LEARNING PREVIEW na home page */
.el-preview-block {
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: var(--radius);
    padding: 32px 36px;
    position: relative;
    overflow: hidden;
}
.el-preview-block::after { display: none; }
.el-preview-badge {
    display: inline-block;
    background: var(--accent);
    color: #fff;
    letter-spacing: 0.08em;
    padding: 4px 12px;
    border-radius: 20px;
    margin-bottom: 14px;
}
.el-preview-heading {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    line-height: 1.3;
    margin-bottom: 12px;
}
.el-preview-subtext {
    color: var(--text-mid);
    line-height: 1.7;
    margin-bottom: 20px;
}
.el-preview-stats-row {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}
.el-preview-stat {
    display: flex;
    flex-direction: column;
    background: var(--bg-white);
    border-radius: 8px;
    padding: 10px 16px;
    border: 1px solid var(--border);
    min-width: 120px;
}
.el-preview-stat strong { color: var(--navy); }
.el-preview-stat span { color: var(--text-light); margin-top: 2px; }
.el-preview-pills-row { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 24px; }
.el-pill {
    background: var(--bg-white);
    color: var(--blue);
    padding: 4px 12px;
    border-radius: 20px;
    border: 1px solid #c8dcf0;
}
.el-preview-actions {
    display: flex;
    align-items: center;
    gap: 24px;
}
/* KONTAKTNÍ INFO */
.contact-info-simple { display: flex; flex-direction: column; gap: 7px; align-items: center; text-align: center; }
.contact-info-row { display: flex; align-items: center; gap: 7px; justify-content: center; }
.contact-info-ico { flex-shrink: 0; }
.contact-info-link { color: var(--blue); text-decoration: none; }
.contact-info-link:hover { text-decoration: underline; }
.contact-info-text { color: var(--text); }
.contact-info-sep { color: var(--text-light); }


/* KONTAKTNÍ INFO */
.contact-info-simple { display: flex; flex-direction: column; gap: 7px; align-items: center; text-align: center; }
.contact-info-row { display: flex; align-items: center; gap: 7px; justify-content: center; }
.contact-info-ico { flex-shrink: 0; }
.contact-info-link { color: var(--blue); text-decoration: none; }
.contact-info-link:hover { text-decoration: underline; }
.contact-info-text { color: var(--text); }
.contact-info-sep { color: var(--text-light); }
/* KONTAKT BLOK (full width) */
.kontakt-block {
    display: grid;
    grid-template-columns: 1fr;

    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 28px 32px;
}
.kontakt-left { display: flex; flex-direction: column; justify-content: flex-start; }
.kontakt-right { padding-left: 0; border-left: none; padding-top: 24px; border-top: 1px solid var(--border); }
/* FEATURED KURZ */
.el-kurz-featured {
    display: flex;
    gap: 32px;
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 32px;
    margin-bottom: 48px;
    align-items: flex-start;
}
.el-kurz-featured-left { flex: 1; }
.el-kurz-featured-badge {
    display: inline-block;
    background: var(--tag-dvou);
    color: var(--tag-dvou-text);
    letter-spacing: 0.07em;
    padding: 3px 10px;
    border-radius: 20px;
    margin-bottom: 12px;
}
.el-kurz-featured-title {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    line-height: 1.3;
    margin-bottom: 14px;
}
.el-kurz-featured-desc {
    color: var(--text-mid);
    line-height: 1.7;
    margin-bottom: 16px;
}
.el-kurz-featured-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.el-kurz-featured-right { flex-shrink: 0; width: 200px; }
.el-kurz-featured-price-box {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 22px 20px;
    text-align: center;
}
.el-kurz-featured-price-label { color: var(--text-light); text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 6px; }
.el-kurz-featured-price { font-family: 'DM Sans', sans-serif; color: var(--navy); line-height: 1; }
.el-kurz-featured-price-note { color: var(--text-light); margin-top: 4px; }
/* RESPONZIVNÍ – MOBIL */
@media (max-width: 768px) {
    nav {
        padding: 0 16px;
        height: auto;
        flex-wrap: wrap;
        padding-top: 12px;
        padding-bottom: 12px;
        gap: 10px;
    }
    .menu { display: none; }
    .accred-strip { padding: 8px 16px; flex-wrap: wrap; gap: 6px; }
    .accred-strip span:last-child { display: none; }
    .page-tabs { padding: 0 16px; overflow-x: auto; }
    .tab-btn { padding: 12px 14px; white-space: nowrap; }

    .hero { padding: 32px 16px 40px; }
    .hero-btns { flex-direction: column; }



    .stats-row { padding: 14px 16px; flex-wrap: wrap; gap: 0; }
    .stat-item { width: 50%; padding: 10px 12px; border-right: none; border-bottom: 1px solid var(--border); }
    .stat-item:nth-child(odd) { border-right: 1px solid var(--border); }
    .stat-item:nth-child(3), .stat-item:nth-child(4) { border-bottom: none; }
    .section-title::before { height: 22px; }
    .main-grid {         padding: 20px; }

    .aktuality-grid { grid-template-columns: 1fr 1fr; }

    .dvou-card { flex-wrap: wrap; }
    .dvou-card-price { width: 100%; display: flex; align-items: center; justify-content: space-between; padding-top: 10px; border-top: 1px solid var(--border); margin-top: 4px; }
    .dvou-card-price .btn-small { margin-top: 0; }

    .rozcestnik-grid {
        display: flex;
        flex-direction: column;
    }
    @media (min-width: 960px) {
        .rozcestnik-grid { grid-template-columns: 1fr 1fr; }

    }

    .dvou-grid-2col { grid-template-columns: 1fr; }

    .el-preview-block { padding: 20px 18px; }
    .el-preview-stats-row { flex-direction: column; gap: 8px; }
    .el-preview-stat { min-width: unset; }
    .el-preview-actions { flex-direction: column; gap: 12px; }
    .el-preview-actions button { width: 100%; }

    .reviews-carousel { padding: 18px 16px 16px; }

    .kontakt-block { padding: 20px 16px; }

    .el-kurz-featured { flex-direction: column; }
    .el-kurz-featured-right { width: 100%; }

    footer { flex-direction: column; gap: 12px; padding: 24px 16px; }
    footer div:last-child { text-align: left; }

    .seminar-card { flex-wrap: wrap; }
    .seminar-price { width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding-top: 10px;
        border-top: 1px solid var(--border); }


    @media only screen and (max-width: 520px) {
        .seminar-price {
            flex-wrap: wrap;
        }
    }
    .seminar-price { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; padding-top: 10px; border-top: 1px solid var(--border); }
    .seminar-price .btn-small { margin-top: 0; }

    .filter-bar { flex-direction: column; }
    .filter-group { min-width: unset; width: 100%; }

    .el-info-grid { grid-template-columns: 1fr 1fr; }
    .el-video-grid { grid-template-columns: 1fr; }

    .accred-block { flex-direction: column; gap: 12px; }
    .accred-block-icon { width: 32px; height: 32px; }

    .seminare-page { padding: 24px 16px; }
}

@media (max-width: 520px) {
    .seminare-page .seminar-card {
        flex-direction: column;
    }

    .seminare-page .seminar-info,
    .seminare-page .seminar-info h3,
    .seminare-page .seminar-info h3 a,
    .seminare-page .seminar-info h3 a span {
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .seminare-page .meta-item {
        white-space: normal;
    }
}


@media (max-width: 740px) {
    .el-info-grid {
        grid-template-columns: 1fr;
    }

    .el-cta-block {
        flex-direction: column;
    }
}


/* HAMBURGER MENU */
.hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px;
    border-radius: 6px;
}
.hamburger span {
    display: block;
    width: 24px; height: 2px;
    background: var(--navy);
    border-radius: 2px;
    transition: all 0.2s;
}
.hamburger.open span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

.mobile-menu {
    display: none;
    flex-direction: column;
    background: #fff;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 4px 12px rgba(26,49,88,0.1);
    position: sticky;
    top: 66px;
    z-index: 99;
}
.mobile-menu.open { display: flex; }
.mobile-menu a {
    padding: 14px 20px;
    color: var(--text);
    text-decoration: none;
    border-bottom: 1px solid var(--border);
    transition: background 0.15s;
}
.mobile-menu a:hover { background: var(--blue-pale); color: var(--blue); }
.mobile-menu a.mobile-cta {
    background: var(--blue);
    color: #fff;
    text-align: center;
    border-bottom: none;
}

@media (max-width: 960px) {
    .hamburger { display: flex; }
}
/* DVOUDENNÍ 2 SLOUPCE */

.dvou-grid-2col {
    display: flex;
    flex-direction: column;
}

.dvou-card {
    margin-bottom: 20px;
}

@media (min-width: 960px) {
    .dvou-grid-2col {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }


}



.seminar-detail-auto-info {
    background: var(--navy);
    border-radius: 10px;
    padding: 16px 20px;
    color: #fff;
    margin-bottom: 20px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    line-height: 1.6;
}
.seminar-detail-auto-info i { flex-shrink: 0; margin-top: 1px; }
.seminar-detail-auto-info strong { color: #fff; }
.seminar-detail-auto-info:empty { display: none; }

/* ROZBALOVACÍ HODNOCENÍ */
.ref-text-new { color: var(--text); line-height: 1.65; font-style: italic; flex: 1;
    display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
    transition: all 0.2s;
}
.ref-text-new.expanded { display: block; -webkit-line-clamp: unset; overflow: visible; }
.ref-expand-btn {
    background: none; border: none; color: var(--blue);
    cursor: pointer; padding: 0; font-family: 'DM Sans', sans-serif; margin-top: 4px;
    align-self: flex-start;
}
.ref-expand-btn:hover { text-decoration: underline; }

/* BAREVNÉ NADPISY SEMINÁŘŮ */
.seminar-info h3.title-blue { color: var(--accent); }
.seminar-info h3.title-red { color: #c0392b; }
.seminar-info h3.title-green { color: #1a7a40; }
.seminar-info h3.title-bold { color: var(--navy); }
.seminar-info h3.title-bold.title-blue { color: var(--accent); }
.seminar-info h3.title-bold.title-red { color: #c0392b; }
.seminar-info h3.title-bold.title-green { color: #1a7a40; }

main {
    min-height: calc(100vh - 200px);
}
/* DETAIL SEMINÁŘE */
.detail-back {     display: inline-block;text-decoration: none;background:none; border:1px solid var(--border); border-radius:7px; padding:8px 16px; color:var(--text-mid); cursor:pointer; margin-bottom:24px; font-family:'DM Sans',sans-serif; transition:all 0.15s; }
.detail-back:hover { border-color:var(--blue); color:var(--blue); }
.seminar-detail-grid { display:grid; grid-template-columns:1fr 280px; gap:32px; align-items:start; }
.seminar-detail-header { background:var(--bg-white); border-radius:var(--radius); border:1px solid var(--border); box-shadow:var(--shadow); padding:24px 28px; margin-bottom:20px; }
.seminar-detail-tags { margin-bottom:10px; }
.seminar-detail-title { font-family:'DM Sans', sans-serif; color:var(--navy); margin-bottom:16px; line-height:1.3; }
.seminar-detail-meta { display:flex; flex-wrap:wrap; gap:12px; }
.seminar-detail-meta-item { display:flex; align-items:center; gap:7px; color:var(--text-mid); }
.seminar-detail-meta-item i { color:var(--blue); }
.seminar-detail-section { background:var(--bg-white); border-radius:var(--radius); border:1px solid var(--border); box-shadow:var(--shadow); padding:24px 28px; margin-bottom:20px; }
.seminar-detail-section-title { text-transform:uppercase; letter-spacing:0.08em; color:var(--text-light); margin-bottom:14px; padding-bottom:8px; border-bottom:1px solid var(--border); }
.seminar-detail-popis { color:var(--text-mid); line-height:1.75; }
.seminar-program-item { color:var(--text-mid); padding:8px 0; border-bottom:1px dashed var(--border); display:flex; align-items:center; gap:10px; }
.seminar-program-item:last-child { border-bottom:none; }
.seminar-program-item::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--blue); flex-shrink:0; }
.seminar-hodnoceni-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px; }
.seminar-detail-price-box { background:var(--bg-white); border-radius:var(--radius); border:1px solid var(--border); box-shadow:var(--shadow); padding:24px; position:sticky; top:86px; }
.seminar-detail-price-label { text-transform:uppercase; letter-spacing:0.07em; color:var(--text-light); margin-bottom:6px; }
.seminar-detail-price { font-family:'DM Sans', sans-serif; color:var(--navy); }
.seminar-detail-price-note { color:var(--text-light); margin-bottom:4px; }
.seminar-detail-contact { margin-top:16px; padding-top:14px; border-top:1px solid var(--border); color:var(--text-mid); display:flex; flex-direction:column; gap:6px; }
@media (max-width:768px) {
    .seminar-detail-grid {
        display: flex;
    flex-direction: column}
    .seminar-detail-main {
        max-width: 100%;
    }
    .seminar-hodnoceni-grid { grid-template-columns:1fr; }

}

@media (max-width:520px) {

.lektor-row-left, .lektor-detail .lektor-seminar-tag {
    flex-direction: column;
    align-items: flex-start;
}

    .lektor-detail    .lektor-seminar-tag::before {
        display: none;
    }

}
.seminar-detail-section img {
    max-width: 100%;
    height: auto;
}
.seminar-detail-section *,
.lektor-row-name,
.lektor-row-spec {
    overflow-wrap: anywhere;
    word-break: break-word;
}



.rounded {
    border-radius: 50%;
}
/* KONTAKT NOVÝ */
.kontakt-osoby-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 8px; }
.kontakt-osoba-card { background: var(--bg-white); border-radius: var(--radius); border: 1px solid var(--border); box-shadow: var(--shadow); padding: 24px; display: flex; gap: 16px; align-items: flex-start; }
.kontakt-osoba-foto { width: 64px; height: 64px; border-radius: 50%; background: var(--navy); color: #fff; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.kontakt-osoba-name { color: var(--navy); font-family: 'DM Sans', sans-serif; }
.kontakt-osoba-role { color: var(--blue); margin-bottom: 12px; }
.kontakt-osoba-kontakty { display: flex; flex-direction: column; gap: 8px; }
.kontakt-info-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.kontakt-form-wrap { background: var(--bg-white); border-radius: var(--radius); border: 1px solid var(--border); box-shadow: var(--shadow); padding: 28px 32px; }
.op-block { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 48px; }
.op-item { background: var(--bg-white); border-radius: var(--radius); border: 1px solid var(--border); box-shadow: var(--shadow); padding: 20px 24px; display: flex; gap: 16px; }
.op-icon { width: 44px; height: 44px; border-radius: 50%; background: var(--blue-pale); color: var(--blue); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.op-title { color: var(--navy); margin-bottom: 4px; }
.op-text { color: var(--text-mid); line-height: 1.5; margin-bottom: 8px; }
@media (max-width: 768px) {
    .kontakt-osoby-grid { grid-template-columns: 1fr; }
    .kontakt-info-grid { grid-template-columns: 1fr; }
    .op-block { grid-template-columns: 1fr; }
}

/* KONTAKT HLAVNÍ KARTA */
.kontakt-hlavni-karta {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 32px;
    margin-bottom: 8px;
}
.kontakt-hlavni-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--border);
}
.kontakt-hlavni-sloupec {
    padding: 0 28px;
    border-right: 1px solid var(--border);
}
.kontakt-hlavni-sloupec:first-child { padding-left: 0; }
.kontakt-hlavni-sloupec:last-child {
    padding-right: 0;
    border-right: 0;
}
.kontakt-hlavni-seznam {
    display: flex;
    flex-direction: column;
    margin-top: 10px;
}
.kontakt-hlavni-telefony,
.kontakt-hlavni-emaily { gap: 6px; }
.kontakt-hlavni-telefon {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--navy);
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
}
.kontakt-hlavni-telefon-icon { font-size: 15px; }
.kontakt-hlavni-email {
    color: var(--blue);
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
}
.kontakt-hlavni-telefon:hover,
.kontakt-hlavni-email:hover { text-decoration: underline; }
.kontakt-hlavni-fakturace {
    gap: 4px;
    color: var(--text);
    font-size: 14px;
}
.kontakt-hlavni-ucet { white-space: nowrap; }
.kontakt-hlavni-adresa {
    margin-top: 10px;
    color: var(--text);
    font-size: 14px;
    line-height: 1.65;
}
.kontakt-hlavni-popis {
    color: var(--text-light);
    font-size: 13.5px;
    line-height: 1.7;
}
.kontakt-hlavni-popis-nazev { color: var(--navy); }
.kontakt-hlavni-nadpis {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    margin-bottom: 12px;
}
.kontakt-hlavni-text {
    color: var(--text-mid);
    line-height: 1.75;
}
.kontakt-hlavni-udaje {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.kontakt-radek {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}
.kontakt-radek-icon {
    width: 38px; height: 38px;
    border-radius: 50%;
    background: var(--blue-pale);
    color: var(--blue);
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.kontakt-radek-label { text-transform: uppercase;
    letter-spacing: 0.07em; color: var(--text-light); margin-bottom: 5px;
}
.kontakt-radek-hodnota { color: var(--text); line-height: 1.6;
}
.kontakt-radek-hodnota a { color: var(--blue); text-decoration: none; }
.kontakt-radek-hodnota a:hover { text-decoration: underline; }
.kontakt-key { color: var(--text-light); margin-right: 4px; }
@media (max-width: 768px) { .kontakt-hlavni-karta { grid-template-columns: 1fr; gap: 24px; } }

/* KONTAKT LAYOUT */
.kontakt-udaje-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 8px;
}
.kontakt-udaj-block {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 22px 24px;
}
.kontakt-udaj-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}
.kontakt-udaj-icon {
    width: 36px; height: 36px;
    border-radius: 50%;
    background: var(--blue-pale);
    color: var(--blue);
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.kontakt-udaj-label { text-transform: uppercase;
    letter-spacing: 0.07em; color: var(--navy);
}
.kontakt-udaj-rows { display: flex; flex-direction: column; gap: 6px; }
.kontakt-udaj-row { display: flex; align-items: baseline; gap: 8px; color: var(--text); }
.kontakt-udaj-row span { color: var(--text-light); min-width: 80px; }
.kontakt-udaj-row a { color: var(--blue); text-decoration: none; }
.kontakt-udaj-row a:hover { text-decoration: underline; }
.kontakt-udaj-row strong { color: var(--navy); }

/* KOHO KONTAKTOVAT */
.kontakt-temy-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.kontakt-tema-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 22px 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.kontakt-tema-icon {
    width: 52px; height: 52px;
    min-width: 52px; min-height: 52px;
    border-radius: 50%;
    background: var(--blue-pale);
    color: var(--blue);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    margin-bottom: 14px;
}
.kontakt-tema-body { flex: 1; min-width: 0; width: 100%; }
.kontakt-tema-title { color: var(--navy); margin-bottom: 8px; font-family: 'DM Sans', sans-serif; }
.kontakt-tema-text { color: var(--text-mid); line-height: 1.55; margin-bottom: 14px; }
.kontakt-tema-kontakt {
    display: flex; flex-direction: column; gap: 4px;
    padding-top: 12px; border-top: 1px solid var(--border); text-align: center; width: 100%; align-items: center;
}
.kontakt-tema-kontakt a { color: var(--blue); text-decoration: none; display: flex; align-items: center; gap: 6px; }
.kontakt-tema-kontakt span { color: var(--text-mid); display: flex; align-items: center; gap: 6px; }

/* TÝM */
.kontakt-tym-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.kontakt-tym-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 24px;
    display: flex; gap: 18px; align-items: flex-start;
}
.kontakt-tym-foto {
    width: 72px; height: 72px;
    border-radius: 50%;
    background: var(--navy); color: #fff;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
    border: 3px solid var(--blue-pale);
}
.kontakt-tym-name { color: var(--navy); font-family: 'DM Sans', sans-serif; margin-bottom: 10px; }
.kontakt-tym-bio { color: var(--text-mid); line-height: 1.7; margin-bottom: 14px; }
.kontakt-tym-kontakty { display: flex; flex-direction: column; gap: 5px; }
.kontakt-tym-kontakty span, .kontakt-tym-kontakty a { display: flex; align-items: center; gap: 7px; color: var(--text-mid); text-decoration: none; }
.kontakt-tym-kontakty a { color: var(--blue); }
.kontakt-tym-kontakty i { color: var(--blue); }

/* SPOLUPRACUJEME */
.spoluprace-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.spoluprace-item {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.spoluprace-role {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--blue);
    margin-bottom: 2px;
}
.spoluprace-name { color: var(--navy); line-height: 1.4; }

@media (max-width: 768px) {
    .kontakt-udaje-grid,
    .kontakt-temy-grid,
    .kontakt-tym-grid,
    .spoluprace-grid

    { grid-template-columns: 1fr; }

}



.dvou-detail-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1.5px solid #e5c076;
    box-shadow: var(--shadow);
    overflow: hidden;
    background: linear-gradient(to right, var(--accent-bg), #fff);
    max-width: 100%;
    box-sizing: border-box;
}

.dvou-detail-header {
    display: flex;
    gap: 20px;
    padding: 24px 28px;
    align-items: flex-start;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;

    flex-wrap: nowrap;
}

@media only screen and (max-width: 520px) {
    .dvou-detail-header {
flex-direction: column;
    }
}


/* Datum box — pevná šířka, nesmí se roztáhnout */
.dvou-detail-date-box {
    background: var(--accent);
    border-radius: 10px;
    padding: 14px 10px;
    text-align: center;
    flex-shrink: 0;
    width: 108px;
    min-width: 108px;
    max-width: 108px;
    box-sizing: border-box;
}
.dvou-detail-day {
    font-family: 'DM Sans', sans-serif;
    color: #fff;
    line-height: 1.2;
    white-space: nowrap;
}
.dvou-detail-month {
    font-family: 'DM Sans', sans-serif;
    color: rgba(255,255,255,0.8);
    margin-top: 3px;
    white-space: nowrap;
}

/* Info sekce — zabírá zbývající prostor, nesmí přetékat */
.dvou-detail-info {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.dvou-detail-tag {
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--accent);
    margin-bottom: 6px;
}
.dvou-detail-title {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    margin-bottom: 10px;
    /* Zabrání přetékání dlouhých názvů */
    overflow-wrap: break-word;
    word-break: break-word;
}
.dvou-detail-desc {
    color: var(--text-mid);
    line-height: 1.65;
    margin-bottom: 12px;
}
.dvou-detail-lektor {
    color: var(--navy);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}
/* Pevné rozměry ikony v lektoru */
.dvou-detail-lektor i {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

/* Meta řádek s datem, místem, ubytováním */
.dvou-detail-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: var(--text-mid);
    max-width: 100%;
}
.dvou-detail-meta-row span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
/* Pevné rozměry všech ikon v meta řádku — 20×20 px */
.dvou-detail-meta-row i {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    overflow: hidden;
}

/* Cena — pevná šířka vpravo */
.dvou-detail-price-box {
    flex-shrink: 0;
    width: 190px;
    min-width: 190px;
    max-width: 190px;
    text-align: center;
    box-sizing: border-box;
}

/* Rozpis ceny — konečná cena, ubytování, strava, snížené vložné.
   Editovatelné: stačí přepsat text v <span class="dvou-price-amount">…</span> */
.dvou-price-breakdown {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px dashed #f0d090;
    display: flex;
    flex-direction: column;
    gap: 5px;
    text-align: left;
}
.dvou-price-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 8px;
    color: var(--text-mid);
}
.dvou-price-row .dvou-price-amount {
    color: var(--navy);
    white-space: nowrap;
    flex-shrink: 0;
}
.dvou-detail-price {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
}
.dvou-detail-price-note {
    color: var(--text-light);
    margin-bottom: 4px;
}

/* Program sekce */
.dvou-detail-program {
    border-top: 1px solid #f0d090;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}
.dvou-program-day { padding: 16px 28px; }
.dvou-program-day:nth-child(even) { border-left: 1px solid #f0d090; }
.dvou-program-day:nth-child(n+3) { border-top: 1px solid #f0d090; }
.dvou-program-day-label {
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--accent);
    margin-bottom: 8px;
}
.dvou-program-item {
    color: var(--text-mid);
    padding: 4px 0;
    border-bottom: 1px dashed var(--border);
}
.dvou-program-item:last-child { border-bottom: none; }
.dvou-detail-program-extra { background: var(--accent-bg); }
.dvou-program-item-strong {
    color: var(--navy);
    font-weight: 700;
}
.dvou-program-item-text { line-height: 1.55; }
.dvou-program-item-warning {
    margin-top: 6px;
    color: var(--navy);
    line-height: 1.5;
}
.dvou-program-item-warning strong { color: var(--accent); }

/* Info boxy (místo konání, program, cena…) */
.dvou-info-box {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 14px;
    margin-top: 8px;
}
.dvou-info-item {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    padding: 18px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    box-shadow: var(--shadow);
}
.dvou-info-icon { flex-shrink: 0; }
.dvou-info-item strong { color: var(--navy); display: block; margin-bottom: 3px; }
.dvou-info-item p { color: var(--text-mid); line-height: 1.4; }

/* Lektoři */





.lektori-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.lektor-card {
    background:var(--bg-white);
    border-radius:var(--radius);
    border:1px solid var(--border);
    box-shadow:var(--shadow);
    padding:24px;
    display:flex;
    flex-direction: column;
    gap:18px;
    align-items:flex-start;
    transition:all 0.18s;
    margin-bottom: 20px;
}

@media only screen and (min-width: 520px) {
    .lektor-card {
        flex-direction: row;
    }
}


.lektor-card:hover { box-shadow:var(--shadow-hover); border-color:var(--blue-light); }
.lektor-photo { width:60px; height:60px; border-radius:50%; background:var(--navy); color:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.lektor-body { flex:1; }
.lektor-name { font-family:'DM Sans', sans-serif; color:var(--navy); margin-bottom:3px; }
.lektor-spec { color:var(--blue); margin-bottom:10px; }
.lektor-bio { color:var(--text-mid); line-height:1.65; margin-bottom:14px; }
.lektor-seminare-label { text-transform:uppercase; letter-spacing:0.06em; color:var(--text-light); margin-bottom:6px; }
.lektor-seminare-tags { display:flex; flex-wrap:wrap; gap:5px; }

/* Karta lektora vložená do detailu semináře — stejný vizuál jako .lektor-card,
   jen s odkazem na celý profil */
.lektor-card-link {
    display: inline-block;
    margin-top: 10px;
    color: var(--blue);
    text-decoration: none;
    cursor: pointer;
}
.lektor-card-link:hover { text-decoration: underline; }
/* LEKTOŘI STATICKÉ KARTY */
.lektori-list { display: flex; flex-direction: column; gap: 24px; }
.lektor-row {
    background: var(--bg-white);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    overflow: hidden;
    display: grid;
    grid-template-columns: 200px 1fr;
}
.lektor-row-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 28px 20px;
    background: var(--blue-pale);
    border-right: 1px solid var(--border);
    text-align: center;
}
.lektor-avatar {
    width: 100px; height: 100px;
    border-radius: 50%;
    background: var(--navy);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    border: 3px solid #fff;
    box-shadow: 0 2px 8px rgba(26,49,88,0.15);
}
.lektor-avatar img {
    width: 100%; height: 100%;
    border-radius: 50%;
    object-fit: cover;
}
.lektor-row-name { color: var(--navy); line-height: 1.3; }
.lektor-row-spec { color: var(--blue); line-height: 1.4; }
.lektor-row-chevron { display: none; }

.lektor-detail { display: block; }
.lektor-detail-inner { padding: 24px 28px; display: flex; flex-direction: column; gap: 20px; }
.lektor-detail-section-title { text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-light); margin-bottom: 10px; padding-bottom: 6px; border-bottom: 1px solid var(--border); }
.lektor-detail-bio p { color: var(--text-mid); line-height: 1.75; }
.lektor-seminar-tags { display: flex; flex-direction: column; gap: 6px; }
.lektor-seminar-tag { color: var(--text);
    background: var(--bg); border: 1px solid var(--border);
    border-radius: 6px; padding: 8px 14px;
    line-height: 1.4;
    display: flex; align-items: center; gap: 8px;
    cursor: pointer;
    transition: all 0.15s;
    text-decoration: none;
}
.lektor-seminar-tag:hover {
    background: var(--blue-pale);
    border-color: var(--blue-light);
    color: var(--blue);
}
.lektor-seminar-tag::before {
    content: '';
    display: inline-block;
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--blue);
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .lektor-row { grid-template-columns: 1fr; }
    .lektor-row-left { flex-direction: row; text-align: left; padding: 16px; border-right: none; border-bottom: 1px solid var(--border); }
    .lektor-avatar { width: 60px; height: 60px; flex-shrink: 0; }
    .lektor-detail-inner { padding: 16px; }
}

/* REFERENCE NOVÉ */
.ref-filter-bar { background:var(--bg-white); border-radius:var(--radius); border:1px solid var(--border); box-shadow:var(--shadow); padding:20px 24px; display:flex; gap:14px; align-items:flex-end; margin-bottom:16px; flex-wrap:wrap; }
.ref-filter-help { color:var(--text-mid); line-height:1.65; margin:-4px 0 16px; }
.ref-filter-help strong { color:var(--navy); }
.ref-grid-list { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.ref-card-new { background:var(--bg-white); border-radius:var(--radius); border:1px solid var(--border); box-shadow:var(--shadow); padding:20px 22px; display:flex; flex-direction:column; gap:12px; transition:all 0.18s; }
.ref-card-new:hover { box-shadow:var(--shadow-hover); border-color:var(--blue-light); }
.ref-card-header { display:flex; flex-direction:column; gap:6px; }
.ref-card-nazev {
    color: var(--navy);
    font-family: 'DM Sans', sans-serif;
    line-height: 1.3;
    margin-bottom: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s;
}
.ref-card-nazev:hover { color: var(--blue); }
.ref-card-nazev .ref-nazev-arrow {
    color: var(--blue-light);
    transition: transform 0.2s;
    display: inline-block;
}
.ref-card-nazev.expanded .ref-nazev-arrow { transform: rotate(90deg); }
.ref-stars-new { color:var(--accent); letter-spacing:2px; }

/* Tlačítko Zobrazit další hodnocení — zobrazí se jen po vyfiltrování semináře
   kde je více hodnocení než jedno */
.ref-show-all-btn {
    display: block;
    width: 100%;
    margin-top: 16px;
    padding: 12px 24px;
    background: var(--bg-white);
    border: 1.5px solid var(--blue);
    border-radius: 8px;
    color: var(--blue);
    font-family: 'DM Sans', sans-serif;
    cursor: pointer;
    transition: all 0.18s;
    text-align: center;
}
.ref-show-all-btn:hover { background: var(--blue); color: #fff; }
.ref-meta-tags { display:flex; flex-wrap:wrap; gap:6px; }
.ref-tag-seminar { background:var(--blue-pale); color:var(--blue); padding:3px 10px; border-radius:20px; cursor:pointer; }
.ref-tag-lektor { background:var(--tag-dvou); color:var(--tag-dvou-text); padding:3px 10px; border-radius:20px; cursor:pointer; }
.ref-tag-seminar:hover,
.ref-tag-lektor:hover { filter:brightness(0.96); }
.ref-text-new { color:var(--text); line-height:1.65; font-style:italic; flex:1; }
.ref-author-new { display:flex; align-items:center; gap:10px; padding-top:10px; border-top:1px solid var(--border); }
.ref-author-details { display:flex; flex-direction:column; gap:2px; min-width:0; }
.ref-avatar-new { width:32px; height:32px; background:var(--navy); color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.ref-name-new { color:var(--navy); }
.ref-urad-new { color:var(--text-mid); }
@media (max-width:768px) { .ref-grid-list { grid-template-columns:1fr; } .ref-filter-bar { flex-direction:column; } }

/* KONTAKT PAGE */
.kontakt-page-grid { display:grid; grid-template-columns:1fr 380px; gap:40px; align-items:start; }
.kontakt-info-card { background:var(--bg-white); border-radius:var(--radius); border:1px solid var(--border); box-shadow:var(--shadow); padding:22px; display:flex; flex-direction:column; gap:14px; }
.ki-item { display:flex; align-items:center; gap:12px; }
.ki-icon { width:36px; height:36px; background:var(--blue-pale); border-radius:7px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.ki-label { text-transform:uppercase; letter-spacing:0.06em; color:var(--text-light); }
.ki-value { color:var(--navy); }
a.ki-value { color:var(--blue); text-decoration:none; }
a.ki-value:hover { text-decoration:underline; }

/* MOBILE NEW PAGES */
@media (max-width:768px) {
    .dvou-detail-header { flex-wrap: wrap; }
    .dvou-detail-price-box { width: 100% !important; max-width: 100% !important; min-width: unset !important; }
    .dvou-detail-program { grid-template-columns:1fr; }
    .dvou-program-day:nth-child(even) { border-left:none; }
    .dvou-program-day + .dvou-program-day { border-top:1px solid #f0d090; }
    .dvou-info-box { grid-template-columns:1fr 1fr; }
    .lektori-grid { grid-template-columns:1fr; }
    .ref-grid { grid-template-columns:1fr; }
    .logo-grid { grid-template-columns:1fr 1fr; }
    .kontakt-page-grid { grid-template-columns:1fr; }
}
/* YOUTUBE THUMBNAILS */
.el-yt-thumb {
    height: 240px;
    background-size: cover;
    background-position: center;
    background-color: var(--navy);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.el-yt-play {
    width: 56px; height: 56px;
    background: rgba(255,0,0,0.85);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center; color: #fff;
    padding-left: 4px;
    transition: transform 0.15s, background 0.15s;
}
.el-video-card:hover .el-yt-play { transform: scale(1.1); background: rgba(255,0,0,1); }
.online-info-bar {
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: 8px;
    padding: 10px 16px;
    color: var(--text-mid);
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

/* MĚSÍČNÍ ŠTÍTKY */
.mesic-label {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    margin: 36px 0 14px;
    padding-bottom: 8px;
    border-bottom: 3px solid var(--accent);
    display: inline-block;
}
.mesic-label:first-child { margin-top: 0; }
.seminare-grid { display: flex; flex-direction: column; gap: 10px; margin-bottom: 4px; }
.seminar-date-box {
    border-radius: 8px;
    width: 88px;
    min-width: 88px;
    text-align: center;
    padding: 10px 6px;
    flex-shrink: 0;
    box-sizing: border-box;
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    color: var(--blue);
}
.seminar-card.dvoudenni .seminar-date-box {
    background: var(--accent-bg);
    border-color: #f0d090;
    color: var(--accent);
}

/* POZNÁMKA K SEMINÁŘI */
.seminar-note {
    grid-column: 1 / -1;
    margin-top: 2px;
    padding-top: 10px;
    border-top: 1px dashed var(--border);
    display: flex;
    align-items: flex-start;
    gap: 8px;
}
.seminar-note-icon { flex-shrink: 0; margin-top: 1px; color: var(--text-light); }
.seminar-note-text { color: var(--text-mid); line-height: 1.55; font-style: italic; }
/* FOTOGALERIE */
.dvou-gallery {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 40px;
    border-radius: var(--radius);
    overflow: hidden;
    height: 320px;
    width: 100%;
    max-width: 100%;
}
.dvou-gallery-main {
    grid-row: 1 / 3;
    height: 320px;
}
.dvou-gallery-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    height: 320px;
}
.dvou-gallery-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 4px;
    transition: opacity 0.2s;
}
.dvou-gallery-img:hover { opacity: 0.9; }
@media (max-width: 768px) {
    .dvou-gallery { grid-template-columns: 1fr; }
    .dvou-gallery-main { grid-row: auto; }
}

/* DVOUDENNÍ INFO SEKCE */
.dvou-info-section {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 8px;
    width: 100%;
}
.dvou-info-block {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 20px 24px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}
.dvou-info-block > div { flex: 1; min-width: 0; overflow-wrap: break-word; }

/* Ikona v info bloku — pevný kruh 44×44, ikona dovnitř 20×20 */
.dvou-info-block-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    max-width: 44px;
    max-height: 44px;
    aspect-ratio: 1 / 1;
    flex: 0 0 44px;
    background: var(--blue-pale);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--blue);
    overflow: hidden;
    box-sizing: border-box;
}
.dvou-info-block-icon i {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.dvou-info-block-title {
    color: var(--navy);
    margin-bottom: 8px;
}
.dvou-info-block-text {
    color: var(--text-mid);
    line-height: 1.65;
}
.dvou-info-link {
    display: inline-block;
    margin-top: 8px;
    color: var(--blue);
    text-decoration: none;
}
.dvou-info-link:hover { text-decoration: underline; }

@media (max-width: 768px) {
    .dvou-info-block { flex-direction: column; }
    .dvou-info-block-icon { width: 36px; height: 36px; min-width: 36px; max-width: 36px; max-height: 36px; flex: 0 0 36px; }
}
/* DVOUDENNÍ WARNING */
.dvou-warning {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: #fff8e8;
    border: 1.5px solid #f5c050;
    border-radius: 8px;
    padding: 12px 16px;
    margin-top: 12px;
}
.dvou-warning-icon {
    color: #b47d00;
    flex-shrink: 0;
    margin-top: 1px;
}
.dvou-warning-text {
    color: var(--text);
    line-height: 1.6;
}

/* DVOU OPTIONS GRID */
.dvou-options-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 4px;
    width: 100%;
    box-sizing: border-box;
}
.dvou-option {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.dvou-option-icon {
    color: var(--blue);
    margin-bottom: 2px;
    /* Pevná výška ikony */
    height: 24px;
    display: flex;
    align-items: center;
}
.dvou-option-icon i {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}
.dvou-option-label {
    color: var(--navy);
}
.dvou-option-text {
    color: var(--text-mid);
    line-height: 1.5;
}
@media (max-width: 768px) {
    .dvou-options-grid { grid-template-columns: 1fr; }
}

.dvou-list {
    margin: 8px 0 0 20px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.dvou-list li {
    color: var(--text-mid);
    line-height: 1.5;
}

/* Široká karta aktuality na stránce Všechny aktuality */
.aktuality-wide-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 28px 32px;
    transition: box-shadow 0.18s;
}
.aktuality-wide-card:hover { box-shadow: var(--shadow-hover); }
.aktuality-wide-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
}
.aktuality-wide-title {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    line-height: 1.35;
    margin-bottom: 12px;
}
.aktuality-wide-text {
    color: var(--text-mid);
    line-height: 1.75;
}

/* STRÁNKA AKTUALITY */
.aktuality-featured-card {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow-hover);
    padding: 36px 40px;
    border-left: 4px solid var(--accent);
}
.aktuality-featured-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
}
.aktuality-featured-tag {
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--accent);
}
.aktuality-featured-title {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    line-height: 1.3;
    margin-bottom: 14px;
}
.aktuality-featured-text {
    color: var(--text-mid);
    line-height: 1.75;
    max-width: 760px;
}
.aktuality-cist-vice {
    display: inline-block;
    line-height: 13px;
    color: var(--blue);
    text-decoration: none;
    cursor: pointer;
    min-width: fit-content;
}
.aktuality-cist-vice:hover { text-decoration: underline; }
.aktuality-card { cursor: pointer; }
.item_links {
    display:flex;gap:12px;justify-content:center;
    flex-wrap: wrap;
}
/* EXTRA STRÁNKY (OP, GDPR, PDF, Online návod, vlastní stránky) */
.extra-page-content { max-width: 860px; }
.extra-page-section {
    background: var(--bg-white);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    padding: 28px 32px;
    margin-bottom: 20px;
}


@media only screen and (max-width: 520px) {
    .extra-page-section {
        padding: 10px 20px;

    }

    figure img {
        margin-bottom: 20px;
    }

}
.extra-page-h2 {
    font-family: 'DM Sans', sans-serif;
    color: var(--navy);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}
.extra-page-text {
    color: var(--text-mid);
    line-height: 1.75;
}
.extra-page-info-box {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: 8px;
    padding: 14px 16px;
    color: var(--text-mid);
    line-height: 1.65;
    margin-top: 16px;
}
.extra-page-info-box i { flex-shrink: 0; margin-top: 1px; }
.extra-page-download-card {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 20px 24px;
}
.extra-page-download-icon {
    width: 52px; height: 52px;
    min-width: 52px;
    background: var(--blue-pale);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center; color: var(--blue); flex-shrink: 0;
}
.extra-page-download-title { color: var(--navy); margin-bottom: 4px; }
.extra-page-download-meta { color: var(--text-light); }

.seminar-info a {
    text-decoration: none !important;
}

.seminar-info h3 a.title-green  {
    color: #1a7a40;
}

.the_content p {
    margin-bottom: 10px;

    line-height: 1.6;
}
.the_content a  {

    overflow-wrap: break-word;
    word-break: break-word;
}
.the_content .wp-block-media-text {
    margin-bottom: 20px;
}

.the_content ul {
    padding-left: 20px;
}
.the_content ul li {
    line-height: inherit;
}

.lektor-avatar-small {
    max-width: 60px;
    height: auto;
}

.fields_wrap > div {
    padding: 10px 20px;
}

@media (max-width: 960px) {
    .hero-btns li {
        margin-bottom: 10px;
    }
}

@media (max-width: 768px) {
    .stat-item  {
        min-width: 50%;
    }

    footer br {
        display: none;
    }
}
.footer_bot {
    color:#4a5f7a;

}

@media (min-width: 460px) {
    .footer_bot {
        text-align: right;
    }
}
@media (min-width: 960px) and (max-width: 1260px){
    nav .menu a  {
        padding: 8px 8px;

    }

    .logo-sub {
        max-width: 120px;
    }

}
.em-booking-form-details input[type=checkbox] {
    width: auto !important;
    margin: 2px 10px 0 0 ;
}

.background_gray {
    background: #f5f5f5;
    padding: 10px;
    display: flex;
    flex-direction: column;
    border-radius: 7px;
}

.ucastnik {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    margin-bottom: 20px;
    border-radius: 7px;
}



span.red_color {
    color: #cf2e2e;
    line-height: 15px;
    display: flex;
    margin-top: 10px;
}
.uc_kontajner {
    flex-wrap: wrap;
    justify-content: space-between;
}
.em-booking-form * {

    line-height: 1.65;
}

ol {
    list-style: none;
}
.em-booking-buttons ol {
    padding-left: 10px;
}

#block2, #block3, #block4, #block5 {
    display: none;
}

.em-booking-message-success {
    background-color: #2e7d32;
    color: #fff;
    padding: 10px;
}

.aktuality-wide-card {
    margin-bottom: 20px;
}


.em-booking-message-success  small {
    display: inline-block;
    background: white;
    padding: 4px 12px;
}
.wp-block-embed iframe {
    max-width: 100%;
    margin: 40px;
}

.page-template-default section {
    margin-top: 40px;
}

.wp-block-separator {
    border: none;
    border-top: 2px solid;
    margin-bottom: 20px;
}

.lektor-seminar-date {
    min-width: 120px;
}

.page-template-kontakt .section-head {
    align-items: flex-start;
}

.button_wrap {
    justify-content: flex-start;
}

.aktuality-wide-card ul {
    padding-left: 30px;
}
@media only screen and (max-width: 520px) {
    .aktuality-wide-meta,
    .flexy.fields_wrap {
       flex-direction: column;
    }


}

.grid_thing {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

@media only screen and (min-width: 520px) {
    .aktuality-wide-card_ul {
        flex-direction: column;
        margin:8px 0 16px 20px;
        display:flex;
        flex-direction:column;
        gap:6px;
        color:var(--text-mid);
        line-height:1.7;

    }

    .grid_thing {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px;
    }
}


.expanded .ref-text-new {

    display: block;
}

.single .seminar-program-item:before {
    display: none;
}
.screen-reader-response:empty {
    display: none;
}
/*
.screen-reader-response {
    border: 4px solid #c8820a;
    padding: 20px;
}
*/
.screen-reader-response ul {

    padding-left: 40px;
}
.wpcf7-response-output.sent-ok {
    background: #1a7a40;
    color: white;
    padding: 40px;
    margin-top: 20px;
    text-align: center;
}


.wpcf7 .screen-reader-response {
    position: absolute !important;
    overflow: hidden !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    clip-path: inset(50%) !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    border: 0 !important;
    white-space: nowrap !important;
}

.wpcf7-form.invalid .wpcf7-response-output {
    display: block;
    color: #b42318;
    border-color: #b42318;
}

/* Úspěšně odesláno */
.wpcf7-form.sent .wpcf7-response-output {
    display: block;
    color: white;
   background-color: #157347;
    text-align: center;
    margin-top: 20px;
    border: 1px solid #c8dcf0;
    padding: 20px;
}

/* Chyba při odesílání e-mailu */
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.aborted .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output {
    display: block;
    color: #b42318;
    border-color: #b42318;
}
.cf-field {
    position: relative;
}
.wpcf7-not-valid-tip {
    position: absolute;
    background: white;
    border: 1px solid #b42318;
    padding: 4px 10px;
    left: 0;
    top:0;
}

form.sent .cf-field,
form.sent .wpcf7-submit
{
    display: none;
}







.newsletter-blok {
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: var(--radius);
    padding: 32px 40px;
    display: grid;
    grid-template-columns: 1fr ;
    gap: 40px;
    align-items: center;
}

#mailpoet_form_1 form.mailpoet_form {
    flex-direction: column;
    display: flex;
}
@media only screen and (min-width: 520px) {
    .newsletter-blok {
        grid-template-columns: 1fr 1fr;
    }

    #mailpoet_form_1 form.mailpoet_form{
        flex-direction: row;
    }
}

@media only screen and (max-width: 520px) {
    .newsletter-form .mailpoet_form input[type=submit] {
        margin-top: 20px !important;
    }

}

.newsletter-blok h3 {
    color: var(--navy);
    font-family: 'DM Sans', sans-serif;
    margin-bottom: 8px;
}

.newsletter-note {
    color: var(--text-light);
    margin-top: 8px;
    line-height: 1.5;
}


.newsletter-blok p {
    color: var(--text-mid);
    line-height: 1.65;
}

.newsletter-form {
    display: flex;
    gap: 8px;
    margin-top: 14px;
}

.newsletter-form .mailpoet_form input {
    flex: 1;
    padding: 10px 14px  !important;
    border-radius: 8px !important;
    border: 1px solid #c8dcf0;
    font-family: 'DM Sans', sans-serif;
    color: var(--text);
    outline: none;
    width: auto !important;
    min-width: calc(100% - 10px);
    margin-right: 10px !important;
}

#mailpoet_form_1 .mailpoet_paragraph {
    line-height: 20px;
    margin-bottom: 0 !important;
}

.newsletter-form  .mailpoet_form input[type=submit]{
    padding: 10px 20px;
    border-radius: 8px;
    background: var(--accent);
    color: #fff;
    border: none;
    cursor: pointer;
    font-family: 'DM Sans', sans-serif;
    white-space: nowrap;
}

#mailpoet_form_1 form.mailpoet_form {
    min-width: 100%;
    padding: 0!important;
}

#mailpoet_form_1 .mailpoet_message {
    margin: 0;
    padding: 0 20px;
    position: absolute;
}

#mailpoet_form_1 .mailpoet_paragraph {
    flex: 1;
}

.mailpoet_form {
    display: flex;
}

.hero-btns li a:hover {
    background: var(--navy);
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(29, 95, 168, 0.3);
    color:white;
}


.e-learn_link  {
    padding: 13px 28px;
    background: var(--bg-white);
    color: var(--blue);
    border: 1.5px solid var(--blue);
    border-radius: 8px;
    cursor: pointer;
    font-family: 'DM Sans', sans-serif;
    transition: all 0.18s;
    text-decoration: none;
}

.sekce_link {
    color: var(--blue);
    text-decoration: none;
    white-space: nowrap;
}

.mailpoet_validate_error {
    background: white;
    position: absolute;
    padding: 10px;
    min-width: 100%;
    border: 2px solid #ad0d0d;
    border-radius: var(--radius);
}

#mailpoet_form_1 .mailpoet_message  {
    min-width: 100%;
    left: 0;

}

form {
    position: relative;
}

.wpcf7-response-output.has-error {
    position: absolute;
    background: white;
    padding: 20px;
    border: 2px solid;
    top: 20px;
    border-radius: var(--radius);
}

.dowload_butt {
    padding: 12px 28px;
    white-space: nowrap;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: 100%;
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.ref-filter-help {
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: var(--radius);
    padding: 14px 18px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    color: var(--text-mid);
    line-height: 1.65;
    margin-bottom: 16px;
}

.footer_inner {
	    justify-content: space-between;
	    flex-direction: column;
}
@media only screen and (min-width: 960px) {
	.footer_inner { 
		    flex-direction: row;
		        flex: 1;
	}
	.footer_inner > div {
		
		max-width: 50%;
	}
}

@media only screen and (min-width: 1940px) {
    .stats-row {

        max-width: 1920px;
        margin: auto;
    }

    .header-inner,
    .footer_inner {
        min-width: 1920px;
        align-items: center;
        justify-content: space-between;
        flex: 1 0 0;
        max-width: 1920px;
        margin: auto;
    }
}

.mailpoet_validate_success {
    background-color: #2e7d32;
 
    padding: 10px;
	    color: rgb(255, 255, 255) !important;
    min-width: 100%;
}

/* Styly převedené z frontendových šablon. */
.frontend-link-emphasis,
.text-blue,
.kontakt-phone-link {
    color: var(--blue);
}

.title-color-navy {
    color: #1a3158 !important;
    text-decoration: none !important;
}

.title-color-blue {
    color: #1d5fa8 !important;
    text-decoration: none !important;
}

.title-color-light-blue {
    color: #4a8fd4 !important;
    text-decoration: none !important;
}

.title-color-accent {
    color: #c8820a !important;
    text-decoration: none !important;
}

.title-color-red {
    color: #c0392b !important;
    text-decoration: none !important;
}

.title-color-green {
    color: #1a7a40 !important;
    text-decoration: none !important;
}

.has-custom-title-color {
    color: attr(data-title-color type(<color>), currentColor) !important;
    text-decoration: none !important;
}

.text-navy {
    color: var(--navy);
}

.text-alert {
    color: red;
}

.icon-white,
.footer-company {
    color: #fff;
}

.icon-gap-3 {
    margin-right: 3px;
}

.icon-gap-4 {
    margin-right: 4px;
}

.icon-gap-5 {
    margin-right: 5px;
}

.full-width {
    width: 100%;
}

.section-head-compact {
    margin-top: 8px;
}

.section-head-home-spaced {
    margin-top: 36px;
}

.section-head-spaced {
    margin-top: 40px;
}

.section-head-large-spaced {
    margin-top: 48px;
}

.text-spaced-6 {
    margin-top: 6px;
}

.text-spaced-8 {
    margin-top: 8px;
}

.text-bottom-12 {
    margin-bottom: 12px;
}

.button-spaced-6 {
    margin-top: 6px;
}

.aktuality-wide-card.is-highlighted {
    border-left: 4px solid var(--accent);
}

.aktuality-date.is-highlighted {
    background: var(--accent);
}

.aktuality-accent-icon {
    color: var(--accent);
    margin-right: 4px;
}

.aktuality-terms-heading {
    margin-top: 10px;
}

.aktuality-button-wrap {
    margin-top: 16px;
}

.aktuality-button {
    display: block;
    text-align: center;
}

.aktuality-pagination {
    grid-column: 1 / -1;
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin: 10px 0 30px;
}

.aktuality-grid-home {
    grid-template-columns: repeat(3, 1fr);
}

.aktuality-extra {
    margin-top: 10px;
}

.aktuality-extra-text {
    color: var(--text-mid);
    line-height: 1.65;
}

.aktuality-extra-list {
    margin: 5px 0 0 14px;
    color: var(--text-mid);
    line-height: 1.9;
}

.aktuality-card-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 14px;
}

.aktuality-card-button {
    width: 100%;
    text-align: center;
}

.aktuality-card-button-link {
    display: block;
}

.aktuality-centered-link {
    text-align: center;
}

.aktuality-item-links {
    margin-top: 14px;
}

.newsletter-home {
    margin-bottom: 36px;
}

.date-year {
    opacity: .85;
}

.home-contact-box,
.home-contact-form,
.contact-form-flush {
    margin-bottom: 0;
}

.el-preview-emoji {
    line-height: 1;
    margin-bottom: 14px;
}

.el-preview-primary-action {
    padding: 13px 28px;
}

.dvou-card-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 48px;
}

.dvou-card-link-title,
.is-clickable {
    cursor: pointer;
}

.dvou-card-cta {
    width: 100%;
    margin-top: 12px;
}

.dvou-info-link-inline {
    display: inline;
    margin-top: 0;
}

.dvou-info-section-last {
    margin-bottom: 48px;
}

.el-member-outline {
    color: var(--text-mid);
    border-color: var(--border);
}

.el-certificate-tag {
    background: #f0f4ff;
    color: #4a6dba;
}

.el-purchase-button {
    width: 100%;
    display: block;
    margin-top: 16px;
    text-align: center;
}

.el-access-link {
    display: block;
    margin-top: 10px;
    color: var(--blue);
    text-align: center;
}

.el-video-intro {
    color: var(--text-mid);
    margin: -8px 0 24px;
}

.el-yt-thumb--tea1 {
    background-image: url("https://img.youtube.com/vi/Tea1LLpThww/hqdefault.jpg");
}

.el-yt-thumb--mzd {
    background-image: url("https://img.youtube.com/vi/MzdS_iOUMSQ/hqdefault.jpg");
}

.el-cta-spaced {
    margin-top: 48px;
}

.el-cta-title {
    color: #fff;
    margin-bottom: 8px;
}

.el-cta-text {
    color: #a0bcd8;
    line-height: 1.6;
}

.el-cta-button {
    white-space: nowrap;
    align-self: center;
}

.footer-social-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.header-tax-note {
    color: #6b82a0;
}

.kontakt-account-value {
    white-space: nowrap;
}

.kontakt-tym-card-centered {
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.kontakt-tym-foto-large {
    width: 150px;
    height: 150px;
    margin-bottom: 16px;
    border: 3px solid var(--blue-pale);
}

.kontakt-tym-content {
    width: 100%;
}

.kontakt-tym-bio-left {
    text-align: left;
}

.kontakt-tym-kontakty-separated {
    border-top: 1px solid var(--border);
    padding-top: 14px;
    margin-top: 4px;
}

.spoluprace-grid-compact {
    margin-bottom: 8px;
}

.op-block-last {
    margin-bottom: 48px;
}

.ref-filter-help-icon {
    flex-shrink: 0;
    margin-top: 1px;
}

.seminare-top-spacer {
    margin-bottom: 24px;
}

.online-info-icon {
    flex-shrink: 0;
}

.seminar-empty-notice {
    border: 3px solid green;
    padding: 20px;
}

.procedure-email-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
}

.procedure-email-card {
    border-radius: 0 8px 8px 0;
    padding: 16px 20px;
}

.procedure-email-card--primary {
    background: var(--blue-pale);
    border-left: 4px solid var(--blue);
}

.procedure-email-card--accent {
    background: #fff7ed;
    border-left: 4px solid var(--accent);
}

.procedure-email-label {
    text-transform: uppercase;
    letter-spacing: .06em;
    margin-bottom: 8px;
}

.procedure-email-label--primary {
    color: var(--blue);
}

.procedure-email-label--accent {
    color: var(--accent);
}

.procedure-info-box,
.procedure-button-wrap {
    margin-top: 16px;
}

.procedure-step-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 4px;
}

.procedure-step {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.procedure-step-number {
    min-width: 32px;
    height: 32px;
    background: var(--blue);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.procedure-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.procedure-check-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 4px;
}

.procedure-check {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.procedure-check-icon {
    color: var(--blue);
    margin-top: 2px;
    flex-shrink: 0;
}

.procedure-actions {
    display: flex;
    gap: 20px;
    margin-top: 14px;
    flex-wrap: wrap;
}

.procedure-contact-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}

.procedure-contact-link--email {
    color: var(--blue);
}

.procedure-contact-link--phone {
    color: var(--navy);
}

.offer-legend {
    display: flex;
    gap: 20px;
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.offer-legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text-mid);
}

.offer-legend-bar {
    width: 4px;
    height: 20px;
    border-radius: 2px;
}

.offer-legend-bar--online {
    background: #1d5fa8;
}

.offer-legend-bar--prezencni {
    background: #4a8fd4;
}

.offer-legend-bar--dvoudenni {
    background: #c8820a;
}

.offer-updated {
    margin-left: auto;
    color: var(--text-light);
}

.offer-card {
    background: #fff;
    border: 1px solid #dde4ef;
    border-radius: 10px;
    box-shadow: 0 2px 16px rgba(26, 49, 88, .1);
    overflow: hidden;
    margin-bottom: 24px;
}

.offer-card-header {
    background: #1a3158;
    padding: 18px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.offer-card-title {
    color: #fff;
}

.offer-card-subtitle {
    color: #b0c4de;
    margin-top: 3px;
}

.offer-card-contact {
    text-align: right;
}

.offer-card-contact-text {
    color: #b0c4de;
}

.offer-group {
    margin-bottom: 32px;
}

.offer-group-heading {
    padding: 10px 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    border-left: 4px solid;
}

.offer-group--online .offer-group-heading {
    background: #eaf2fb;
    border-left-color: #1d5fa8;
}

.offer-group--prezencni .offer-group-heading {
    background: #f0f4f8;
    border-left-color: #4a8fd4;
}

.offer-group--dvoudenni .offer-group-heading {
    background: #fff3e0;
    border-left-color: #c8820a;
}

.offer-group-label {
    color: #1a3158;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.offer-table-scroll {
    overflow-x: auto;
}

.offer-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 820px;
}

.offer-table thead tr {
    background: #eaf2fb;
    border-bottom: 2px solid #1d5fa8;
}

.offer-table th,
.offer-table td {
    padding: 10px 12px;
}

.offer-table th {
    color: #1d5fa8;
    text-align: left;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.offer-row {
    border-bottom: 1px solid #dde4ef;
}

.offer-row--dvoudenni {
    background: #fff7ed;
}

.offer-cell-id {
    color: #8a9ab0;
    border-left: 3px solid;
}

.offer-group--online .offer-cell-id {
    border-left-color: #1d5fa8;
}

.offer-group--prezencni .offer-cell-id {
    border-left-color: #4a8fd4;
}

.offer-group--dvoudenni .offer-cell-id {
    border-left-color: #c8820a;
}

.offer-cell-title,
.offer-cell-title a,
.offer-cell-price {
    color: #1a3158;
}

.offer-cell-title a {
    text-decoration: none;
}

.offer-cell-data {
    color: #4a5568;
}

.offer-cell-nowrap {
    white-space: nowrap;
}

.offer-cell-price {
    text-align: right !important;
    white-space: nowrap;
}

.offer-empty {
    padding: 28px;
    color: var(--text-mid);
}

.offer-card-footer {
    background: #f4f6f9;
    border-top: 1px solid #dde4ef;
    padding: 14px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    color: #8a9ab0;
}

.offer-download-box {
    background: var(--blue-pale);
    border: 1px solid #c8dcf0;
    border-radius: var(--radius);
    padding: 20px 28px;
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.offer-download-title {
    color: var(--navy);
    margin-bottom: 4px;
}

.offer-download-status {
    color: var(--text-mid);
}

.offer-admin-box {
    background: #f4f6f9;
    border: 1px dashed #c3c4c7;
    border-radius: var(--radius);
    padding: 16px 24px;
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: space-between;
    flex-wrap: wrap;
}

.offer-admin-title {
    color: var(--navy);
    margin-bottom: 2px;
}

.offer-admin-lock,
.offer-admin-refresh {
    margin-right: 6px;
}

.offer-admin-status {
    color: var(--text-light);
}

.offer-admin-button {
    padding: 10px 22px;
    white-space: nowrap;
}

.dvou-detail-program-flush {
    border-top: 0;
}

.dvou-info-block-plain {
    box-shadow: none;
    border: 0;
    padding: 0;
}

.dvou-warning-spaced {
    margin-top: 14px;
}

.seminar-detail-popis-spaced {
    margin-bottom: 16px;
}

.seminar-online-guide {
    display: inline-block;
}

.seminar-online-guide-icon {
    margin-right: 7px;
    color: #fff;
}

.seminar-detail-signup {
    width: 100%;
    margin-top: 16px;
    padding: 14px;
}

.single_top {
    position: relative;
    overflow: hidden;
}

.single-top-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single_top h3 {
    position: relative;
    z-index: 1;
}

.clear-both {
    clear: both;
}

.page-template-online .entry-header {
    background-image: url("https://vavs.cz/wp-content/uploads/2020/01/1-32.png");
    background-size: cover;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 190px;
}

.page-template-online .entry-header h2 {
    color: white;
    background-color: rgba(0, 0, 0, .7);
    padding: 20px;
}

.page-template-online .link {
    text-decoration: underline;
    margin-bottom: 40px;
    background-color: #eeeff0;
    padding: 10px 30px;
}

#em-cust2 input[type="checkbox"] {
    margin: 5px;
}

.single-post .loader {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, .72);
}

.single-post .loader.active {
    display: flex;
}

.single-post .load_inner {
    width: 54px;
    height: 54px;
    border: 6px solid rgba(21, 57, 73, .18);
    border-top-color: #153949;
    border-radius: 50%;
    animation: vavsLoaderSpin .8s linear infinite;
}

@keyframes vavsLoaderSpin {
    to {
        transform: rotate(360deg);
    }
}

.page-template-kontakt form.mailpoet_form {
    min-width: 100%;
    padding: 20px 0 0 0 !important;
}


.page-template-kontakt .mailpoet_paragraph:has(> #form_email_2) {
    flex: 1;
    margin-bottom: 8px !important;
}
.page-template-kontakt .mailpoet_message  {

    position: absolute;
    min-width: 100%;
}
.page-template-kontakt  .newsletter-note {
    margin-top: 0;
}

.generate_pdf {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    color: #1d5fa8;
    font-weight: 700;
    font-size: 14px;
    padding: 11px 22px;
    border-radius: 8px;
    text-decoration: none;
    margin-top: 4px;
    z-index: 1;

}
.seminare-pdf-actions { margin-top: 16px; }
.generate-pdf-icon {
    color: #c8820a;
    font-size: 16px;
}
.generate_pdf[aria-busy="true"] {
    cursor: wait;
    opacity: .7;
    pointer-events: none;
}
.generate-pdf-message {
    display: block;
    min-height: 20px;
    margin-top: 8px;
    color: rgba(255, 255, 255, 1);
    font-size: 13px;
    position: absolute;
    top: calc(100% + 0px);
    padding: 4px 20px;
    background: #1b3157;
}

.wpcf7-response-output:empty {
    display: none;
}

.invoice-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 4px;
}

.invoice-field {
    /* standardní položka zabírá jeden sloupec */
}

.invoice-field--full {
    grid-column: 1 / -1;
}

.invoice-label {
    display: block;
    margin-bottom: 6px;

    font-size: 12px;
    font-weight: 700;
    color: var(--text-light);

    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.invoice-label-note {
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

.invoice-input {
    width: 100%;
    padding: 10px 14px;

    border: 1px solid var(--border);
    border-radius: 8px;

    font-size: 15px;
    font-family: 'DM Sans', sans-serif;
    color: var(--text);
    background: var(--bg);

    box-sizing: border-box;
}
@media (max-width: 600px) {
    .invoice-grid {
        grid-template-columns: 1fr;
    }

    .invoice-field--full {
        grid-column: auto;
    }
}

.extra-page-h2 {
    font-family: inherit;
    font-size: 22px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}

.form_block {
    margin-bottom: 16px;
}

.participants-section {
    margin-bottom: 16px;
}


/* Participant card */

.participant-card {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 12px;
}

.participant-title {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;

    font-size: 13px;
    font-weight: 700;
    color: var(--blue);

    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.participant-title-number {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;

    border-radius: 50%;
    background: var(--blue);

    color: #fff;
    font-size: 12px;
}


/* Fields */

.participant-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
}

.participant-field--full {
    grid-column: 1 / -1;
}

.participant-label {
    display: block;
    margin-bottom: 6px;

    font-size: 12px;
    font-weight: 700;
    color: var(--text-light);

    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.participant-input {
    box-sizing: border-box;
    width: 100%;

    padding: 10px 14px;

    border: 1px solid var(--border);
    border-radius: 8px;

    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    color: var(--text);

    background: #fff;
}


/* Info box */

.participant-info-box {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    margin-top: 16px;
    padding: 14px 16px;

    background: #eaf2fb;
    border: 1px solid #c8dcf0;
    border-radius: 8px;
}

.participant-info-icon {
    flex-shrink: 0;

    margin-top: 2px;

    color: var(--blue);
    font-size: 18px;
}

.participant-info-text {
    margin: 0;

    font-size: 13px;
    line-height: 1.65;
    color: #2d4a6a;
}


/* Radio buttons */

.participant-radio-group {
    display: flex;
    gap: 10px;

    margin-top: 12px;
}

.participant-radio {
    display: flex;
    align-items: center;
    gap: 8px;

    padding: 10px 20px;

    border: 1.5px solid var(--border);
    border-radius: 8px;

    background: #fff;
    color: var(--text-mid);

    font-size: 14px;
    font-weight: 500;

    cursor: pointer;
}

.participant-radio--active {
    border-color: var(--blue);

    background: #eaf2fb;
    color: var(--blue);

    font-weight: 600;
}

.participant-radio-input {
    flex: 0 0 auto;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;

    appearance: auto;
    accent-color: var(--blue);
    cursor: pointer;
}


/* Certificate toggle */

.participant-info-toggle {
    display: flex;
    align-items: center;
    gap: 8px;

    margin-top: 12px;
    padding: 0;

    border: none;
    background: none;

    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: var(--blue);

    cursor: pointer;
}

.participant-toggle-icon {
    font-size: 12px;
}


/* Certificate info */

.participant-certificate-info {
    display: block;

    margin-top: 8px;
    padding: 14px 16px;

    background: rgb(240, 246, 255);
    border: 1px solid rgb(200, 220, 240);
    border-radius: 8px;

    font-size: 13px;
    line-height: 1.65;
    color: rgb(45, 74, 106);
}

.participant-certificate-info[hidden] {
    display: none;
}

.participant-contact {
    display: block;

    margin-top: 8px;

    color: #4a6a8a;
}

.participant-contact-link {
    color: var(--blue);
    font-weight: 600;
}

.add-participant-button {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    justify-content: center;
    padding: 12px 20px;
    border: 1.5px dashed var(--border);
    border-radius: 8px;
    background: none;
    color: var(--blue);
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color 0.15s, background-color 0.15s;
}

.add-participant-button:hover,
.add-participant-button:focus-visible {
    border-color: var(--blue);
    background: #f0f6ff;
    outline: none;
}


.note-section {
    margin-bottom: 16px;
}

.note-description {
    margin-bottom: 12px;
    font-size: 16px;
    color: var(--text-mid);
    line-height: 1.75;
}

.note-textarea {
    box-sizing: border-box;
    width: 100%;
    min-height: 100px;

    padding: 12px 14px;

    border: 1px solid var(--border);
    border-radius: 8px;

    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: var(--text);

    background: var(--bg);

    resize: vertical;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Souhlas */

.terms-consent {
    margin: 0 0 20px;
}

.reservation-message:empty {
    display: none;
}

.reservation-message {
    margin-bottom: 16px;
}

.reservation-message-box {
    padding: 14px 16px;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.55;
}

.reservation-message-box ul {
    margin: 8px 0 0 20px;
    padding: 0;
    list-style: disc;
}

.reservation-message-box h6 {
    margin: 6px 0 0;
    font-size: 13px;
    font-weight: 500;
}

.reservation-message--error {
    border-color: #e6a5a5;
    background: #fff3f3;
    color: #9b1c1c;
}

.reservation-message--success {
    border-color: #9bc9a0;
    background: #effaf0;
    color: #1f6f2a;
}

.reservation-message--warning {
    border-color: #e2c06f;
    background: #fff9e8;
    color: #75570c;
}

.terms-consent-label {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    cursor: pointer;
}

.terms-consent-checkbox {
    flex-shrink: 0;

    width: 18px;
    height: 18px;
    margin: 3px 0 0;

    accent-color: var(--blue);
    cursor: pointer;
}

.terms-consent-text {
    font-size: 15px;
    color: var(--text-mid);
    line-height: 1.65;
}

.terms-consent-link {
    color: var(--blue);
    font-weight: 600;
    line-height: 1.65;
    font-size: 15px;
}


/* Submit */

.order-total-price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 14px;
    padding: 12px 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--bg);
    color: var(--text-mid);
    font-size: 15px;
}

.order-total-price strong {
    color: var(--blue);
    font-size: 17px;
    white-space: nowrap;
}

.order-submit-wrapper {
    width: 100%;
}

.order-submit {
    box-sizing: border-box;
    width: 100%;
    padding: 14px;

    font-size: 16px;
    cursor: pointer;
}


/* Info box */

.order-email-info {
    display: flex;
    align-items: flex-start;
    gap: 14px;

    margin-top: 16px;
    padding: 18px 20px;

    background: #eaf2fb;

    border: 1px solid #c8dcf0;
    border-left: 4px solid var(--blue);
    border-radius: 0 8px 8px 0;
}

.order-email-info-icon {
    flex-shrink: 0;

    margin-top: 2px;

    color: var(--blue);
    font-size: 20px;
}

.order-email-info-content {
    font-size: 14px;
    line-height: 1.7;
    color: #2d4a6a;
}

.order-email-info-title {
    display: block;
    margin-bottom: 6px;

    color: var(--navy);
}

.order-email-info-subtitle {
    display: block;

    margin-top: 10px;

    font-weight: 600;
    color: var(--navy);
}

.order-email-info-list {
    margin: 6px 0 0 18px;

    line-height: 1.9;
}

.order-email-info-note {
    display: block;

    margin-top: 10px;

    font-size: 12px;
    font-style: italic;
    color: #6b82a0;
}

.order-email-warning {
    display: flex;
    align-items: flex-start;
    gap: 16px;

    margin-top: 20px;
    padding: 20px 24px;

    background: #fff7ed;

    border: 1px solid #f0c080;
    border-left: 4px solid var(--accent);
    border-radius: 0 10px 10px 0;
}

.order-email-warning-icon {
    flex-shrink: 0;

    margin-top: 2px;

    color: var(--accent) !important;
    font-size: 22px;
}

.order-email-warning-content {
    font-size: 15px;
    line-height: 1.75;
    color: #2d4a6a;
}

.order-email-warning-title {
    display: block;

    margin-bottom: 8px;

    font-size: 16px;
    color: #7a3800;
}

.order-email-warning-text {
    color: #5a3000;
}

.order-email-warning-subtitle {
    display: block;

    margin-top: 12px;

    font-weight: 700;
    color: #7a3800;
}

.order-email-warning-list {
    margin: 8px 0 0 20px;

    list-style: decimal;
    line-height: 2;
}

.order-email-warning-note {
    display: block;

    margin-top: 12px;

    font-size: 13px;
    font-style: italic;
    color: #6b82a0;
}
.participant-warning {
    display: flex;
    align-items: flex-start;
    gap: 12px;

    margin-top: 16px;
    padding: 14px 16px;

    background: #fffbeb;
    border: 1px solid #f5d87a;
    border-radius: 8px;
}

.participant-warning-icon {
    flex-shrink: 0;

    margin-top: 1px;

    font-size: 20px;
    line-height: 1;
}

.participant-warning-text {
    margin: 0;

    font-size: 14px;
    line-height: 1.65;
    color: #7a5200;
}

.certificate-info {
    display: block;

    margin-top: 8px;
    padding: 14px 16px;

    background: rgb(240, 246, 255);
    border: 1px solid rgb(200, 220, 240);
    border-radius: 8px;

    font-size: 14px;
    line-height: 1.7;
    color: rgb(45, 74, 106);
}

.certificate-info-contact {
    display: block;

    margin-top: 8px;

    color: #4a6a8a;
}

.certificate-info-link {
    color: var(--blue);
    font-weight: 600;
}

.note-section {
    margin-bottom: 20px;
}

.note-section-intro {
    margin-bottom: 6px;
}

.note-section-detail {
    margin-bottom: 12px;

    font-size: 14px;
    color: var(--text-light);
}

.note-section-textarea {
    box-sizing: border-box;

    width: 100%;
    min-height: 120px;

    padding: 12px 14px;

    border: 1px solid var(--border);
    border-radius: 8px;

    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: var(--text);

    background: var(--bg);

    resize: vertical;
}

