@charset "UTF-8";
/**
 * Convert value to rem based on root font size
 * Necessary because Figma exports values without units
 *
 * @param {String|Number} $value - Value to convert
 * @return {String} - calc() expression for rem conversion
 *
 * @example
 *   border-radius: hw13-rem-convert(var(--hw13-image-border-radius));
 *   // Output: calc((var(--hw13-image-border-radius) / var(--hw13-root-font-size)) * 1rem)
 */
/**
 * Convert value to em based on root font size
 * Necessary because Figma exports values without units
 *
 * @param {String|Number} $value - Value to convert
 * @return {String} - calc() expression for em conversion
 *
 * @example
 *   border-radius: hw13-em-convert(var(--hw13-image-border-radius));
 *   // Output: calc((var(--hw13-image-border-radius) / var(--hw13-root-font-size)) * 1em)
 */
/**
 * Convert unitless value to pixels
 *
 * @param {Number} $value - Unitless number to convert
 * @return {String} - calc() expression for px value
 *
 * @example
 *   outline-width: hw13-px-convert(var(--hw-card-border-width));
 *   // Output: calc(var(--hw-card-border-width) * 1px)
 */
/**
 * Fluid typography/spacing with clamp()
 * Supports viewport units (vw, vh) and container query units (cqi, cqh)
 *
 * @param {String} $unit - vw, vh, cqi, or cqh
 * @param {Number|String} $minSize - Minimum size (px or CSS var)
 * @param {Number|String} $maxSize - Maximum size (px or CSS var)
 * @param {Number} $minWidth - Min viewport/container width (optional, unit-specific defaults)
 * @param {Number} $maxWidth - Max viewport/container width (optional, unit-specific defaults)
 * @return {String} - clamp() calculation
 *
 * @example
 *   font-size: hw13-clamp(cqi, var(--hw-size-16), var(--hw-size-32), 20, 31);
 *   padding: hw13-clamp(vw, 1rem, 3rem);
 */
/**
 * Resolve breakpoint value (helper function for hw13-query)
 * Converts breakpoint names to actual values from $hw13-breakpoints map
 *
 * @param {String|Number} $breakpoint-value - Breakpoint name or direct value
 * @return {Number} - Resolved breakpoint value
 * @access private
 */
/**
 * Unified mixin for media queries and container queries
 * Supports breakpoint names from $hw13-breakpoints map
 *
 * @param {Map} $breakpoints - Map with "from" and/or "to" keys
 * @param {String} $type - "media" or "container"
 * @param {String} $container-name - Optional container name (for container queries)
 *
 * @example
 *   // Media query with breakpoint names
 *   @include hw13-query((from: "m", to: "l"), "media") {
 *     font-size: 2rem;
 *   }
 *
 *   // Container query with direct value
 *   @include hw13-query((from: 20rem), "container", "hw13-card") {
 *     padding: 2rem;
 *   }
 *
 *   // Range query
 *   @include hw13-query((from: "s", to: "m"), "media") {
 *     display: none;
 *   }
 */
/**
 * Recursively generate CSS custom properties from SCSS map
 * Creates --hw13-prefixed variables
 *
 * @param {Map} $map - Nested map of CSS properties
 * @param {String} $prefix - Internal prefix for recursion (don't pass manually)
 *
 * @example
 *   $css-variables: (
 *     image-card: (
 *       padding: 1rem,
 *       color: (
 *         default: red,
 *         hover: blue,
 *       ),
 *     ),
 *   );
 *
 *   @include hw13-generate-css-vars($css-variables);
 *
 *   // Generates:
 *   // --hw13-image-card-padding: 1rem;
 *   // --hw13-image-card-color-default: red;
 *   // --hw13-image-card-color-hover: blue;
 */
/**
 * Generate @font-face declarations for custom fonts
 * Supports both variable and non-variable fonts
 *
 * @param {String} $font-family - Font family name
 * @param {String} $font-folder - Folder name in fonts directory
 * @param {String} $font-name - Base font file name (without weight/style suffix)
 * @param {Map} $font-weights-styles - Map of weights to styles
 * @param {Boolean} $is-variable - Whether font is a variable font (default: false)
 *
 * @example Variable font
 *   @include hw13-font-face(
 *     "Raleway Variable",
 *     "raleway",
 *     "Raleway",
 *     (
 *       normal: (100, 900),
 *       italic: (100, 900)
 *     ),
 *     true
 *   );
 *
 * @example Non-variable font
 *   @include hw13-font-face(
 *     "Raleway",
 *     "raleway",
 *     "Raleway",
 *     (
 *       400: (normal, italic),
 *       700: (normal, italic)
 *     )
 *   );
 */
/**
 * Calculate the width of elements spanning multiple grid columns
 * Based on Figma grid with 24 columns and 23 gutters
 *
 * @param {Number} $column-span - Number of columns the element should span
 * @param {String} $grid-column-count - CSS variable for total column count (default: var(--hw13-grid-column-count))
 * @param {String} $grid-gutter - CSS variable for gutter width (default: var(--hw13-grid-width-gutter))
 * @return {String} - calc() expression for the element width
 *
 * @example
 *   // Using defaults (24 columns, standard gutter)
 *   section {
 *     flex: 0 0 hw13-grid-column-width(14);
 *   }
 *
 *   // Custom grid (12 columns, custom gutter)
 *   aside {
 *     width: hw13-grid-column-width(8, var(--custom-column-count), var(--custom-gutter));
 *   }
 *
 * Formula:
 * 1. Calculate pure column width: (100% - (gutter × (columns - 1))) / columns
 * 2. Multiply by column span
 * 3. Add back the gutters within the span: gutter × (span - 1)
 */
