/* Seasonal styles are inactive unless selected in the protected preview or explicitly published. */
body.pm-style-herbst {
  --pm-cream: #fff6e9;
  --pm-wine: #d66a1f;
  --pm-wine-dark: #9d3f12;
  --pm-blue: #3c2a24;
  --pm-pale-blue: #f4dec1;
  --pm-rose: #f0a34e;
  --pm-shadow: 0 18px 50px rgba(91, 49, 25, .2);
  background-color: var(--pm-cream);
  background-image:
    radial-gradient(circle at 8% 14%, rgba(240, 163, 78, .12) 0 5px, transparent 6px),
    radial-gradient(circle at 92% 38%, rgba(157, 63, 18, .08) 0 7px, transparent 8px);
}

body.pm-style-herbst .pm-site-header {
  border-bottom: 1px solid rgba(157, 63, 18, .18);
  background-color: rgba(255, 246, 233, .96);
  background-image: linear-gradient(105deg, rgba(255, 250, 242, .98), rgba(244, 222, 193, .94));
  box-shadow: 0 8px 28px rgba(60, 42, 36, .08);
}

body.pm-style-herbst .pm-site-header::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 4px;
  background: linear-gradient(90deg, #9d3f12, #d66a1f 38%, #f0a34e 70%, #9d3f12);
  content: "";
  pointer-events: none;
}

body.pm-style-herbst .pm-main-nav a {
  color: var(--pm-wine-dark);
}

body.pm-style-herbst .pm-logo {
  flex-basis: 172px;
  width: 172px;
  padding: 10px 12px;
  border-radius: 12px;
  background: var(--pm-blue);
  box-shadow: 0 8px 22px rgba(60, 42, 36, .2);
}

body.pm-style-herbst.home .page-section:first-of-type h1 {
  color: var(--pm-wine-dark) !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .58);
}

body.pm-style-herbst .page-section:not(.bright) h1,
body.pm-style-herbst .page-section:not(.bright) h2,
body.pm-style-herbst .page-section:not(.bright) h3,
body.pm-style-herbst .page-section:not(.bright) h4,
body.pm-style-herbst .page-section:not(.bright) .sqsrte-text-color--accent {
  color: var(--pm-wine) !important;
}

body.pm-style-herbst .page-section.bright .section-border,
body.pm-style-herbst .page-section.bright .section-background,
body.pm-style-herbst .page-section.bright .section-background-overlay {
  background-color: var(--pm-wine) !important;
}

body.pm-style-herbst .page-section.bright,
body.pm-style-herbst .page-section.bright h1,
body.pm-style-herbst .page-section.bright h2,
body.pm-style-herbst .page-section.bright h3,
body.pm-style-herbst .page-section.bright h4,
body.pm-style-herbst .page-section.bright p,
body.pm-style-herbst .page-section.bright a,
body.pm-style-herbst .page-section.bright strong,
body.pm-style-herbst .page-section.bright .sqsrte-text-color--accent {
  color: #fffaf3 !important;
}

body.pm-style-herbst .sqs-block-image img,
body.pm-style-herbst .pm-service-copy img {
  border-radius: 14px;
  outline: 1px solid rgba(157, 63, 18, .22);
  box-shadow: 0 18px 44px rgba(60, 42, 36, .2);
}

body.pm-style-herbst .sqs-button-element--primary,
body.pm-style-herbst .pm-button {
  background: var(--pm-wine) !important;
  border-color: var(--pm-wine) !important;
  color: #fff !important;
}

body.pm-style-herbst .sqs-button-element--primary:hover,
body.pm-style-herbst .sqs-button-element--primary:focus,
body.pm-style-herbst .pm-button:hover,
body.pm-style-herbst .pm-button:focus {
  background: var(--pm-wine-dark) !important;
  border-color: var(--pm-wine-dark) !important;
}

