/* 
Theme Name:		 SSV Trier Theme
Theme URI:		 https:/ssv-trier.de/
Description:	 	 SSV Trier Theme
Author:			 SSV Trier
Author URI:		 https:/ssv-trier.de.de/
Template:		 generatepress
Version:		 1.0.0
Text Domain:	 ssv-trier
*/

/* =========================
   Latest Posts – fix width + spacing
   ========================= */

:root {
  --news-card: #ffffff;
  --news-text: #1f2937;
  --news-muted: #6b7280;
  --news-primary: #01509b;
  --news-accent: #ffbe00;
  --news-border: rgba(1, 80, 155, 0.14);
  --news-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  --news-shadow-hover: 0 18px 42px rgba(15, 23, 42, 0.12);
  --news-radius: 14px;
}

.margin-left-1 {
  margin-left: 1.1em;
}

/* =========================
   Headings – cleaner hierarchy
   ========================= */

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {
  color: #0f172a;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin-bottom: 0.75em;
}

.entry-content h1 {
  color: var(--nav-blue);
  font-size: clamp(1.55rem, 2.5vw, 2.15rem);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 1em;
  position: relative;
  padding-bottom: 0.5em;
}

h1.page-title,
h1.entry-title {
  color: var(--nav-blue);
  text-transform: uppercase;
  font-weight: 700;
}

.entry-content h1::after {
  content: "";
  display: block;
  width: 56px;
  height: 3px;
  margin-top: 0.45em;
  background: var(--nav-yellow);
  border-radius: 999px;
}

.entry-content h2 {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: clamp(1.55rem, 2.8vw, 2.2rem);
  margin-top: 1.3em;
  margin-bottom: 1em;
}

.entry-content h2::before {
  content: "";
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  border-radius: 3px;
  background: linear-gradient(135deg, var(--nav-yellow), #ffd65a);
}

.entry-content h3 {
  font-size: clamp(1.2rem, 2.2vw, 1.55rem);
}

/* Hero H1 on homepage */
.home .gb-text-7b696b5b,
.home .gb-text.gb-text-7b696b5b,
.home .gb-element-76f1186d h1,
.home .gb-element-8a0f028e h1 {
  margin: 0;
  padding: 0 40px 40px 40px;
  color: var(--nav-blue);
  font-size: clamp(1.8rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 0.96;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
  text-wrap: balance;
  text-shadow: 0 10px 26px rgba(1, 32, 66, 0.22);
}

body:not(.home) .gb-text-7b696b5b,
body:not(.home) .gb-text.gb-text-7b696b5b,
body:not(.home) .gb-element-76f1186d h1,
body:not(.home) .gb-element-8a0f028e h1 {
  margin: 0;
  padding: 0 40px 40px 40px;
  color: var(--nav-blue);
  font-size: clamp(1.8rem, 3vw, 2rem);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
  text-wrap: balance;
  text-shadow: 0 8px 20px rgba(1, 32, 66, 0.18);
}

.gb-shape-222cb263 svg {
  margin-bottom: -1px;
}

.gb-shape-dd00bf78 {
  top: -1px !important;
}

/* WICHTIG: Block wieder auf volle Breite bringen */
ul.wp-block-latest-posts,
ul.wp-block-latest-posts__list {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Grid enger und sauber */
ul.wp-block-latest-posts__list.is-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(260px, 1fr));
  gap: 24px;
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: stretch;
}

/* Karten */
ul.wp-block-latest-posts__list.is-grid > li {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 0;
  background: var(--news-card);
  border: 1px solid var(--news-border);
  border-radius: var(--news-radius);
  overflow: hidden;
  box-shadow: var(--news-shadow);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

/* dezenter oberer Akzent */
ul.wp-block-latest-posts__list.is-grid > li::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--news-primary), var(--news-accent));
}

ul.wp-block-latest-posts__list.is-grid > li:hover {
  transform: translateY(-3px);
  box-shadow: var(--news-shadow-hover);
  border-color: rgba(1, 80, 155, 0.28);
}

/* Bild */
.wp-block-latest-posts__featured-image {
  margin: 0;
  line-height: 0;
  background: #eef4f9;
}

.wp-block-latest-posts__featured-image img {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
}

/* Innenabstände */
.wp-block-latest-posts__post-title,
.wp-block-latest-posts__post-date,
.wp-block-latest-posts__post-excerpt {
  margin-left: 18px;
  margin-right: 18px;
}

/* Titel: wichtig gegen komischen Umbruch */
a.wp-block-latest-posts__post-title {
  display: block;
  margin-top: 16px;
  margin-bottom: 12px;
  color: var(--news-text);
  text-decoration: none;
  font-size: 1.22rem;
  line-height: 1.28;
  font-weight: 700;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: auto;
}

a.wp-block-latest-posts__post-title:hover {
  color: var(--news-primary);
}

