/**
 * Friseur-News CI
 * Version 1.0.11
 * Based on the project's binding CI profile.
 */

body.fn-ci-active {
  --fn-ci-copper: #a65f3c;
  --fn-ci-copper-dark: #6f3d29;
  --fn-ci-copper-light: #d8a083;
  --fn-ci-text: #222222;
  --fn-ci-text-muted: #666666;
  --fn-ci-border: #e4e1de;
  --fn-ci-surface: #f7f5f2;
  --fn-ci-white: #ffffff;
  --fn-ci-content: 760px;
  --fn-ci-container: 1280px;
  --fn-ci-gutter: clamp(16px, 3vw, 32px);
  --fn-ci-radius: 6px;
  background: var(--fn-ci-white);
  color: var(--fn-ci-text);
  font-family: Inter, Arial, sans-serif;
  font-size: 18px;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}

/**
 * Homepage: "Gewusst wo".
 * Category areas run vertically; posts inside each area run horizontally.
 */
body.home.fn-ci-active .fn-known-horizontal-posts {
  display: grid !important;
  gap: 22px !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column {
  flex-basis: auto !important;
  margin: 0 !important;
  min-width: 0;
  width: 100% !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(1) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query > .wp-block-post-template,
body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(3) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query > .wp-block-post-template {
  align-items: stretch;
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts .wp-block-post-template .wp-block-post-template {
  display: block !important;
  grid-template-columns: none !important;
  height: 100%;
  width: 100% !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) > .wp-block-group {
  display: block !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) > .fn-gw-column > .wp-block-group__inner-container {
  align-items: stretch;
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) > .fn-gw-column > .wp-block-group__inner-container > h3 {
  grid-column: 1 / -1;
  margin-bottom: 0 !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts .wp-block-post-template > li,
body.home.fn-ci-active .fn-known-horizontal-posts .wp-block-post-template > li > .wp-block-group {
  height: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: none !important;
  min-height: 0 !important;
  width: 100% !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts .fn-gw-card {
  max-width: none !important;
  width: 100% !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query {
  margin: 0 !important;
  max-width: none !important;
  min-width: 0;
  width: 100% !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) .wp-block-post-template {
  display: block !important;
  width: 100% !important;
}

body.home.fn-ci-active .fn-known-horizontal-posts .wp-block-post-featured-image img {
  aspect-ratio: 16 / 8;
  object-fit: cover;
  width: 100%;
}

@media (max-width: 900px) {
  body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(1) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query > .wp-block-post-template,
  body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(3) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query > .wp-block-post-template,
  body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) > .fn-gw-column > .wp-block-group__inner-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(1) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query > .wp-block-post-template,
  body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(3) > .fn-gw-column > .wp-block-group__inner-container > .wp-block-query > .wp-block-post-template,
  body.home.fn-ci-active .fn-known-horizontal-posts > .wp-block-column:nth-child(2) > .fn-gw-column > .wp-block-group__inner-container {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

body.fn-ci-active *,
body.fn-ci-active *::before,
body.fn-ci-active *::after {
  box-sizing: border-box;
}

body.fn-ci-active :where(.site, .wp-site-blocks) {
  min-width: 0;
}

body.fn-ci-active :where(main, .site-main) {
  min-width: 0;
}

body.fn-ci-active.single-post :where(.site-main, main) > article,
body.fn-ci-active.page :where(.site-main, main) > article {
  margin-inline: auto;
  max-width: var(--fn-ci-container);
  padding-inline: var(--fn-ci-gutter);
}

body.fn-ci-active.single-post :where(.entry-header, .post-header) {
  margin: 0 auto 32px;
  max-width: var(--fn-ci-content);
}

body.fn-ci-active.single-post :where(.entry-content, .post-content, .wp-block-post-content) > :where(:not(.alignwide):not(.alignfull)),
body.fn-ci-active.page :where(.entry-content, .post-content, .wp-block-post-content) > :where(p, h2, h3, h4, h5, h6, ul, ol, blockquote, table, figure:not(.alignwide):not(.alignfull)) {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--fn-ci-content);
}

body.fn-ci-active :where(.entry-content, .post-content, .wp-block-post-content) p {
  color: var(--fn-ci-text);
  font-family: Inter, Arial, sans-serif;
  font-size: clamp(17px, 1.6vw, 18px);
  line-height: 1.65;
  margin-block: 0 24px;
}

body.fn-ci-active :where(h1, h2, h3, h4, h5, h6, .entry-title, .wp-block-post-title) {
  color: var(--fn-ci-copper-dark);
  font-family: Inter, Arial, sans-serif;
  font-weight: 700;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

body.fn-ci-active :where(h1, .entry-title) {
  font-size: clamp(34px, 5vw, 48px);
  line-height: 1.12;
  margin-block: 0 16px;
}

body.fn-ci-active h2 {
  font-size: clamp(28px, 4vw, 34px);
  line-height: 1.2;
  margin-block: 48px 20px;
}

body.fn-ci-active h3 {
  font-size: clamp(22px, 3vw, 25px);
  line-height: 1.25;
  margin-block: 40px 16px;
}

body.fn-ci-active h4 {
  font-size: clamp(19px, 2.2vw, 20px);
  line-height: 1.3;
  margin-block: 32px 12px;
}

body.fn-ci-active :where(.entry-meta, .post-meta, .wp-block-post-date, .wp-block-post-author) {
  color: var(--fn-ci-text-muted);
  display: flex !important;
  flex-wrap: wrap;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  gap: 8px 16px;
  line-height: 1.4;
}

body.fn-ci-active a {
  color: var(--fn-ci-copper-dark);
  text-decoration-color: var(--fn-ci-copper);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.15em;
}

body.fn-ci-active :where(.entry-content, .post-content, .wp-block-post-content) a {
  text-decoration-line: underline;
}

body.fn-ci-active a:hover {
  color: var(--fn-ci-copper);
}

body.fn-ci-active :where(a, button, input, select, textarea, summary):focus-visible {
  border-radius: 2px;
  outline: 3px solid var(--fn-ci-copper-dark);
  outline-offset: 3px;
}

body.fn-ci-active :where(img, video, iframe) {
  height: auto;
  max-width: 100%;
}

body.fn-ci-active.single-post :where(.post-thumbnail, .wp-block-post-featured-image, .entry-content figure) img {
  border-radius: var(--fn-ci-radius);
}

body.fn-ci-active :where(figcaption, .wp-caption-text) {
  color: var(--fn-ci-text-muted);
  font-size: 14px;
  line-height: 1.4;
  margin-top: 8px;
}

body.fn-ci-active :where(blockquote, .wp-block-quote) {
  border-left: 4px solid var(--fn-ci-copper);
  color: var(--fn-ci-text);
  margin-block: 32px;
  padding: 16px 24px;
}

body.fn-ci-active :where(ul, ol) {
  padding-left: 1.4em;
}

body.fn-ci-active :where(li + li) {
  margin-top: 8px;
}

body.fn-ci-active :where(.wp-block-button__link, button, input[type="button"], input[type="submit"]) {
  align-items: center;
  background: var(--fn-ci-copper-dark);
  border: 2px solid var(--fn-ci-copper-dark);
  border-radius: var(--fn-ci-radius);
  color: var(--fn-ci-white);
  display: inline-flex;
  font-family: Inter, Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  justify-content: center;
  line-height: 1.25;
  min-height: 44px;
  padding: 10px 20px;
  text-decoration: none;
}

body.fn-ci-active :where(.wp-block-button__link, button, input[type="button"], input[type="submit"]):hover {
  background: var(--fn-ci-copper);
  border-color: var(--fn-ci-copper);
  color: var(--fn-ci-white);
}

body.fn-ci-active :where(input:not([type="button"]):not([type="submit"]), select, textarea) {
  background: var(--fn-ci-white);
  border: 1px solid var(--fn-ci-border);
  border-radius: var(--fn-ci-radius);
  color: var(--fn-ci-text);
  font: inherit;
  min-height: 44px;
  padding: 10px 12px;
}

body.fn-ci-active :where(table) {
  border-collapse: collapse;
  display: block;
  max-width: 100%;
  overflow-x: auto;
  width: max-content;
}

body.fn-ci-active :where(th, td) {
  border: 1px solid var(--fn-ci-border);
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
}

body.fn-ci-active th {
  background: var(--fn-ci-surface);
}

body.fn-ci-active :where(.navigation, .post-navigation, .posts-navigation, .pagination) {
  border-top: 1px solid var(--fn-ci-border);
  margin-top: 48px;
  padding-top: 24px;
}

body.fn-ci-active :where(.wp-block-post-template) {
  gap: 24px;
}

body.fn-ci-active :where(.wp-block-post-template > li, article.post) {
  min-width: 0;
}

body.fn-ci-active :where(.wp-block-post-featured-image img) {
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/**
 * Einheitliches CI-Layout fuer klassische Kategoriearchive.
 *
 * Die Grid-Zeile bestimmt die Hoehe der groessten Karte. Jede Karte fuellt
 * diese Hoehe aus und der Weiterlesen-Link bleibt am unteren Kartenrand.
 */
body.fn-ci-active.archive.category .post-archive > .entry-list-item {
  align-items: stretch;
}

body.fn-ci-active.archive.category article.loop-entry {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}

body.fn-ci-active.archive.category article.loop-entry .entry-content-wrap {
  display: flex;
  flex: 1;
  flex-direction: column;
}

body.fn-ci-active.archive.category article.loop-entry .entry-summary {
  flex: 1;
}

body.fn-ci-active.archive.category article.loop-entry .entry-footer {
  margin-top: auto;
}

body.fn-ci-active.archive.category article.loop-entry .post-more-link {
  align-items: center;
  background: var(--fn-ci-copper-dark);
  border: 2px solid var(--fn-ci-copper-dark);
  border-radius: var(--fn-ci-radius);
  color: var(--fn-ci-white);
  display: inline-flex;
  font-family: Inter, Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  justify-content: center;
  line-height: 1.25;
  min-height: 44px;
  padding: 9px 18px;
  text-decoration: none;
}

body.fn-ci-active.archive.category article.loop-entry .post-more-link:hover {
  background: var(--fn-ci-copper);
  border-color: var(--fn-ci-copper);
  color: var(--fn-ci-white);
}

@media (max-width: 767px) {
  body.fn-ci-active {
    font-size: 17px;
  }

  body.fn-ci-active.single-post :where(.site-main, main) > article,
  body.fn-ci-active.page :where(.site-main, main) > article {
    padding-inline: 16px;
  }

  body.fn-ci-active :where(.wp-block-columns) {
    flex-direction: column;
  }

  body.fn-ci-active :where(.wp-block-column) {
    flex-basis: 100% !important;
    width: 100%;
  }

  body.fn-ci-active :where(.main-navigation a, .wp-block-navigation-item__content) {
    align-items: center;
    display: flex;
    min-height: 44px;
  }
}

/**
 * Aus- und Weiterbildung landing page (category 118).
 */
body.fn-ci-active.category-aus-und-weiterbildung {
  background: #f7f5f2;
}

body.fn-ci-active.category-aus-und-weiterbildung .content-container {
  max-width: none;
  padding: 0;
}

body.fn-ci-active.category-aus-und-weiterbildung .fn-edu-hub {
  background: #f7f5f2;
  padding: clamp(28px, 5vw, 64px) var(--fn-ci-gutter) clamp(48px, 7vw, 88px);
}

.fn-edu-shell {
  margin: 0 auto;
  max-width: 1280px;
}

.fn-edu-hero,
.fn-edu-section {
  border: 1px solid #e2d8cf;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(30, 37, 35, 0.06);
}

.fn-edu-hero {
  background: #ffffff;
  border-top: 3px solid #b64a3a;
  margin-bottom: 24px;
  padding: clamp(26px, 4vw, 48px);
}

body.fn-ci-active .fn-edu-hero h1 {
  color: #6f3d29;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 1.06;
  margin: 4px 0 12px;
}

.fn-edu-hero > p:last-child {
  color: #4a514f;
  margin: 0;
  max-width: 820px;
}

.fn-edu-eyebrow {
  color: #b64a3a;
  font-size: 12px !important;
  font-weight: 800;
  letter-spacing: 0.09em;
  line-height: 1.3 !important;
  margin: 0 !important;
  text-transform: uppercase;
}

.fn-edu-section {
  background: #ffffff;
  margin-top: 0;
  padding: clamp(22px, 3.5vw, 40px);
}

.fn-edu-categories {
  align-items: stretch;
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fn-edu-categories > .fn-edu-section {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.fn-edu-categories .fn-edu-section__head {
  min-height: 142px;
}

.fn-edu-categories .fn-edu-grid {
  flex: 1;
  grid-template-columns: 1fr;
}

.fn-edu-section--training {
  background: #fff8f3;
  border-top: 2px solid #8a2f20;
}

.fn-edu-section--offers {
  background: #ffffff;
  border-top: 2px solid #b64a3a;
}

.fn-edu-section--knowledge {
  background: #eaf1ee;
  border-color: #bfd2c8;
  border-top: 2px solid #315c50;
}

.fn-edu-section--startup {
  background: #1e2523;
  border-color: #4e5d58;
  border-top: 2px solid #b64a3a;
}

.fn-edu-section__head {
  margin-bottom: 20px;
}

body.fn-ci-active .fn-edu-section__head h2 {
  color: #6f3d29;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(27px, 3.5vw, 38px);
  line-height: 1.12;
  margin: 5px 0 8px;
}

.fn-edu-section--knowledge .fn-edu-section__head h2 {
  color: #315c50;
}

.fn-edu-section--startup .fn-edu-section__head h2,
.fn-edu-section--startup .fn-edu-section__head > p:last-child {
  color: #ffffff;
}

.fn-edu-section__head > p:last-child {
  color: #4a514f;
  margin: 0;
}

.fn-edu-grid {
  align-items: stretch;
  display: grid !important;
  gap: 16px;
  grid-auto-flow: row;
  width: 100%;
}

.fn-edu-grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fn-edu-grid--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.fn-edu-grid--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fn-edu-card {
  background: #fffdfb;
  border: 1px solid #dfd4ca;
  border-radius: 10px;
  box-shadow: 0 5px 16px rgba(30, 37, 35, 0.055);
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  width: 100%;
}

.fn-edu-grid > .fn-edu-card {
  height: 100%;
  margin: 0;
  max-width: none;
}

.fn-edu-section--knowledge .fn-edu-card {
  border-color: #bfd2c8;
}

.fn-edu-card__image {
  margin: 0;
}

.fn-edu-card__image a {
  display: block;
}

.fn-edu-card__image img {
  aspect-ratio: 16 / 8;
  display: block;
  object-fit: cover;
  width: 100%;
}

.fn-edu-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  padding: 16px 18px 18px;
}

body.fn-ci-active .fn-edu-card__title {
  color: #3e302a;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.18;
  margin: 0;
}

body.fn-ci-active .fn-edu-card__title a {
  color: inherit;
  text-decoration: none;
}

body.fn-ci-active .fn-edu-card__title a:hover {
  color: #b64a3a;
}

.fn-edu-card__excerpt {
  color: #4a514f;
  font-size: 15px !important;
  line-height: 1.45 !important;
  margin: 0 !important;
}

.fn-edu-button {
  align-items: center;
  align-self: flex-start;
  background: #8a2f20;
  border: 1px solid #8a2f20;
  border-radius: 6px;
  color: #ffffff !important;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  justify-content: center;
  letter-spacing: 0.03em;
  line-height: 1.2;
  min-height: 38px;
  padding: 8px 12px;
  text-decoration: none !important;
  text-transform: uppercase;
}

.fn-edu-button:hover {
  background: #b64a3a;
  border-color: #b64a3a;
  color: #ffffff !important;
}

.fn-edu-button--green {
  background: #315c50;
  border-color: #315c50;
}

.fn-edu-card__button {
  margin-top: auto;
}

.fn-edu-section__action {
  margin-top: 18px;
}

.fn-edu-card--empty {
  min-height: 230px;
}

@media (max-width: 1024px) {
  .fn-edu-categories {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fn-edu-grid--four {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .fn-edu-categories {
    grid-template-columns: 1fr;
  }

  .fn-edu-categories .fn-edu-section__head {
    min-height: 0;
  }

  .fn-edu-grid--two,
  .fn-edu-grid--three,
  .fn-edu-grid--four {
    grid-template-columns: 1fr;
  }

  .fn-edu-hero,
  .fn-edu-section {
    border-radius: 10px;
  }

  .fn-edu-card__image img {
    aspect-ratio: 16 / 9;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.fn-ci-active *,
  body.fn-ci-active *::before,
  body.fn-ci-active *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/**
 * Wissen & Themen category archives
 *
 * Archive cards deliberately use a shared CI symbol instead of individual
 * featured images. Featured images remain available on the actual posts.
 */
body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry {
  background: #fffdfb;
  border: 1px solid #bfd2c8;
  border-radius: 12px;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  min-height: 390px;
  overflow: hidden;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry > .post-thumbnail {
  display: none !important;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry::before {
  align-items: center;
  align-self: flex-start;
  background: #eef3ef;
  border: 1px solid #bfd2c8;
  border-radius: 999px;
  color: #2f665b;
  content: "✦";
  display: flex;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 32px;
  height: 64px;
  justify-content: center;
  line-height: 1;
  margin: 28px 28px 0;
  width: 64px;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry .entry-content-wrap {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 24px 28px 28px;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry .entry-taxonomies {
  color: var(--fn-ci-copper);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry .entry-title {
  font-size: clamp(24px, 2.4vw, 31px);
  line-height: 1.18;
  margin: 14px 0 16px;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry .entry-summary {
  flex: 1;
}

body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry .entry-footer {
  margin-top: auto;
}

@media (max-width: 767px) {
  body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry {
    min-height: 0;
  }

  body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry::before {
    height: 56px;
    margin: 24px 24px 0;
    width: 56px;
  }

  body.fn-ci-active.archive.category[class*="wissen"] article.loop-entry .entry-content-wrap {
    padding: 20px 24px 24px;
  }
}
