:root {
  --artifact-blue: #0069b4;
  --artifact-red: #c00;
  --artifact-ink: #17212b;
  --artifact-muted: #66717c;
  --artifact-line: #dce2e7;
  --artifact-radius: 14px;
  --artifact-accent: var(--artifact-blue);
}

.artifact-page, .artifact-page *, .artifact-page *::before, .artifact-page *::after { box-sizing: border-box; }

.artifact-page { width: min(1040px, calc(100% - 32px)); min-height: 70vh; margin: 0 auto 40px; color: #444; background: #f1f1f1; border-radius: 5px; font-family: "Open Sans", Arial, sans-serif; overflow: hidden; }
.artifact-page--category-technik { --artifact-accent: #0086c8; }
.artifact-page--category-kondition { --artifact-accent: #0069b4; }
.artifact-page--category-koordination { --artifact-accent: #731777; }
.artifact-page--category-taktik { --artifact-accent: #b0005a; }
.artifact-page--category-psyche { --artifact-accent: #c40022; }
.artifact-page--category-training { --artifact-accent: #f39200; }
.artifact-page--category-umfeld { --artifact-accent: #84b819; }
.artifact-page--category-person { --artifact-accent: #008d58; }
.artifact-page--category-wettkampf { --artifact-accent: #008b8b; }
.artifact-page--category-technologie { --artifact-accent: #8a8d91; }
.artifact-topic-bar { display: flex; align-items: stretch; min-height: 25px; margin-bottom: 18px; padding: 0 22px; background: #efefef; }
.artifact-topic-bar__item { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 78px; padding: 6px 10px 5px; color: #fff; font-family: "Open Sans Condensed", "Arial Narrow", sans-serif; font-size: 13px; font-weight: 800; line-height: 1; text-align: center; text-transform: uppercase; transition: transform .18s ease, padding .18s ease, filter .18s ease; }
.artifact-topic-bar__item.is-active { z-index: 2; padding: 9px 14px 8px; font-size: 15px; filter: saturate(1.08); transform: translateY(8px); box-shadow: 0 5px 0 rgba(255, 255, 255, .95); }
.artifact-topic-bar__item.is-active::after { content: ""; position: absolute; left: 50%; bottom: -8px; width: 10px; height: 10px; background: inherit; transform: translateX(-50%) rotate(45deg); }
.artifact-topic-bar__item--technik { background: #0086c8; }
.artifact-topic-bar__item--kondition { background: #0069b4; }
.artifact-topic-bar__item--koordination { background: #731777; }
.artifact-topic-bar__item--taktik { background: #b0005a; }
.artifact-topic-bar__item--psyche { background: #c40022; }
.artifact-topic-bar__item--training { background: #f39200; }
.artifact-topic-bar__item--umfeld { background: #84b819; }
.artifact-topic-bar__item--person { background: #008d58; }
.artifact-topic-bar__item--wettkampf { background: #008b8b; }
.artifact-topic-bar__item--technologie { background: #8a8d91; }
.artifact-topic-bar__item:not([class*="--technik"]):not([class*="--kondition"]):not([class*="--koordination"]):not([class*="--taktik"]):not([class*="--psyche"]):not([class*="--training"]):not([class*="--umfeld"]):not([class*="--person"]):not([class*="--wettkampf"]):not([class*="--technologie"]) { background: #555; }
.artifact-hero { position: relative; isolation: isolate; min-height: 430px; padding: 48px 34px 44px; overflow: hidden; border: 0; }
.artifact-hero::after { content: ""; position: absolute; z-index: 0; top: -90px; right: -115px; width: 430px; height: 430px; background: rgba(0, 0, 0, .22); clip-path: polygon(22% 0, 100% 0, 100% 76%, 72% 100%, 0 45%); }
.artifact-hero--has-image::after { background: linear-gradient(135deg, rgba(70, 76, 82, .28), rgba(24, 28, 32, .68)); }
.artifact-hero__image { position: absolute; z-index: 0; top: -90px; right: -115px; width: 430px; height: 430px; clip-path: polygon(22% 0, 100% 0, 100% 76%, 72% 100%, 0 45%); }
.artifact-hero__image img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) brightness(.72) contrast(.95); }
.artifact-hero__image--top img { object-position: center top; }
.artifact-hero__image--bottom img { object-position: center bottom; }
.artifact-hero__image--left img { object-position: left center; }
.artifact-hero__image--right img { object-position: right center; }
.artifact-hero__type-mark { position: absolute; z-index: 1; top: 112px; right: 35px; max-width: 250px; color: rgba(0, 105, 180, .88); font-family: "Open Sans Condensed", "Arial Narrow", sans-serif; font-size: clamp(54px, 8vw, 82px); font-weight: 700; font-style: italic; line-height: .9; text-align: right; text-transform: uppercase; transform: rotate(-4deg); }
.artifact-hero.artifact-section--accent .artifact-hero__type-mark,
.artifact-hero.artifact-section--blue .artifact-hero__type-mark,
.artifact-hero.artifact-section--red .artifact-hero__type-mark,
.artifact-hero.artifact-section--green .artifact-hero__type-mark { color: rgba(255, 255, 255, .34); }
.artifact-hero__inner, .artifact-layout { width: 100%; margin: 0 auto; }
.artifact-hero__inner { position: relative; z-index: 2; }
.artifact-back { display: inline-flex; gap: 7px; align-items: center; margin-bottom: 30px; color: inherit; font-size: 12px; opacity: .78; }
.artifact-back:hover { text-decoration: underline; }
.artifact-kicker { display: flex; gap: 9px; align-items: center; margin-bottom: 12px; color: inherit; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; opacity: .82; }
.artifact-title { max-width: 750px; margin: 0; font-family: "Open Sans Condensed", "Arial Narrow", Arial, sans-serif; font-size: clamp(36px, 5.2vw, 50px); font-weight: 700; line-height: 1.08; text-transform: uppercase; }
.artifact-description { max-width: 690px; margin-top: 16px; color: inherit; font-size: 16px; line-height: 1.6; opacity: .9; }
.artifact-hero.artifact-section--accent .artifact-description,
.artifact-hero.artifact-section--blue .artifact-description,
.artifact-hero.artifact-section--red .artifact-description,
.artifact-hero.artifact-section--green .artifact-description,
.artifact-hero.artifact-section--accent .artifact-meta,
.artifact-hero.artifact-section--blue .artifact-meta,
.artifact-hero.artifact-section--red .artifact-meta,
.artifact-hero.artifact-section--green .artifact-meta { color: rgba(255, 255, 255, .82); }
.artifact-hero.artifact-section--accent .artifact-kicker,
.artifact-hero.artifact-section--blue .artifact-kicker,
.artifact-hero.artifact-section--red .artifact-kicker,
.artifact-hero.artifact-section--green .artifact-kicker { color: #fff; }
.artifact-meta { display: flex; flex-wrap: wrap; gap: 9px 18px; align-items: center; margin-top: 22px; color: var(--artifact-muted); font-size: 13px; }
.artifact-meta__item { display: inline-flex; gap: 7px; align-items: center; }
.artifact-tag { padding: 5px 10px; color: #44515d; background: #eef1f3; border-radius: 999px; }

.artifact-layout { display: block; padding: 0; }
.artifact-sections { display: grid; gap: 0; }
.artifact-section { position: relative; overflow: hidden; padding: 46px 34px; background: #f1f1f1; border: 0; border-radius: 0; box-shadow: none; animation: artifact-rise .45s ease both; }
.artifact-section:nth-child(2) { animation-delay: .06s; }
.artifact-section:nth-child(3) { animation-delay: .12s; }
.artifact-section--accent { color: #fff; background: var(--artifact-accent); border-color: var(--artifact-accent); }
.artifact-section--blue { color: #fff; background: var(--artifact-blue); border-color: var(--artifact-blue); }
.artifact-section--red { color: #fff; background: #a71919; border-color: #a71919; }
.artifact-section--green { color: #fff; background: #246747; border-color: #246747; }
.artifact-section--white, .artifact-section--grey { background: #f1f1f1; }
.artifact-section--yellow { background: #fff3c4; border-color: #eedb91; }
.artifact-section--literature, .artifact-section--recommendation { border-left: 0; }
.artifact-section__header { display: flex; flex-direction: column; gap: 7px; align-items: center; margin-bottom: 20px; text-align: center; text-transform: uppercase; }
.artifact-section__icon { display: grid; width: auto; height: 50px; place-items: center; color: inherit; background: none; border-radius: 0; font-size: 38px; opacity: .42; }
.artifact-section--accent .artifact-section__icon, .artifact-section--blue .artifact-section__icon, .artifact-section--red .artifact-section__icon, .artifact-section--green .artifact-section__icon { color: inherit; background: none; opacity: .5; }
.artifact-section__title { margin: 0; font-size: 17px; font-weight: 800; line-height: 1.3; }
.artifact-copy { font-size: 16px; line-height: 1.65; }
.artifact-copy > :first-child { margin-top: 0; }
.artifact-copy > :last-child { margin-bottom: 0; }
.artifact-copy p, .artifact-copy ul, .artifact-copy ol, .artifact-copy table, .artifact-copy blockquote { margin: 0 0 16px; }
.artifact-copy ul, .artifact-copy ol { padding-left: 23px; }
.artifact-copy li { margin-bottom: 6px; list-style: inherit; }
.artifact-copy h2, .artifact-copy h3, .artifact-copy h4 { margin: 25px 0 10px; font-weight: 700; line-height: 1.3; }
.artifact-copy h2 { font-size: 24px; }
.artifact-copy h3 { font-size: 20px; font-weight: 800; }
.artifact-copy a { color: var(--artifact-red); text-decoration: underline; text-underline-offset: 2px; }
.artifact-section--accent .artifact-copy a, .artifact-section--blue .artifact-copy a, .artifact-section--red .artifact-copy a, .artifact-section--green .artifact-copy a { color: inherit; }
.artifact-copy blockquote { padding: 12px 16px; background: rgba(20, 90, 141, .07); border-left: 3px solid currentColor; }
.artifact-copy table { width: 100%; border-collapse: collapse; }
.artifact-copy th, .artifact-copy td { padding: 10px 12px; text-align: left; border: 1px solid currentColor; border-color: rgba(100, 115, 125, .3); }
.artifact-copy img { max-width: 100%; height: auto; border-radius: 9px; }
.artifact-recommendations { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; margin: 8px auto 0; }
.artifact-recommendation-card { position: relative; display: flex; min-height: 170px; overflow: hidden; color: #fff; text-decoration: none; background: #1c2730; border-radius: 4px; }
.artifact-recommendation-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); transition: transform .22s ease, filter .22s ease; }
.artifact-recommendation-card__shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, .22), rgba(0, 0, 0, .74)); }
.artifact-recommendation-card__body { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: flex-end; width: 100%; padding: 14px; }
.artifact-recommendation-card__title { font-family: "Open Sans Condensed", "Arial Narrow", sans-serif; font-size: 21px; font-weight: 800; font-style: italic; line-height: 1.08; text-shadow: 0 1px 8px rgba(0, 0, 0, .45); }
.artifact-recommendation-card__type { margin-top: 7px; color: #00a3e0; font-size: 12px; font-weight: 800; line-height: 1; text-transform: uppercase; }
.artifact-recommendation-card:hover img { transform: scale(1.04); filter: grayscale(.45); }

.artifact-aside { position: static; display: flex; justify-content: flex-end; padding: 25px 30px; background: #f1f1f1; border: 0; border-radius: 0; }
.artifact-aside__title, .artifact-aside__list { display: none; }
.artifact-aside__link { color: var(--artifact-muted); font-size: 13px; line-height: 1.4; }
.artifact-aside__link:hover { color: var(--artifact-red); }
.artifact-print { display: block; width: auto; margin: 0; padding: 10px 18px; color: #fff; text-align: center; background: var(--artifact-blue); border-radius: 4px; font-size: 13px; font-weight: 700; }
.artifact-empty { padding: 40px; color: var(--artifact-muted); text-align: center; background: #fff; border: 1px solid var(--artifact-line); border-radius: var(--artifact-radius); }

@keyframes artifact-rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .artifact-section { animation: none; } }
@media (max-width: 1100px) {
  .artifact-page { width: 100%; margin-bottom: 0; border-radius: 0; }
  .artifact-topic-bar { display: block; min-height: 0; margin-bottom: 10px; padding: 12px 18px 0; background: #f1f1f1; }
  .artifact-topic-bar__item { display: none !important; }
  .artifact-topic-bar__item.is-active { display: inline-flex !important; min-width: 0; padding: 8px 16px; font-size: 14px; transform: none; box-shadow: none; border-radius: 0 0 4px 4px; }
  .artifact-topic-bar__item.is-active::after { display: none !important; }
  .artifact-hero { min-height: 0; padding: 30px 22px 36px; }
  .artifact-hero__type-mark { top: 78px; right: 15px; max-width: 170px; font-size: 46px; opacity: .55; }
  .artifact-title { font-size: clamp(32px, 10vw, 44px); }
  .artifact-section { padding: 34px 22px; }
  .artifact-recommendations { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .artifact-recommendation-card { min-height: 150px; }
}
@media (max-width: 520px) {
  .artifact-recommendations { grid-template-columns: 1fr; }
}
@media print {
  @page { margin: 14mm 16mm; }
  body > footer, .artifact-back, .artifact-aside, .artifact-print { display: none !important; }
  body { background: #fff !important; }
  .iat-header-wrap { display: block !important; break-after: avoid; border-bottom-width: 2px; }
  .iat-header-main { padding: 6px 0 !important; }
  .iat-header-main img { height: 34px !important; }
  .iat-nav { display: none !important; }
  .artifact-page { width: 100%; min-height: 0; margin: 0; color: #111; background: #fff; border-radius: 0; font-size: 11px; overflow: visible; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .artifact-topic-bar { display: flex !important; min-height: 0; margin: 0; padding: 0; background: #efefef !important; break-after: avoid; }
  .artifact-topic-bar__item { display: inline-flex !important; min-width: auto; flex: 1 1 auto; padding: 3px 4px; color: #fff !important; font-size: 7px; box-shadow: none; transform: none; }
  .artifact-topic-bar__item.is-active { position: relative; z-index: 2; padding: 4px 5px; font-size: 8px; box-shadow: 0 3px 0 rgba(255, 255, 255, .95); transform: translateY(3px); }
  .artifact-topic-bar__item.is-active::after { display: none; }
  .artifact-hero { min-height: 0; padding: 14px 16px 16px; color: #fff !important; background: var(--artifact-accent) !important; break-inside: avoid; }
  .artifact-hero::after { display: block !important; top: -120px; right: -140px; width: 320px; height: 320px; background: rgba(0, 0, 0, .18) !important; }
  .artifact-hero__image { display: block !important; top: -120px; right: -140px; width: 320px; height: 320px; opacity: .48; }
  .artifact-hero__type-mark { display: block !important; top: 42px; right: 18px; max-width: 150px; color: rgba(255, 255, 255, .38) !important; font-size: 44px; }
  .artifact-kicker { margin-bottom: 5px; color: #fff !important; font-size: 9px; letter-spacing: .06em; }
  .artifact-title { max-width: 78%; font-size: 22px; line-height: 1.12; }
  .artifact-description { max-width: 76%; margin-top: 8px; color: rgba(255, 255, 255, .88) !important; font-size: 11px; line-height: 1.35; }
  .artifact-meta { margin-top: 8px; color: rgba(255, 255, 255, .9) !important; font-size: 9px; gap: 4px 10px; }
  .artifact-tag { padding: 2px 6px; color: #333; background: rgba(255, 255, 255, .9); border-radius: 999px; }
  .artifact-layout { display: block; padding: 0; }
  .artifact-sections { display: block; }
  .artifact-section { break-inside: auto; page-break-inside: auto; padding: 12px 16px; box-shadow: none; border-top: 1px solid rgba(0, 0, 0, .14); animation: none; overflow: visible; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .artifact-section--accent { color: #fff !important; background: var(--artifact-accent) !important; }
  .artifact-section--blue { color: #fff !important; background: var(--artifact-blue) !important; }
  .artifact-section--red { color: #fff !important; background: #a71919 !important; }
  .artifact-section--green { color: #fff !important; background: #246747 !important; }
  .artifact-section--white, .artifact-section--grey { color: #111 !important; background: #f1f1f1 !important; }
  .artifact-section--yellow { color: #111 !important; background: #fff3c4 !important; }
  .artifact-section__header { display: flex; margin-bottom: 8px; gap: 4px; text-align: center; text-transform: uppercase; }
  .artifact-section__icon { display: grid; height: 22px; font-size: 18px; opacity: .5; }
  .artifact-section__title { font-size: 13px; line-height: 1.25; text-transform: uppercase; }
  .artifact-copy { font-size: 10.5px; line-height: 1.35; }
  .artifact-copy p, .artifact-copy ul, .artifact-copy ol, .artifact-copy table, .artifact-copy blockquote { margin-bottom: 8px; }
  .artifact-copy h2 { font-size: 14px; }
  .artifact-copy h3 { font-size: 12px; }
  .artifact-copy a { color: currentColor; text-decoration: underline; }
  .artifact-copy a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 9px; word-break: break-all; }
  .artifact-copy img { display: block; max-width: 100%; max-height: 90mm; margin: 6px 0; border-radius: 0; break-inside: avoid; }
  .artifact-copy table { font-size: 9.5px; page-break-inside: avoid; }
  .artifact-copy th, .artifact-copy td { padding: 4px 5px; border-color: #999; }
  .artifact-recommendations { display: block; }
  .artifact-recommendation-card { display: block; min-height: 0; margin-bottom: 5px; padding: 0; color: #111; background: transparent; break-inside: avoid; }
  .artifact-recommendation-card img, .artifact-recommendation-card__shade { display: none; }
  .artifact-recommendation-card__body { padding: 0; }
  .artifact-recommendation-card__title { font-family: "Open Sans", Arial, sans-serif; font-size: 10.5px; font-style: normal; font-weight: 400; text-shadow: none; }
  .artifact-recommendation-card__title::before { content: "• "; }
  .artifact-recommendation-card__type { display: inline; margin-left: 4px; color: #333; font-size: 9px; }
  .artifact-recommendation-card__type::before { content: "["; }
  .artifact-recommendation-card__type::after { content: "]"; }
  .artifact-recommendation-card[href^="http"]::after { content: " " attr(href); display: block; margin-left: 10px; font-size: 8.5px; color: #444; word-break: break-all; }
}