/* Datum */
.wp-block-latest-posts__post-date {
  display: block;
  margin-bottom: 12px;
  color: var(--news-primary);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

/* Text */
.wp-block-latest-posts__post-excerpt {
  display: block;
  color: var(--news-muted);
  font-size: 0.98rem;
  line-height: 1.72;
  margin-bottom: 20px;
  flex-grow: 1;
}

/* Weiterlesen */
.wp-block-latest-posts__post-excerpt .read-more {
  display: block;
  clear: both;
  margin-top: 14px;
  color: var(--news-primary);
  font-weight: 700;
  text-decoration: none;
  position: relative;
  padding-right: 18px;
}

.wp-block-latest-posts__post-excerpt .read-more::after {
  content: "\2192";
  position: absolute;
  right: 0;
  top: 0;
  transition: transform 0.2s ease;
}

.wp-block-latest-posts__post-excerpt .read-more:hover {
  text-decoration: none;
}

.wp-block-latest-posts__post-excerpt .read-more:hover::after {
  transform: translateX(3px);
}

/* Tablet */
@media (max-width: 1024px) {
  ul.wp-block-latest-posts__list.is-grid {
    grid-template-columns: repeat(2, minmax(240px, 1fr));
    gap: 20px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  ul.wp-block-latest-posts__list.is-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .wp-block-latest-posts__featured-image img {
    height: 200px;
  }

  a.wp-block-latest-posts__post-title {
    font-size: 1.1rem;
  }

  .home .gb-element-76f1186d,
  .home .gb-element-8a0f028e {
    padding-left: 18px;
    padding-right: 18px;
  }

  .home .gb-text-7b696b5b,
  .home .gb-text.gb-text-7b696b5b,
  .home .gb-element-76f1186d h1,
  .home .gb-element-8a0f028e h1 {
    font-size: clamp(1.9rem, 8vw, 2.6rem);
    line-height: 1;
    letter-spacing: -0.02em;
  }

  body:not(.home) .gb-text-7b696b5b,
  body:not(.home) .gb-text.gb-text-7b696b5b,
  body:not(.home) .gb-element-76f1186d h1,
  body:not(.home) .gb-element-8a0f028e h1 {
    font-size: clamp(1.2rem, 5vw, 1.6rem);
    letter-spacing: 0.06em;
    line-height: 1.08;
  }
}

/* =========================
   Departments – aligned with news cards
   ========================= */

.ssv-abteilungen-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.ssv-abteilungen-grid > *,
.ssv-abteilungen-grid .gb-grid-column {
  min-width: 0;
}

.ssv-department-card {
  position: relative;
  overflow: hidden;
  background: var(--news-card);
  border: 1px solid var(--news-border);
  border-radius: var(--news-radius);
  box-shadow: var(--news-shadow);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.ssv-department-card::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--news-primary), var(--news-accent));
}

.ssv-department-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--news-shadow-hover);
  border-color: rgba(1, 80, 155, 0.28);
}

.ssv-department-card img {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.ssv-department-card .wp-block-image,
.ssv-department-card .wp-block-image a,
.ssv-department-card figure {
  display: block;
  width: 100%;
  margin: 0;
  line-height: 0;
}

.ssv-department-card .gb-headline {
  margin-bottom: 0;
}

.ssv-department-card > .wp-block-group,
.ssv-department-card > .gb-container,
.ssv-department-card > .wp-block-heading,
.ssv-department-card > p {
  margin-left: 18px;
  margin-right: 18px;
}

.ssv-department-card > .wp-block-group {
  padding-top: 16px;
  padding-bottom: 20px;
}

.ssv-department-card h3 {
  margin-top: 16px;
  margin-bottom: 12px;
  font-size: 1.22rem;
  line-height: 1.28;
  font-weight: 700;
  letter-spacing: 0;
}

.ssv-department-card h3 a {
  color: var(--news-text);
  text-decoration: none;
}

.ssv-department-card h3 a:hover {
  color: var(--news-primary);
}

.ssv-department-card > p,
.ssv-department-card > div,
.ssv-department-card > .wp-block-group,
.ssv-department-card > .gb-container {
  color: var(--news-muted);
  font-size: 0.98rem;
  line-height: 1.72;
}

.ssv-department-card > p,
.ssv-department-card > div {
  margin-bottom: 15px;
}

.ssv-department-card > div p,
.ssv-department-card > .wp-block-group p,
.ssv-department-card > .gb-container p {
  margin-bottom: 0;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}

.ssv-department-card a {
  text-decoration: none;
}

.ssv-department-card > p:last-child a,
.ssv-department-card > div:last-child a,
.ssv-department-card > .wp-block-group:last-child a,
.ssv-department-card > .gb-container:last-child a {
  display: block;
  width: fit-content;
  margin-top: 14px;
  color: var(--news-primary);
  font-weight: 700;
  text-decoration: none;
  position: relative;
  padding-right: 18px;
}

.ssv-department-card > p:last-child a::after,
.ssv-department-card > div:last-child a::after,
.ssv-department-card > .wp-block-group:last-child a::after,
.ssv-department-card > .gb-container:last-child a::after {
  content: "\2192";
  position: absolute;
  right: 0;
  top: 0;
  transition: transform 0.2s ease;
}

.ssv-department-card > p:last-child a:hover,
.ssv-department-card > div:last-child a:hover,
.ssv-department-card > .wp-block-group:last-child a:hover,
.ssv-department-card > .gb-container:last-child a:hover {
  text-decoration: underline;
}

.ssv-department-card > p:last-child a:hover::after,
.ssv-department-card > div:last-child a:hover::after,
.ssv-department-card > .wp-block-group:last-child a:hover::after,
.ssv-department-card > .gb-container:last-child a:hover::after {
  transform: translateX(2px);
}

.home .entry-content > h2.wp-block-heading + .wp-block-columns {
  gap: 24px;
  align-items: stretch;
}

.home .entry-content > h2.wp-block-heading + .wp-block-columns .wp-block-column {
  position: relative;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid var(--news-border);
  border-radius: var(--news-radius);
  box-shadow: var(--news-shadow);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.home .entry-content > h2.wp-block-heading + .wp-block-columns .wp-block-column::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--news-primary), var(--news-accent));
}

.home .entry-content > h2.wp-block-heading + .wp-block-columns .wp-block-column:hover {
  transform: translateY(-3px);
  box-shadow: var(--news-shadow-hover);
  border-color: rgba(1, 80, 155, 0.28);
}

.home ul.wp-block-latest-posts__list.is-grid > li,
.home .ssv-news-cards > li {
  position: relative;
}

.home .ssv-news-cards > li {
  background: var(--news-card);
  border: 1px solid var(--news-border);
  border-radius: var(--news-radius);
  box-shadow: var(--news-shadow);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.home .ssv-news-cards > li::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--news-primary), var(--news-accent));
}

.home .ssv-news-cards > li:hover {
  transform: translateY(-3px);
  box-shadow: var(--news-shadow-hover);
  border-color: rgba(1, 80, 155, 0.28);
}

.home .ssv-news-cards .wp-block-latest-posts__featured-image img,
.home .wp-block-latest-posts__featured-image img {
  height: 260px;
}

