/* New unified visual style for VideoKurz.com (Turquoise #25a2b0) */
:root {
  /* Brand colors */
  --brand-primary: #25a2b0;
  --brand-primary-dark: #418496;
  --brand-primary-light: #e8f2f5;

  /* Text and background colors */
  --text-color: #101010;
  --text-muted: #6b7280;
  --bg-body: #ffffff;
  --bg-alt: #f9f9f9;

  /* Design constants */
  --radius: 8px;
  --shadow: 0 4px 12px rgba(0, 0, 0, 0.05);

  /* Font families matching VideoKurz */
  --font-base: "Source Sans 3", sans-serif;
  --font-headings: "Exo 2", sans-serif;
}

/* General body settings */
body {
  font-family: var(--font-base);
  background-color: var(--bg-body);
  color: var(--text-color);
}

/* Header styling */
#header,
.site-header,
.header {
  background-color: var(--bg-body) !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

#header .logo img,
.site-header .site-logo img,
.header .logo img {
  max-height: 60px;
}

/* Navigation menu styling */
.menu-level-1,
.navigation-in > ul > li > a,
.navigation a,
.main-menu a {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
  border: none !important;
  font-size: 16px;
  font-weight: 600;
  border-radius: var(--radius);
  padding: 0.5rem 1.1rem;
}

.menu-level-1:hover,
.navigation-in > ul > li > a:hover,
.navigation a:hover,
.main-menu a:hover,
.navigation .active > a {
  background-color: var(--brand-primary-dark) !important;
  color: #ffffff !important;
}

/* Banners and call-to-action links */
.homepage-banners-full-width .banner-wrapper a,
.banner-category a,
.next-to-carousel-banners .extended-banner-link,
.homepage-banners-full-width .banner-wrapper .extended-banner-link {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
  padding: 0.7rem 1.2rem;
  border-radius: var(--radius);
  font-size: 16px;
  font-weight: 600;
  transition: background-color 0.2s ease;
}

.homepage-banners-full-width .banner-wrapper a:hover,
.banner-category a:hover,
.next-to-carousel-banners .extended-banner-link:hover,
.homepage-banners-full-width .banner-wrapper .extended-banner-link:hover {
  background-color: var(--brand-primary-dark) !important;
  color: #ffffff !important;
}

/* Banner text colour */
.extended-banner-title {
  color: #ffffff !important;
  font-family: var(--font-headings);
}

.extended-banner-text {
  color: #ffffff !important;
}

/* Buttons */
.btn,
.button,
.btn-default,
a.btn {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
  border-radius: var(--radius) !important;
  border: none;
  padding: 0.6rem 1.4rem;
  font-weight: 600;
  box-shadow: var(--shadow);
  transition: background-color 0.2s ease;
}

.btn:hover,
.button:hover,
.btn-default:hover,
a.btn:hover {
  background-color: var(--brand-primary-dark) !important;
  color: #ffffff !important;
}

/* Override the previous yellow default button variant */
.btn.btn-default,
a.btn.btn-default {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
  border-color: var(--brand-primary) !important;
}

/* Product cards and list items */
.product,
.c-product,
.p-list-item {
  background: #ffffff;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  overflow: hidden;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.product:hover,
.c-product:hover,
.p-list-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.product .name a,
.c-product__name a {
  font-weight: 600;
  font-size: 1rem;
  color: var(--text-color);
}

.product .price-final,
.c-product__price {
  font-weight: 700;
  color: var(--brand-primary-dark);
}

/* Section styling */
.hp-section,
.homepage-latest-contribution-full-width,
.store-rating-full-width,
.banner-category {
  background: var(--bg-alt) !important;
  border-radius: var(--radius);
  padding: 2rem 2.5rem;
  box-shadow: var(--shadow);
  margin: 2rem 0;
}

/* Hero / carousel adjustments */
.home .carousel,
.home .hp-slider,
.home .homepage-banners-full-width {
  border-radius: 0 !important;
  overflow: hidden;
}

.home .carousel-caption,
.home .slider-caption,
.home .hp-hero-content {
  color: #ffffff;
  font-family: var(--font-headings);
}

/* Footer */
#footer,
footer {
  background-color: var(--brand-primary) !important;
  color: #ffffff !important;
}

#footer h4,
#footer a {
  color: #ffffff !important;
}

.footer-icons {
  background-color: var(--brand-primary) !important;
}

/* Benefit and price ribbons */
.benefitBanner__data {
  color: var(--brand-primary) !important;
}

.p-standard-price {
  display: flex;
  visibility: visible;
  color: #ffffff !important;
  border-color: var(--brand-primary) !important;
  background-color: var(--brand-primary) !important;
}

.p-gifts-heading {
  color: var(--brand-primary) !important;
  font-weight: bold;
}

/* Contact images */
.kontaktimg {
  border-radius: var(--radius) !important;
}

/* Banner hover effect */
.banner-wrapper img {
  transition: transform 0.3s ease;
}
.banner-wrapper:hover img {
  transform: scale(1.015);
}