body.pm-style-herbst .sqs-button-element--secondary {
  border-color: var(--pm-wine) !important;
  color: var(--pm-wine-dark) !important;
}

body.pm-style-herbst .pm-site-footer {
  border-top: 1px solid rgba(157, 63, 18, .2);
  background: linear-gradient(145deg, #fff6e9, #f4dec1);
}

body.pm-style-winter {
  --pm-cream: #f3f8fb;
  --pm-wine: #446f91;
  --pm-wine-dark: #2e526f;
  --pm-blue: #24445f;
  --pm-pale-blue: #dcebf3;
  --pm-rose: #8eafc1;
  --pm-shadow: 0 18px 50px rgba(36, 68, 95, .14);
}

body.pm-style-weihnachten {
  --pm-cream: #f7f2e8;
  --pm-wine: #a22d2d;
  --pm-wine-dark: #7d2020;
  --pm-blue: #244f3b;
  --pm-pale-blue: #e4ecdf;
  --pm-rose: #c49a45;
  --pm-shadow: 0 18px 50px rgba(36, 79, 59, .16);
}

body.pm-style-fruehling {
  --pm-cream: #f6f4eb;
  --pm-wine: #b45f79;
  --pm-wine-dark: #8d4059;
  --pm-blue: #3f6756;
  --pm-pale-blue: #e3efe4;
  --pm-rose: #d6a8b0;
  --pm-shadow: 0 18px 50px rgba(63, 103, 86, .14);
}

body.pm-style-sommer {
  --pm-cream: #fff6e5;
  --pm-wine: #e06b4f;
  --pm-wine-dark: #b64a35;
  --pm-blue: #246b72;
  --pm-pale-blue: #dff1ed;
  --pm-rose: #e7ad61;
  --pm-shadow: 0 18px 50px rgba(36, 107, 114, .14);
}

body.pm-preview-active .pm-site-header,
body:not(.pm-style-standard) .pm-site-header {
  background-image: radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--pm-rose) 25%, transparent) 0 7px, transparent 8px), linear-gradient(100deg, color-mix(in srgb, var(--pm-cream) 92%, white), var(--pm-cream));
}

body.pm-preview-active .page-section:nth-of-type(even),
body:not(.pm-style-standard) .page-section:nth-of-type(even) {
  box-shadow: inset 0 0 0 100vmax color-mix(in srgb, var(--pm-pale-blue) 10%, transparent);
  clip-path: inset(0 -100vmax);
}

body.pm-preview-active .sqs-button-element--primary,
body:not(.pm-style-standard) .sqs-button-element--primary {
  background: var(--pm-wine) !important;
  border-color: var(--pm-wine) !important;
}

body.pm-preview-active .sqs-button-element--secondary,
body:not(.pm-style-standard) .sqs-button-element--secondary {
  color: var(--pm-wine) !important;
  border-color: var(--pm-wine) !important;
}

.pm-preview-banner {
  position: fixed;
  z-index: 10050;
  right: 18px;
  bottom: 18px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem .75rem;
  max-width: min(520px, calc(100vw - 36px));
  padding: .75rem 1rem;
  border: 1px solid color-mix(in srgb, var(--pm-wine) 35%, white);
  border-radius: 14px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 14px 45px rgba(0, 0, 0, .2);
  color: var(--pm-blue);
  font-size: .86rem;
  line-height: 1.35;
}

.pm-preview-banner a { color: var(--pm-wine); font-weight: 700; }

.pm-preview-login { min-height: 62vh; }
.pm-preview-login__form { max-width: 520px; }
.pm-preview-login__form .pm-field { margin-bottom: 1.2rem; }
.pm-preview-login__form input { width: 100%; min-height: 50px; padding: .7rem .85rem; border: 1px solid color-mix(in srgb, var(--pm-blue) 35%, white); border-radius: 8px; }

@media (max-width: 640px) {
  .pm-preview-banner { left: 12px; right: 12px; bottom: 12px; }
}