.home .ssv-news-cards .wp-block-latest-posts__post-title,
.home .ssv-news-cards .wp-block-latest-posts__post-date,
.home .ssv-news-cards .wp-block-latest-posts__post-excerpt {
  margin-left: 18px;
  margin-right: 18px;
}

.home .ssv-news-cards a.wp-block-latest-posts__post-title {
  margin-top: 16px;
  margin-bottom: 12px;
  color: var(--news-text);
  font-size: 1.22rem;
  line-height: 1.28;
  font-weight: 700;
}

.home .ssv-news-cards .wp-block-latest-posts__post-excerpt {
  margin-bottom: 20px;
  color: var(--news-muted);
  font-size: 0.98rem;
  line-height: 1.72;
}

.home ul.ssv-news-cards.wp-block-latest-posts__list.is-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.home ul.ssv-news-cards.wp-block-latest-posts__list.is-grid > li {
  width: 100%;
  margin: 0;
}

.ssv-news-cards .wp-block-latest-posts__featured-image a {
  display: block;
  width: 100%;
}

.ssv-event-cards > li {
  padding: 0;
}

.ssv-event-cards .wp-block-latest-posts__post-title {
  margin: 18px 18px 10px;
}

.ssv-event-cards .wp-block-latest-posts__post-date {
  margin: 0 18px 20px;
}

.ssv-event-card-location {
  margin: -10px 18px 20px;
  color: var(--news-muted);
  font-size: 0.95rem;
  line-height: 1.5;
}

.ssv-event-cards .wp-block-latest-posts__post-title {
  color: var(--news-text);
  font-size: 1.22rem;
  line-height: 1.28;
  font-weight: 700;
}

.ssv-event-card-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 18px 0;
}

.ssv-event-card-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(1, 80, 155, 0.08);
  color: var(--news-primary);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.ssv-event-cards .read-more {
  display: inline-block;
  margin: 0 18px 20px;
  color: var(--news-primary);
  font-weight: 700;
  text-decoration: none;
  position: relative;
  padding-right: 18px;
}

.ssv-event-cards .read-more::after {
  content: "\2192";
  position: absolute;
  right: 0;
  top: 0;
  transition: transform 0.2s ease;
}

.ssv-event-cards .read-more:hover {
  text-decoration: none;
}

.ssv-event-cards .read-more:hover::after {
  transform: translateX(3px);
}

.home .entry-content > h2.wp-block-heading + .wp-block-columns img {
  display: block;
  width: 100%;
  height: 260px;
  object-fit: cover;
  margin: 0;
}

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

  .home .entry-content > h2.wp-block-heading + .wp-block-columns img {
    height: 220px;
  }

  .home .ssv-news-cards .wp-block-latest-posts__featured-image img,
  .home .wp-block-latest-posts__featured-image img {
    height: 220px;
  }

  .home ul.ssv-news-cards.wp-block-latest-posts__list.is-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .ssv-department-card img {
    height: 220px;
  }
}

@media (max-width: 767px) {
  .ssv-abteilungen-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .home .entry-content > h2.wp-block-heading + .wp-block-columns {
    gap: 18px;
  }

  .home .entry-content > h2.wp-block-heading + .wp-block-columns img {
    height: 210px;
  }

  .home .ssv-news-cards .wp-block-latest-posts__featured-image img,
  .home .wp-block-latest-posts__featured-image img {
    height: 210px;
  }

  .home ul.ssv-news-cards.wp-block-latest-posts__list.is-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .ssv-department-card img {
    height: 210px;
  }

  .ssv-department-card .wp-block-image,
  .ssv-department-card .wp-block-image a,
  .ssv-department-card figure,
  .ssv-department-card img {
    width: 100% !important;
    max-width: none !important;
  }

  .ssv-department-card > .wp-block-group,
  .ssv-department-card > .gb-container,
  .ssv-department-card > .wp-block-heading,
  .ssv-department-card > p {
    margin-left: 16px;
    margin-right: 16px;
  }

  .ssv-department-card > .wp-block-group {
    padding-top: 16px;
    padding-bottom: 24px;
  }
}

/* =========================
   Sponsors – clean logo grid
   ========================= */

.ssv-supporter {
  gap: 24px;
}

.ssv-supporter .wp-block-image {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 190px;
  padding: 28px;
  background: #ffffff;
  border: 1px solid rgba(1, 80, 155, 0.12);
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.ssv-supporter .wp-block-image:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
  border-color: rgba(1, 80, 155, 0.22);
}

.ssv-supporter .wp-block-image img {
  width: 100%;
  max-width: 180px;
  max-height: 128px;
  object-fit: contain;
  height: auto;
  margin: 0 auto;
}

@media (max-width: 767px) {
  .ssv-supporter {
    gap: 18px;
  }

  .ssv-supporter .wp-block-image {
    min-height: 132px;
    padding: 16px;
  }

  .ssv-supporter .wp-block-image img {
    max-width: 165px;
    max-height: 92px;
  }
}

