/* Page-specific CSS for Versionierung */

.ac-container {
  max-width: var(--layout-max-width);
  margin: 0 auto;
  padding: 0 var(--layout-gutter);
}

.ac-narrow-content {
  max-width: 800px;
  margin: 0 auto;
}

.ac-text-center {
  text-align: center;
}

.ac-text-white {
  color: #FFFFFF !important;
}

.ac-mt-large {
  margin-top: 60px;
}

/* Hero Section */
.ac-version-hero {
  position: relative;
  background-image: linear-gradient(rgba(3, 33, 61, 0.7), rgba(3, 33, 61, 0.7)), url('DAM-Versionierung-Digital-Asset-Managment.jpg');
  background-size: cover;
  background-position: center;
  min-height: 400px;
  display: flex;
  align-items: center;
  color: #FFFFFF;
  padding: 80px 0;
}

.ac-hero-title {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.2;
  max-width: 800px;
  margin: 0;
}

/* Intro Section */
.ac-intro-section {
  padding: 60px 0;
  background-color: #FFFFFF;
}

.ac-intro-grid {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 40px;
}

.ac-summary {
  font-size: 1.15rem;
  line-height: 1.6;
  color: #03213D;
  margin-bottom: 30px;
}

.ac-toc {
  background-color: #E2EEF4;
  padding: 25px;
  border-radius: 8px;
  display: grid;
  gap: 18px;
  position: static;
  top: auto;
  left: auto;
  width: auto;
  height: auto;
  margin-left: 0;
  align-items: start;
  overflow: visible;
  box-sizing: border-box;
}

.ac-toc-title {
  font-weight: 700;
  margin: 0;
  color: #03213D;
}

.ac-toc ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 24px;
  height: auto;
}

.ac-toc li {
  margin: 0;
  min-width: 0;
}

.ac-toc a {
  display: inline;
  color: #03213D;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s;
  line-height: 1.5;
  white-space: normal;
  text-transform: none;
  letter-spacing: 0;
}

.ac-toc a:hover {
  color: var(--link-on-light);
}

/* Share Dropdown */
.ac-share-dropdown {
  position: sticky;
  top: 100px;
}

.ac-share-trigger {
  background-color: #03213D;
  color: #FFFFFF;
  border: none;
  padding: 12px 24px;
  border-radius: 30px;
  cursor: pointer;
  width: 100%;
  font-weight: 600;
}

.ac-share-menu {
  background: #FFFFFF;
  border: 1px solid #E2EEF4;
  border-radius: 8px;
  margin-top: 10px;
  padding: 10px 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.ac-share-menu a {
  display: block;
  padding: 10px 20px;
  color: #03213D;
  text-decoration: none;
  font-size: 0.9rem;
}

.ac-share-menu a:hover {
  background-color: #E2EEF4;
}

/* TL;DR Section */
.ac-tldr-section {
  padding: 40px 0;
}

.ac-tldr-card {
  background-color: #03213D;
  color: #FFFFFF;
  padding: 40px;
  border-radius: 12px;
}

.ac-tldr-card .ac-section-title {
  color: #FFFFFF;
  margin-top: 0;
}

.ac-tldr-list {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.ac-tldr-list li {
  position: relative;
  padding-left: 25px;
  line-height: 1.5;
}

.ac-tldr-list li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: #FF8A3D;
  font-weight: bold;
}

/* Content Sections */
.ac-content-section {
  padding: 80px 0;
}

.ac-bg-ice {
  background-color: #E2EEF4;
}

.ac-bg-deep-blue {
  background-color: #03213D;
}

.ac-section-title {
  font-size: 2.25rem;
  color: #03213D;
  margin-bottom: 30px;
  font-weight: 700;
}

.ac-content-section p {
  font-size: 1.1rem;
  line-height: 1.7;
  color: #03213D;
  margin-bottom: 20px;
}

.ac-feature-list {
  margin: 25px 0;
  padding-left: 20px;
}

.ac-feature-list li {
  margin-bottom: 12px;
  font-size: 1.1rem;
  color: #03213D;
}

/* Table Styling */
.ac-table-wrapper {
  overflow-x: auto;
  margin-top: 40px;
}

.ac-comparison-table {
  width: 100%;
  border-collapse: collapse;
  background: #FFFFFF;
  border-radius: 8px;
  overflow: hidden;
}

.ac-comparison-table th {
  background-color: #54ABDF;
  color: #03213D;
  text-align: left;
  padding: 20px;
  font-weight: 700;
}

.ac-comparison-table td {
  padding: 20px;
  border-bottom: 1px solid #E2EEF4;
  color: #03213D;
  line-height: 1.5;
}

.ac-comparison-table tr:last-child td {
  border-bottom: none;
}

/* CTA Button */
.ac-cta-wrapper {
  margin-top: 50px;
}

.ac-btn-primary {
  display: inline-block;
  background-color: #FF8A3D;
  color: #03213D;
  padding: 18px 36px;
  border-radius: 50px;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.1rem;
  transition: transform 0.2s, box-shadow 0.2s;
}

.ac-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(255, 138, 61, 0.3);
}

