/* ==========================================================================
   Písmo: velikost +15 % a o stupeň silnější řez oproti parent tématu.

   VYGENEROVÁNO skriptem scratchpad/gen-font-scale.py — needituj ručně.
   Parent má velikosti natvrdo v px (ne rem), takže je nelze zvětšit jedním
   pravidlem na <html>; každý selektor se musí přepsat. Po změně písma
   v parentu skript spusť znovu.
   Zdroj: style.css parenta.
   Přepsaných deklarací: 349
   ========================================================================== */

html { font-size: 18.4px; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; }
h1 { font-size: 55.2px; }
h2 { font-size: 41.4px; }
h3 { font-size: 32.2px; }
h4 { font-size: 27.6px; }
h5 { font-size: 23px; }
h6 { font-size: 20.7px; }
.btn { font-size: 18.4px; font-weight: 600; }
.btn-sm { font-size: 16.1px; }
.btn-md { font-size: 18.4px; }
.btn-lg { font-size: 20.7px; }
.logo-placeholder { font-size: 13.8px; }
.school-name { font-size: 20.7px; }
.school-subtitle { font-size: 14.9px; }
.main-nav a { font-size: 17.2px; font-weight: 600; }
.main-nav .sub-menu a { font-size: 16.1px; }
.alert-text { font-size: 16.1px; }
.alert-title { font-weight: 700; }
.alert-message { font-weight: 600; }
.alert-link { font-weight: 600; }
.breadcrumb a { font-size: 16.1px; }
.breadcrumb .current { font-size: 16.1px; font-weight: 600; }
.footer-contacts li { font-size: 16.1px; }
.btn-footer-outline { font-size: 16.1px; font-weight: 600; }
.footer-nav-column h3 { font-size: 18.4px; font-weight: 700; }
.footer-nav-column a { font-size: 16.1px; }
.footer-founder p { font-size: 16.1px; }
.footer-legal p { font-size: 16.1px; }
.footer-links a { font-size: 14.9px; }
.hero-content h1 { font-size: 55.2px; }
.hero-perex { font-size: 23px; }
.btn-white { font-weight: 700; }
.btn-white-outline { font-weight: 600; }
.quick-link-card h4 { font-size: 20.7px; }
.quick-link-card p { font-size: 16.1px; }
.section-header-inline h3 { font-size: 20.7px; }
.menu-day-name { font-weight: 700; font-size: 14.9px; }
.menu-day-meal { font-size: 16.1px; }
.holiday-name { font-size: 16.1px; }
.holiday-date { font-size: 14.9px; font-weight: 600; }
.holiday-badge { font-size: 12.6px; font-weight: 700; }
.news-category { font-size: 13.8px; font-weight: 700; }
.news-title { font-size: 20.7px; }
.news-excerpt { font-size: 16.1px; }
.news-meta { font-size: 14.9px; }
.events-table th { font-size: 13.8px; font-weight: 700; }
.event-date { font-weight: 600; }
.event-title { font-weight: 600; }
.event-target { font-size: 16.1px; }
.events-table-full th { font-size: 13.8px; font-weight: 700; }
.event-date-box .event-day { font-size: 27.6px; }
.event-date-box .event-month { font-size: 13.8px; font-weight: 600; }
.event-time-text { font-weight: 600; }
.event-desc { font-size: 16.1px; }
.event-target-badge { font-size: 14.9px; }
.sidebar-links a { font-size: 17.2px; }
.page-header p { font-size: 20.7px; }
.image-placeholder { font-size: 16.1px; }
.text-sm { font-size: 16.1px; }
.text-lg { font-size: 20.7px; }
.mobile-menu-nav a { font-size: 18.4px; }
.mobile-menu-nav .sub-menu a { font-size: 17.2px; }
.category-btn { font-size: 16.1px; font-weight: 600; }
.search-box input { font-size: 16.1px; }
.search-btn { font-size: 16.1px; font-weight: 600; }
.news-grid .news-category { font-size: 13.8px; font-weight: 700; }
.news-grid .news-title { font-size: 23px; }
.news-grid .news-excerpt { font-size: 16.1px; }
.news-date { font-size: 14.9px; }
.news-read-more { font-size: 16.1px; font-weight: 600; }
.no-results p { font-size: 20.7px; }
.article-header h1 { font-size: 46px; }
.article-date { font-size: 16.1px; }
.article-author { font-size: 16.1px; }
.article-body p { font-size: 20.7px; }
.article-body ul li { font-size: 20.7px; }
.article-body ol li { font-size: 20.7px; }
.article-body h2 { font-size: 32.2px; }
.article-body h3 { font-size: 25.3px; }
.article-video h3 { font-size: 20.7px; }
.article-gallery h3 { font-size: 20.7px; }
.article-documents h3 { font-size: 20.7px; }
.documents-list li span { font-size: 16.1px; }
.event-location { font-size: 16.1px; }
.info-grid h3 { font-size: 23px; }
.info-section h4 { font-size: 16.1px; font-weight: 700; }
.contact-name { font-size: 18.4px; font-weight: 600; }
.contact-item a { font-weight: 600; }
.alert-box-inline p { font-size: 16.1px; font-weight: 600; }
.info-box-green h4 { font-size: 17.2px; font-weight: 700; }
.alert-box-inline-light p { font-size: 16.1px; font-weight: 700; }
.hours-table-compact td { font-size: 16.1px; }
.hours-table-compact td:first-child { font-weight: 700; }
.price-table td { font-size: 16.1px; }
.price-table .price { font-weight: 700; }
.info-list li { font-size: 16.1px; }
.menu-table th, .menu-table td { font-size: 16.1px; }
.menu-table th { font-size: 13.8px; font-weight: 700; }
.day-cell span { font-size: 13.8px; }
.menu-note { font-size: 16.1px; }
.menu-table-compact th, .menu-table-compact td { font-size: 16.1px; }
.menu-table-compact th { font-size: 13.8px; font-weight: 700; }
.menu-table-compact .day-cell strong { font-size: 18.4px; }
.menu-table-compact .day-cell span { font-size: 16.1px; }
.sale-subtitle { font-size: 16.1px; font-weight: 700; }
.hours-table-sale td { font-size: 16.1px; }
.hours-table-sale td:first-child { font-weight: 700; }
.price-table-extended th { font-size: 13.8px; font-weight: 700; }
.last-updated { font-size: 13.8px; }
.day-name { font-weight: 500; }
.document-info h4 { font-size: 17.2px; }
.document-meta { font-size: 13.8px; }
.dokumenty-filters h4 { font-size: 16.1px; }
.filter-section label { font-size: 14.9px; font-weight: 600; }
.search-input-wrapper input { font-size: 16.1px; }
.filter-checkbox .count { font-size: 13.8px; }
.main-contact-header h2 { font-size: 27.6px; }
.main-contact-header .address { font-size: 16.1px; }
.contact-detail-row .label { font-size: 14.9px; }
.contact-detail-row .value { font-size: 16.1px; font-weight: 600; }
.kontakty-section h3 { font-size: 23px; }
.person-avatar { font-size: 20.7px; font-weight: 700; }
.person-info h4 { font-size: 18.4px; }
.person-info .position { font-size: 14.9px; }
.person-contact a { font-size: 14.9px; }
.person-hours { font-size: 13.8px; }
.operational-cards h4 { font-size: 18.4px; }
.op-name { font-size: 16.1px; }
.op-contact a { font-size: 14.9px; }
.hours-table td { font-size: 16.1px; }
.hours-table .day { font-weight: 600; }
.hours-table .hours-time { font-weight: 700; }
.map-placeholder span { font-size: 18.4px; font-weight: 600; }
.map-placeholder p { font-size: 16.1px; }
.transport-heading { font-size: 20.7px; }
.transport-details h4 { font-size: 16.1px; }
.transport-details p { font-size: 14.9px; }
.krouzek-card h4 { font-size: 20.7px; }
.krouzek-desc { font-size: 16.1px; }
.krouzek-meta { font-size: 14.9px; }
.partner-card h4 { font-size: 20.7px; }
.partner-desc { font-size: 16.1px; }
.partner-meta { font-size: 14.9px; }
.careers-contact { font-size: 16.1px; }
.careers-contact-info { font-weight: 600; }
.content-section h2 { font-size: 32.2px; }
.content-section p { font-size: 18.4px; }
.value-card h4 { font-size: 18.4px; }
.value-card p { font-size: 16.1px; }
.achievements-list li span { font-size: 17.2px; }
.gallery-item .image-placeholder { font-size: 13.8px; }
.file-formats { font-size: 14.9px; }
.organs-grid h4 { font-size: 20.7px; }
.organs-grid p { font-size: 16.1px; }
.info-card h3 { font-size: 20.7px; }
.contact-info p { font-size: 17.2px; }
.info-row dt { font-size: 16.1px; }
.info-row dd { font-size: 16.1px; font-weight: 600; }
.stats-card h3 { font-size: 20.7px; }
.stat-value { font-size: 27.6px; }
.stat-label { font-size: 13.8px; }
.cta-card h3 { font-size: 23px; }
.cta-card p { font-size: 16.1px; }
.zapis-info-grid .info-item .label { font-size: 14.9px; }
.zapis-info-grid .info-item strong { font-size: 18.4px; }
.ulice-section h4 { font-size: 18.4px; font-weight: 700; }
.ulice-tag { font-size: 16.1px; }
.ulice-detail { font-size: 16.1px; }
.timeline-marker { font-weight: 700; font-size: 20.7px; }
.timeline-date { font-weight: 700; }
.faq-question { font-weight: 600; font-size: 17.2px; }
.faq-answer p { font-size: 17.2px; }
.zapis-section h2 { font-size: 27.6px; }
.zapis-section h4 { font-size: 18.4px; }
.desatero-number { font-size: 18.4px; }
.desatero-item p { font-size: 16.1px; }
.pagination-btn, .pagination-page, .pagination a, .pagination span { font-size: 16.1px; }
.zamestnanci-page .staff-name { font-size: 23px; }
.staff-position { font-weight: 600; }
.zamestnanci-page .contact-item, .druzina-page .contact-item { font-size: 16.1px; }
.staff-table th { font-weight: 700; font-size: 13.8px; }
.staff-table td { font-size: 16.1px; }
.staff-section h2, .staff-section h3 { font-size: 27.6px; }
.staff-section h3 { font-size: 23px; }
.staff-count { font-size: 18.4px; }
.druzina-page .service-item a { font-weight: 600; }
.druzina-page .info-list li { font-size: 16.1px; }
.payment-box strong { font-size: 16.1px; }
.payment-amount { font-size: 27.6px; }
.document-info h4 { font-size: 18.4px; font-weight: 600; }
.bulletin-table th { font-weight: 700; font-size: 16.1px; }
.bulletin-table td { font-size: 16.1px; }
.filter-tab { font-size: 16.1px; font-weight: 600; }
.filter-btn { font-size: 16.1px; font-weight: 600; }
.photo-count { font-size: 16.1px; font-weight: 600; }
.album-read-more { font-size: 16.1px; font-weight: 600; }
.album-category { font-size: 13.8px; font-weight: 700; }
.album-title { font-size: 20.7px; font-weight: 700; }
.album-date { font-size: 16.1px; }
.job-title { font-size: 25.3px; }
.job-type, .job-date { font-size: 16.1px; }
.job-badge { font-size: 13.8px; font-weight: 700; }
.job-requirements li { font-size: 16.1px; }
.job-requirements li::before { font-size: 18.4px; }
.checklist li { font-size: 16.1px; }
.filter-section h4 { font-size: 16.1px; font-weight: 700; }
.filter-checkbox { font-size: 16.1px; }
.checkbox-label { font-size: 16.1px; }
.search-bar input { font-size: 17.2px; }
.documents-table th { font-size: 13.8px; font-weight: 700; }
.doc-name span { font-weight: 600; }
.doc-type-badge { font-size: 13.8px; font-weight: 600; }
.doc-date { font-size: 16.1px; }
.doc-size { font-size: 16.1px; }
.trida-badge { font-size: 14.9px; font-weight: 600; }
.sort-info { font-size: 16.1px; }
.hub-card h2, .hub-card h3 { font-size: 23px; font-weight: 700; }
.hub-card p { font-size: 16.1px; }
.rozvrhy-page .schedule-table th { font-weight: 700; }
.rozvrhy-page .schedule-table td:first-child { font-weight: 700; }
.rozvrhy-page .break-row td { font-weight: 600; font-size: 14.9px; }
.step-number { font-size: 23px; }
.step-content h4 { font-size: 20.7px; font-weight: 700; }
.links-list a { font-weight: 600; }
.links-list .link-desc { font-size: 14.9px; font-weight: 500; }
.service-item h4 { font-size: 18.4px; font-weight: 700; }
.service-item p { font-size: 16.1px; }
.news-item .news-meta { font-size: 14.9px; }
.news-item h3 { font-size: 20.7px; font-weight: 700; }
.holiday-content h3 { font-size: 18.4px; font-weight: 700; }
.holiday-date { font-size: 16.1px; font-weight: 600; }
.holiday-note { font-size: 14.9px; }
.holiday-badge { font-size: 12.6px; font-weight: 700; }
.holidays-table th { font-weight: 700; }
.organizace-table th { font-weight: 700; font-size: 13.8px; }
.organizace-table td.col-name { font-weight: 600; }
.day-badge { font-size: 13.8px; font-weight: 700; }
.organizace-table-compact th { font-size: 13.8px; font-weight: 700; }
.organizace-table-compact .col-date strong { font-size: 16.1px; }
.organizace-table-compact .org-badge { font-size: 12.6px; }
.org-badge { font-size: 13.8px; font-weight: 700; }
.error-404-suggestion { font-weight: 600; }
.error-404-search-label { font-weight: 600; }
.error-404-search .search-form .search-submit { font-weight: 600; }
.error-404-links h3 { font-weight: 700; }
.error-404-link-card { font-weight: 600; }
.search-result-title { font-weight: 700; }
.search-result-type { font-weight: 600; }
.search-result-date { font-weight: 500; }
.no-results-search .search-submit { font-weight: 600; }
.search-page-form .search-submit { font-weight: 700; }
.search-page-suggestions h3 { font-weight: 700; }
.search-suggestion span { font-weight: 600; }
.search-page-recent h3 { font-weight: 700; }
.search-recent-title { font-weight: 600; }
.page-content h2 { font-size: 27.6px; }
.page-content h3 { font-size: 20.7px; }
.page-content strong { font-weight: 700; }
.page-content .btn { font-weight: 600; }