@media (max-width: 767px) {
  .footer-widgets .wp-block-media-text.is-stacked-on-mobile {
    grid-template-columns: 100% !important;
    gap: 16px;
  }

  .footer-widgets .wp-block-media-text__media {
    text-align: center;
  }

  .footer-widgets .wp-block-media-text__media img {
    max-width: 86px;
    height: auto;
    margin: 0 auto;
  }

  .footer-widgets .inside-footer-widgets {
    gap: 24px;
  }

  #site-navigation.toggled .main-nav ul li a,
  #site-navigation.toggled .main-nav ul li a:link,
  #site-navigation.toggled .main-nav ul li a:visited,
  .main-navigation.toggled .main-nav ul li a,
  .main-navigation.toggled .main-nav ul li a:link,
  .main-navigation.toggled .main-nav ul li a:visited {
    display: block;
    padding: 10px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #1f2937 !important;
    line-height: 1.35;
    text-decoration: none;
    transform: none;
  }

  #site-navigation.toggled .main-nav ul li a:hover,
  .main-navigation.toggled .main-nav ul li a:hover {
    background: transparent;
    border-color: transparent;
    color: var(--nav-blue) !important;
    transform: none;
  }

  #site-navigation.toggled .main-nav ul li[class*="current-menu-"] > a,
  .main-navigation.toggled .main-nav ul li[class*="current-menu-"] > a {
    background: transparent;
    border: 0;
    color: var(--nav-blue) !important;
  }

  .single-post .ssv-single-featured-image {
    width: 100%;
    max-width: none;
    float: none;
    margin: 0 0 20px;
  }

  .single-post .ssv-related-posts-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* =========================
   Footer widget links
   ========================= */

.footer-widgets .menu a,
.footer-widgets .widget a,
.footer-widgets-container .menu a,
.footer-widgets-container .widget a {
  display: inline;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: inherit !important;
  line-height: inherit;
  text-decoration: underline;
  transform: none;
}

.footer-widgets .menu a:hover,
.footer-widgets .widget a:hover,
.footer-widgets-container .menu a:hover,
.footer-widgets-container .widget a:hover {
  background: transparent;
  border-color: transparent;
  color: #ffffff !important;
  text-decoration: underline;
  transform: none;
}

/* =========================
   Single posts
   ========================= */

.single-post .entry-header {
  margin-bottom: 22px;
}

.single-post .ssv-post-categories,
.single-post .ssv-related-post-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.single-post .ssv-post-categories a,
.single-post .ssv-related-post-categories a {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(1, 80, 155, 0.08);
  color: var(--nav-blue);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}

.single-post .entry-content.ssv-single-entry-content::after {
  content: "";
  display: block;
  clear: both;
}

.single-post .ssv-single-featured-image {
  width: min(34%, 320px);
  float: left;
  margin: 6px 28px 18px 0;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
}

.single-post .ssv-single-featured-image img {
  display: block;
  width: 100%;
  height: auto;
}

.single-post .ssv-related-posts {
  margin-top: 40px;
  padding-top: 28px;
  border-top: 1px solid rgba(1, 80, 155, 0.12);
}

.single-post .ssv-related-posts-title {
  margin-bottom: 20px;
}

.single-post .ssv-related-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.single-post .ssv-related-post-card {
  overflow: hidden;
  border: 1px solid var(--news-border);
  border-radius: 14px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.single-post .ssv-related-post-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
  border-color: rgba(1, 80, 155, 0.28);
}

.single-post .ssv-related-post-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.single-post .ssv-related-post-image img {
  display: block;
  width: 100%;
  height: 180px;
  object-fit: cover;
}

.single-post .ssv-related-post-body {
  padding: 18px;
}

.single-post .ssv-related-post-title {
  margin: 0;
  color: #0f172a;
  font-size: 1.05rem;
  line-height: 1.3;
  font-weight: 700;
}

/* =========================
   Archive / blog
   ========================= */

.ssv-archive-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  margin-bottom: 28px;
}

.ssv-archive-grid > * {
  min-width: 0;
}

.ssv-archive-card .inside-article {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--news-border);
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.ssv-archive-card .inside-article:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12);
  border-color: rgba(1, 80, 155, 0.28);
}

.ssv-archive-card .inside-article::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, var(--news-primary), var(--news-accent));
}

.ssv-archive-card .entry-header,
.ssv-archive-card .entry-summary {
  padding-left: 24px;
  padding-right: 24px;
}

.ssv-archive-card .entry-header {
  padding-top: 16px;
}

.ssv-archive-card .post-image {
  margin: 0;
  line-height: 0;
  background: #eef4f9;
}

.ssv-archive-card .post-image a {
  display: block;
  width: 100%;
}

.ssv-archive-card .post-image img {
  display: block;
  width: 100%;
  height: 260px;
  object-fit: cover;
}

.ssv-archive-card .entry-title {
  margin: 0;
}

.ssv-archive-card .entry-title a {
  color: #0f172a;
  font-size: clamp(1.25rem, 2vw, 1.55rem);
  line-height: 1.24;
  font-weight: 700;
  text-decoration: none;
}

.ssv-archive-card .entry-title a:hover {
  color: var(--nav-blue);
}

.ssv-archive-card .entry-meta {
  color: #5b6778;
  font-size: 0.88rem;
}

.ssv-archive-card .entry-summary {
  padding-top: 18px;
  padding-bottom: 24px;
}

.ssv-archive-card .entry-summary p {
  margin-bottom: 0;
  color: #475569;
  line-height: 1.72;
}

.ssv-archive-card .entry-summary .read-more {
  display: block;
  margin-top: 14px;
  color: var(--nav-blue);
  font-weight: 700;
  text-decoration: none;
  position: relative;
  width: fit-content;
  padding-right: 18px;
}

.ssv-archive-card .entry-summary .read-more::after {
  content: "\2192";
  position: absolute;
  right: 0;
  top: 0;
  transition: transform 0.2s ease;
}

.ssv-archive-card .entry-summary .read-more:hover {
  text-decoration: none;
}

.ssv-archive-card .entry-summary .read-more:hover::after {
  transform: translateX(3px);
}

.ssv-archive-card-categories {
  margin: 18px 24px 0;
}

.ssv-archive-card-categories a {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(1, 80, 155, 0.08);
  color: var(--nav-blue);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}

.blog .paging-navigation,
.archive .paging-navigation {
  margin-top: 12px;
}

.blog .paging-navigation .nav-links,
.archive .paging-navigation .nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.blog .paging-navigation a,
.blog .paging-navigation span,
.archive .paging-navigation a,
.archive .paging-navigation span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  padding: 8px 14px;
  border: 1px solid rgba(1, 80, 155, 0.16);
  border-radius: 10px;
  background: #ffffff;
  color: #0f172a;
  text-decoration: none;
}

.blog .paging-navigation .current,
.archive .paging-navigation .current {
  border-color: var(--nav-yellow);
  background: var(--nav-blue);
  color: #ffffff;
}

@media (max-width: 1024px) {
  .ssv-archive-grid {
    gap: 20px;
  }
}