/* Related Articles Grid */
.ac-related-section {
  padding: 80px 0;
}

.ac-related-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-top: 40px;
}

.ac-related-card {
  background: #FFFFFF;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0,0,0,0.05);
  transition: transform 0.3s;
}

.ac-related-card:hover {
  transform: translateY(-5px);
}

.ac-card-img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}

.ac-card-body {
  padding: 20px;
}

.ac-card-body h3 {
  font-size: 1.1rem;
  margin: 0;
  line-height: 1.4;
}

.ac-card-body a {
  color: #03213D;
  text-decoration: none;
}

.ac-card-body a:hover {
  color: var(--link-on-light);
}

/* Related Text List */
.ac-related-text-section {
  padding: 60px 0;
}

.ac-related-text-list {
  list-style: none;
  padding: 0;
}

.ac-related-text-list li {
  padding: 15px 0;
  border-bottom: 1px solid #E2EEF4;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ac-related-text-list a {
  color: #03213D;
  text-decoration: none;
  font-weight: 600;
  max-width: 70%;
}

.ac-related-text-list a:hover {
  color: var(--link-on-light);
}

.ac-date {
  color: var(--link-on-light);
  font-size: 0.9rem;
}

/* Responsive */
@media (max-width: 1199px) {
  .ac-hero-title { font-size: 2.5rem; }
  .ac-related-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
  .ac-intro-grid {
    grid-template-columns: 1fr;
  }
  .ac-intro-share {
    order: -1;
  }
  .ac-share-dropdown {
    position: static;
  }
  .ac-tldr-list {
    grid-template-columns: 1fr;
  }
  .ac-toc {
    position: static;
    display: grid;
    padding: 24px 20px;
  }
  .ac-toc ul {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .ac-hero-title { font-size: 2rem; }
  .ac-section-title { font-size: 1.75rem; }
  .ac-related-grid { grid-template-columns: 1fr; }
  .ac-related-text-list li {
    flex-direction: column;
    align-items: flex-start;
  }
  .ac-related-text-list a {
    max-width: 100%;
    margin-bottom: 5px;
  }
  .ac-version-hero { min-height: 300px; padding: 40px 0; }
}

/* Bildserie 07.10.2026: natürliche Proportionen, ohne Vergrößerungsmodus. */
main .versioning-story { margin: 24px 0; min-width: 0; scroll-margin-top: 130px; }
main .versioning-story img { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; border-radius: 12px; box-shadow: none; }
main .versioning-story--wide { max-width: 840px; margin: 32px auto; }
main .versioning-story-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; margin-top: 32px; }
main .versioning-story-pair .versioning-story { margin: 0; }
main .versioning-story-stack { display: grid; gap: 20px; }
main .versioning-story-stack .versioning-story { margin: 0; }
@media (max-width: 700px) { main .versioning-story-pair { grid-template-columns: 1fr; gap: 24px; } }