@media (max-width: 1300px) {
  .main-nav a { font-size: 16.1px; }
  .main-nav .sub-menu a { font-size: 14.9px; }
  .header-actions .btn-sm { font-size: 14.9px; }
}

@media (max-width: 1200px) {
  .hero-content h1 { font-size: 46px; }
}

@media (max-width: 992px) {
  .filter-checkbox { font-size: 23px; }
  .checkbox-label { font-size: 23px; }
  .filter-section h4 { font-size: 23px; }
  .hero-content h1 { font-size: 46px; }
}

@media (max-width: 768px) {
  h1 { font-size: 41.4px; }
  h2 { font-size: 32.2px; }
  h3 { font-size: 27.6px; }
  h4 { font-size: 23px; }
  .alert-title::after { font-weight: 500; }
  .hero-content h1 { font-size: 36.8px; }
  .hero-perex { font-size: 18.4px; }
  .menu-table th, .menu-table td { font-size: 14.9px; }
  .btn-lg { font-size: 18.4px; }
  .filter-checkbox { font-size: 16.1px; }
  .staff-table { font-size: 13.8px; }
  .bulletin-table { font-size: 13.8px; }
  .schedule-table { font-size: 14.9px; }
  .org-badge { font-size: 12.6px; }
  .page-content h2 { font-size: 23px; }
  .page-content h3 { font-size: 18.4px; }
}

@media (max-width: 640px) {
  h1 { font-size: 32.2px; }
  h2 { font-size: 27.6px; }
  .hero-content h1 { font-size: 32.2px; }
  .staff-table th, .staff-table td { font-size: 14.9px; }
  .filter-checkbox { font-size: 14.9px; }
}