@media (max-width: 767px) {
  .ssv-archive-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .ssv-archive-card .entry-header,
  .ssv-archive-card .entry-summary {
    padding-left: 18px;
    padding-right: 18px;
  }

  .ssv-archive-card .post-image img {
    height: 220px;
  }

  .ssv-archive-card-categories {
    margin-left: 18px;
    margin-right: 18px;
  }
}

.ssv-blogpost-widget {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ssv-blogpost-widget li {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(1, 80, 155, 0.12);
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
}

.ssv-blogpost-widget li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.ssv-blogpost-widget li:hover {
  border-color: rgba(1, 80, 155, 0.22);
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.08);
}

.ssv-blogpost-widget .wp-block-latest-posts__featured-image {
  margin: 0;
  line-height: 0;
}

.ssv-blogpost-widget .wp-block-latest-posts__featured-image img {
  width: 56px;
  height: 56px;
  max-width: none !important;
  max-height: none !important;
  border-radius: 10px;
  object-fit: cover;
}

.ssv-blogpost-widget .wp-block-latest-posts__post-title {
  margin: 0;
  color: #0f172a;
  font-size: 0.94rem;
  line-height: 1.35;
  font-weight: 600;
  text-decoration: none;
}

.ssv-blogpost-widget .wp-block-latest-posts__post-title:hover {
  color: var(--nav-blue);
  text-decoration: none;
}

.right-sidebar .widget-title {
  font-size: 1.05rem;
  line-height: 1.2;
}

.widget_nav_menu .widget-title {
  margin-bottom: 5px;
}

/* =========================
   Navigation – flat pills
   ========================= */

:root {
  --nav-blue: #01509b;
  --nav-yellow: #ffbe00;
}

/* Menü-Abstand */
.wp-block-navigation__container,
.main-navigation ul,
.menu {
  gap: 8px;
}

/* Pills – flacher */
.wp-block-navigation .wp-block-navigation-item__content,
.main-navigation a,
.menu a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  padding: 2px 12px;
  border: 2px solid var(--nav-yellow);
  border-radius: 4px;
  background: var(--nav-blue);
  color: #ffffff;               /* 👈 immer weiß */
  text-decoration: none;
  font-weight: 600;             /* etwas leichter */
  font-size: 0.95rem;
  line-height: 1;
  box-shadow: none;             /* 👈 kein Button-Look */
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}

.main-navigation .main-nav ul li a,
.main-nav ul li a {
  line-height: 30px;
}

.main-navigation .site-logo a,
.main-navigation .navigation-branding a,
.main-navigation .site-branding a,
.main-navigation .inside-navigation .site-logo a,
.main-navigation .inside-navigation .navigation-branding a,
.main-navigation .inside-navigation .site-branding a {
  display: block;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  line-height: normal;
  transform: none;
}

.main-navigation .site-logo a:hover,
.main-navigation .navigation-branding a:hover,
.main-navigation .site-branding a:hover,
.main-navigation .inside-navigation .site-logo a:hover,
.main-navigation .inside-navigation .navigation-branding a:hover,
.main-navigation .inside-navigation .site-branding a:hover {
  background: transparent;
  border-color: transparent;
  transform: none;
}

.wp-block-navigation .wp-block-navigation-item__content:link,
.wp-block-navigation .wp-block-navigation-item__content:visited,
.main-navigation a:link,
.main-navigation a:visited,
.menu a:link,
.menu a:visited,
.main-navigation .main-nav ul li a,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
  color: #ffffff !important;
}

/* Hover → Gelb, Text bleibt weiß */
.wp-block-navigation .wp-block-navigation-item__content:hover,
.main-navigation a:hover,
.menu a:hover {
  background: #023f79;
  border-color: var(--nav-yellow);
  color: #ffffff;               /* 👈 bleibt weiß */
  transform: translateY(-1px);
}

/* Aktiver Punkt */
.wp-block-navigation .current-menu-item > a,
.wp-block-navigation .current_page_item > a,
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a,
.menu .current-menu-item > a,
.menu .current_page_item > a {
  background: var(--nav-blue);
  border-color: var(--nav-yellow);
  color: #ffffff !important;
}

/* Dropdown neutral */
.wp-block-navigation .wp-block-navigation__submenu-container a,
.main-navigation ul ul a,
.menu ul a {
  display: block;
  background: #ffffff;
  border: 0;
  color: #1f2937;
  padding: 10px 14px;
  border-radius: 0;
  line-height: 1.35;
  box-shadow: none;
  text-align: left;
}

/* Dropdown Hover */
.wp-block-navigation .wp-block-navigation__submenu-container a:hover,
.main-navigation ul ul a:hover,
.menu ul a:hover {
  background: #f4f7fb;
  border-color: transparent;
  color: var(--nav-blue) !important;
  transform: none;
}

.wp-block-navigation .wp-block-navigation__submenu-container a:link,
.wp-block-navigation .wp-block-navigation__submenu-container a:visited,
.main-navigation ul ul a:link,
.main-navigation ul ul a:visited,
.menu ul a:link,
.menu ul a:visited,
.main-navigation .main-nav ul ul li a,
.main-navigation .main-nav ul ul li[class*="current-menu-"] > a {
  color: #1f2937 !important;
}

