/* Styly specifické pro JRRET.html */
.hero-jrret { background: linear-gradient(135deg, #2a2a4a 0%, #1a1a2e 100%); height: auto; padding: 80px 20px; }
.jrret-profile-grid { display: flex; flex-direction: column; gap: 40px; align-items: center; max-width: 600px; margin: 0 auto; }
.profile-photo-item { text-align: center; }
.profile-photo-circle { width: 150px; height: 150px; border-radius: 50%; background-color: var(--color-secondary-accent); display: flex; align-items: center; justify-content: center; border: 4px solid var(--color-primary-accent); margin: 0 auto 20px auto; }
.initials { font-family: var(--font-heading); font-size: 5em; color: var(--color-primary-accent-hover); font-weight: bold; }
.ampersand-divider { font-size: 4em; color: var(--color-primary-accent); margin: 20px 0; align-self: center; }
.subsection-heading-jrret { font-size: 2em; font-weight: bold; margin-bottom: 5px; }
.subtitle-text-jrret { font-size: 1.1em; opacity: 0.8; }
.section-content-wrapper { max-width: 900px; margin: 0 auto; text-align: left; }
.section-content-wrapper .section-heading { margin-bottom: 40px; font-size: 2.8em; text-align: center; }
.section-content-wrapper .section-intro { font-size: 1.15em; margin-bottom: 30px; text-align: center; }
.section-content-wrapper .section-text { font-size: 1.1em; margin-bottom: 20px; }
.categories-section.alternate-bg { background-color: var(--color-secondary-accent); }


/* Časová osa */
.timeline-interactive-container { position: relative; padding-bottom: 80px; margin-top: 50px; }
.timeline-line { border-top: 2px dashed var(--color-border); position: absolute; width: 100%; top: 21px; z-index: 0; }
.timeline-items-wrapper { position: relative; display: flex; justify-content: space-between; z-index: 1; }
.timeline-item { flex: 1; text-align: center; cursor: pointer; }
.timeline-circle { width: 40px; height: 40px; background-color: var(--color-secondary-accent); color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; margin: 0 auto 10px auto; border: 2px solid var(--color-primary-accent); transition: all 0.3s ease; }
.timeline-circle.active, .timeline-item:hover .timeline-circle { background-color: var(--color-primary-accent); transform: scale(1.1); }
.timeline-details-content { background-color: var(--color-card-background); padding: 30px; border-radius: 10px; margin-top: 40px; opacity: 0; transition: opacity 0.5s ease; }
.timeline-details-content h3 { color: var(--color-primary-accent); }


/* Tabs */
.tabs-container { max-width: 900px; margin: 40px auto; background-color: var(--color-card-background); border-radius: 10px; overflow: hidden; }
.tab-buttons-wrapper { display: flex; border-bottom: 1px solid var(--color-border); background-color: var(--color-secondary-accent); }
.tab-button { flex: 1; padding: 15px 25px; cursor: pointer; border: none; background-color: transparent; font-size: 1.2em; font-weight: bold; color: var(--color-text-light); transition: all 0.3s ease; }
.tab-button.active { background-color: var(--color-primary-accent); color: var(--color-background-dark); }
.tab-button:hover:not(.active) { background-color: var(--color-card-hover); }
.tab-content-wrapper { padding: 30px; }
.tab-pane { display: none; }
.tab-pane.active { display: block; }
.tab-pane-heading { font-size: 1.8em; color: var(--color-primary-accent); margin-bottom: 20px; }

/* Chart */
.chart-container { position: relative; height: 400px; max-width: 900px; margin: 40px auto; }
.text-block-center { max-width: 900px; margin: 40px auto 0 auto; text-align: left; }
.text-block-center .subsection-heading-jrret { text-align: center; margin-bottom: 20px; }

@media (min-width: 768px) {
.jrret-profile-grid { flex-direction: row; }
.ampersand-divider { margin: 0 30px; }
}

.jrret-nav-link { font-size: 1.2em; font-weight: bold; }
.two-column-grid { display: grid; grid-template-columns: 1fr; /* Na mobilu jeden sloupec */ gap: 30px; margin-top: 40px; max-width: 900px; margin-left: auto; margin-right: auto; }


/* Zdroje */
.source-list-container { max-width: 900px; margin: 0 auto; text-align: left; }
.source-list { list-style-type: decimal; padding-left: 20px; color: var(--color-text-light); }
.source-list li { margin-bottom: 10px; font-size: 0.95em; }
.source-list li a { color: var(--color-primary-accent-hover); }
.source-list li a:hover { text-decoration: underline; }