/* F02: Same packaging, visible artwork revisions and a note at its version. */
main .versioning-demo { border: 1px solid #c4d8e4; border-radius: 12px; overflow: hidden; background: #fff; }
main .versioning-demo-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px; background: #03213d; color: #fff; font-size: 14px; line-height: 1.4; }
main .versioning-count { color: #c9e3f1; white-space: nowrap; }
main .versioning-demo-body { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); }
main .versioning-stage { position: relative; align-self: start; }
main .versioning-stage img { aspect-ratio: 1; border-radius: 0; }
main .versioning-view-label { position: absolute; bottom: 14px; left: 14px; padding: 5px 10px; border-radius: 4px; background: #fff; color: #03213d; font-size: 13px; font-weight: 600; }
main .versioning-history { padding: 18px 14px; min-width: 0; background: #f3f7f9; }
main .versioning-history-heading { margin: 0 0 14px; font-size: 13px; line-height: 1.4; color: #496476; font-weight: 600; }
main .versioning-choice { display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: center; gap: 10px; width: 100%; padding: 10px 8px; margin: 0; border: 1px solid transparent; border-radius: 6px; background: transparent; color: #03213d; font: inherit; text-align: left; cursor: pointer; }
main .versioning-choice + .versioning-choice { margin-top: 8px; }
main .versioning-choice[aria-pressed="true"] { border-color: #216d99; background: #fff; box-shadow: inset 3px 0 #216d99; }
main .versioning-choice:not(:disabled):hover { background: #e2eef4; }
main .versioning-choice:focus-visible { outline: 3px solid #216d99; outline-offset: 3px; }
main .versioning-choice:disabled { cursor: default; opacity: 1; }
main .versioning-choice img { width: 52px; height: 64px; aspect-ratio: auto; object-fit: cover; border-radius: 3px; }
main .versioning-choice-copy { min-width: 0; }
main .versioning-choice-top { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-bottom: 4px; font-size: 13px; line-height: 1.3; }
main .versioning-current { padding: 3px 6px; background: #b7ff3c; border-radius: 3px; color: #03213d; font-size: 11px; font-weight: 600; }
main .versioning-choice-title { display: block; font-size: 14px; line-height: 1.35; }
main .versioning-choice-detail { display: block; margin-top: 3px; color: #496476; font-size: 12px; line-height: 1.4; }
main .versioning-demo-caption { padding: 13px 18px; border-top: 1px solid #c4d8e4; color: #496476; font-size: 13px; line-height: 1.5; min-height: 66px; }
main .versioning-note { position: relative; width: min(88%, 460px); margin: -56px 22px 0 auto; padding: 22px 24px; border: 1px solid #c4d8e4; border-top: 3px solid #54abdf; border-radius: 8px; background: #fff; color: #03213d; }
main .versioning-note-version { display: block; margin-bottom: 17px; font-size: 13px; color: #496476; font-weight: 600; }
main .versioning-note-author { display: flex; align-items: center; gap: 10px; font-size: 14px; line-height: 1.4; }
main .versioning-avatar { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #e2eef4; color: #03213d; font-weight: 600; }
main .versioning-note-role { margin-left: 8px; color: #496476; font-size: 13px; }
main .versioning-note p { margin: 12px 0 0; font-size: 16px; line-height: 1.65; }
@media (max-width: 600px) {
  main .versioning-demo-heading { padding: 14px; font-size: 12px; }
  main .versioning-demo-body { grid-template-columns: 1fr; }
  main .versioning-history { padding: 16px 14px; }
  main .versioning-history-heading { margin-bottom: 8px; }
  main .versioning-choice { grid-template-columns: 48px minmax(0, 1fr); gap: 12px; padding: 8px 10px; }
  main .versioning-choice img { width: 48px; height: 52px; }
  main .versioning-choice-copy { display: grid; grid-template-columns: 1fr auto; gap: 0 8px; }
  main .versioning-choice-top { grid-column: 1 / -1; }
  main .versioning-choice-detail { display: none; }
  main .versioning-demo-caption { padding: 12px 14px; }
  main .versioning-note { width: auto; margin: -18px 12px 0; padding: 18px; }
}

/* Textseiten: versioning-compare */

main .versioning-compare { margin:36px 0;background:#fff;border:1px solid #c4d8e4;border-radius:8px;overflow:hidden;color:#03213d;scroll-margin-top:120px; }
main .versioning-compare__heading { display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:18px 22px;background:#03213d;color:#fff;font-size:15px; }
main .versioning-compare__heading>span { color:#c9e3f1;font-size:12px; }
main .versioning-compare__pair { display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#c4d8e4; }
main .versioning-compare__pair>div { background:#fff;min-width:0; }
main .versioning-compare__pair img { display:block;width:100%;height:auto; }
main .versioning-compare__pair p { margin:0;padding:16px 20px;font-size:14px;line-height:1.5; }
main .versioning-compare__pair p>span { display:block;font-weight:700;margin-bottom:4px; }
main .versioning-compare figcaption { margin:0;padding:16px 22px;border-top:1px solid #c4d8e4;font-size:13px;line-height:1.6;color:#496476; }
@media(max-width:600px){main .versioning-compare__pair p{padding:12px;font-size:12px;}main .versioning-compare figcaption{padding:16px;}main .versioning-compare__heading{padding:16px;}}