.main-navigation .main-nav ul ul li.current_page_item > a,
.main-navigation .main-nav ul ul li[class*="current-menu-"] > a,
.main-navigation ul ul li.current_page_item > a,
.main-navigation ul ul li[class*="current-menu-"] > a,
.menu ul li.current_page_item > a,
.menu ul li[class*="current-menu-"] > a,
.menu ul a:visited.current,
.wp-block-navigation .wp-block-navigation__submenu-container .current_page_item > a,
.wp-block-navigation .wp-block-navigation__submenu-container .current-menu-item > a {
  color: #ffffff !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container,
.main-navigation ul ul,
.menu ul {
  background: #ffffff;
  border: 1px solid rgba(1, 80, 155, 0.12);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
  padding: 6px 0;
}

@media (min-width: 768px) {
  .nav-float-right #site-navigation {
    margin-left: 0;
    flex: 1 1 auto;
    min-width: 0;
  }

  .main-navigation .inside-navigation,
  #site-navigation .inside-navigation {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
  }

  .main-navigation .navigation-branding,
  .main-navigation .site-branding,
  .main-navigation .site-logo,
  #site-navigation .navigation-branding,
  #site-navigation .site-branding,
  #site-navigation .site-logo {
    flex: 0 0 auto;
  }

  .main-navigation .main-nav,
  #site-navigation .main-nav {
    flex: 1 1 auto;
    min-width: 0;
    margin-left: auto;
  }

  .main-navigation .main-nav > ul,
  #site-navigation .main-nav > ul {
    display: flex;
    width: 100%;
  }

  .main-navigation .main-nav > ul > li,
  #site-navigation .main-nav > ul > li {
    flex: 1 1 0;
    min-width: 0;
  }

  .main-navigation .main-nav > ul > li > a,
  #site-navigation .main-nav > ul > li > a {
    display: flex;
    width: 100%;
    padding: 2px 10px;
    font-size: 0.92rem;
    white-space: nowrap;
  }
}

/* =========================
   Buttons – flatter
   ========================= */

button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.button,
.wp-element-button,
.wp-block-button__link,
a.button {
  min-height: 0;
  padding: 10px 18px;
  border: 1px solid transparent;
  border-radius: 10px;
  box-shadow: none;
  line-height: 1.15;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}

button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
.button:hover,
.wp-element-button:hover,
.wp-block-button__link:hover,
a.button:hover {
  transform: translateY(-1px);
}

/* =========================
   Kontaktformular
   ========================= */

.ssv-language-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.ssv-language-link__flag {
  font-size: 1.15rem;
  line-height: 1;
}

.ssv-language-link__anchor {
  color: var(--nav-blue);
  font-weight: 700;
}

.page-id-13 .wpforms-container {
  margin-top: 28px;
  margin-bottom: 12px;
}

.page-id-13 .wpforms-container .wpforms-form {
  padding: 28px;
  border: 1px solid rgba(1, 80, 155, 0.14);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
}

.page-id-13 .wpforms-container .wpforms-field {
  padding: 0;
  margin-bottom: 18px;
}

.page-id-13 .wpforms-container .wpforms-field-label {
  margin-bottom: 8px;
  color: #0f172a;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.35;
}

.page-id-13 .wpforms-container .wpforms-required-label {
  color: #b91c1c;
}

.page-id-13 .wpforms-container input[type="text"],
.page-id-13 .wpforms-container input[type="email"],
.page-id-13 .wpforms-container input[type="tel"],
.page-id-13 .wpforms-container input[type="number"],
.page-id-13 .wpforms-container textarea,
.page-id-13 .wpforms-container select {
  width: 100%;
  min-height: 52px;
  padding: 13px 16px;
  border: 1px solid rgba(1, 80, 155, 0.16);
  border-radius: 12px;
  background: #ffffff;
  color: #0f172a;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.03);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.page-id-13 .wpforms-container textarea {
  min-height: 180px;
  resize: vertical;
}

.page-id-13 .wpforms-container input[type="text"]:focus,
.page-id-13 .wpforms-container input[type="email"]:focus,
.page-id-13 .wpforms-container input[type="tel"]:focus,
.page-id-13 .wpforms-container input[type="number"]:focus,
.page-id-13 .wpforms-container textarea:focus,
.page-id-13 .wpforms-container select:focus {
  border-color: var(--nav-blue);
  box-shadow: 0 0 0 4px rgba(1, 80, 155, 0.12);
  background: #ffffff;
}

.page-id-13 .wpforms-container .wpforms-field-row {
  gap: 16px;
}

.page-id-13 .wpforms-container .wpforms-field-sublabel {
  margin-top: 8px;
  color: #64748b;
  font-size: 0.84rem;
}

.page-id-13 .wpforms-container .wpforms-submit-container {
  padding-top: 8px;
}

.page-id-13 .wpforms-container .wpforms-submit {
  min-height: 0;
  padding: 12px 22px;
  border: 2px solid var(--nav-yellow);
  border-radius: 10px;
  background: var(--nav-blue);
  color: #ffffff;
  font-weight: 700;
  line-height: 1.15;
  box-shadow: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.15s ease;
}

.page-id-13 .wpforms-container .wpforms-submit:hover,
.page-id-13 .wpforms-container .wpforms-submit:focus {
  background: #023f79;
  border-color: var(--nav-yellow);
  color: #ffffff;
  transform: translateY(-1px);
}

.page-id-13 .wpforms-container .wpforms-error {
  margin-top: 6px;
  color: #b91c1c;
  font-size: 0.84rem;
}

@media (max-width: 767px) {
  .page-id-13 .wpforms-container .wpforms-form {
    padding: 20px 18px;
    border-radius: 14px;
  }

  .page-id-13 .wpforms-container .wpforms-field-row {
    gap: 12px;
  }
}

/* =========================
   Partner und Freunde
   ========================= */

.ssv-partner-row {
  gap: 28px;
  align-items: center;
  margin: 0 0 32px;
}

.ssv-partner-row > .wp-block-column {
  position: relative;
}

.ssv-partner-row:not(.ssv-partner-row--image-right) > .wp-block-column:last-child,
.ssv-partner-row.ssv-partner-row--image-right > .wp-block-column:first-child {
  padding: 28px 32px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  border: 1px solid rgba(1, 80, 155, 0.12);
  border-radius: 16px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06);
}