@layer hw13-modules {
  :root {
    /* TODO: kein hw13-Gegenstück (editoriale Mono-Schrift für Kicker/Meta-Labels;
       Projekt-Brand-Erweiterung, via Google Fonts in Layout.astro geladen) */
    --vlk-font-mono: "DM Mono", ui-monospace, "SFMono-Regular", monospace;
    /* TODO: kein hw13-Gegenstück (motion/effect) */
    --vlk-ease: cubic-bezier(0.22, 1, 0.36, 1);
    --vlk-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
    --vlk-dur: 320ms;
    --vlk-dur-slow: 640ms;
    --vlk-dur-line: 780ms;
    --vlk-reveal-stagger: 80ms;
    --vlk-line-stagger: 95ms;
    --vlk-word-stagger: 28ms;
    --vlk-marquee-dur: 46s;
    --vlk-zig-drift-dur: 9s;
    --vlk-phone-float-dur: 6s;
    --vlk-stamp-spin-dur: 20s;
    /* TODO: kein hw13-Gegenstück (shadow) */
    --vlk-shadow-soft: 0 .5rem 1.5rem -.75rem color-mix(in srgb, var(--hw13-color-black-90) 22%, transparent);
    --vlk-shadow-float: 0 1.5rem 3rem -1rem color-mix(in srgb, var(--hw13-color-black-90) 26%, transparent);
    /* Zickzack-Deko (Wappen-Motiv) — Asset-URLs als Vars */
    --vlk-zig-red: url(/assets/decor/zigzag-band-red.svg);
    --vlk-zig-white: url(/assets/decor/zigzag-band-white.svg);
    --vlk-zig-mark-white: url(/assets/decor/zigzag-watermark-white.svg);
    --vlk-zig-mark-red: url(/assets/decor/zigzag-watermark-red.svg);
    --vlk-zig-bar-red: url(/assets/decor/zigzag-bar-red.svg);
    --vlk-zig-bar-white: url(/assets/decor/zigzag-bar-white.svg);
    /* vertikal laufendes Zickzack-BAND (welliges Wappen-Motiv, 90° gedreht) —
       Hover-Marker im Bürgerservice-Index (Kundenwunsch: Band statt Chevron-Bar) */
    --vlk-zig-band-vert: url(/assets/decor/zigzag-band-red-vertical.svg);
    --vlk-stamp-2040: url(/assets/decor/stamp-2040.svg);
    --vlk-app-bg: url(/assets/decor/app-bg.png); /* fertiges Chevron-Feld (rot→weiß) */
  }
  html {
    scroll-padding-top: calc(var(--hw13-size-90) / var(--hw13-root-font-size) * 1rem);
  }
  .hw13-skip-link {
    position: absolute;
    left: calc(var(--hw13-size-16) / var(--hw13-root-font-size) * 1rem);
    top: calc(var(--hw13-size-16) / var(--hw13-root-font-size) * 1rem);
    z-index: 400;
    padding: calc(var(--hw13-padding-4l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-6l) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-primary);
    color: var(--hw13-color-text-alternative);
    border-radius: calc(var(--hw13-border-radius-4l) / var(--hw13-root-font-size) * 1rem);
    transform: translateY(-150%);
    transition: transform var(--vlk-dur) var(--vlk-ease);
  }
  .hw13-skip-link:focus {
    transform: none;
  }
  hw13-vlk-progress {
    position: fixed;
    inset: 0 0 auto 0;
    height: calc(var(--hw13-size-3) / var(--hw13-root-font-size) * 1rem);
    z-index: 300;
    transform-origin: 0 50%;
    transform: scaleX(0);
    background: var(--hw13-color-primary);
    will-change: transform;
  }
  @media (prefers-reduced-motion: no-preference) {
    [data-reveal] {
      opacity: 0;
      transform: translateY(2rem);
      transition: opacity var(--vlk-dur-slow) var(--vlk-ease), transform var(--vlk-dur-slow) var(--vlk-ease);
      transition-delay: calc(var(--i, 0) * var(--vlk-reveal-stagger));
      will-change: transform, opacity;
    }
    [data-reveal][data-revealed] {
      opacity: 1;
      transform: none;
    }
  }
  hw13-vlk-line {
    display: block;
    overflow: hidden;
    padding-block: 0.04em;
  }
  hw13-vlk-line > span {
    display: block;
  }
  @media (prefers-reduced-motion: no-preference) {
    [data-lines] hw13-vlk-line > span {
      transform: translateY(115%);
      transition: transform var(--vlk-dur-line) var(--vlk-ease-out);
      transition-delay: calc(var(--li, 0) * var(--vlk-line-stagger));
      will-change: transform;
    }
    [data-lines][data-revealed] hw13-vlk-line > span {
      transform: none;
    }
  }
  hw13-vlk-hero h1,
  hw13-vlk-section-header hw13-heading h1, hw13-vlk-section-header hw13-heading h2,
  hw13-vlk-section-header hw13-heading h3, hw13-vlk-quote-text, .hw13-vlk-quote-word,
  hw13-vlk-events-ghost, hw13-vlk-news-featured-body h3, hw13-vlk-news-card-body h4, hw13-vlk-events-name {
    hyphens: manual;
    -webkit-hyphens: manual;
    overflow-wrap: normal;
  }
  hw13-vlk-w {
    display: inline-block;
  }
  @media (prefers-reduced-motion: no-preference) {
    [data-words] hw13-vlk-w {
      opacity: 0;
      transform: translateY(0.5em);
      transition: opacity var(--vlk-dur-slow) var(--vlk-ease-out), transform var(--vlk-dur-slow) var(--vlk-ease-out);
      transition-delay: calc(var(--wi, 0) * var(--vlk-word-stagger));
      will-change: transform, opacity;
    }
    [data-words][data-revealed] hw13-vlk-w {
      opacity: 1;
      transform: none;
    }
  }
  hw13-vlk-crop {
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    --crop-len: calc(var(--hw13-size-16) / var(--hw13-root-font-size) * 1rem);
    --crop-w: calc(var(--hw13-size-2) * 1px);
    --crop-col: var(--hw13-color-primary);
    background-image: linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col)), linear-gradient(var(--crop-col), var(--crop-col));
    background-repeat: no-repeat;
    background-size: var(--crop-len) var(--crop-w), var(--crop-w) var(--crop-len), var(--crop-len) var(--crop-w), var(--crop-w) var(--crop-len), var(--crop-len) var(--crop-w), var(--crop-w) var(--crop-len), var(--crop-len) var(--crop-w), var(--crop-w) var(--crop-len);
    background-position: left top, left top, right top, right top, left bottom, left bottom, right bottom, right bottom;
  }
  hw13-vlk-zigedge {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 4;
    display: block;
    height: calc(var(--hw13-size-14) / var(--hw13-root-font-size) * 1rem);
    background: var(--vlk-zig-red) left center/auto 100% repeat-x;
    pointer-events: none;
  }
  hw13-vlk-zigedge[data-pos=bottom] {
    bottom: calc(-1 * calc(var(--hw13-size-1) / var(--hw13-root-font-size) * 1rem));
  }
  hw13-vlk-zigedge[data-pos=top] {
    top: calc(-1 * calc(var(--hw13-size-1) / var(--hw13-root-font-size) * 1rem));
  }
  @media (prefers-reduced-motion: no-preference) {
    [data-revealed] > hw13-vlk-zigedge, hw13-vlk-zigedge[data-revealed] {
      animation: vlk-zigdrift var(--vlk-zig-drift-dur) linear infinite;
    }
    @keyframes vlk-zigdrift {
      from {
        background-position-x: 0;
      }
      to {
        background-position-x: calc(var(--hw13-size-24) / var(--hw13-root-font-size) * 1rem);
      }
    }
  }
  hw13-vlk-container {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: var(--hw13-grid-width);
    margin-inline: auto;
    padding-inline: calc(var(--hw13-grid-home-margin) / var(--hw13-root-font-size) * 1rem);
  }
  #main-content {
    overflow-x: clip;
  }
  hw13-vlk-section-header {
    display: flex;
    flex-direction: column;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-section-header[data-center] {
    align-items: center;
    text-align: center;
  }
  hw13-vlk-section-header hw13-vlk-eyebrow[data-variant=header] {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem);
    /* TODO: kein hw13-Gegenstück — editoriale Mono-Kicker-Schrift (Projekt-Brand) */
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.22em;
    color: var(--hw13-color-title-highlight);
  }
  hw13-vlk-section-header hw13-vlk-eyebrow[data-variant=header]::before {
    content: "";
    width: calc(var(--hw13-size-24) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-14) / var(--hw13-root-font-size) * 1rem);
    background: var(--vlk-zig-red) left center/auto 100% no-repeat;
    flex-shrink: 0;
  }
  hw13-vlk-section-header[data-center] hw13-vlk-eyebrow[data-variant=header] {
    justify-content: center;
  }
  hw13-vlk-section-header hw13-heading h1, hw13-vlk-section-header hw13-heading h2, hw13-vlk-section-header hw13-heading h3,
  hw13-vlk-section-header hw13-heading-content {
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h1) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title-h1);
    color: var(--hw13-color-title-default);
    letter-spacing: -0.02em;
    line-height: 1.04;
    margin: 0;
  }
  hw13-vlk-section-header[data-tone=onPrimary] hw13-vlk-eyebrow {
    color: var(--hw13-color-primary-light-40);
  }
  hw13-vlk-section-header[data-tone=onPrimary] hw13-vlk-eyebrow::before {
    background-image: var(--vlk-zig-white);
  }
  hw13-vlk-section-header[data-tone=onPrimary] hw13-heading h1, hw13-vlk-section-header[data-tone=onPrimary] hw13-heading h2, hw13-vlk-section-header[data-tone=onPrimary] hw13-heading h3, hw13-vlk-section-header[data-tone=onPrimary] hw13-heading-content {
    color: var(--hw13-color-title-alternative);
  }
  hw13-vlk-section-header hw13-vlk-lead {
    display: block;
    max-width: 48ch;
    margin-top: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
    font-size: calc(var(--hw13-font-size-text-l) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-60);
    line-height: 1.5;
  }
  hw13-vlk-section-header[data-center] hw13-vlk-lead {
    margin-inline: auto;
  }
  hw13-vlk-ctrl {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    flex-shrink: 0;
    cursor: pointer;
    border: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-border-default);
    border-radius: calc(var(--hw13-border-radius-10l) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-icon-default);
    transition: background-color var(--vlk-dur) var(--vlk-ease), color var(--vlk-dur) var(--vlk-ease), border-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-ctrl:hover, hw13-vlk-ctrl:focus-visible {
    background: var(--hw13-color-primary);
    color: var(--hw13-color-text-alternative);
    border-color: var(--hw13-color-primary);
  }
  hw13-vlk-ctrl[data-variant=onMedia] {
    background: var(--hw13-color-white);
    border-color: var(--hw13-color-white);
    color: var(--hw13-color-primary);
    box-shadow: var(--vlk-shadow-float);
  }
  hw13-vlk-ctrl-ico {
    position: relative;
    display: inline-flex;
    width: calc(var(--hw13-size-16) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-16) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-ctrl-pause {
    display: flex;
    gap: calc(var(--hw13-gap-2l) / var(--hw13-root-font-size) * 1rem);
    width: 100%;
    height: 100%;
    justify-content: center;
  }
  hw13-vlk-ctrl-pause span {
    width: 28%;
    height: 100%;
    background: currentColor;
    border-radius: calc(var(--hw13-border-radius-1l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-ctrl-play {
    width: 100%;
    height: 100%;
    background: currentColor;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
  }
  hw13-vlk-ctrl[aria-pressed=true] hw13-vlk-ctrl-play {
    display: none;
  }
  hw13-vlk-ctrl[aria-pressed=false] hw13-vlk-ctrl-pause {
    display: none;
  }
  hw13-vlk-header {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 200;
    display: block;
    color: var(--hw13-color-text-alternative);
    border-bottom: calc(var(--hw13-border-width) * 1px) solid transparent;
    transition: transform var(--vlk-dur) var(--vlk-ease), background-color var(--vlk-dur) var(--vlk-ease), color var(--vlk-dur) var(--vlk-ease), border-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-header[data-scrolled] {
    color: var(--hw13-color-text-default);
    background: color-mix(in srgb, var(--hw13-color-white) 90%, transparent);
    backdrop-filter: blur(calc(var(--hw13-size-12) / var(--hw13-root-font-size) * 1rem));
    border-bottom-color: var(--hw13-color-border-default);
  }
  hw13-vlk-header[data-hidden] {
    transform: translateY(-100%);
  }
  hw13-vlk-header a {
    text-decoration: none;
    color: inherit;
  }
  hw13-vlk-header > hw13-vlk-container {
    display: flex;
    align-items: center;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    padding-block: calc(var(--hw13-padding-5l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-brand {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    color: inherit;
  }
  hw13-vlk-brand img {
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    width: auto;
    display: block;
    filter: drop-shadow(0 1px 2px color-mix(in srgb, var(--hw13-color-black-90) 30%, transparent));
  }
  hw13-vlk-brand hw13-vlk-brand-name {
    display: block;
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-text-xl) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    line-height: 1;
    letter-spacing: -0.02em;
  }
  hw13-vlk-brand hw13-vlk-brand-tag {
    display: block;
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    letter-spacing: 0.04em;
    color: var(--hw13-color-white);
  }
  [data-scrolled] hw13-vlk-brand img {
    filter: none;
  }
  [data-scrolled] hw13-vlk-brand-tag {
    color: var(--hw13-color-black-60);
  }
  hw13-vlk-header-actions {
    display: flex;
    align-items: center;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    margin-left: auto;
    padding: calc(var(--hw13-padding-2l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-6l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-2l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-5l) / var(--hw13-root-font-size) * 1rem);
    border: calc(var(--hw13-border-width) * 1px) solid color-mix(in srgb, var(--hw13-color-white) 38%, transparent);
    background: color-mix(in srgb, var(--hw13-color-white) 16%, transparent);
    backdrop-filter: blur(calc(var(--hw13-size-16) / var(--hw13-root-font-size) * 1rem));
    /* TODO: kein hw13-Gegenstück (Glas-Innenkante) */
    box-shadow: inset 0 calc(var(--hw13-border-width) * 1px) 0 0 color-mix(in srgb, var(--hw13-color-white) 55%, transparent), var(--vlk-shadow-soft);
    transition: background-color var(--vlk-dur) var(--vlk-ease), border-color var(--vlk-dur) var(--vlk-ease), box-shadow var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-header-actions hw13-vlk-header-utils {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-1l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-header-actions hw13-vlk-header-divider {
    align-self: stretch;
    width: calc(var(--hw13-border-width) * 1px);
    margin-block: calc(var(--hw13-gap-2l) / var(--hw13-root-font-size) * 1rem);
    background: color-mix(in srgb, currentColor 26%, transparent);
  }
  hw13-vlk-header-actions .hw13-vlk-util {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    text-decoration: none;
    width: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    transition: color var(--vlk-dur) var(--vlk-ease), background-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-header-actions .hw13-vlk-util hw13-icon {
    --hw13-icon-color: currentColor;
    --hw13-icon-font-size: var(--hw13-font-size-2l);
  }
  hw13-vlk-header-actions .hw13-vlk-util:hover, hw13-vlk-header-actions .hw13-vlk-util:focus-visible {
    color: var(--hw13-color-primary);
    background: color-mix(in srgb, currentColor 12%, transparent);
  }
  [data-scrolled] hw13-vlk-header-actions {
    background: transparent;
    border-color: transparent;
    backdrop-filter: none;
    box-shadow: none;
  }
  .hw13-vlk-header-search {
    display: none;
    align-items: center;
    order: -1;
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-white);
    border: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-border-default);
    box-shadow: var(--vlk-shadow-soft);
    overflow: hidden;
    transition: border-color var(--vlk-dur) var(--vlk-ease), box-shadow var(--vlk-dur) var(--vlk-ease);
  }
  .hw13-vlk-header-search:hover {
    border-color: var(--hw13-color-black-30);
  }
  .hw13-vlk-header-search:has(:focus-visible) {
    border-color: var(--hw13-color-primary);
    outline: calc(var(--hw13-size-2) * 1px) solid var(--hw13-color-primary);
    outline-offset: calc(var(--hw13-size-2) * 1px);
  }
  .hw13-vlk-header-search input {
    min-width: 0;
    width: clamp(6rem, 26vw, 13rem);
    height: 100%;
    border: 0;
    background: transparent;
    outline: none;
    padding-inline: calc(var(--hw13-padding-6l) / var(--hw13-root-font-size) * 1rem);
    font-family: var(--hw13-font-family-text);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-text-default);
  }
  .hw13-vlk-header-search input::placeholder {
    color: var(--hw13-color-black-45);
  }
  .hw13-vlk-header-search button {
    flex-shrink: 0;
    cursor: pointer;
    border: 0;
    align-self: stretch;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    height: 100%;
    background: var(--hw13-color-primary);
    color: var(--hw13-color-white);
    transition: background-color var(--vlk-dur) var(--vlk-ease);
  }
  .hw13-vlk-header-search button hw13-icon {
    --hw13-icon-color: var(--hw13-color-white);
    --hw13-icon-font-size: var(--hw13-font-size-1l);
  }
  .hw13-vlk-header-search button:hover, .hw13-vlk-header-search button:focus-visible {
    background: var(--hw13-color-primary-dark-10);
  }
  [data-scrolled] .hw13-vlk-header-search {
    display: inline-flex;
  }
  hw13-vlk-burger {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-3l) / var(--hw13-root-font-size) * 1rem);
    color: inherit;
  }
  hw13-vlk-burger hw13-vlk-burger-bars {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--hw13-gap-2l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-burger hw13-vlk-burger-bars span {
    display: block;
    width: calc(var(--hw13-size-24) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-2) / var(--hw13-root-font-size) * 1rem);
    background: currentColor;
    border-radius: calc(var(--hw13-border-radius-1l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-burger hw13-vlk-burger-label {
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    letter-spacing: -0.01em;
    line-height: 1;
  }
  hw13-vlk-hero {
    position: relative;
    display: flex;
    min-height: 100vh;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
  }
  hw13-vlk-hero hw13-vlk-hero-media {
    position: absolute;
    inset: 0;
    z-index: -2;
  }
  hw13-vlk-hero hw13-vlk-hero-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 52%;
  }
  hw13-vlk-hero hw13-vlk-hero-shade {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: radial-gradient(120% 85% at 50% 46%, transparent 30%, color-mix(in srgb, var(--hw13-color-black-90) 48%, transparent) 100%), linear-gradient(to bottom, color-mix(in srgb, var(--hw13-color-black-90) 55%, transparent) 0%, color-mix(in srgb, var(--hw13-color-black-90) 22%, transparent) 34%, color-mix(in srgb, var(--hw13-color-black-90) 34%, transparent) 62%, color-mix(in srgb, var(--hw13-color-black-90) 72%, transparent) 100%);
  }
  hw13-vlk-hero hw13-vlk-container {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    width: 100%;
    text-align: left;
    padding-block: calc(var(--hw13-padding-15l) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-text-alternative);
  }
  hw13-vlk-hero-lead {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    width: 100%;
    max-width: 56rem;
  }
  hw13-vlk-hero hw13-vlk-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem);
    /* TODO: kein hw13-Gegenstück — editoriale Mono-Kicker-Schrift (Projekt-Brand) */
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.22em;
    color: var(--hw13-color-white);
  }
  hw13-vlk-hero hw13-vlk-eyebrow::before {
    content: "";
    width: calc(var(--hw13-size-24) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-14) / var(--hw13-root-font-size) * 1rem);
    background: var(--vlk-zig-red) center/auto 100% no-repeat;
    flex-shrink: 0;
  }
  hw13-vlk-hero h1 {
    font-family: var(--hw13-font-family-title);
    font-size: calc(clamp(calc(calc(var(--hw13-font-size-8l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)), calc(calc(var(--hw13-font-size-8l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)) + calc((calc(var(--hw13-font-size-10l) / 16) - calc(var(--hw13-font-size-8l) / 16)) * (100vw - calc(var(--hw13-clamp-width-min, 20) * 1rem / (var(--hw13-root-font-size, 16) / 16))) / (var(--hw13-clamp-width-max, 108) - var(--hw13-clamp-width-min, 20))), calc(calc(var(--hw13-font-size-10l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16))) * (var(--hw13-root-font-size, 16) / 16));
    font-weight: var(--hw13-font-weight-800);
    color: var(--hw13-color-title-alternative);
    line-height: 0.92;
    letter-spacing: -0.04em;
    margin: 0;
    text-shadow: 0 calc(var(--hw13-size-2) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-size-40) / var(--hw13-root-font-size) * 1rem) color-mix(in srgb, var(--hw13-color-black-90) 55%, transparent);
  }
  hw13-vlk-hero-search {
    display: block;
    width: 100%;
    max-width: 40rem;
  }
  hw13-vlk-hero-search form {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    gap: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem);
    padding: calc(var(--hw13-padding-3l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-3l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-3l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-8l) / var(--hw13-root-font-size) * 1rem);
    background: color-mix(in srgb, var(--hw13-color-white) 96%, transparent);
    border: calc(var(--hw13-border-width) * 1px) solid color-mix(in srgb, var(--hw13-color-white) 70%, transparent);
    box-shadow: var(--vlk-shadow-float);
  }
  hw13-vlk-hero-search form:has(:focus-visible) {
    outline: calc(var(--hw13-size-2) * 1px) solid var(--hw13-color-primary);
    outline-offset: calc(var(--hw13-size-2) * 1px);
  }
  hw13-vlk-hero-search input {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    outline: none;
    font-family: var(--hw13-font-family-text);
    font-size: calc(var(--hw13-font-size-text-m) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-text-default);
  }
  hw13-vlk-hero-search input::placeholder {
    color: var(--hw13-color-black-45);
  }
  hw13-vlk-hero-search button {
    flex-shrink: 0;
    cursor: pointer;
    border: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-primary);
    color: var(--hw13-color-white);
    transition: background-color var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-hero-search button hw13-icon {
    --hw13-icon-color: var(--hw13-color-white);
    --hw13-icon-font-size: var(--hw13-font-size-1l);
  }
  hw13-vlk-hero-search button {
    /* TODO: kein hw13-Gegenstück (micro-transform) */
  }
  hw13-vlk-hero-search button:hover, hw13-vlk-hero-search button:focus-visible {
    background: var(--hw13-color-primary-dark-10);
    transform: translateY(-1px);
  }
  hw13-vlk-hero-stamp {
    position: absolute;
    z-index: 1;
    right: calc(var(--hw13-padding-11l) / var(--hw13-root-font-size) * 1rem);
    bottom: calc(var(--hw13-padding-11l) / var(--hw13-root-font-size) * 1rem);
    /* TODO: kein hw13-Gegenstück (Deko-Größe) */
    width: min(20vw, 11rem);
    aspect-ratio: 1;
    background: var(--vlk-stamp-2040) center/contain no-repeat;
    pointer-events: none;
  }
  @media (prefers-reduced-motion: no-preference) {
    hw13-vlk-hero-stamp {
      animation: vlk-spin var(--vlk-stamp-spin-dur) linear infinite;
      transform-origin: 50% 50%;
    }
  }
  hw13-vlk-service {
    display: block;
    scroll-margin-top: calc(var(--hw13-size-90) / var(--hw13-root-font-size) * 1rem);
    padding-block: calc(var(--hw13-grid-content-section) / var(--hw13-root-font-size) * 1rem);
    container-name: hw13-vlk-service;
    container-type: inline-size;
  }
  hw13-vlk-service-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    margin-bottom: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-service-index {
    display: grid;
    grid-template-columns: var(--vlk-service-cols, repeat(4, 1fr));
    gap: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-service-index a {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
    min-height: calc(var(--hw13-size-160) / var(--hw13-root-font-size) * 1rem);
    padding: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-black-5);
    border: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-border-default);
    text-decoration: none;
    text-align: center;
    overflow: visible;
    isolation: isolate;
    transition: border-color var(--vlk-dur) var(--vlk-ease), background-color var(--vlk-dur) var(--vlk-ease), box-shadow var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-service-index a:hover, hw13-vlk-service-index a:focus-visible {
    border-color: var(--hw13-color-border-hover);
    box-shadow: var(--vlk-shadow-soft);
  }
  hw13-vlk-service-index hw13-vlk-service-wipe {
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    width: calc(var(--hw13-size-80) / var(--hw13-root-font-size) * 1rem);
    aspect-ratio: 24.221/13.945;
    background: var(--vlk-zig-red) center/contain no-repeat;
    /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translate(-50%, 70%);
    opacity: 0;
    transition: opacity var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur-slow) var(--vlk-ease-out);
    will-change: transform, opacity;
  }
  hw13-vlk-service-index a:hover hw13-vlk-service-wipe, hw13-vlk-service-index a:focus-visible hw13-vlk-service-wipe {
    opacity: 1; /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translate(-50%, 38%);
  }
  hw13-vlk-service-index hw13-vlk-service-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  hw13-vlk-service-index hw13-icon[data-vlk-role=service-icon] {
    --hw13-icon-font-size: var(--hw13-font-size-3l);
    --hw13-icon-color: var(--hw13-color-icon-highlight);
    transition: color var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-service-index a:hover hw13-icon[data-vlk-role=service-icon], hw13-vlk-service-index a:focus-visible hw13-icon[data-vlk-role=service-icon] {
    --hw13-icon-color: var(--hw13-color-primary); /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translateY(-0.3rem) scale(1.12);
  }
  hw13-vlk-service-index hw13-vlk-service-label {
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h5) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    color: var(--hw13-color-title-default);
    line-height: 1.15;
    letter-spacing: -0.01em;
    min-width: 0;
    transition: color var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-service-index a:hover hw13-vlk-service-label, hw13-vlk-service-index a:focus-visible hw13-vlk-service-label { /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translateY(-0.3rem);
  }
  @media (prefers-reduced-motion: reduce) {
    hw13-vlk-service-index hw13-vlk-service-wipe {
      transition: opacity var(--vlk-dur) var(--vlk-ease);
      transform: translate(-50%, 38%);
      opacity: 0;
    }
    hw13-vlk-service-index a:hover hw13-vlk-service-wipe, hw13-vlk-service-index a:focus-visible hw13-vlk-service-wipe {
      opacity: 1;
    }
    hw13-vlk-service-index a:hover hw13-icon[data-vlk-role=service-icon], hw13-vlk-service-index a:focus-visible hw13-icon[data-vlk-role=service-icon] {
      transform: none;
    }
    hw13-vlk-service-index a:hover hw13-vlk-service-label, hw13-vlk-service-index a:focus-visible hw13-vlk-service-label {
      transform: none;
    }
  }
  hw13-vlk-news {
    display: block;
    overflow-x: clip;
    padding-block: calc(var(--hw13-grid-content-section) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-news > hw13-vlk-container {
    display: block;
  }
  hw13-vlk-news-head {
    display: block;
    margin-bottom: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-news-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-news-cat {
    display: inline-flex;
    align-items: center;
    padding: calc(var(--hw13-padding-2l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-5l) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-black-10);
    color: var(--hw13-color-black-75);
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-2s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.12em;
  }
  hw13-vlk-news-date {
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-2s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--hw13-color-black-45);
  }
  hw13-vlk-news-more {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem);
    margin-top: calc(var(--hw13-gap-2l) / var(--hw13-root-font-size) * 1rem);
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--hw13-color-text-highlight);
  }
  hw13-vlk-news-more hw13-icon {
    --hw13-icon-color: var(--hw13-color-icon-highlight);
    --hw13-icon-font-size: var(--hw13-font-size-1s);
    transition: transform var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-news-featured {
    position: relative;
    display: grid;
    grid-template-columns: var(--vlk-news-feat-cols, 1.12fr 0.95fr);
    align-items: stretch;
    margin-bottom: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-news-featured a {
    display: contents;
    text-decoration: none;
  }
  hw13-vlk-news-featured-media {
    position: relative;
    grid-column: 1;
    grid-row: 1;
    display: block;
    overflow: hidden;
    aspect-ratio: 16/10;
    box-shadow: var(--vlk-shadow-soft);
  }
  hw13-vlk-news-featured-media img {
    width: 100%;
    height: 112%;
    margin-top: -6%;
    object-fit: cover;
    will-change: transform;
    transform: scale(1.02);
  }
  hw13-vlk-news-featured-flag {
    position: absolute;
    z-index: 2;
    top: calc(var(--hw13-padding-6l) / var(--hw13-root-font-size) * 1rem);
    left: calc(var(--hw13-padding-6l) / var(--hw13-root-font-size) * 1rem);
    display: inline-flex;
    align-items: center;
    padding: calc(var(--hw13-padding-2l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-5l) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-primary);
    color: var(--hw13-color-white);
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-2s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.14em;
  }
  hw13-vlk-news-featured-body {
    position: relative;
    z-index: 3;
    grid-column: 2;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    margin-left: calc(-1 * calc(var(--hw13-padding-13l) / var(--hw13-root-font-size) * 1rem));
    padding: calc(var(--hw13-padding-13l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-11l) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-white);
    border: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-border-default);
    box-shadow: var(--vlk-shadow-float);
    transition: border-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-news-featured-body h3 {
    margin: 0;
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h3) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    color: var(--hw13-color-title-default);
    letter-spacing: -0.02em;
    line-height: 1.1;
  }
  hw13-vlk-news-featured-body p {
    margin: 0;
    font-size: calc(var(--hw13-font-size-text-m) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-60);
    line-height: 1.55;
  }
  hw13-vlk-news-featured a:hover hw13-vlk-news-featured-body, hw13-vlk-news-featured a:focus-visible hw13-vlk-news-featured-body {
    border-color: var(--hw13-color-border-hover);
  }
  hw13-vlk-news-featured a:hover hw13-vlk-news-more hw13-icon, hw13-vlk-news-featured a:focus-visible hw13-vlk-news-more hw13-icon { /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translateX(0.3rem);
  }
  hw13-vlk-news-cards {
    display: grid;
    grid-template-columns: var(--vlk-news-cards-cols, repeat(3, 1fr));
    gap: calc(var(--hw13-gap-11l) / var(--hw13-root-font-size) * 1rem);
    list-style: none;
    margin: 0;
    padding: 0;
  }
  hw13-vlk-news-card {
    display: block;
  }
  hw13-vlk-news-card a {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    text-decoration: none;
    background: var(--hw13-color-white);
    border: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-border-default);
    box-shadow: var(--vlk-shadow-soft);
    transition: border-color var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease), box-shadow var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-news-card a:hover, hw13-vlk-news-card a:focus-visible {
    border-color: var(--hw13-color-border-hover); /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translateY(-4px);
    box-shadow: var(--vlk-shadow-float);
  }
  hw13-vlk-news-card-media {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 16/10;
    background: var(--hw13-color-black-5);
  }
  hw13-vlk-news-card-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--vlk-dur-slow) var(--vlk-ease);
  }
  hw13-vlk-news-card a:hover hw13-vlk-news-card-media img, hw13-vlk-news-card a:focus-visible hw13-vlk-news-card-media img {
    transform: scale(1.05);
  }
  hw13-vlk-news-card-body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    flex: 1 1 auto;
    padding: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-news-card-body h4 {
    margin: 0;
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h5) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    color: var(--hw13-color-title-default);
    letter-spacing: -0.01em;
    line-height: 1.2;
  }
  hw13-vlk-news-card-body p {
    margin: 0;
    font-size: calc(var(--hw13-font-size-text-m) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-60);
    line-height: 1.55;
  }
  hw13-vlk-news-arrow {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    /* TODO: kein hw13-Gegenstück (micro-transform) */
    opacity: 0;
    transform: translateX(-0.4rem);
    transition: opacity var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-news-arrow hw13-icon {
    --hw13-icon-color: var(--hw13-color-icon-highlight);
    --hw13-icon-font-size: var(--hw13-font-size-2l);
  }
  hw13-vlk-news-card a:hover hw13-vlk-news-arrow, hw13-vlk-news-card a:focus-visible hw13-vlk-news-arrow {
    opacity: 1;
    transform: none;
  }
  hw13-vlk-news-action {
    display: flex;
    justify-content: center;
    margin-top: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-events {
    position: relative;
    display: block;
    overflow-x: clip;
    padding-block: calc(var(--hw13-grid-content-section) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-black-5);
  }
  hw13-vlk-events > hw13-vlk-container {
    position: relative;
    z-index: 1;
  }
  hw13-vlk-events-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    margin-bottom: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-events-actions {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-events-actions hw13-button[data-color=alternative] {
    --hw13-button-color-background-default: var(--hw13-color-black-0);
    --hw13-button-color-background-hover: var(--hw13-color-black-90);
    --hw13-button-color-background-active: var(--hw13-color-black-90);
    --hw13-button-color-text-default: var(--hw13-color-black-90);
    --hw13-button-color-text-hover: var(--hw13-color-white);
    --hw13-button-color-text-active: var(--hw13-color-white);
    --hw13-button-color-border-default: var(--hw13-color-black-30);
    --hw13-button-color-border-hover: var(--hw13-color-black-90);
    --hw13-button-color-border-active: var(--hw13-color-black-90);
  }
  hw13-vlk-events-agenda {
    display: flex;
    flex-direction: column;
    border-top: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-black-90);
  }
  hw13-vlk-events-row {
    display: block;
    border-bottom: calc(var(--hw13-border-width) * 1px) solid var(--hw13-color-border-default);
  }
  hw13-vlk-events-row a {
    position: relative;
    display: grid;
    align-items: center;
    grid-template-columns: minmax(calc(var(--hw13-size-100) / var(--hw13-root-font-size) * 1rem), max-content) 1fr auto;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-gap-12l) / var(--hw13-root-font-size) * 1rem);
    padding-block: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem);
    padding-inline: calc(var(--hw13-padding-4l) / var(--hw13-root-font-size) * 1rem);
    text-decoration: none;
    overflow: visible;
    transition: padding-left var(--vlk-dur) var(--vlk-ease), background-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-events-row a:hover, hw13-vlk-events-row a:focus-visible {
    background: var(--hw13-color-white);
    padding-left: calc(var(--hw13-padding-7l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-events-date {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 0.82;
  }
  hw13-vlk-events-ghost {
    font-family: var(--hw13-font-family-title);
    font-size: calc(clamp(calc(calc(var(--hw13-font-size-7l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)), calc(calc(var(--hw13-font-size-7l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)) + calc((calc(var(--hw13-font-size-9l) / 16) - calc(var(--hw13-font-size-7l) / 16)) * (100vw - calc(var(--hw13-clamp-width-min, 20) * 1rem / (var(--hw13-root-font-size, 16) / 16))) / (var(--hw13-clamp-width-max, 108) - var(--hw13-clamp-width-min, 20))), calc(calc(var(--hw13-font-size-9l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16))) * (var(--hw13-root-font-size, 16) / 16));
    font-weight: var(--hw13-font-weight-600);
    letter-spacing: 0.02em;
    line-height: 0.82;
    color: var(--hw13-color-black-5); /* Fill = Sektions-BG → Innenfläche „leer", deckt interne Naht */
    -webkit-text-stroke: calc(var(--hw13-size-4) * 1px) color-mix(in srgb, var(--hw13-color-primary) 70%, transparent);
    paint-order: stroke; /* Stroke HINTER Fill → keine internen Outline-Nähte mehr */
    font-variant-numeric: tabular-nums;
    transition: color var(--vlk-dur) var(--vlk-ease), -webkit-text-stroke-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-events-mon {
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--hw13-color-text-highlight);
    margin-top: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-events-row a:hover hw13-vlk-events-ghost, hw13-vlk-events-row a:focus-visible hw13-vlk-events-ghost {
    color: var(--hw13-color-primary);
    -webkit-text-stroke-color: var(--hw13-color-primary);
  }
  hw13-vlk-events-info {
    display: flex;
    flex-direction: column;
    gap: calc(var(--hw13-gap-3l) / var(--hw13-root-font-size) * 1rem);
    min-width: 0;
  }
  hw13-vlk-events-cat {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-2s) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-75);
    background: var(--hw13-color-black-10);
    padding: calc(var(--hw13-padding-2l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-5l) / var(--hw13-root-font-size) * 1rem);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: var(--hw13-font-weight-500);
  }
  hw13-vlk-events-name {
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h4) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    color: var(--hw13-color-title-default);
    letter-spacing: -0.02em;
    line-height: 1.12;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  hw13-vlk-events-meta {
    display: inline-flex;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-2l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
    font-size: calc(var(--hw13-font-size-text-m) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-60);
  }
  hw13-vlk-events-meta span {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-3l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-events-meta hw13-icon {
    --hw13-icon-color: var(--hw13-color-icon-highlight);
    --hw13-icon-font-size: var(--hw13-font-size-1s);
  }
  hw13-icon[data-vlk-role=events-arrow] {
    --hw13-icon-color: var(--hw13-color-icon-highlight);
    --hw13-icon-font-size: var(--hw13-font-size-2l); /* TODO: kein hw13-Gegenstück (micro-transform) */
    opacity: 0;
    transform: translateX(-0.5rem);
    transition: opacity var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-events-row a:hover hw13-icon[data-vlk-role=events-arrow], hw13-vlk-events-row a:focus-visible hw13-icon[data-vlk-role=events-arrow] {
    opacity: 1;
    transform: none;
  }
  hw13-vlk-events-thumb {
    position: absolute;
    z-index: 2;
    pointer-events: none;
    right: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    top: 50%;
    transform: translateY(-50%);
    /* TODO: kein hw13-Gegenstück (feste Foto-Breite, fluide Cap) */
    width: min(18rem, 40vw);
    height: auto;
    box-shadow: var(--vlk-shadow-float);
  }
  hw13-vlk-events-thumb img {
    width: 100%;
    height: auto;
    display: block;
  }
  @media (prefers-reduced-motion: no-preference) {
    hw13-vlk-events-thumb { /* TODO: kein hw13-Gegenstück (micro-transform) */
      opacity: 0;
      transform: translate(calc(var(--hw13-size-12) / var(--hw13-root-font-size) * 1rem), -50%) scale(0.96);
      transition: opacity var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
    }
  }
  hw13-vlk-events-row a:hover hw13-vlk-events-thumb, hw13-vlk-events-row a:focus-visible hw13-vlk-events-thumb {
    opacity: 1;
    transform: translateY(-50%);
  }
  hw13-vlk-appshow {
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--hw13-color-white);
    padding-top: calc(var(--hw13-grid-content-section) / var(--hw13-root-font-size) * 1rem);
    padding-bottom: 0;
  }
  hw13-vlk-appshow > hw13-vlk-container {
    position: relative;
    z-index: 1;
  }
  hw13-vlk-appshow-inner {
    display: grid;
    grid-template-columns: var(--vlk-app-cols, minmax(0, 1fr) minmax(0, 1fr));
    align-items: stretch;
    gap: calc(var(--hw13-gap-12l) / var(--hw13-root-font-size) * 1rem);
    /* TODO: kein hw13-Gegenstück (Layout-Mindesthöhe) */
    min-height: min(72vh, 40rem);
  }
  hw13-vlk-appshow-text {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: calc(var(--hw13-gap-12l) / var(--hw13-root-font-size) * 1rem);
    min-width: 0;
  }
  hw13-vlk-appshow-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    flex: 1 1 auto;
    min-width: 0;
  }
  hw13-vlk-appshow-text hw13-heading h2,
  hw13-vlk-appshow-text hw13-heading-content {
    margin: 0;
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h1) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title-h1);
    color: var(--hw13-color-title-default);
    letter-spacing: -0.02em;
    line-height: 1.04;
  }
  hw13-vlk-appshow-stores {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    margin-top: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  .hw13-vlk-store-badge {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: transform var(--vlk-dur) var(--vlk-ease), opacity var(--vlk-dur) var(--vlk-ease);
  }
  .hw13-vlk-store-badge:hover, .hw13-vlk-store-badge:focus-visible { /* TODO: kein hw13-Gegenstück (micro-transform) */
    transform: translateY(-3px);
    opacity: 0.85;
  }
  .hw13-vlk-store-badge img {
    display: block;
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    width: auto;
  }
  hw13-vlk-appshow-rail {
    position: relative;
    flex: 0 0 auto;
    align-self: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-appshow-rail::before, hw13-vlk-appshow-rail::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: calc(var(--hw13-size-20) / var(--hw13-root-font-size) * 1rem);
    width: calc(var(--hw13-size-2) * 1px);
  }
  hw13-vlk-appshow-rail::before {
    bottom: calc(var(--hw13-size-20) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-black-15);
  }
  hw13-vlk-appshow-rail::after {
    background: var(--hw13-color-primary);
    height: calc((100% - calc(var(--hw13-size-40) / var(--hw13-root-font-size) * 1rem)) * var(--app-progress, 0));
    transition: height var(--vlk-dur-slow) var(--vlk-ease);
  }
  hw13-vlk-appshow-rail button {
    position: relative;
    z-index: 1;
    appearance: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    min-height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    padding: 0;
    border: 0;
    background: transparent;
    border-radius: calc(var(--hw13-border-radius-default) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-appshow-rail button:focus-visible {
    outline: calc(var(--hw13-size-2) * 1px) solid var(--hw13-color-primary);
    outline-offset: calc(var(--hw13-size-2) * 1px);
  }
  hw13-vlk-appshow-chevron {
    display: block;
    width: calc(var(--hw13-size-12) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-12) / var(--hw13-root-font-size) * 1rem);
    border-right: calc(var(--hw13-size-3) * 1px) solid var(--hw13-color-black-30);
    border-bottom: calc(var(--hw13-size-3) * 1px) solid var(--hw13-color-black-30);
    /* TODO: kein hw13-Gegenstück (micro-transform — Chevron-Glyph) */
    transform: rotate(45deg);
    transform-origin: center;
    transition: border-color var(--vlk-dur) var(--vlk-ease), transform var(--vlk-dur) var(--vlk-ease);
  }
  [data-app-node]:hover hw13-vlk-appshow-chevron {
    border-color: var(--hw13-color-primary);
  }
  [data-app-node][data-done] hw13-vlk-appshow-chevron,
  [data-app-node][data-active] hw13-vlk-appshow-chevron {
    border-color: var(--hw13-color-primary);
  }
  [data-app-node][data-active] hw13-vlk-appshow-chevron { /* TODO: micro-transform */
    transform: rotate(45deg) scale(1.3);
  }
  hw13-vlk-appshow-content hw13-swiper {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    margin-top: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-appshow-content hw13-swiper-container {
    width: 100%;
  }
  hw13-vlk-appshow-theme {
    display: flex;
    flex-direction: column;
    gap: calc(var(--hw13-gap-3l) / var(--hw13-root-font-size) * 1rem);
    width: 100%;
    text-align: left;
  }
  hw13-vlk-appshow-theme-title {
    font-family: var(--hw13-font-family-title);
    font-size: calc(var(--hw13-font-size-title-h4) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-title);
    color: var(--hw13-color-title-default);
    letter-spacing: -0.01em;
    line-height: 1.15;
  }
  hw13-vlk-appshow-theme-text {
    max-width: 46ch;
    font-size: calc(var(--hw13-font-size-text-l) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-60);
    line-height: 1.5;
  }
  hw13-vlk-appshow-stage {
    position: relative;
    z-index: 0;
    align-self: stretch;
    overflow: visible;
    margin-right: calc(-1 * calc(var(--hw13-grid-home-margin) / var(--hw13-root-font-size) * 1rem));
    background: var(--vlk-app-bg) right center/auto 100% no-repeat;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    /* TODO: kein hw13-Gegenstück (Layout-Kopfraum) */
    padding-top: calc(var(--hw13-padding-11l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-appshow-hand {
    position: relative;
    z-index: 2;
    display: block;
    height: auto;
    /* TODO: kein hw13-Gegenstück (Foto-Max-Breite) */
    width: min(86%, 24rem);
    /* TODO: kein hw13-Gegenstück (Foto-Schlagschatten, rem-Werte ohne Bridge-Token) */
    filter: drop-shadow(0 1.25rem 2rem color-mix(in srgb, var(--hw13-color-black) 35%, transparent));
  }
  @media (prefers-reduced-motion: no-preference) {
    hw13-vlk-appshow-hand {
      animation: vlk-phone-float var(--vlk-phone-float-dur) var(--vlk-ease) infinite;
    }
    /* TODO: kein hw13-Gegenstück (Motion-Offset) */
    @keyframes vlk-phone-float {
      0%, 100% {
        transform: translateY(0);
      }
      50% {
        transform: translateY(-0.9rem);
      }
    }
  }
  hw13-vlk-quote {
    position: relative;
    display: flex;
    align-items: center;
    overflow: visible;
    isolation: isolate;
    /* TODO: kein hw13-Gegenstück (Sektions-Mindesthöhe) */
    min-height: min(70vh, 42rem);
    background: var(--hw13-color-primary);
    padding-block: calc(var(--hw13-padding-13l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-quote-mark {
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    background: var(--vlk-zig-mark-white) center/cover no-repeat;
    opacity: 0.1;
  }
  hw13-vlk-quote > hw13-vlk-container {
    position: relative;
    z-index: 2;
    width: 100%;
  }
  hw13-vlk-quote-photo {
    position: absolute;
    z-index: 1;
    display: none;
    overflow: hidden;
    padding: calc(var(--hw13-size-6) / var(--hw13-root-font-size) * 1rem);
    background: var(--hw13-color-white);
    border-radius: calc(var(--hw13-border-radius-4l) / var(--hw13-root-font-size) * 1rem);
    box-shadow: var(--vlk-shadow-float);
  }
  hw13-vlk-quote-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: calc(var(--hw13-border-radius-2l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-quote-photo[data-pos=left] {
    left: -3vw;
    top: 34%;
    width: min(40vw, 32rem);
    aspect-ratio: 4/3;
    transform: rotate(-5deg);
  }
  hw13-vlk-quote-photo[data-pos=top] {
    left: min(18vw, 16rem);
    top: -9%;
    width: min(28vw, 22rem);
    aspect-ratio: 4/3;
    transform: rotate(6deg);
  }
  hw13-vlk-quote-body {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: none;
    margin-left: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  @keyframes vlk-spin {
    to {
      transform: rotate(360deg);
    }
  }
  hw13-vlk-quote-label {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-4l) / var(--hw13-root-font-size) * 1rem); /* TODO: kein hw13-Gegenstück — editoriale Mono-Kicker-Schrift */
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    text-transform: uppercase;
    letter-spacing: 0.22em;
    color: var(--hw13-color-white);
    margin-bottom: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-quote-label::before {
    content: "";
    width: calc(var(--hw13-size-24) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-14) / var(--hw13-root-font-size) * 1rem);
    background: var(--vlk-zig-white) left center/auto 100% no-repeat;
  }
  hw13-vlk-quote-text {
    display: block;
    font-family: var(--hw13-font-family-title);
    font-size: calc(clamp(calc(calc(var(--hw13-font-size-6l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)), calc(calc(var(--hw13-font-size-6l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)) + calc((calc(var(--hw13-font-size-7l) / 16) - calc(var(--hw13-font-size-6l) / 16)) * (100vw - calc(var(--hw13-clamp-width-min, 20) * 1rem / (var(--hw13-root-font-size, 16) / 16))) / (var(--hw13-clamp-width-max, 108) - var(--hw13-clamp-width-min, 20))), calc(calc(var(--hw13-font-size-7l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16))) * (var(--hw13-root-font-size, 16) / 16));
    font-weight: var(--hw13-font-weight-800);
    line-height: 1.06;
    letter-spacing: -0.03em;
    color: var(--hw13-color-white);
    max-width: 100%;
  }
  .hw13-vlk-quote-word {
    transition: color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-quote-text[data-effect] .hw13-vlk-quote-word {
    color: color-mix(in srgb, var(--hw13-color-white) 30%, transparent);
  }
  hw13-vlk-quote-text[data-effect] .hw13-vlk-quote-word[data-lit] {
    color: var(--hw13-color-white);
  }
  hw13-vlk-quote-action {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    margin-top: calc(var(--hw13-grid-content-block) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-quote-nav {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-quote-nav button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    width: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    background: transparent;
    color: var(--hw13-color-white);
    border: calc(var(--hw13-border-width) * 1px) solid color-mix(in srgb, var(--hw13-color-white) 55%, transparent);
    border-radius: calc(var(--hw13-border-radius-default) / var(--hw13-root-font-size) * 1rem);
    transition: background-color var(--vlk-dur) var(--vlk-ease), color var(--vlk-dur) var(--vlk-ease), border-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-quote-nav button hw13-icon {
    --hw13-icon-color: currentColor;
    --hw13-icon-font-size: var(--hw13-font-size-1l);
  }
  hw13-vlk-quote-nav button:hover, hw13-vlk-quote-nav button:focus-visible {
    background: var(--hw13-color-white);
    color: var(--hw13-color-primary);
    border-color: var(--hw13-color-white);
  }
  hw13-vlk-quote-nav button:focus-visible {
    outline: calc(var(--hw13-size-2) * 1px) solid var(--hw13-color-white);
    outline-offset: calc(var(--hw13-size-2) * 1px);
  }
  hw13-vlk-quote-nav-status {
    font-family: var(--vlk-font-mono);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    font-weight: var(--hw13-font-weight-500);
    letter-spacing: 0.12em;
    color: var(--hw13-color-white);
    min-width: calc(var(--hw13-size-40) / var(--hw13-root-font-size) * 1rem);
    text-align: center;
    font-variant-numeric: tabular-nums;
  }
  hw13-vlk-quote-figure {
    display: none;
  }
  @media (min-width: 1450px) {
    hw13-vlk-quote-body {
      max-width: min(56rem, 62vw);
      margin-left: auto;
    }
    hw13-vlk-quote[data-show-photos] hw13-vlk-quote-photo {
      display: block;
    }
    hw13-vlk-quote[data-show-icon] hw13-vlk-quote-figure {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      left: 0;
      top: 50%;
      z-index: 1;
      pointer-events: none;
      /* TODO: kein hw13-Gegenstück (Deko-Zone, fluide Cap) */
      transform: translateY(-50%);
      width: min(48vw, 38rem);
    }
    hw13-vlk-quote[data-show-icon] hw13-vlk-quote-figure hw13-icon {
      /* TODO: kein hw13-Gegenstück (dekorative Übergröße, fluide Cap) */
      --hw13-icon-font-size: min(17rem, 21vw);
      --hw13-icon-color: color-mix(in srgb, var(--hw13-color-white) 30%, transparent);
    }
  }
  hw13-vlk-footer {
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--hw13-color-black-90);
    color: var(--hw13-color-black-30);
    padding-block: calc(var(--hw13-padding-14l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-11l) / var(--hw13-root-font-size) * 1rem);
    padding-inline: calc(var(--hw13-grid-home-margin) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-footer a {
    color: inherit;
    text-decoration: none;
  }
  hw13-vlk-footer > hw13-vlk-container {
    position: relative;
    z-index: 1;
  }
  hw13-vlk-footer h2 {
    font-family: var(--hw13-font-family-title);
    font-weight: var(--hw13-font-weight-title);
    font-size: calc(var(--hw13-font-size-title-h2) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-white);
    letter-spacing: -0.02em;
    line-height: 1.08;
    margin: 0 0 calc(var(--hw13-gap-11l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-footer-grid {
    display: block;
    padding-block: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-padding-13l) / var(--hw13-root-font-size) * 1rem);
    border-bottom: calc(var(--hw13-border-width) * 1px) solid color-mix(in srgb, var(--hw13-color-white) 14%, transparent);
  }
  hw13-vlk-footer-contact {
    display: block;
    min-width: 0;
  }
  hw13-vlk-footer-tabs {
    display: flex;
    flex-wrap: nowrap;
    gap: calc(var(--hw13-gap-6l) / var(--hw13-root-font-size) * 1rem);
    margin-bottom: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    overflow-x: auto;
    scrollbar-width: none;
  }
  hw13-vlk-footer-tabs::-webkit-scrollbar {
    display: none;
  }
  hw13-vlk-footer-tabs {
    border-bottom: calc(var(--hw13-border-width) * 1px) solid color-mix(in srgb, var(--hw13-color-white) 14%, transparent);
  }
  hw13-vlk-footer-tabs button {
    position: relative;
    cursor: pointer;
    border: 0;
    background: transparent;
    white-space: nowrap;
    display: inline-flex;
    align-items: flex-end;
    min-height: calc(var(--hw13-size-50) / var(--hw13-root-font-size) * 1rem);
    padding: 0 0 calc(var(--hw13-padding-4l) / var(--hw13-root-font-size) * 1rem);
    margin-bottom: calc(-1 * calc(var(--hw13-border-width) * 1px));
    font-family: var(--hw13-font-family-title);
    font-weight: var(--hw13-font-weight-title);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-30);
    letter-spacing: -0.01em;
    transition: color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-footer-tabs button::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: calc(var(--hw13-size-3) * 1px);
    background: transparent;
    transition: background-color var(--vlk-dur) var(--vlk-ease);
  }
  hw13-vlk-footer-tabs button:hover, hw13-vlk-footer-tabs button:focus-visible {
    color: var(--hw13-color-white);
  }
  hw13-vlk-footer-tabs button[aria-selected=true] {
    color: var(--hw13-color-white);
  }
  hw13-vlk-footer-tabs button[aria-selected=true]::after {
    background: var(--hw13-color-primary);
  }
  hw13-vlk-footer-panel {
    display: grid;
    grid-template-columns: var(--vlk-footer-panel-cols, minmax(0, 17rem) minmax(0, 1fr));
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-gap-13l) / var(--hw13-root-font-size) * 1rem);
  }
  hw13-vlk-footer-panel[hidden] {
    display: none;
  }
  hw13-vlk-footer-panel address {
    display: flex;
    flex-direction: column;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    font-style: normal;
  }
  hw13-vlk-footer-panel a:hover {
    color: var(--hw13-color-text-alternative);
  }
  hw13-vlk-footer-panel hw13-icon-with-text {
    --hw13-icon-with-text-color-icon: var(--hw13-color-primary);
    --hw13-icon-with-text-color-text: var(--hw13-color-black-30);
  }
  hw13-vlk-footer-hours ul {
    list-style: none;
    display: grid;
    grid-template-columns: max-content 1fr;
    align-items: baseline;
    column-gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    row-gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    margin: 0;
    padding: 0;
  }
  hw13-vlk-footer-hours li {
    display: contents;
  }
  hw13-vlk-footer-hours li > span:first-child {
    color: var(--hw13-color-black-45);
  }
  hw13-vlk-footer-hours li > span:last-child {
    color: var(--hw13-color-black-15);
  }
  hw13-vlk-footer-hours li[data-closed] > span:last-child {
    color: var(--hw13-color-black-45);
  }
  hw13-vlk-footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    padding-top: calc(var(--hw13-padding-7l) / var(--hw13-root-font-size) * 1rem);
    font-size: calc(var(--hw13-font-size-text-s) / var(--hw13-root-font-size) * 1rem);
    color: var(--hw13-color-black-20);
  }
  hw13-vlk-footer-bottom ul {
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    list-style: none;
    margin: 0;
    padding: 0;
  }
  hw13-vlk-footer-bottom a:hover, hw13-vlk-footer-bottom a:focus-visible {
    color: var(--hw13-color-white);
  }
  hw13-vlk-footer-made {
    display: inline-block;
    color: var(--hw13-color-black-30);
    white-space: nowrap;
  }
  @media (width < 40rem) {
    hw13-vlk-container,
    hw13-vlk-service,
    hw13-vlk-appshow-inner {
      max-width: none;
    }
  }
  @container hw13-vlk-service (width < 64rem) {
    hw13-vlk-service-index {
      --vlk-service-cols: repeat(3, 1fr);
    }
  }
  @media (width < 64rem) {
    hw13-vlk-quote {
      min-height: 0;
      padding-block: calc(var(--hw13-grid-content-section) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-news-featured {
      --vlk-news-feat-cols: 1fr;
    }
    hw13-vlk-news-featured-media {
      grid-column: 1;
      grid-row: 1;
    }
    hw13-vlk-news-featured-body {
      grid-column: 1;
      grid-row: 2;
      margin: calc(-1 * calc(var(--hw13-padding-13l) / var(--hw13-root-font-size) * 1rem)) calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem) 0;
    }
    hw13-vlk-events-row a {
      grid-template-columns: minmax(calc(var(--hw13-size-90) / var(--hw13-root-font-size) * 1rem), max-content) 1fr auto;
      gap: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem) calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-events-thumb {
      display: none;
    }
    hw13-vlk-appshow-inner {
      --vlk-app-cols: minmax(0, 1fr);
      min-height: 0;
      gap: calc(var(--hw13-gap-12l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-appshow-stage {
      order: 2;
      align-self: auto;
      margin-inline: calc(-1 * calc(var(--hw13-grid-home-margin) / var(--hw13-root-font-size) * 1rem));
      background: var(--vlk-app-bg) center/cover no-repeat; /* TODO: kein hw13-Gegenstück (Layout-Mindesthöhe) */
      min-height: min(86vw, 30rem);
      padding-top: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-footer-grid {
      --vlk-footer-cols: 1fr;
    }
  }
  @media (width < 40rem) {
    hw13-vlk-hero h1 {
      font-size: calc(clamp(calc(calc(var(--hw13-font-size-6l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)), calc(calc(var(--hw13-font-size-6l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)) + calc((calc(var(--hw13-font-size-8l) / 16) - calc(var(--hw13-font-size-6l) / 16)) * (100vw - calc(var(--hw13-clamp-width-min, 20) * 1rem / (var(--hw13-root-font-size, 16) / 16))) / (var(--hw13-clamp-width-max, 108) - var(--hw13-clamp-width-min, 20))), calc(calc(var(--hw13-font-size-8l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16))) * (var(--hw13-root-font-size, 16) / 16));
    }
    hw13-vlk-hero-search form {
      padding-left: calc(var(--hw13-padding-5l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-hero-stamp {
      right: calc(var(--hw13-padding-7l) / var(--hw13-root-font-size) * 1rem);
      bottom: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem);
      width: min(28vw, 7rem);
    }
    hw13-vlk-service-head {
      flex-direction: column;
      align-items: flex-start;
    }
    hw13-vlk-service-index {
      --vlk-service-cols: repeat(2, 1fr);
      gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-service-index a {
      min-height: calc(var(--hw13-size-120) / var(--hw13-root-font-size) * 1rem);
      padding: calc(var(--hw13-padding-7l) / var(--hw13-root-font-size) * 1rem);
      gap: calc(var(--hw13-gap-5l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-service-index hw13-icon[data-vlk-role=service-icon] {
      --hw13-icon-font-size: var(--hw13-font-size-2l);
    }
    hw13-vlk-brand img {
      height: calc(var(--hw13-size-40) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-brand-name {
      white-space: nowrap;
    }
    hw13-vlk-header-actions hw13-vlk-header-utils,
    hw13-vlk-header-actions hw13-vlk-header-divider {
      display: none;
    }
    hw13-vlk-header-actions {
      padding-inline: calc(var(--hw13-padding-3l) / var(--hw13-root-font-size) * 1rem);
    }
    [data-scrolled] .hw13-vlk-header-search {
      display: none;
    }
    hw13-vlk-news-cards {
      --vlk-news-cards-cols: 1fr;
    }
    hw13-vlk-news-featured-body {
      margin-inline: calc(var(--hw13-padding-6l) / var(--hw13-root-font-size) * 1rem);
      padding: calc(var(--hw13-padding-9l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-events-row a {
      grid-template-columns: auto 1fr;
      align-items: center;
      gap: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-events-row a > hw13-icon[data-vlk-role=events-arrow] {
      display: none;
    }
    hw13-vlk-events-ghost {
      font-size: calc(clamp(calc(calc(var(--hw13-font-size-6l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)), calc(calc(var(--hw13-font-size-6l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16)) + calc((calc(var(--hw13-font-size-7l) / 16) - calc(var(--hw13-font-size-6l) / 16)) * (100vw - calc(var(--hw13-clamp-width-min, 20) * 1rem / (var(--hw13-root-font-size, 16) / 16))) / (var(--hw13-clamp-width-max, 108) - var(--hw13-clamp-width-min, 20))), calc(calc(var(--hw13-font-size-7l) / 16) * 1rem / (var(--hw13-root-font-size, 16) / 16))) * (var(--hw13-root-font-size, 16) / 16));
      color: var(--hw13-color-primary);
      -webkit-text-stroke: 0;
      -webkit-text-stroke-color: transparent;
    }
    hw13-vlk-events-row a:hover hw13-vlk-events-ghost, hw13-vlk-events-row a:focus-visible hw13-vlk-events-ghost {
      -webkit-text-stroke-color: transparent;
    }
    hw13-vlk-events-mon {
      letter-spacing: 0.12em;
    }
    hw13-vlk-events-name {
      font-size: calc(var(--hw13-font-size-title-h5) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-appshow-stage { /* TODO: kein hw13-Gegenstück (Layout-Mindesthöhe) */
      min-height: min(118vw, 26rem);
    }
    hw13-vlk-appshow-hand { /* TODO: kein hw13-Gegenstück (Foto-Max-Breite) */
      width: min(72%, 16rem);
    }
    hw13-vlk-appshow-text {
      gap: calc(var(--hw13-gap-7l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-footer-grid {
      --vlk-footer-cols: 1fr;
      gap: calc(var(--hw13-gap-9l) / var(--hw13-root-font-size) * 1rem);
    }
    hw13-vlk-footer-panel {
      --vlk-footer-panel-cols: 1fr;
    }
    hw13-vlk-footer-bottom {
      flex-direction: column;
      align-items: flex-start;
    }
  }
}