.ssv-partner-row:not(.ssv-partner-row--image-right) > .wp-block-column:first-child,
.ssv-partner-row.ssv-partner-row--image-right > .wp-block-column:last-child {
  background: linear-gradient(180deg, #f8fbff, #eef4f9);
  border: 1px solid rgba(1, 80, 155, 0.14);
  border-radius: 16px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.ssv-partner-row:not(.ssv-partner-row--image-right) > .wp-block-column:first-child::before,
.ssv-partner-row.ssv-partner-row--image-right > .wp-block-column:last-child::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  margin-bottom: 14px;
  background: linear-gradient(90deg, #01509b, #ffbe00);
}

.ssv-partner-row img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 220px;
  max-height: 280px;
  object-fit: contain;
  background: transparent;
  padding: 28px;
  margin: 0;
  box-sizing: border-box;
}

.ssv-partner-row.ssv-partner-row--image-right > .wp-block-column:last-child img {
  padding: 0;
}

.ssv-partner-row p {
  margin: 0;
  color: #334155;
  font-size: 1.02rem;
  line-height: 1.8;
}

@media (max-width: 781px) {
  .ssv-partner-row {
    gap: 18px;
    margin-bottom: 24px;
  }

  .ssv-partner-row img {
    min-height: 180px;
    max-height: 220px;
    padding: 22px;
  }

  .ssv-partner-row > .wp-block-column:last-child,
  .ssv-partner-row.ssv-partner-row--image-right > .wp-block-column:first-child {
    padding: 22px 24px;
  }
}

.ssv-partner-row:not(.ssv-partner-row--image-right) > .wp-block-column:last-child::before,
.ssv-partner-row.ssv-partner-row--image-right > .wp-block-column:first-child::before {
  content: none;
}

/* 4 Kacheln */
.ssv-four-cards {
  gap: 24px;
  align-items: stretch;
  margin: 32px 0;
}

.ssv-four-cards > .wp-block-column {
  display: flex;
}

.ssv-four-cards > .wp-block-column.ssv-card {
  flex-direction: column;
  background: #ffffff;
  border: 1px solid rgba(1, 80, 155, 0.14);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.ssv-four-cards > .wp-block-column.ssv-card::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, #01509b, #ffbe00);
}

.ssv-four-cards > .wp-block-column.ssv-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.12);
  border-color: rgba(1, 80, 155, 0.24);
}

.ssv-four-cards .ssv-card figure,
.ssv-four-cards .ssv-card .wp-block-image {
  margin: 0;
}

.ssv-four-cards .ssv-card img {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.ssv-four-cards .ssv-card > h3,
.ssv-four-cards .ssv-card > p,
.ssv-four-cards .ssv-card > .wp-block-buttons,
.ssv-four-cards .ssv-card > .wp-block-button {
  margin-left: 22px;
  margin-right: 22px;
}

.ssv-four-cards .ssv-card > h3 {
  margin-top: 15px;
  margin-bottom: 15px;
  color: #0f172a;
  font-size: 1.2rem;
  line-height: 1.25;
  font-weight: 600;
}

.ssv-four-cards .ssv-card > h3 a {
  color: #0f172a;
  text-decoration: underline;
}

.ssv-four-cards .ssv-card > h3 a:hover {
  color: var(--nav-blue);
}

.ssv-four-cards .ssv-card > p {
  margin-bottom: 18px;
  color: #475569;
  line-height: 1.7;
  flex-grow: 1;
}

.ssv-four-cards .ssv-card > .wp-block-buttons,
.ssv-four-cards .ssv-card > .wp-block-button {
  margin-bottom: 22px;
}

@media (max-width: 1024px) {
  .ssv-four-cards {
    gap: 20px;
  }

  .ssv-four-cards .ssv-card img {
    height: 200px;
  }
}

@media (max-width: 781px) {
  .ssv-four-cards {
    gap: 18px;
    margin: 24px 0;
  }

.ssv-four-cards .ssv-card img {
    height: 190px;
  }
}

/* Download-Kacheln */
.ssv-download-cards {
  gap: 24px;
  align-items: stretch;
  margin: 32px 0;
}

.ssv-download-cards > .wp-block-column {
  display: flex;
}

.ssv-download-cards > .wp-block-column.ssv-card {
  flex-direction: column;
  background: #ffffff;
  border: 1px solid rgba(1, 80, 155, 0.14);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.ssv-download-cards > .wp-block-column.ssv-card::before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, #b91c1c, #ef4444);
}

.ssv-download-cards > .wp-block-column.ssv-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.12);
  border-color: rgba(185, 28, 28, 0.24);
}

.ssv-download-cards .ssv-card figure,
.ssv-download-cards .ssv-card .wp-block-image {
  margin: 0;
}

.ssv-download-cards .ssv-card img {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.ssv-download-cards .ssv-card > h3,
.ssv-download-cards .ssv-card > p,
.ssv-download-cards .ssv-card > .wp-block-buttons,
.ssv-download-cards .ssv-card > .wp-block-button {
  margin-left: 22px;
  margin-right: 22px;
}

.ssv-download-cards .ssv-card > h3 {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 15px;
  margin-bottom: 15px;
  color: #0f172a;
  font-size: 1.2rem;
  line-height: 1.25;
  font-weight: 600;
}

.ssv-download-cards .ssv-card > h3::before {
  content: "\2B07";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #b91c1c;
  font-size: 0.95rem;
  line-height: 1;
}

.ssv-download-cards .ssv-card > h3 a {
  color: #0f172a;
  text-decoration: underline;
}

.ssv-download-cards .ssv-card > h3 a:hover {
  color: var(--nav-blue);
}

.ssv-download-cards .ssv-card > p {
  margin-bottom: 18px;
  color: #475569;
  line-height: 1.7;
  flex-grow: 1;
}

.ssv-download-cards .ssv-card > .wp-block-buttons,
.ssv-download-cards .ssv-card > .wp-block-button {
  margin-bottom: 22px;
}

@media (max-width: 1024px) {
  .ssv-download-cards {
    gap: 20px;
  }

  .ssv-download-cards .ssv-card img {
    height: 200px;
  }
}

@media (max-width: 781px) {
  .ssv-download-cards {
    gap: 18px;
    margin: 24px 0;
  }

  .ssv-download-cards .ssv-card img {
    height: 190px;
  }
}

.widget-area .widget {
  padding: 20px;
  margin: 0;
}

.wp-block-tag-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.wp-block-tag-cloud a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border: 1px solid rgba(1, 80, 155, 0.16);
  border-radius: 999px;
  background: #f8fbff;
  color: var(--nav-blue);
  font-size: 0.88rem !important;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
}

.wp-block-tag-cloud a:hover {
  background: var(--nav-blue);
  border-color: var(--nav-blue);
  color: #ffffff;
  transform: translateY(-1px);
}

.home .gb-looper-622bb578 {
  display: grid;
  grid-template-columns: repeat(3, minmax(260px, 1fr));
  gap: 24px;
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73 {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: var(--news-card);
  border: 1px solid var(--news-border);
  border-radius: var(--news-radius);
  box-shadow: var(--news-shadow);
  overflow: hidden;
  padding: 18px 18px 20px;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73::before {
  content: "";
  display: block;
  width: calc(100% + 36px);
  height: 5px;
  margin: -18px -18px 16px;
  background: linear-gradient(90deg, var(--news-primary), var(--news-accent));
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73:hover {
  transform: translateY(-3px);
  box-shadow: var(--news-shadow-hover);
  border-color: rgba(1, 80, 155, 0.28);
}

.home .gb-looper-622bb578 .gb-text-d69b590e {
  margin-bottom: 12px;
  color: var(--news-primary);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.home .gb-looper-622bb578 .gb-text-3b7f2639 {
  margin: 0 0 12px;
  font-size: 1.22rem;
  line-height: 1.28;
  font-weight: 700;
}

.home .gb-looper-622bb578 .gb-text-3b7f2639 a {
  color: var(--news-text);
  text-decoration: none;
}

.home .gb-looper-622bb578 .gb-text-3b7f2639 a:hover {
  color: var(--news-primary);
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73 > .gb-text:not(.gb-text-d69b590e):not(.gb-text-3b7f2639) {
  margin-bottom: 16px;
  color: var(--news-muted);
  font-size: 0.98rem;
  line-height: 1.72;
  flex-grow: 1;
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73 > .wp-block-columns {
  gap: 10px;
  margin-top: auto;
  margin-bottom: 0;
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73 > .wp-block-columns .wp-block-column {
  flex: 0 0 auto;
  width: auto;
}

.home .gb-looper-622bb578 .gb-loop-item-a8bf4b73 > .wp-block-columns .gb-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 7px 12px;
  border: 1px solid rgba(1, 80, 155, 0.16);
  border-radius: 999px;
  background: #f8fbff;
  color: var(--nav-blue);
  font-size: 0.88rem;
  font-weight: 700;
  line-height: 1;
}

@media (max-width: 1024px) {
  .home .gb-looper-622bb578 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .home .gb-looper-622bb578 {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* =========================
   Komm ins Team
   ========================= */

.page-id-1814 .site-main {
  overflow: visible;
}

.page-id-1814 .inside-article {
  position: relative;
  z-index: 2;
  margin-top: -72px;
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(1, 80, 155, 0.12);
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(255, 190, 0, 0.16), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.12);
}

.page-id-1814 .entry-content {
  display: grid;
  gap: 22px;
}

.page-id-1814 .entry-content > * {
  margin: 0;
}

.page-id-1814 .entry-content > p:nth-of-type(1) {
  max-width: 40rem;
  color: #0f172a;
  font-size: clamp(1.16rem, 1.55vw, 1.35rem);
  line-height: 1.8;
}

.page-id-1814 .entry-content > p:nth-of-type(2) {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  padding: 10px 16px;
  border-radius: 999px;
  background: rgba(1, 80, 155, 0.08);
  color: var(--nav-blue);
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.4;
}

.page-id-1814 .entry-content > p:nth-of-type(2)::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--nav-yellow);
  box-shadow: 0 0 0 6px rgba(255, 190, 0, 0.18);
}

.page-id-1814 .entry-content > ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  padding: 0;
  list-style: none;
}

.page-id-1814 .entry-content > ul li {
  position: relative;
  padding: 26px 24px 24px;
  border: 1px solid rgba(1, 80, 155, 0.12);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.08);
  color: #475569;
  line-height: 1.75;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.page-id-1814 .entry-content > ul li::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  border-radius: 20px 20px 0 0;
  background: linear-gradient(90deg, var(--nav-blue), var(--nav-yellow));
}

.page-id-1814 .entry-content > ul li:hover {
  transform: translateY(-4px);
  border-color: rgba(1, 80, 155, 0.24);
  box-shadow: 0 22px 42px rgba(15, 23, 42, 0.12);
}

.page-id-1814 .entry-content > ul li strong {
  display: block;
  margin-bottom: 12px;
  color: #0f172a;
  font-size: 1.18rem;
  line-height: 1.3;
}

.page-id-1814 .entry-content > p:nth-of-type(3) {
  padding: 24px 26px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(1, 80, 155, 0.96), #0b6fca);
  color: #ffffff;
  font-size: 1.05rem;
  line-height: 1.75;
  box-shadow: 0 20px 44px rgba(1, 80, 155, 0.22);
}

.page-id-1814 .entry-content > p:nth-of-type(3) strong {
  color: #ffffff;
}

.page-id-1814 .entry-content > p:nth-of-type(4) {
  padding: 24px 26px;
  border: 1px solid rgba(1, 80, 155, 0.14);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.84);
  color: #334155;
  line-height: 1.8;
}

.page-id-1814 .entry-content > p:nth-of-type(4) strong {
  color: var(--nav-blue);
}

@media (max-width: 1024px) {
  .page-id-1814 .entry-content > ul {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .page-id-1814 .inside-article {
    margin-top: -32px;
    padding: 22px 18px;
    border-radius: 18px;
  }

  .page-id-1814 .entry-content {
    gap: 18px;
  }

  .page-id-1814 .entry-content > p:nth-of-type(1) {
    font-size: 1.05rem;
    line-height: 1.72;
  }

  .page-id-1814 .entry-content > p:nth-of-type(2) {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .page-id-1814 .entry-content > ul {
    gap: 18px;
  }

  .page-id-1814 .entry-content > ul li,
  .page-id-1814 .entry-content > p:nth-of-type(3),
  .page-id-1814 .entry-content > p:nth-of-type(4) {
    padding: 20px 18px;
    border-radius: 16px;
  }
}
